@charset "UTF-8";
.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
.kmx-elevation-1 {
  border: 1px solid #dedfe0;
  box-shadow: none; }

.kmx-elevation-4 {
  border-color: transparent;
  box-shadow: 0 4px 8px 0 rgba(42, 52, 61, 0.16); }

.kmx-elevation-8 {
  border-color: transparent;
  box-shadow: 0 8px 12px 0 rgba(42, 52, 61, 0.16); }

.kmx-elevation-12 {
  border-color: transparent;
  box-shadow: 0 12px 16px 0 rgba(42, 52, 61, 0.16); }

.kmx-elevation-16 {
  border-color: transparent;
  box-shadow: 0 16px 20px 0 rgba(42, 52, 61, 0.16); }

/* stylelint-disable declaration-no-important */
.m-0 {
  margin: 0 !important; }

.m-t-0 {
  margin-top: 0 !important; }

.m-r-0 {
  margin-right: 0 !important; }

.m-b-0 {
  margin-bottom: 0 !important; }

.m-l-0 {
  margin-left: 0 !important; }

.m-xxs {
  margin: 2px !important; }

.m-t-xxs {
  margin-top: 2px !important; }

.m-r-xxs {
  margin-right: 2px !important; }

.m-b-xxs {
  margin-bottom: 2px !important; }

.m-l-xxs {
  margin-left: 2px !important; }

.m-xs {
  margin: 4px !important; }

.m-t-xs {
  margin-top: 4px !important; }

.m-r-xs {
  margin-right: 4px !important; }

.m-b-xs {
  margin-bottom: 4px !important; }

.m-l-xs {
  margin-left: 4px !important; }

.m-s {
  margin: 8px !important; }

.m-t-s {
  margin-top: 8px !important; }

.m-r-s {
  margin-right: 8px !important; }

.m-b-s {
  margin-bottom: 8px !important; }

.m-l-s {
  margin-left: 8px !important; }

.m-m {
  margin: 16px !important; }

.m-t-m {
  margin-top: 16px !important; }

.m-r-m {
  margin-right: 16px !important; }

.m-b-m {
  margin-bottom: 16px !important; }

.m-l-m {
  margin-left: 16px !important; }

.m-l {
  margin: 24px !important; }

.m-t-l {
  margin-top: 24px !important; }

.m-r-l {
  margin-right: 24px !important; }

.m-b-l {
  margin-bottom: 24px !important; }

.m-l-l {
  margin-left: 24px !important; }

.m-xl {
  margin: 32px !important; }

.m-t-xl {
  margin-top: 32px !important; }

.m-r-xl {
  margin-right: 32px !important; }

.m-b-xl {
  margin-bottom: 32px !important; }

.m-l-xl {
  margin-left: 32px !important; }

.m-2xl {
  margin: 48px !important; }

.m-t-2xl {
  margin-top: 48px !important; }

.m-r-2xl {
  margin-right: 48px !important; }

.m-b-2xl {
  margin-bottom: 48px !important; }

.m-l-2xl {
  margin-left: 48px !important; }

.m-3xl {
  margin: 64px !important; }

.m-t-3xl {
  margin-top: 64px !important; }

.m-r-3xl {
  margin-right: 64px !important; }

.m-b-3xl {
  margin-bottom: 64px !important; }

.m-l-3xl {
  margin-left: 64px !important; }

.m-4xl {
  margin: 72px !important; }

.m-t-4xl {
  margin-top: 72px !important; }

.m-r-4xl {
  margin-right: 72px !important; }

.m-b-4xl {
  margin-bottom: 72px !important; }

.m-l-4xl {
  margin-left: 72px !important; }

.m-5xl {
  margin: 96px !important; }

.m-t-5xl {
  margin-top: 96px !important; }

.m-r-5xl {
  margin-right: 96px !important; }

.m-b-5xl {
  margin-bottom: 96px !important; }

.m-l-5xl {
  margin-left: 96px !important; }

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

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

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

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

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

.p-xxs {
  padding: 2px !important; }

.p-t-xxs {
  padding-top: 2px !important; }

.p-r-xxs {
  padding-right: 2px !important; }

.p-b-xxs {
  padding-bottom: 2px !important; }

.p-l-xxs {
  padding-left: 2px !important; }

.p-xs {
  padding: 4px !important; }

.p-t-xs {
  padding-top: 4px !important; }

.p-r-xs {
  padding-right: 4px !important; }

.p-b-xs {
  padding-bottom: 4px !important; }

.p-l-xs {
  padding-left: 4px !important; }

.p-s {
  padding: 8px !important; }

.p-t-s {
  padding-top: 8px !important; }

.p-r-s {
  padding-right: 8px !important; }

.p-b-s {
  padding-bottom: 8px !important; }

.p-l-s {
  padding-left: 8px !important; }

.p-m {
  padding: 16px !important; }

.p-t-m {
  padding-top: 16px !important; }

.p-r-m {
  padding-right: 16px !important; }

.p-b-m {
  padding-bottom: 16px !important; }

.p-l-m {
  padding-left: 16px !important; }

.p-l {
  padding: 24px !important; }

.p-t-l {
  padding-top: 24px !important; }

.p-r-l {
  padding-right: 24px !important; }

.p-b-l {
  padding-bottom: 24px !important; }

.p-l-l {
  padding-left: 24px !important; }

.p-xl {
  padding: 32px !important; }

.p-t-xl {
  padding-top: 32px !important; }

.p-r-xl {
  padding-right: 32px !important; }

.p-b-xl {
  padding-bottom: 32px !important; }

.p-l-xl {
  padding-left: 32px !important; }

.p-2xl {
  padding: 48px !important; }

.p-t-2xl {
  padding-top: 48px !important; }

.p-r-2xl {
  padding-right: 48px !important; }

.p-b-2xl {
  padding-bottom: 48px !important; }

.p-l-2xl {
  padding-left: 48px !important; }

.p-3xl {
  padding: 64px !important; }

.p-t-3xl {
  padding-top: 64px !important; }

.p-r-3xl {
  padding-right: 64px !important; }

.p-b-3xl {
  padding-bottom: 64px !important; }

.p-l-3xl {
  padding-left: 64px !important; }

.p-4xl {
  padding: 72px !important; }

.p-t-4xl {
  padding-top: 72px !important; }

.p-r-4xl {
  padding-right: 72px !important; }

.p-b-4xl {
  padding-bottom: 72px !important; }

.p-l-4xl {
  padding-left: 72px !important; }

.p-5xl {
  padding: 96px !important; }

.p-t-5xl {
  padding-top: 96px !important; }

.p-r-5xl {
  padding-right: 96px !important; }

.p-b-5xl {
  padding-bottom: 96px !important; }

.p-l-5xl {
  padding-left: 96px !important; }

.w-0 {
  width: 0 !important; }

.w-xxs {
  width: 2px !important; }

.w-xs {
  width: 4px !important; }

.w-s {
  width: 8px !important; }

.w-m {
  width: 16px !important; }

.w-l {
  width: 24px !important; }

.w-xl {
  width: 32px !important; }

.w-2xl {
  width: 48px !important; }

.w-3xl {
  width: 64px !important; }

.w-4xl {
  width: 72px !important; }

.w-5xl {
  width: 96px !important; }

.h-0 {
  height: 0 !important; }

.h-xxs {
  height: 2px !important; }

.h-xs {
  height: 4px !important; }

.h-s {
  height: 8px !important; }

.h-m {
  height: 16px !important; }

.h-l {
  height: 24px !important; }

.h-xl {
  height: 32px !important; }

.h-2xl {
  height: 48px !important; }

.h-3xl {
  height: 64px !important; }

.h-4xl {
  height: 72px !important; }

.h-5xl {
  height: 96px !important; }

/* stylelint-enable declaration-no-important */
/* stylelint-disable length-zero-no-unit */
/* stylelint-disable length-zero-no-unit */
:root {
  font-size: 16px;
  line-height: 1.5625em; }

.kmx-typography {
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif; }

.kmx-typography--display-1 {
  font-weight: 700;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 14px;
  letter-spacing: normal;
  line-height: 1.14286;
  color: #053361; }
  @media (min-width: 37.5em) {
    .kmx-typography--display-1 {
      font-weight: 700;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 16px;
      letter-spacing: -0.13px;
      line-height: 1.25; } }

.kmx-typography--display-2 {
  font-weight: 700;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 16px;
  letter-spacing: -0.13px;
  line-height: 1.25;
  color: #053361; }
  @media (min-width: 37.5em) {
    .kmx-typography--display-2 {
      font-weight: 700;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 20px;
      letter-spacing: -0.25px;
      line-height: 1.25; } }

.kmx-typography--display-3 {
  font-weight: 700;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 20px;
  letter-spacing: -0.25px;
  line-height: 1.25;
  color: #053361; }
  @media (min-width: 37.5em) {
    .kmx-typography--display-3 {
      font-weight: 700;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 25px;
      letter-spacing: -0.38px;
      line-height: 1.24; } }

.kmx-typography--display-4 {
  font-weight: 700;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 25px;
  letter-spacing: -0.38px;
  line-height: 1.24;
  color: #053361; }
  @media (min-width: 37.5em) {
    .kmx-typography--display-4 {
      font-weight: 700;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 31px;
      letter-spacing: -0.5px;
      line-height: 1.25806; } }

.kmx-typography--display-5 {
  font-weight: 700;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 31px;
  letter-spacing: -0.5px;
  line-height: 1.25806;
  color: #053361; }
  @media (min-width: 37.5em) {
    .kmx-typography--display-5 {
      font-weight: 700;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 39px;
      letter-spacing: -0.63px;
      line-height: 1.23077; } }

.kmx-typography--display-6 {
  font-weight: 700;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 39px;
  letter-spacing: -0.63px;
  line-height: 1.23077;
  color: #053361; }
  @media (min-width: 37.5em) {
    .kmx-typography--display-6 {
      font-weight: 700;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 48px;
      letter-spacing: -0.75px;
      line-height: 1.27083; } }

.kmx-typography--headline-1 {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 14px;
  line-height: 1.42857;
  font-weight: 700;
  color: #053361; }

.kmx-typography--headline-2 {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  font-weight: 700;
  color: #053361; }

.kmx-typography--headline-3 {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 20px;
  line-height: 1.55;
  font-weight: 700;
  color: #053361; }

.kmx-typography--body-1 {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 14px;
  line-height: 1.42857;
  color: #6d747a; }

p,
.kmx-typography--body-2 {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #6d747a; }

.kmx-typography--body-3 {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 20px;
  line-height: 1.55;
  color: #6d747a; }

.kmx-typography--fine-print {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 12px;
  line-height: 1.33333;
  color: #6d747a; }

.kmx-typography--emphasis {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 31px;
  line-height: 1.54839;
  color: #1773cf; }

.kmx-typography--label-sm {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 12px;
  line-height: 1.33333;
  color: #6d747a; }

.kmx-typography--label-lg {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #6d747a; }

/* stylelint-disable selector-max-type */
blockquote,
figure,
figcaption {
  margin: 0; }

blockquote p {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 31px;
  line-height: 1.54839;
  color: #1773cf; }
  @media (max-width: 37.49em) {
    blockquote p {
      font-size: 24px;
      line-height: 1.2em; } }

figure {
  margin: 24px 0; }

figcaption {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 14px;
  line-height: 1.42857;
  color: #6d747a; }
  @media (min-width: 37.5em) {
    figcaption {
      font-weight: 400;
      font-family: "Lato", "Verdana", "Arial", sans-serif;
      letter-spacing: normal;
      font-size: 16px;
      line-height: 1.5625;
      color: #6d747a; } }

ol,
ul {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #6d747a;
  list-style-position: outside;
  padding-left: 32px;
  padding-right: 16px;
  /* stylelint-disable-next-line selector-max-type */
  padding: 0;
  margin: 0;
  list-style-position: inside; }
  ol li,
  ul li {
    margin-bottom: 24px; }
  ol li,
  ul li {
    margin-bottom: 16px; }

/* stylelint-enable selector-max-type */
/* The Base Hyperlink Style for CarMax.com
 *
 * Simple hyperlinks, such as those used within running text, should not
 * require a CSS class assignment. This
 */
/* stylelint-disable selector-max-type */
a:not(.mdc-tab):not(.kmx-button):not(.kmx-pagination__list-item-link):not(.kmx-stores-list-item__link):link {
  color: #1773cf; }

a:not(.mdc-tab):not(.kmx-button):not(.kmx-pagination__list-item-link):not(.kmx-stores-list-item__link):visited {
  color: #1773cf; }

a:not(.mdc-tab):not(.kmx-button):not(.kmx-pagination__list-item-link):not(.kmx-stores-list-item__link):hover, a:not(.mdc-tab):not(.kmx-button):not(.kmx-pagination__list-item-link):not(.kmx-stores-list-item__link):visited:hover, a:not(.mdc-tab):not(.kmx-button):not(.kmx-pagination__list-item-link):not(.kmx-stores-list-item__link):active {
  color: #004487; }

/* stylelint-enable */
/* Special override class - only to be used on <a> elements: */
.kmx-typography--link:link {
  color: #1773cf; }

.kmx-typography--link:visited {
  color: #1773cf; }

.kmx-typography--link:hover, .kmx-typography--link:visited:hover, .kmx-typography--link:active {
  color: #004487; }

/* stylelint-disable length-zero-no-unit */
/* stylelint-disable selector-max-type */
ol,
ul,
.kmx-typography--ol,
.kmx-typography--ul {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #6d747a;
  list-style-position: outside;
  padding-left: 32px;
  padding-right: 16px;
  /* stylelint-disable-next-line selector-max-type */ }
  ol li,
  ul li,
  .kmx-typography--ol li,
  .kmx-typography--ul li {
    margin-bottom: 24px; }

.kmx-typography--list-unstyled {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #6d747a;
  list-style-position: outside;
  padding-left: 32px;
  padding-right: 16px;
  list-style-type: none;
  /* stylelint-disable-next-line selector-max-type */ }
  .kmx-typography--list-unstyled li {
    margin-bottom: 24px; }

/* stylelint-enable selector-max-type */
.kmx-typography--align-left {
  text-align: left; }

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

.kmx-typography--font-main {
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif; }

.kmx-typography--font-alt {
  font-family: "Lato", "Verdana", "Arial", sans-serif; }

.kmx-typography--font-mono {
  font-family: "Courier New", Consolas, Courier, monospace; }

.kmx-typography--weight-400 {
  font-weight: 400; }

.kmx-typography--weight-600 {
  font-weight: 700; }

.kmx-typography--weight-700 {
  font-weight: 700; }

.no-wrap,
.text-no-wrap {
  white-space: nowrap; }

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

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

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

.text-strike-through {
  text-decoration: line-through; }

:root {
  --mdc-theme-primary: #053361;
  --mdc-theme-secondary: #ffd900;
  --mdc-theme-background: #fff;
  --mdc-theme-surface: #fff;
  --mdc-theme-on-primary: #fff;
  --mdc-theme-on-secondary: #000;
  --mdc-theme-on-surface: #000;
  --mdc-theme-text-primary-on-background: rgba(0, 0, 0, 0.87);
  --mdc-theme-text-secondary-on-background: rgba(0, 0, 0, 0.54);
  --mdc-theme-text-hint-on-background: rgba(0, 0, 0, 0.38);
  --mdc-theme-text-disabled-on-background: rgba(0, 0, 0, 0.38);
  --mdc-theme-text-icon-on-background: rgba(0, 0, 0, 0.38);
  --mdc-theme-text-primary-on-light: rgba(0, 0, 0, 0.87);
  --mdc-theme-text-secondary-on-light: rgba(0, 0, 0, 0.54);
  --mdc-theme-text-hint-on-light: rgba(0, 0, 0, 0.38);
  --mdc-theme-text-disabled-on-light: rgba(0, 0, 0, 0.38);
  --mdc-theme-text-icon-on-light: rgba(0, 0, 0, 0.38);
  --mdc-theme-text-primary-on-dark: white;
  --mdc-theme-text-secondary-on-dark: rgba(255, 255, 255, 0.7);
  --mdc-theme-text-hint-on-dark: rgba(255, 255, 255, 0.5);
  --mdc-theme-text-disabled-on-dark: rgba(255, 255, 255, 0.5);
  --mdc-theme-text-icon-on-dark: rgba(255, 255, 255, 0.5); }

.mdc-theme--primary {
  color: #053361 !important;
  /* @alternate */
  color: #053361 !important;
  color: var(--mdc-theme-primary, #053361) !important; }

.mdc-theme--secondary {
  color: #ffd900 !important;
  /* @alternate */
  color: #ffd900 !important;
  color: var(--mdc-theme-secondary, #ffd900) !important; }

.mdc-theme--background {
  background-color: #fff;
  /* @alternate */
  background-color: #fff;
  background-color: var(--mdc-theme-background, #fff); }

.mdc-theme--surface {
  background-color: #fff;
  /* @alternate */
  background-color: #fff;
  background-color: var(--mdc-theme-surface, #fff); }

.mdc-theme--on-primary {
  color: #fff !important;
  /* @alternate */
  color: #fff !important;
  color: var(--mdc-theme-on-primary, #fff) !important; }

.mdc-theme--on-secondary {
  color: #000 !important;
  /* @alternate */
  color: #000 !important;
  color: var(--mdc-theme-on-secondary, #000) !important; }

.mdc-theme--on-surface {
  color: #000 !important;
  /* @alternate */
  color: #000 !important;
  color: var(--mdc-theme-on-surface, #000) !important; }

.mdc-theme--text-primary-on-background {
  color: rgba(0, 0, 0, 0.87) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.87) !important;
  color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87)) !important; }

.mdc-theme--text-secondary-on-background {
  color: rgba(0, 0, 0, 0.54) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.54) !important;
  color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54)) !important; }

.mdc-theme--text-hint-on-background {
  color: rgba(0, 0, 0, 0.38) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.38) !important;
  color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38)) !important; }

.mdc-theme--text-disabled-on-background {
  color: rgba(0, 0, 0, 0.38) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.38) !important;
  color: var(--mdc-theme-text-disabled-on-background, rgba(0, 0, 0, 0.38)) !important; }

.mdc-theme--text-icon-on-background {
  color: rgba(0, 0, 0, 0.38) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.38) !important;
  color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38)) !important; }

.mdc-theme--text-primary-on-light {
  color: rgba(0, 0, 0, 0.87) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.87) !important;
  color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87)) !important; }

.mdc-theme--text-secondary-on-light {
  color: rgba(0, 0, 0, 0.54) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.54) !important;
  color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54)) !important; }

.mdc-theme--text-hint-on-light {
  color: rgba(0, 0, 0, 0.38) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.38) !important;
  color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38)) !important; }

.mdc-theme--text-disabled-on-light {
  color: rgba(0, 0, 0, 0.38) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.38) !important;
  color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38)) !important; }

.mdc-theme--text-icon-on-light {
  color: rgba(0, 0, 0, 0.38) !important;
  /* @alternate */
  color: rgba(0, 0, 0, 0.38) !important;
  color: var(--mdc-theme-text-icon-on-light, rgba(0, 0, 0, 0.38)) !important; }

.mdc-theme--text-primary-on-dark {
  color: white !important;
  /* @alternate */
  color: white !important;
  color: var(--mdc-theme-text-primary-on-dark, white) !important; }

.mdc-theme--text-secondary-on-dark {
  color: rgba(255, 255, 255, 0.7) !important;
  /* @alternate */
  color: rgba(255, 255, 255, 0.7) !important;
  color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7)) !important; }

.mdc-theme--text-hint-on-dark {
  color: rgba(255, 255, 255, 0.5) !important;
  /* @alternate */
  color: rgba(255, 255, 255, 0.5) !important;
  color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5)) !important; }

.mdc-theme--text-disabled-on-dark {
  color: rgba(255, 255, 255, 0.5) !important;
  /* @alternate */
  color: rgba(255, 255, 255, 0.5) !important;
  color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5)) !important; }

.mdc-theme--text-icon-on-dark {
  color: rgba(255, 255, 255, 0.5) !important;
  /* @alternate */
  color: rgba(255, 255, 255, 0.5) !important;
  color: var(--mdc-theme-text-icon-on-dark, rgba(255, 255, 255, 0.5)) !important; }

.mdc-theme--primary-bg {
  background-color: #053361 !important;
  /* @alternate */
  background-color: #053361 !important;
  background-color: var(--mdc-theme-primary, #053361) !important; }

.mdc-theme--secondary-bg {
  background-color: #ffd900 !important;
  /* @alternate */
  background-color: #ffd900 !important;
  background-color: var(--mdc-theme-secondary, #ffd900) !important; }

.mdc-typography {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }

.mdc-typography--headline1 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 6rem;
  line-height: 6rem;
  font-weight: 300;
  letter-spacing: -0.01563em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--headline2 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 3.75rem;
  line-height: 3.75rem;
  font-weight: 300;
  letter-spacing: -0.00833em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--headline3 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 3rem;
  line-height: 3.125rem;
  font-weight: 400;
  letter-spacing: normal;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--headline4 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 2.125rem;
  line-height: 2.5rem;
  font-weight: 400;
  letter-spacing: 0.00735em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--headline5 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 400;
  letter-spacing: normal;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--headline6 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.25rem;
  line-height: 2rem;
  font-weight: 500;
  letter-spacing: 0.0125em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--subtitle1 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--subtitle2 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 1.375rem;
  font-weight: 500;
  letter-spacing: 0.00714em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--body1 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.03125em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--body2 {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.01786em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--caption {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.75rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.03333em;
  text-decoration: inherit;
  text-transform: inherit; }

.mdc-typography--button {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.08929em;
  text-decoration: none;
  text-transform: uppercase; }

.mdc-typography--overline {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.75rem;
  line-height: 2rem;
  font-weight: 500;
  letter-spacing: 0.16667em;
  text-decoration: none;
  text-transform: uppercase; }

/* stylelint-disable length-zero-no-unit */
.kmx-breadcrumb-wrapper {
  font-weight: 400;
  color: #8c9196;
  display: block;
  font-size: 14px;
  height: 18px;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  margin-bottom: 8px;
  /* stylelint-disable declaration-no-important */
  /* stylelint-enable declaration-no-important*/ }
  .kmx-breadcrumb-wrapper .svg-icon {
    width: 8px;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable selector-max-type */ }
    .kmx-breadcrumb-wrapper .svg-icon svg {
      fill: currentColor;
      height: 9px; }
  .kmx-breadcrumb-wrapper .kmx-breadcrumb {
    display: -webkit-inline-flex;
    display: inline-flex;
    list-style-type: none;
    padding: 0;
    line-height: 1; }
    .kmx-breadcrumb-wrapper .kmx-breadcrumb-list-item {
      list-style: none;
      display: -webkit-inline-flex;
      display: inline-flex;
      height: 100%;
      margin: 0;
      /* stylelint-disable selector-max-type */
      /* stylelint-enable selector-max-type*/ }
      .kmx-breadcrumb-wrapper .kmx-breadcrumb-list-item a {
        padding: 0 3px; }
        .kmx-breadcrumb-wrapper .kmx-breadcrumb-list-item a:hover svg, .kmx-breadcrumb-wrapper .kmx-breadcrumb-list-item a:active svg {
          fill: currentColor; }
    .kmx-breadcrumb-wrapper .kmx-breadcrumb-home {
      /* stylelint-disable selector-max-type */
      /* stylelint-enable selector-max-type*/ }
      .kmx-breadcrumb-wrapper .kmx-breadcrumb-home a {
        -webkit-align-items: center;
                align-items: center;
        display: -webkit-flex;
        display: flex;
        height: 16px;
        -webkit-justify-content: center;
                justify-content: center; }
      .kmx-breadcrumb-wrapper .kmx-breadcrumb-home svg {
        fill: currentColor;
        height: 100%;
        width: 16px; }
    .kmx-breadcrumb-wrapper .kmx-breadcrumb-separator {
      color: inherit; }
    .kmx-breadcrumb-wrapper .kmx-breadcrumb [itemprop='name'] {
      white-space: nowrap; }
  .kmx-breadcrumb-wrapper [aria-current='page'] {
    color: #8c9196 !important;
    pointer-events: none;
    text-decoration: none; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

.kmx-button {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.08929em;
  text-decoration: none;
  text-transform: uppercase;
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  padding: 0 8px 0 8px;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  box-sizing: border-box;
  min-width: 64px;
  height: 36px;
  border: none;
  outline: none;
  /* @alternate */
  line-height: inherit;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none;
  overflow: hidden;
  vertical-align: middle;
  border-radius: 2px;
  font-weight: 700;
  align-items: center;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  letter-spacing: 0.05em;
  line-height: 36px;
  padding: 0 16px; }
  .kmx-button::before, .kmx-button::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .kmx-button::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .kmx-button.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .kmx-button.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .kmx-button.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .kmx-button.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .kmx-button.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .kmx-button::before, .kmx-button::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .kmx-button.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .kmx-button::-moz-focus-inner {
    padding: 0;
    border: 0; }
  .kmx-button:active {
    outline: none; }
  .kmx-button:hover {
    cursor: pointer; }
  .kmx-button:disabled {
    background-color: transparent;
    color: rgba(0, 0, 0, 0.37);
    cursor: default;
    pointer-events: none; }
  .kmx-button:before, .kmx-button:after {
    visibility: hidden; }
  .kmx-button:focus {
    outline-color: #1773cf;
    outline-style: auto;
    outline-width: medium;
    outline-width: initial; }
  .kmx-button .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-button .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-button .svg-icon {
    height: 20px;
    width: 20px;
    margin: 0 8px 0 0; }
    .kmx-button .svg-icon.icon-after {
      margin: 0 0 0 8px; }
  .kmx-button .svg-icon-wrapper {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    width: 100%;
    height: 100%; }
  .kmx-button--primary {
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear; }
    .kmx-button--primary:not(:disabled) {
      background-color: #ffd900; }
    .kmx-button--primary:not(:disabled) {
      color: #053361; }
    .kmx-button--primary:hover, .kmx-button--primary:focus {
      background-color: #fcec3f;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear; }
    .kmx-button--primary:active {
      background-color: #ffc000;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear; }
  .kmx-button--secondary {
    border-style: solid;
    padding: 0 15px 0 15px;
    border-width: 1px;
    -webkit-transition: border-color 20ms linear;
    transition: border-color 20ms linear;
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear; }
    .kmx-button--secondary:not(:disabled) {
      background-color: #ffffff; }
    .kmx-button--secondary:not(:disabled) {
      color: #053361; }
    .kmx-button--secondary:disabled {
      border-color: rgba(0, 0, 0, 0.37); }
    .kmx-button--secondary:not(:disabled) {
      border-color: #053361; }
    .kmx-button--secondary:hover, .kmx-button--secondary:focus {
      -webkit-transition: border-color 20ms linear;
      transition: border-color 20ms linear; }
      .kmx-button--secondary:hover:not(:disabled), .kmx-button--secondary:focus:not(:disabled) {
        border-color: #1773cf; }
    .kmx-button--secondary:active {
      background-color: #dedfe0;
      -webkit-transition: border-color 20ms linear;
      transition: border-color 20ms linear;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear; }
      .kmx-button--secondary:active:not(:disabled) {
        border-color: #053361; }
  .kmx-button--tertiary {
    -webkit-transition: color 20ms linear;
    transition: color 20ms linear;
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear; }
    .kmx-button--tertiary:not(:disabled) {
      background-color: transparent; }
    .kmx-button--tertiary:not(:disabled) {
      color: #053361; }
    .kmx-button--tertiary:hover, .kmx-button--tertiary:focus {
      color: #1773cf;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }
    .kmx-button--tertiary:active {
      background-color: #dedfe0;
      color: #053361;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }
  .kmx-button--tertiary-white {
    -webkit-transition: color 20ms linear;
    transition: color 20ms linear;
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear; }
    .kmx-button--tertiary-white:not(:disabled) {
      background-color: transparent; }
    .kmx-button--tertiary-white:not(:disabled) {
      color: #053361; }
    .kmx-button--tertiary-white:hover, .kmx-button--tertiary-white:focus {
      color: #1773cf;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }
    .kmx-button--tertiary-white:active {
      background-color: #dedfe0;
      color: #053361;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }
    .kmx-button--tertiary-white:not(:disabled) {
      background-color: transparent; }
    .kmx-button--tertiary-white:not(:disabled) {
      color: #ffffff; }
    .kmx-button--tertiary-white:active {
      background-color: rgba(222, 223, 224, 0.8);
      color: #ffffff;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }

.kmx-button--raised,
.kmx-button--unelevated {
  padding: 0 16px; }

.kmx-button--raised {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
  -webkit-transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1); }
  .kmx-button--raised:hover, .kmx-button--raised:focus {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12); }
  .kmx-button--raised:active {
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12); }
  .kmx-button--raised:disabled {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12); }

.kmx-button--unelevated:disabled, .kmx-button--unelevated[disabled],
.kmx-button--raised:disabled,
.kmx-button--raised[disabled],
.kmx-button:disabled,
.kmx-button[disabled] {
  background-color: #c8cacc;
  border: none;
  color: #8c9196; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

.kmx-icon-button {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.08929em;
  text-decoration: none;
  text-transform: uppercase;
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  padding: 0 8px 0 8px;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  box-sizing: border-box;
  min-width: 64px;
  height: 36px;
  border: none;
  outline: none;
  /* @alternate */
  line-height: inherit;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none;
  overflow: hidden;
  vertical-align: middle;
  border-radius: 2px;
  font-weight: 700;
  align-items: center;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  letter-spacing: 0.05em;
  line-height: 36px;
  padding: 0 16px;
  min-width: 0;
  padding: 0;
  width: 32px;
  height: 32px;
  display: inline-block; }
  .kmx-icon-button::before, .kmx-icon-button::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .kmx-icon-button::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .kmx-icon-button.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .kmx-icon-button.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .kmx-icon-button.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .kmx-icon-button.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .kmx-icon-button.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .kmx-icon-button::before, .kmx-icon-button::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .kmx-icon-button.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .kmx-icon-button::-moz-focus-inner {
    padding: 0;
    border: 0; }
  .kmx-icon-button:active {
    outline: none; }
  .kmx-icon-button:hover {
    cursor: pointer; }
  .kmx-icon-button:disabled {
    background-color: transparent;
    color: rgba(0, 0, 0, 0.37);
    cursor: default;
    pointer-events: none; }
  .kmx-icon-button:before, .kmx-icon-button:after {
    visibility: hidden; }
  .kmx-icon-button:focus {
    outline-color: #1773cf;
    outline-style: auto;
    outline-width: medium;
    outline-width: initial; }
  .kmx-icon-button .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-icon-button .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-icon-button .svg-icon {
    height: 24px;
    margin: 0;
    min-height: 24px;
    min-width: 24px;
    width: 24px; }
  .kmx-icon-button .svg-icon-wrapper {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    width: 100%;
    height: 100%; }
  .kmx-icon-button--primary {
    -webkit-transition: border-color 20ms linear;
    transition: border-color 20ms linear; }
    .kmx-icon-button--primary:not(:disabled) {
      background-color: #ffd900; }
    .kmx-icon-button--primary:not(:disabled) {
      color: #053361; }
    .kmx-icon-button--primary:before, .kmx-icon-button--primary:after {
      visibility: hidden; }
    .kmx-icon-button--primary:hover, .kmx-icon-button--primary:focus {
      background-color: #ffd900;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear; }
    .kmx-icon-button--primary:active {
      background-color: #ffc000;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear; }
  .kmx-icon-button--secondary {
    border-style: solid;
    padding: 0 15px 0 15px;
    border-width: 1px;
    -webkit-transition: border-color 20ms linear;
    transition: border-color 20ms linear;
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear;
    padding: 0; }
    .kmx-icon-button--secondary:not(:disabled) {
      background-color: #ffffff; }
    .kmx-icon-button--secondary:not(:disabled) {
      color: #053361; }
    .kmx-icon-button--secondary:disabled {
      border-color: rgba(0, 0, 0, 0.37); }
    .kmx-icon-button--secondary:not(:disabled) {
      border-color: #053361; }
    .kmx-icon-button--secondary:before, .kmx-icon-button--secondary:after {
      visibility: hidden; }
    .kmx-icon-button--secondary:hover, .kmx-icon-button--secondary:focus {
      -webkit-transition: border-color 20ms linear;
      transition: border-color 20ms linear; }
      .kmx-icon-button--secondary:hover:not(:disabled), .kmx-icon-button--secondary:focus:not(:disabled) {
        border-color: #1773cf; }
    .kmx-icon-button--secondary:active {
      background-color: #dedfe0;
      -webkit-transition: border-color 20ms linear;
      transition: border-color 20ms linear;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear; }
      .kmx-icon-button--secondary:active:not(:disabled) {
        border-color: #053361; }
    .kmx-icon-button--secondary:disabled {
      border: none; }
  .kmx-icon-button--tertiary {
    -webkit-transition: color 20ms linear;
    transition: color 20ms linear;
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear; }
    .kmx-icon-button--tertiary:not(:disabled) {
      background-color: transparent; }
    .kmx-icon-button--tertiary:not(:disabled) {
      color: #053361; }
    .kmx-icon-button--tertiary:before, .kmx-icon-button--tertiary:after {
      visibility: hidden; }
    .kmx-icon-button--tertiary:hover, .kmx-icon-button--tertiary:focus {
      color: #1773cf;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }
    .kmx-icon-button--tertiary:active {
      background-color: #dedfe0;
      color: #053361;
      -webkit-transition: background-color 20ms linear;
      transition: background-color 20ms linear;
      -webkit-transition: color 20ms linear;
      transition: color 20ms linear; }
  .kmx-icon-button--round {
    border-radius: 50%; }
  .mdc-toolbar .kmx-icon-button.mdc-toolbar__menu-icon, .kmx-secondary-header .kmx-icon-button.mdc-toolbar__menu-icon, .kmx-toolbar .kmx-icon-button.mdc-toolbar__menu-icon, .mdc-toolbar .kmx-icon-button.kmx-toolbar__menu-icon, .kmx-secondary-header .kmx-icon-button.kmx-toolbar__menu-icon, .kmx-toolbar .kmx-icon-button.kmx-toolbar__menu-icon {
    padding: 0; }

.mdc-card {
  background-color: #fff;
  /* @alternate */
  background-color: #fff;
  background-color: var(--mdc-theme-surface, #fff);
  border-radius: 2px;
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  box-sizing: border-box; }

.mdc-card--outlined {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  border: 1px solid #e0e0e0; }

.mdc-card__media {
  position: relative;
  box-sizing: border-box;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  .mdc-card__media::before {
    display: block;
    content: ""; }

.mdc-card__media:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit; }

.mdc-card__media:last-child {
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit; }

.mdc-card__media--square::before {
  margin-top: 100%; }

.mdc-card__media--16-9::before {
  margin-top: 56.25%; }

.mdc-card__media-content, .kmx-card__title {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-sizing: border-box; }

.mdc-card__primary-action {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  box-sizing: border-box;
  position: relative;
  outline: none;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  overflow: hidden; }
  .mdc-card__primary-action::before, .mdc-card__primary-action::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-card__primary-action::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-card__primary-action.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-card__primary-action.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-card__primary-action.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-card__primary-action.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-card__primary-action.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-card__primary-action::before, .mdc-card__primary-action::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-card__primary-action.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-card__primary-action::before, .mdc-card__primary-action::after {
    background-color: black; }
  .mdc-card__primary-action:hover::before {
    opacity: 0.04; }
  .mdc-card__primary-action:not(.mdc-ripple-upgraded):focus::before, .mdc-card__primary-action.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  .mdc-card__primary-action:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  .mdc-card__primary-action:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.16; }
  .mdc-card__primary-action.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16; }

.mdc-card__primary-action:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit; }

.mdc-card__primary-action:last-child {
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit; }

.mdc-card__actions {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  box-sizing: border-box;
  min-height: 52px;
  padding: 8px; }

.mdc-card__actions--full-bleed {
  padding: 0; }

.mdc-card__action-buttons,
.mdc-card__action-icons {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  box-sizing: border-box; }

.mdc-card__action-icons {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: rgba(0, 0, 0, 0.38);
  color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38));
  -webkit-flex-grow: 1;
          flex-grow: 1;
  -webkit-justify-content: flex-end;
          justify-content: flex-end; }

.mdc-card__action-buttons + .mdc-card__action-icons {
  /* @noflip */
  margin-left: 16px;
  /* @noflip */
  margin-right: 0; }
  [dir="rtl"] .mdc-card__action-buttons + .mdc-card__action-icons, .mdc-card__action-buttons + .mdc-card__action-icons[dir="rtl"] {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 16px; }

.mdc-card__action {
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  box-sizing: border-box;
  -webkit-justify-content: center;
          justify-content: center;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .mdc-card__action:focus {
    outline: none; }

.mdc-card__action--button {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 8px;
  padding: 0 8px; }
  [dir="rtl"] .mdc-card__action--button, .mdc-card__action--button[dir="rtl"] {
    /* @noflip */
    margin-left: 8px;
    /* @noflip */
    margin-right: 0; }
  .mdc-card__action--button:last-child {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 0; }
    [dir="rtl"] .mdc-card__action--button:last-child, .mdc-card__action--button:last-child[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 0; }

.mdc-card__actions--full-bleed .mdc-card__action--button {
  -webkit-justify-content: space-between;
          justify-content: space-between;
  width: 100%;
  height: auto;
  max-height: none;
  margin: 0;
  padding: 8px 16px;
  text-align: left; }
  [dir="rtl"] .mdc-card__actions--full-bleed .mdc-card__action--button, .mdc-card__actions--full-bleed .mdc-card__action--button[dir="rtl"] {
    text-align: right; }

.mdc-card__action--icon {
  margin: -6px 0;
  padding: 12px; }

.mdc-card__action--icon:not(:disabled) {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: rgba(0, 0, 0, 0.38);
  color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38)); }

.kmx-card__title {
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif; }

.mdc-card__actions .kmx-card__action {
  padding: 0 8px;
  margin-right: 8px; }

@-webkit-keyframes mdc-ripple-fg-radius-in {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1);
            transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1); }
  to {
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); } }

@keyframes mdc-ripple-fg-radius-in {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1);
            transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1); }
  to {
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); } }

@-webkit-keyframes mdc-ripple-fg-opacity-in {
  from {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    opacity: 0; }
  to {
    opacity: 0;
    opacity: var(--mdc-ripple-fg-opacity, 0); } }

@keyframes mdc-ripple-fg-opacity-in {
  from {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    opacity: 0; }
  to {
    opacity: 0;
    opacity: var(--mdc-ripple-fg-opacity, 0); } }

@-webkit-keyframes mdc-ripple-fg-opacity-out {
  from {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    opacity: 0;
    opacity: var(--mdc-ripple-fg-opacity, 0); }
  to {
    opacity: 0; } }

@keyframes mdc-ripple-fg-opacity-out {
  from {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    opacity: 0;
    opacity: var(--mdc-ripple-fg-opacity, 0); }
  to {
    opacity: 0; } }

.mdc-ripple-surface--test-edge-var-bug {
  --mdc-ripple-surface-test-edge-var: 1px solid #000;
  visibility: hidden; }
  .mdc-ripple-surface--test-edge-var-bug::before {
    border: var(--mdc-ripple-surface-test-edge-var); }

@-webkit-keyframes mdc-checkbox-unchecked-checked-checkmark-path {
  0%,
  50% {
    stroke-dashoffset: 29.78334; }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
            animation-timing-function: cubic-bezier(0, 0, 0.2, 1); }
  100% {
    stroke-dashoffset: 0; } }

@keyframes mdc-checkbox-unchecked-checked-checkmark-path {
  0%,
  50% {
    stroke-dashoffset: 29.78334; }
  50% {
    -webkit-animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
            animation-timing-function: cubic-bezier(0, 0, 0.2, 1); }
  100% {
    stroke-dashoffset: 0; } }

@-webkit-keyframes mdc-checkbox-unchecked-indeterminate-mixedmark {
  0%,
  68.2% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  68.2% {
    -webkit-animation-timing-function: cubic-bezier(0, 0, 0, 1);
            animation-timing-function: cubic-bezier(0, 0, 0, 1); }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark {
  0%,
  68.2% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  68.2% {
    -webkit-animation-timing-function: cubic-bezier(0, 0, 0, 1);
            animation-timing-function: cubic-bezier(0, 0, 0, 1); }
  100% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1); } }

@-webkit-keyframes mdc-checkbox-checked-unchecked-checkmark-path {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
            animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
    opacity: 1;
    stroke-dashoffset: 0; }
  to {
    opacity: 0;
    stroke-dashoffset: -29.78334; } }

@keyframes mdc-checkbox-checked-unchecked-checkmark-path {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
            animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
    opacity: 1;
    stroke-dashoffset: 0; }
  to {
    opacity: 0;
    stroke-dashoffset: -29.78334; } }

@-webkit-keyframes mdc-checkbox-checked-indeterminate-checkmark {
  from {
    -webkit-animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
            animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    opacity: 1; }
  to {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    opacity: 0; } }

@keyframes mdc-checkbox-checked-indeterminate-checkmark {
  from {
    -webkit-animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
            animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    opacity: 1; }
  to {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    opacity: 0; } }

@-webkit-keyframes mdc-checkbox-indeterminate-checked-checkmark {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
            animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    opacity: 0; }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    opacity: 1; } }

@keyframes mdc-checkbox-indeterminate-checked-checkmark {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
            animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    opacity: 0; }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    opacity: 1; } }

@-webkit-keyframes mdc-checkbox-checked-indeterminate-mixedmark {
  from {
    -webkit-animation-timing-function: mdc-animation-deceleration-curve-timing-function;
            animation-timing-function: mdc-animation-deceleration-curve-timing-function;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    opacity: 0; }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    opacity: 1; } }

@keyframes mdc-checkbox-checked-indeterminate-mixedmark {
  from {
    -webkit-animation-timing-function: mdc-animation-deceleration-curve-timing-function;
            animation-timing-function: mdc-animation-deceleration-curve-timing-function;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    opacity: 0; }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    opacity: 1; } }

@-webkit-keyframes mdc-checkbox-indeterminate-checked-mixedmark {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
            animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    opacity: 1; }
  to {
    -webkit-transform: rotate(315deg);
            transform: rotate(315deg);
    opacity: 0; } }

@keyframes mdc-checkbox-indeterminate-checked-mixedmark {
  from {
    -webkit-animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
            animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    opacity: 1; }
  to {
    -webkit-transform: rotate(315deg);
            transform: rotate(315deg);
    opacity: 0; } }

@-webkit-keyframes mdc-checkbox-indeterminate-unchecked-mixedmark {
  0% {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1; }
  32.8%,
  100% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0; } }

@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark {
  0% {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    opacity: 1; }
  32.8%,
  100% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    opacity: 0; } }

.mdc-checkbox, .kmx-checkbox, .kmx-checkbox--disabled {
  display: inline-block;
  position: relative;
  -webkit-flex: 0 0 18px;
          flex: 0 0 18px;
  box-sizing: content-box;
  width: 18px;
  height: 18px;
  padding: 11px;
  line-height: 0;
  white-space: nowrap;
  cursor: pointer;
  vertical-align: bottom;
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity; }
  .mdc-checkbox::before, .kmx-checkbox::before, .kmx-checkbox--disabled::before, .mdc-checkbox::after, .kmx-checkbox::after, .kmx-checkbox--disabled::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-checkbox::before, .kmx-checkbox::before, .kmx-checkbox--disabled::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-checkbox.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-checkbox::before, .mdc-ripple-upgraded.kmx-checkbox--disabled::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-checkbox.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-checkbox::after, .mdc-ripple-upgraded.kmx-checkbox--disabled::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-checkbox.mdc-ripple-upgraded--unbounded::after, .mdc-ripple-upgraded--unbounded.kmx-checkbox::after, .mdc-ripple-upgraded--unbounded.kmx-checkbox--disabled::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-checkbox.mdc-ripple-upgraded--foreground-activation::after, .mdc-ripple-upgraded--foreground-activation.kmx-checkbox::after, .mdc-ripple-upgraded--foreground-activation.kmx-checkbox--disabled::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-checkbox.mdc-ripple-upgraded--foreground-deactivation::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-checkbox::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-checkbox--disabled::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-checkbox::before, .kmx-checkbox::before, .kmx-checkbox--disabled::before, .mdc-checkbox::after, .kmx-checkbox::after, .kmx-checkbox--disabled::after {
    background-color: #ffd900; }
    @supports not (-ms-ime-align: auto) {
      .mdc-checkbox::before, .kmx-checkbox::before, .kmx-checkbox--disabled::before, .mdc-checkbox::after, .kmx-checkbox::after, .kmx-checkbox--disabled::after {
        /* @alternate */
        background-color: #ffd900;
        background-color: var(--mdc-theme-secondary, #ffd900); } }
  .mdc-checkbox:hover::before, .kmx-checkbox:hover::before, .kmx-checkbox--disabled:hover::before {
    opacity: 0.08; }
  .mdc-checkbox:not(.mdc-ripple-upgraded):focus::before, .kmx-checkbox:not(.mdc-ripple-upgraded):focus::before, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded):focus::before, .mdc-checkbox.mdc-ripple-upgraded--background-focused::before, .mdc-ripple-upgraded--background-focused.kmx-checkbox::before, .mdc-ripple-upgraded--background-focused.kmx-checkbox--disabled::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.24; }
  .mdc-checkbox:not(.mdc-ripple-upgraded)::after, .kmx-checkbox:not(.mdc-ripple-upgraded)::after, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  .mdc-checkbox:not(.mdc-ripple-upgraded):active::after, .kmx-checkbox:not(.mdc-ripple-upgraded):active::after, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.32; }
  .mdc-checkbox.mdc-ripple-upgraded, .mdc-ripple-upgraded.kmx-checkbox, .mdc-ripple-upgraded.kmx-checkbox--disabled {
    --mdc-ripple-fg-opacity: 0.32; }
  .mdc-checkbox::before, .kmx-checkbox::before, .kmx-checkbox--disabled::before, .mdc-checkbox::after, .kmx-checkbox::after, .kmx-checkbox--disabled::after {
    top: calc(50% - 50%);
    /* @noflip */
    left: calc(50% - 50%);
    width: 100%;
    height: 100%; }
  .mdc-checkbox.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-checkbox::before, .mdc-ripple-upgraded.kmx-checkbox--disabled::before, .mdc-checkbox.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-checkbox::after, .mdc-ripple-upgraded.kmx-checkbox--disabled::after {
    top: calc(50% - 50%);
    top: var(--mdc-ripple-top, calc(50% - 50%));
    /* @noflip */
    left: calc(50% - 50%);
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-checkbox.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-checkbox::after, .mdc-ripple-upgraded.kmx-checkbox--disabled::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }

.mdc-checkbox__checkmark {
  color: #fff; }

.mdc-checkbox__mixedmark {
  border-color: #fff; }

.mdc-checkbox__background::before {
  background-color: #ffd900; }
  @supports not (-ms-ime-align: auto) {
    .mdc-checkbox__background::before {
      /* @alternate */
      background-color: #ffd900;
      background-color: var(--mdc-theme-secondary, #ffd900); } }

.mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate) ~ .mdc-checkbox__background {
  border-color: rgba(0, 0, 0, 0.54);
  background-color: transparent; }

.mdc-checkbox__native-control:enabled:checked ~ .mdc-checkbox__background,
.mdc-checkbox__native-control:enabled:indeterminate ~ .mdc-checkbox__background {
  border-color: #ffd900;
  /* @alternate */
  border-color: #ffd900;
  border-color: var(--mdc-theme-secondary, #ffd900);
  background-color: #ffd900;
  /* @alternate */
  background-color: #ffd900;
  background-color: var(--mdc-theme-secondary, #ffd900); }

@-webkit-keyframes mdc-checkbox-fade-in-background-0 {
  0% {
    border-color: rgba(0, 0, 0, 0.54);
    background-color: transparent; }
  50% {
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900);
    background-color: #ffd900;
    /* @alternate */
    background-color: #ffd900;
    background-color: var(--mdc-theme-secondary, #ffd900); } }

@keyframes mdc-checkbox-fade-in-background-0 {
  0% {
    border-color: rgba(0, 0, 0, 0.54);
    background-color: transparent; }
  50% {
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900);
    background-color: #ffd900;
    /* @alternate */
    background-color: #ffd900;
    background-color: var(--mdc-theme-secondary, #ffd900); } }

@-webkit-keyframes mdc-checkbox-fade-out-background-0 {
  0%, 80% {
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900);
    background-color: #ffd900;
    /* @alternate */
    background-color: #ffd900;
    background-color: var(--mdc-theme-secondary, #ffd900); }
  100% {
    border-color: rgba(0, 0, 0, 0.54);
    background-color: transparent; } }

@keyframes mdc-checkbox-fade-out-background-0 {
  0%, 80% {
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900);
    background-color: #ffd900;
    /* @alternate */
    background-color: #ffd900;
    background-color: var(--mdc-theme-secondary, #ffd900); }
  100% {
    border-color: rgba(0, 0, 0, 0.54);
    background-color: transparent; } }

.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
  -webkit-animation-name: mdc-checkbox-fade-in-background-0;
          animation-name: mdc-checkbox-fade-in-background-0; }

.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
  -webkit-animation-name: mdc-checkbox-fade-out-background-0;
          animation-name: mdc-checkbox-fade-out-background-0; }

.mdc-checkbox__native-control:disabled:not(:checked):not(:indeterminate) ~ .mdc-checkbox__background {
  border-color: rgba(0, 0, 0, 0.26); }

.mdc-checkbox__native-control:disabled:checked ~ .mdc-checkbox__background,
.mdc-checkbox__native-control:disabled:indeterminate ~ .mdc-checkbox__background {
  border-color: transparent;
  background-color: rgba(0, 0, 0, 0.26); }

@media screen and (-ms-high-contrast: active) {
  .mdc-checkbox__mixedmark {
    margin: 0 1px; } }

.mdc-checkbox--disabled {
  cursor: default;
  pointer-events: none; }

.mdc-checkbox__background {
  /* @noflip */
  left: 11px;
  /* @noflip */
  right: auto;
  right: initial;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: absolute;
  top: 11px;
  bottom: 0;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  box-sizing: border-box;
  width: 45%;
  height: 45%;
  -webkit-transition: background-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: background-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  border: 2px solid currentColor;
  border-radius: 2px;
  background-color: transparent;
  pointer-events: none;
  will-change: background-color, border-color; }
  .mdc-checkbox[dir="rtl"] .mdc-checkbox__background, .kmx-checkbox[dir="rtl"] .mdc-checkbox__background, .kmx-checkbox--disabled[dir="rtl"] .mdc-checkbox__background,
  [dir="rtl"] .mdc-checkbox .mdc-checkbox__background,
  [dir="rtl"] .kmx-checkbox .mdc-checkbox__background,
  [dir="rtl"] .kmx-checkbox--disabled .mdc-checkbox__background {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 11px; }

.mdc-checkbox__checkmark {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  -webkit-transition: opacity 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  opacity: 0; }
  .mdc-checkbox--upgraded .mdc-checkbox__checkmark {
    opacity: 1; }

.mdc-checkbox__checkmark-path {
  -webkit-transition: stroke-dashoffset 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: stroke-dashoffset 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  stroke: currentColor;
  stroke-width: 3.12px;
  stroke-dashoffset: 29.78334;
  stroke-dasharray: 29.78334; }

.mdc-checkbox__mixedmark {
  width: 100%;
  height: 0;
  -webkit-transform: scaleX(0) rotate(0deg);
          transform: scaleX(0) rotate(0deg);
  -webkit-transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  border-width: 1px;
  border-style: solid;
  opacity: 0; }

.mdc-checkbox--upgraded .mdc-checkbox__background,
.mdc-checkbox--upgraded .mdc-checkbox__checkmark,
.mdc-checkbox--upgraded .mdc-checkbox__checkmark-path,
.mdc-checkbox--upgraded .mdc-checkbox__mixedmark {
  -webkit-transition: none !important;
  transition: none !important; }

.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background, .mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background, .mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background, .mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background {
  -webkit-animation-duration: 180ms;
          animation-duration: 180ms;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear; }

.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path {
  -webkit-animation: 180ms linear 0s mdc-checkbox-unchecked-checked-checkmark-path;
          animation: 180ms linear 0s mdc-checkbox-unchecked-checked-checkmark-path;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark {
  -webkit-animation: 90ms linear 0s mdc-checkbox-unchecked-indeterminate-mixedmark;
          animation: 90ms linear 0s mdc-checkbox-unchecked-indeterminate-mixedmark;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path {
  -webkit-animation: 90ms linear 0s mdc-checkbox-checked-unchecked-checkmark-path;
          animation: 90ms linear 0s mdc-checkbox-checked-unchecked-checkmark-path;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark {
  -webkit-animation: 90ms linear 0s mdc-checkbox-checked-indeterminate-checkmark;
          animation: 90ms linear 0s mdc-checkbox-checked-indeterminate-checkmark;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark {
  -webkit-animation: 90ms linear 0s mdc-checkbox-checked-indeterminate-mixedmark;
          animation: 90ms linear 0s mdc-checkbox-checked-indeterminate-mixedmark;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark {
  -webkit-animation: 500ms linear 0s mdc-checkbox-indeterminate-checked-checkmark;
          animation: 500ms linear 0s mdc-checkbox-indeterminate-checked-checkmark;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark {
  -webkit-animation: 500ms linear 0s mdc-checkbox-indeterminate-checked-mixedmark;
          animation: 500ms linear 0s mdc-checkbox-indeterminate-checked-mixedmark;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark {
  -webkit-animation: 300ms linear 0s mdc-checkbox-indeterminate-unchecked-mixedmark;
          animation: 300ms linear 0s mdc-checkbox-indeterminate-unchecked-mixedmark;
  -webkit-transition: none;
  transition: none; }

.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background,
.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background {
  -webkit-transition: border-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1), background-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: border-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1), background-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-checkbox__native-control:checked ~ .mdc-checkbox__background .mdc-checkbox__checkmark-path,
  .mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background .mdc-checkbox__checkmark-path {
    stroke-dashoffset: 0; }

.mdc-checkbox__background::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
  will-change: opacity, transform; }

.mdc-ripple-upgraded--background-focused .mdc-checkbox__background::before {
  content: none; }

.mdc-checkbox__native-control:focus ~ .mdc-checkbox__background::before {
  -webkit-transform: scale(2.75, 2.75);
          transform: scale(2.75, 2.75);
  -webkit-transition: opacity 80ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 80ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 80ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 80ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 80ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 80ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 80ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 80ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 80ms 0ms cubic-bezier(0, 0, 0.2, 1);
  opacity: 0.12; }

.mdc-checkbox__native-control {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: inherit; }
  .mdc-checkbox__native-control:disabled {
    cursor: default;
    pointer-events: none; }

.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background .mdc-checkbox__checkmark {
  -webkit-transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
  opacity: 1; }

.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {
  -webkit-transform: scaleX(1) rotate(-45deg);
          transform: scaleX(1) rotate(-45deg); }

.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background .mdc-checkbox__checkmark {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  opacity: 0; }

.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {
  -webkit-transform: scaleX(1) rotate(0deg);
          transform: scaleX(1) rotate(0deg);
  opacity: 1; }

.kmx-checkbox::before, .kmx-checkbox--disabled::before, .kmx-checkbox::after, .kmx-checkbox--disabled::after {
  background-color: #1773cf; }

.kmx-checkbox:hover::before, .kmx-checkbox--disabled:hover::before {
  opacity: 0.04; }

.kmx-checkbox:not(.mdc-ripple-upgraded):focus::before, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded):focus::before, .kmx-checkbox.mdc-ripple-upgraded--background-focused::before, .mdc-ripple-upgraded--background-focused.kmx-checkbox--disabled::before {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.12; }

.kmx-checkbox:not(.mdc-ripple-upgraded)::after, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded)::after {
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear; }

.kmx-checkbox:not(.mdc-ripple-upgraded):active::after, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded):active::after {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.16; }

.kmx-checkbox.mdc-ripple-upgraded, .mdc-ripple-upgraded.kmx-checkbox--disabled {
  --mdc-ripple-fg-opacity: 0.16; }

.kmx-checkbox .mdc-checkbox__background::before, .kmx-checkbox--disabled .mdc-checkbox__background::before {
  background-color: #1773cf; }

.kmx-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate) ~ .mdc-checkbox__background, .kmx-checkbox--disabled .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate) ~ .mdc-checkbox__background {
  border-color: #6d747a;
  background-color: #ffffff; }

.kmx-checkbox .mdc-checkbox__native-control:enabled:checked ~ .mdc-checkbox__background, .kmx-checkbox--disabled .mdc-checkbox__native-control:enabled:checked ~ .mdc-checkbox__background,
.kmx-checkbox .mdc-checkbox__native-control:enabled:indeterminate ~ .mdc-checkbox__background,
.kmx-checkbox--disabled .mdc-checkbox__native-control:enabled:indeterminate ~ .mdc-checkbox__background {
  border-color: #1773cf;
  background-color: #1773cf; }

@-webkit-keyframes mdc-checkbox-fade-in-background-1 {
  0% {
    border-color: #6d747a;
    background-color: #ffffff; }
  50% {
    border-color: #1773cf;
    background-color: #1773cf; } }

@keyframes mdc-checkbox-fade-in-background-1 {
  0% {
    border-color: #6d747a;
    background-color: #ffffff; }
  50% {
    border-color: #1773cf;
    background-color: #1773cf; } }

@-webkit-keyframes mdc-checkbox-fade-out-background-1 {
  0%,
  80% {
    border-color: #1773cf;
    background-color: #1773cf; }
  100% {
    border-color: #6d747a;
    background-color: #ffffff; } }

@keyframes mdc-checkbox-fade-out-background-1 {
  0%,
  80% {
    border-color: #1773cf;
    background-color: #1773cf; }
  100% {
    border-color: #6d747a;
    background-color: #ffffff; } }

.kmx-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-unchecked-checked.kmx-checkbox--disabled .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .kmx-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-unchecked-indeterminate.kmx-checkbox--disabled .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
  -webkit-animation-name: mdc-checkbox-fade-in-background-1;
          animation-name: mdc-checkbox-fade-in-background-1; }

.kmx-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-checked-unchecked.kmx-checkbox--disabled .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .kmx-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-indeterminate-unchecked.kmx-checkbox--disabled .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
  -webkit-animation-name: mdc-checkbox-fade-out-background-1;
          animation-name: mdc-checkbox-fade-out-background-1; }

.kmx-checkbox:hover::before, .kmx-checkbox--disabled:hover::before {
  opacity: 0.08; }

.kmx-checkbox:not(.mdc-ripple-upgraded):focus::before, .kmx-checkbox--disabled:not(.mdc-ripple-upgraded):focus::before, .kmx-checkbox.mdc-ripple-upgraded--background-focused::before, .mdc-ripple-upgraded--background-focused.kmx-checkbox--disabled::before {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.24; }

.kmx-checkbox::before, .kmx-checkbox--disabled::before, .kmx-checkbox::after, .kmx-checkbox--disabled::after {
  background-color: #1773cf; }

.kmx-checkbox--disabled::before, .kmx-checkbox--disabled::after {
  background-color: #abafb3; }

.kmx-checkbox--invalid .mdc-text-field-helper-text--validation-msg {
  opacity: 1;
  color: #e01f1f; }

.kmx-form-field--invalid + .kmx-checkbox-helper-text {
  opacity: 1;
  color: #e01f1f;
  padding-left: 11px; }

/* stylelint-disable length-zero-no-unit */
.kmx-checkbox:not(.kmx-checkbox--disabled), .kmx-checkbox--disabled:not(.kmx-checkbox--disabled) {
  /* stylelint-disable-next-line selector-max-type */ }
  .kmx-checkbox:not(.kmx-checkbox--disabled) + label, .kmx-checkbox--disabled:not(.kmx-checkbox--disabled) + label,
  .kmx-checkbox:not(.kmx-checkbox--disabled) + .kmx-checkbox-label,
  .kmx-checkbox--disabled:not(.kmx-checkbox--disabled) + .kmx-checkbox-label {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #6d747a; }

.kmx-checkbox--disabled {
  /* stylelint-disable-next-line selector-max-type */ }
  .kmx-checkbox--disabled + label,
  .kmx-checkbox--disabled + .kmx-checkbox-label {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #abafb3; }

/*
 * Note: the validation styling for text-field-helper
 * is located in ./_text-field-validation.scss
 *
 * The disabled styling for text-field-helper
 * is located in ./_text-field-disabled.scss
 */
.kmx-checkbox-helper-text {
  color: #6d747a;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  font-size: 12px;
  line-height: 1.16667;
  margin: 0;
  padding: 0 8px;
  margin-left: 3em; }

/*
	Improved screen reader only CSS class
	@author Gaël Poupard
		@note Based on Yahoo!'s technique
		@author Thierry Koblentz
		@see https://developer.yahoo.com/blogs/ydn/clip-hidden-content-better-accessibility-53456.html
	* 1.
		@note `clip` is deprecated but works everywhere
		@see https://developer.mozilla.org/en-US/docs/Web/CSS/clip
	* 2.
		@note `clip-path` is the future-proof version, but not very well supported yet
		@see https://developer.mozilla.org/en-US/docs/Web/CSS/clip-path
		@see http://caniuse.com/#search=clip-path
		@author Yvain Liechti
		@see https://twitter.com/ryuran78/status/778943389819604992
	* 3.
		@note preventing text to be condensed
		author J. Renée Beach
		@see https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
		@note Drupal 8 goes with word-wrap: normal instead
		@see https://www.drupal.org/node/2045151
		@see http://cgit.drupalcode.org/drupal/commit/?id=5b847ea
	* 4.
		@note !important is important
		@note Obviously you wanna hide something
		@author Harry Roberts
		@see http://csswizardry.com/2016/05/the-importance-of-important/
*/
/* stylelint-disable declaration-no-important */
.visually-hidden {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  /* 1 */
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  /* 2 */
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
  /* 3 */ }

/* stylelint-enable declaration-no-important */
/*
	Use in conjunction with .visually-hidden to only display content when it's focused.
	@note Useful for skip links
	@see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
	@note Based on a HTML5 Boilerplate technique, included in Bootstrap
	@note Fixed a bug with position: static on iOS 10.0.2 + VoiceOver
		@author Sylvain Pigeard
		@see https://github.com/twbs/bootstrap/issues/20732
*/
/* stylelint-disable declaration-no-important */
.visually-hidden-focusable:focus,
.visually-hidden-focusable:active {
  clip: auto !important;
  -webkit-clip-path: none !important;
  clip-path: none !important;
  height: auto !important;
  overflow: visible !important;
  width: auto !important;
  white-space: normal !important; }

/* stylelint-enable declaration-no-important */
.kmx-progress-circular-indeterminate {
  -webkit-align-items: center;
          align-items: center;
  color: #1773cf;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
          justify-content: center;
  position: relative;
  /* stylelint-disable selector-max-type */
  /* stylelint-enable selector-max-type */
  /* stylelint-disable selector-max-type */
  /* stylelint-enable selector-max-type */ }
  .kmx-progress-circular-indeterminate svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 8; }
  .kmx-progress-circular-indeterminate-large {
    height: 128px; }
    .kmx-progress-circular-indeterminate-large svg {
      height: 128px;
      stroke-width: 6;
      width: 128px; }
  .kmx-progress-circular-indeterminate-medium {
    height: 66px; }
    .kmx-progress-circular-indeterminate-medium svg {
      height: 64px;
      width: 64px; }
  .kmx-progress-circular-indeterminate-small {
    height: 34px; }
    .kmx-progress-circular-indeterminate-small svg {
      height: 32px;
      width: 32px; }
  .kmx-progress-circular-indeterminate-x-small {
    height: 18px; }
    .kmx-progress-circular-indeterminate-x-small svg {
      height: 16px;
      width: 16px; }

/* stylelint-disable length-zero-no-unit */
.kmx-search-form__container {
  -webkit-align-items: center;
          align-items: center;
  background-color: #ffffff;
  border-radius: 2px;
  display: -webkit-flex;
  display: flex; }
  .kmx-search-form__container:hover {
    border-color: transparent;
    box-shadow: 0 4px 8px 0 rgba(42, 52, 61, 0.16); }
  .kmx-search-form__container--focused {
    border-color: transparent;
    box-shadow: 0 4px 8px 0 rgba(42, 52, 61, 0.16); }
    .kmx-search-form__container--focused .kmx-search-form__submit-button .svg-icon {
      color: #053361; }

.kmx-search-form__search-input {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 14px;
  line-height: 1.42857;
  color: #6d747a;
  background-color: #ffffff;
  border: none;
  border-top-left-radius: 1px;
  border-bottom-left-radius: 1px;
  color: #053361;
  -webkit-flex-grow: 1;
          flex-grow: 1;
  height: 40px;
  min-width: 0;
  -webkit-order: 0;
          order: 0;
  outline: none;
  padding: 0 0 0 8px;
  width: 100%;
  /**
         * For ::placeholder styling,
         * Firefox needs opacity set explicitly to 1
         * in order to override default browser styles
         */
  /* stylelint-disable declaration-no-important */
  /* clears the 'X' from Internet Explorer */
  /* clears the 'X' from Chrome */
  /* stylelint-enable declaration-no-important */ }
  .kmx-search-form__search-input::-webkit-input-placeholder {
    color: #6d747a;
    opacity: 1; }
  .kmx-search-form__search-input::-moz-placeholder {
    color: #6d747a;
    opacity: 1; }
  .kmx-search-form__search-input:-ms-input-placeholder {
    color: #6d747a;
    opacity: 1; }
  .kmx-search-form__search-input::-ms-input-placeholder {
    color: #6d747a;
    opacity: 1; }
  .kmx-search-form__search-input::placeholder {
    color: #6d747a;
    opacity: 1; }
  .kmx-search-form__search-input:focus::-webkit-input-placeholder {
    color: #abafb3;
    opacity: 1; }
  .kmx-search-form__search-input:focus::-moz-placeholder {
    color: #abafb3;
    opacity: 1; }
  .kmx-search-form__search-input:focus:-ms-input-placeholder {
    color: #abafb3;
    opacity: 1; }
  .kmx-search-form__search-input:focus::-ms-input-placeholder {
    color: #abafb3;
    opacity: 1; }
  .kmx-search-form__search-input:focus::placeholder {
    color: #abafb3;
    opacity: 1; }
  .kmx-search-form__search-input:-ms-input-placeholder {
    color: #6d747a !important; }
  .kmx-search-form__search-input:focus:-ms-input-placeholder {
    color: #abafb3 !important; }
  .kmx-search-form__search-input::-ms-clear {
    display: none;
    width: 0;
    height: 0; }
  .kmx-search-form__search-input::-ms-reveal {
    display: none;
    width: 0;
    height: 0; }
  .kmx-search-form__search-input::-webkit-search-decoration, .kmx-search-form__search-input::-webkit-search-cancel-button, .kmx-search-form__search-input::-webkit-search-results-button, .kmx-search-form__search-input::-webkit-search-results-decoration {
    -webkit-appearance: none !important;
    display: none !important; }

.kmx-search-form__clear-button, .kmx-search-form__submit-button {
  background-color: #ffffff;
  border: none;
  cursor: pointer;
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  height: 40px;
  width: 40px; }
  .kmx-search-form__clear-button .svg-icon-wrapper, .kmx-search-form__submit-button .svg-icon-wrapper {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    width: 100%;
    height: 100%; }
  .kmx-search-form__clear-button .svg-icon, .kmx-search-form__submit-button .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-search-form__clear-button .svg-icon svg, .kmx-search-form__submit-button .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-search-form__clear-button .svg-icon, .kmx-search-form__submit-button .svg-icon {
    color: #6d747a;
    height: 24px;
    width: 24px; }

.kmx-search-form__clear-button {
  display: none;
  -webkit-order: 1;
          order: 1; }
  .kmx-search-form__clear-button.visible {
    display: block; }

.kmx-search-form__submit-button {
  border-top-right-radius: 1px;
  border-bottom-right-radius: 1px;
  -webkit-order: 2;
          order: 2; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
/* stylelint-disable length-zero-no-unit */
.mdc-dialog, .kmx-dialog {
  display: -webkit-flex;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  visibility: hidden;
  z-index: 5; }

.mdc-dialog__backdrop {
  background-color: rgba(0, 0, 0, 0.87);
  /* @alternate */
  background-color: rgba(0, 0, 0, 0.87);
  background-color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
  position: fixed;
  top: 0;
  left: 0;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: -1; }

.mdc-dialog__surface {
  box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
  background-color: #fff;
  /* @alternate */
  background-color: #fff;
  background-color: var(--mdc-theme-background, #fff);
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  width: calc(100% - 30px);
  min-width: 640px;
  max-width: 865px;
  -webkit-transform: translateY(150px) scale(0.8);
          transform: translateY(150px) scale(0.8);
  border-radius: 2px;
  opacity: 0; }
  .mdc-dialog[dir="rtl"] .mdc-dialog__surface, .kmx-dialog[dir="rtl"] .mdc-dialog__surface,
  [dir="rtl"] .mdc-dialog .mdc-dialog__surface,
  [dir="rtl"] .kmx-dialog .mdc-dialog__surface {
    text-align: right; }

.mdc-dialog__header {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  padding: 24px 24px 0; }
  .mdc-dialog[dir="rtl"] .mdc-dialog__header, .kmx-dialog[dir="rtl"] .mdc-dialog__header,
  [dir="rtl"] .mdc-dialog .mdc-dialog__header,
  [dir="rtl"] .kmx-dialog .mdc-dialog__header {
    text-align: right; }

.mdc-dialog__header__empty {
  padding: 0; }

.mdc-dialog__header__title {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.25rem;
  line-height: 2rem;
  font-weight: 500;
  letter-spacing: 0.0125em;
  text-decoration: inherit;
  text-transform: inherit;
  -webkit-flex: 1;
          flex: 1;
  margin: 0; }

.mdc-dialog__body {
  color: rgba(0, 0, 0, 0.54);
  /* @alternate */
  color: rgba(0, 0, 0, 0.54);
  color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.03125em;
  text-decoration: inherit;
  text-transform: inherit;
  margin-top: 20px;
  padding: 0 24px 24px; }

.mdc-dialog__body--scrollable {
  max-height: 195px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  overflow-x: auto;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; }

.mdc-dialog__footer {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: flex-end;
          justify-content: flex-end;
  padding: 8px; }

.mdc-dialog__footer__button {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 8px; }
  [dir="rtl"] .mdc-dialog__footer__button, .mdc-dialog__footer__button[dir="rtl"] {
    /* @noflip */
    margin-left: 8px;
    /* @noflip */
    margin-right: 0; }
  .mdc-dialog__footer__button:last-child {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 0; }
    [dir="rtl"] .mdc-dialog__footer__button:last-child, .mdc-dialog__footer__button:last-child[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 0; }

.mdc-dialog__action:not(:disabled) {
  color: #ffd900;
  /* @alternate */
  color: #ffd900;
  color: var(--mdc-theme-secondary, #ffd900); }

@media (max-width: 640px) {
  .mdc-dialog, .kmx-dialog {
    min-width: 280px; }
  .mdc-dialog__surface {
    min-width: 280px; }
  .mdc-dialog__body {
    line-height: 24px; } }

.mdc-dialog--animating {
  visibility: visible; }
  .mdc-dialog--animating .mdc-dialog__backdrop {
    -webkit-transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-dialog--animating .mdc-dialog__surface {
    -webkit-transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1); }

.mdc-dialog--open {
  visibility: visible; }
  .mdc-dialog--open .mdc-dialog__backdrop {
    opacity: .3; }
  .mdc-dialog--open .mdc-dialog__surface {
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
    opacity: 1; }

.mdc-dialog-scroll-lock {
  overflow: hidden; }

.kmx-dialog {
  z-index: 700; }
  .kmx-dialog__backdrop {
    background-color: #2a343d; }
  .kmx-dialog__surface {
    border-color: transparent;
    box-shadow: 0 16px 20px 0 rgba(42, 52, 61, 0.16);
    background-color: #ffffff;
    border-radius: 2px;
    max-width: 568px; }
  .kmx-dialog__header {
    padding: 16px 16px 0; }
    .kmx-dialog__header__title {
      font-weight: 700;
      color: #053361;
      font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
      font-size: 16px;
      line-height: 1.25;
      letter-spacing: 0.2rem; }
  .kmx-dialog__body {
    color: #545b63;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    font-size: 16px;
    line-height: 24px;
    margin-top: 16px;
    min-height: 48px;
    padding: 0 16px 16px;
    letter-spacing: 0.04em; }
    .kmx-dialog__body--scrollable {
      border-bottom-color: #c8cacc;
      border-top-color: #c8cacc;
      /* stylelint-disable selector-max-type */
      /* stylelint-enable selector-max-type */ }
      .kmx-dialog__body--scrollable form .mdc-list-item {
        padding-left: 0;
        white-space: normal; }
  .kmx-dialog--open .mdc-dialog__backdrop {
    opacity: 0.5; }
  @media (min-width: 37.5em) {
    .kmx-dialog__surface {
      border-color: transparent;
      box-shadow: 0 16px 20px 0 rgba(42, 52, 61, 0.16); }
    .kmx-dialog__header {
      padding: 24px 24px 0; }
    .kmx-dialog__body {
      padding: 0 24px 24px; }
      .kmx-dialog__body--scrollable form {
        /* stylelint-disable-next-line selector-max-type */ }
        .kmx-dialog__body--scrollable form .mdc-list, .kmx-dialog__body--scrollable form .kmx-list {
          font-size: 16px; }
          .kmx-dialog__body--scrollable form .mdc-list .kmx-list-item, .kmx-dialog__body--scrollable form .kmx-list .kmx-list-item {
            line-height: 1.25;
            letter-spacing: normal;
            height: 40px;
            padding-bottom: 4px;
            padding-top: 4px; } }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
.mdc-drawer {
  border-color: rgba(0, 0, 0, 0.12);
  background-color: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  box-sizing: border-box;
  width: 256px;
  max-width: 256px;
  height: 100%;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
          transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  border-right-width: 1px;
  border-right-style: solid;
  overflow: hidden;
  z-index: 6; }
  .mdc-drawer .mdc-drawer__title {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-drawer .mdc-list-group__subheader {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-drawer .mdc-drawer__subtitle {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-drawer .mdc-list-item__graphic {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-drawer .mdc-list-item {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-drawer .mdc-list-item--activated .mdc-list-item__graphic {
    color: #053361; }
  .mdc-drawer .mdc-list-item--activated {
    color: rgba(5, 51, 97, 0.87); }
  .mdc-drawer .mdc-list-item {
    border-radius: 4px; }
  [dir="rtl"] .mdc-drawer, .mdc-drawer[dir="rtl"] {
    border-right-width: 0;
    border-left-width: 1px;
    border-right-style: none;
    border-left-style: solid; }
  .mdc-drawer .mdc-list-item {
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    line-height: 1.375rem;
    font-weight: 500;
    letter-spacing: 0.00714em;
    text-decoration: inherit;
    text-transform: inherit;
    height: calc(48px - 2 * 4px);
    margin: 8px 8px;
    padding: 0 8px; }
  .mdc-drawer .mdc-list-item:nth-child(1) {
    margin-top: 2px; }
  .mdc-drawer .mdc-list-item:nth-last-child(1) {
    margin-bottom: 0; }
  .mdc-drawer .mdc-list-group__subheader {
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.01786em;
    text-decoration: inherit;
    text-transform: inherit;
    display: block;
    margin-top: 0;
    line-height: normal;
    margin: 0;
    padding: 0 16px; }
    .mdc-drawer .mdc-list-group__subheader::before {
      display: inline-block;
      width: 0;
      height: 24px;
      content: "";
      vertical-align: 0; }
  .mdc-drawer .mdc-list-divider {
    margin: 3px 0 4px 0; }
  .mdc-drawer .mdc-list-item__text,
  .mdc-drawer .mdc-list-item__graphic {
    pointer-events: none; }

.mdc-drawer--open {
  -webkit-transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.2, 1); }

.mdc-drawer--animate {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%); }
  [dir="rtl"] .mdc-drawer--animate, .mdc-drawer--animate[dir="rtl"] {
    -webkit-transform: translateX(100%);
            transform: translateX(100%); }

.mdc-drawer--opening {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-duration: 250ms;
          transition-duration: 250ms; }
  [dir="rtl"] .mdc-drawer--opening, .mdc-drawer--opening[dir="rtl"] {
    -webkit-transform: translateX(0);
            transform: translateX(0); }

.mdc-drawer--closing {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition-duration: 200ms;
          transition-duration: 200ms; }
  [dir="rtl"] .mdc-drawer--closing, .mdc-drawer--closing[dir="rtl"] {
    -webkit-transform: translateX(100%);
            transform: translateX(100%); }

.mdc-drawer__header {
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  box-sizing: border-box;
  min-height: 64px;
  padding: 0 16px 4px; }

.mdc-drawer__title {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.25rem;
  line-height: 2rem;
  font-weight: 500;
  letter-spacing: 0.0125em;
  text-decoration: inherit;
  text-transform: inherit;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin-bottom: -20px; }
  .mdc-drawer__title::before {
    display: inline-block;
    width: 0;
    height: 36px;
    content: "";
    vertical-align: 0; }
  .mdc-drawer__title::after {
    display: inline-block;
    width: 0;
    height: 20px;
    content: "";
    vertical-align: -20px; }

.mdc-drawer__subtitle {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.01786em;
  text-decoration: inherit;
  text-transform: inherit;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin-bottom: 0; }
  .mdc-drawer__subtitle::before {
    display: inline-block;
    width: 0;
    height: 20px;
    content: "";
    vertical-align: 0; }

.mdc-drawer__content {
  height: 100%;
  overflow-y: auto; }

.mdc-drawer--dismissible {
  /* @noflip */
  left: 0;
  /* @noflip */
  right: auto;
  right: initial;
  display: none;
  position: absolute;
  top: 0; }
  [dir="rtl"] .mdc-drawer--dismissible, .mdc-drawer--dismissible[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 0; }
  .mdc-drawer--dismissible.mdc-drawer--open {
    display: -webkit-flex;
    display: flex; }

.mdc-drawer-app-content {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 0;
  position: relative; }
  [dir="rtl"] .mdc-drawer-app-content, .mdc-drawer-app-content[dir="rtl"] {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 0; }
  .mdc-drawer--open + .mdc-drawer-app-content {
    /* @noflip */
    margin-left: 256px;
    /* @noflip */
    margin-right: 0; }
    [dir="rtl"] .mdc-drawer--open + .mdc-drawer-app-content, .mdc-drawer--open + .mdc-drawer-app-content[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 256px; }
  .mdc-drawer--closing + .mdc-drawer-app-content {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 0; }
    [dir="rtl"] .mdc-drawer--closing + .mdc-drawer-app-content, .mdc-drawer--closing + .mdc-drawer-app-content[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 0; }

.mdc-drawer--modal {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
  /* @noflip */
  left: 0;
  /* @noflip */
  right: auto;
  right: initial;
  display: none;
  position: fixed; }
  .mdc-drawer--modal + .mdc-drawer-scrim {
    background-color: rgba(0, 0, 0, 0.32); }
  [dir="rtl"] .mdc-drawer--modal, .mdc-drawer--modal[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 0; }
  .mdc-drawer--modal.mdc-drawer--open {
    display: -webkit-flex;
    display: flex; }

.mdc-drawer-scrim {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
          transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 5; }
  .mdc-drawer--open + .mdc-drawer-scrim {
    display: block; }
  .mdc-drawer--animate + .mdc-drawer-scrim {
    opacity: 0; }
  .mdc-drawer--opening + .mdc-drawer-scrim {
    -webkit-transition-duration: 250ms;
            transition-duration: 250ms;
    opacity: 1; }
  .mdc-drawer--closing + .mdc-drawer-scrim {
    -webkit-transition-duration: 200ms;
            transition-duration: 200ms;
    opacity: 0; }

.kmx-drawer {
  z-index: 750; }
  @media (min-width: 56.25em) {
    .kmx-drawer {
      z-index: 15; } }

.kmx-drawer-scrim {
  z-index: 749; }
  @media (min-width: 56.25em) {
    .kmx-drawer-scrim {
      z-index: 0; } }

.kmx-fab {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  box-sizing: border-box;
  width: 56px;
  height: 56px;
  padding: 0;
  -webkit-transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1), opacity 15ms linear 30ms, -webkit-transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1), opacity 15ms linear 30ms, -webkit-transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1), opacity 15ms linear 30ms, transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1), opacity 15ms linear 30ms, transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
  border: none;
  border-radius: 50%;
  fill: currentColor;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  overflow: hidden;
  background-color: #ffffff;
  color: #053361;
  -webkit-transition: background-color 20ms linear;
  transition: background-color 20ms linear;
  z-index: 5; }
  .kmx-fab::before, .kmx-fab::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .kmx-fab::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .kmx-fab.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .kmx-fab.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .kmx-fab.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .kmx-fab.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .kmx-fab.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .kmx-fab::before, .kmx-fab::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .kmx-fab.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .kmx-fab::-moz-focus-inner {
    padding: 0;
    border: 0; }
  .kmx-fab:hover, .kmx-fab:focus {
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12); }
  .kmx-fab:active {
    box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12); }
  .kmx-fab:active, .kmx-fab:focus {
    outline: none; }
  .kmx-fab:hover {
    cursor: pointer; }
  .kmx-fab > svg {
    width: 100%; }
  .kmx-fab .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-fab .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-fab .svg-icon {
    height: 24px;
    width: 24px; }
  .kmx-fab .svg-icon-wrapper {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    width: 100%;
    height: 100%; }
  .kmx-fab:before, .kmx-fab:after {
    visibility: hidden; }
  .kmx-fab:active {
    background-color: #dedfe0;
    -webkit-transition: background-color 20ms linear;
    transition: background-color 20ms linear; }

/* stylelint-disable length-zero-no-unit */
.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

.mdc-form-field, .kmx-form-field, .kmx-form-field--stacked, .kmx-form-field--align-push-down {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.01786em;
  text-decoration: inherit;
  text-transform: inherit;
  color: rgba(0, 0, 0, 0.87);
  /* @alternate */
  color: rgba(0, 0, 0, 0.87);
  color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
          align-items: center;
  vertical-align: middle; }
  .mdc-form-field > label, .kmx-form-field > label, .kmx-form-field--stacked > label, .kmx-form-field--align-push-down > label {
    -webkit-order: 0;
            order: 0;
    margin-right: auto;
    padding-left: 4px; }
  [dir="rtl"] .mdc-form-field > label, [dir="rtl"] .kmx-form-field > label, [dir="rtl"] .kmx-form-field--stacked > label, [dir="rtl"] .kmx-form-field--align-push-down > label, .mdc-form-field[dir="rtl"] > label, .kmx-form-field[dir="rtl"] > label, .kmx-form-field--stacked[dir="rtl"] > label, .kmx-form-field--align-push-down[dir="rtl"] > label {
    margin-left: auto;
    padding-right: 4px; }

.mdc-form-field--align-end > label, .kmx-form-field--align-end > label {
  -webkit-order: -1;
          order: -1;
  margin-left: auto;
  padding-right: 4px; }

[dir="rtl"] .mdc-form-field--align-end > label, [dir="rtl"] .kmx-form-field--align-end > label, .mdc-form-field--align-end[dir="rtl"] > label, .kmx-form-field--align-end[dir="rtl"] > label {
  margin-right: auto;
  padding-left: 4px; }

.kmx-form-field, .kmx-form-field--stacked, .kmx-form-field--align-push-down {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
  width: auto; }
  .kmx-form-field--invalid + .mdc-text-field-helper-text--validation-msg {
    opacity: 1;
    color: #e01f1f; }
  .mdc-theme--dark .kmx-form-field, .mdc-theme--dark .kmx-form-field--stacked, .mdc-theme--dark .kmx-form-field--align-push-down {
    color: #ffffff;
    color: #ffffff;
    color: var(--kmx-input-label-primary-on-dark, #ffffff); }

.kmx-form-field--stacked.kmx-form-field--stacked {
  -webkit-flex-direction: column;
          flex-direction: column;
  width: 100%;
  /* stylelint-disable-next-line selector-max-type */ }
  .kmx-form-field--stacked.kmx-form-field--stacked label,
  .kmx-form-field--stacked.kmx-form-field--stacked [class$='-label'] {
    width: 100%;
    text-align: center;
    line-height: 1.2;
    margin-left: 0;
    margin-right: 0; }

.kmx-form-field--align-push-down {
  padding-top: 15px; }

.kmx-form-group--invalid .mdc-text-field-helper-text--validation-msg {
  opacity: 1;
  color: #e01f1f;
  margin-top: 0.75em;
  margin-bottom: 0.5em; }

.kmx-form-group--vertical {
  -webkit-flex-direction: column;
          flex-direction: column; }

.mdc-text-field-helper-text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  color: #6d747a;
  color: #6d747a;
  color: var(--kmx-theme-text-hint-on-light, #6d747a); }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
.mdc-form-field, .kmx-form-field, .kmx-form-field--stacked, .kmx-form-field--align-push-down {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.01786em;
  text-decoration: inherit;
  text-transform: inherit;
  color: rgba(0, 0, 0, 0.87);
  /* @alternate */
  color: rgba(0, 0, 0, 0.87);
  color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
          align-items: center;
  vertical-align: middle; }
  .mdc-form-field > label, .kmx-form-field > label, .kmx-form-field--stacked > label, .kmx-form-field--align-push-down > label {
    -webkit-order: 0;
            order: 0;
    margin-right: auto;
    padding-left: 4px; }
  [dir="rtl"] .mdc-form-field > label, [dir="rtl"] .kmx-form-field > label, [dir="rtl"] .kmx-form-field--stacked > label, [dir="rtl"] .kmx-form-field--align-push-down > label, .mdc-form-field[dir="rtl"] > label, .kmx-form-field[dir="rtl"] > label, .kmx-form-field--stacked[dir="rtl"] > label, .kmx-form-field--align-push-down[dir="rtl"] > label {
    margin-left: auto;
    padding-right: 4px; }

.mdc-form-field--align-end > label, .kmx-form-field--align-end > label {
  -webkit-order: -1;
          order: -1;
  margin-left: auto;
  padding-right: 4px; }

[dir="rtl"] .mdc-form-field--align-end > label, [dir="rtl"] .kmx-form-field--align-end > label, .mdc-form-field--align-end[dir="rtl"] > label, .kmx-form-field--align-end[dir="rtl"] > label {
  margin-right: auto;
  padding-left: 4px; }

/* !IMPORTANT: LEGOS recommends the use of the fieldset element
 * when grouping related form components.
 */
/* stylelint-disable-next-line selector-max-type */
legend {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #2a343d;
  display: table;
  padding: 0.5em 0 0 0.5em; }

/* stylelint-disable-next-line selector-max-type */
fieldset,
.kmx-fieldset {
  border: 0;
  margin: 0;
  min-width: 0;
  padding: 0;
  padding-top: 0.01em; }

/* stylelint-disable-next-line selector-max-type */
body:not(:-moz-handler-blocked) fieldset {
  display: table-cell; }

/*
 * IMPORTANT: A design-decision in some browsers will not allow a
 * fieldset to be cast as a flexbox container.
 *
 * LEGOS recommends adding a an immediate child container of the fieldset with display:flex assigned.
 * https://bugzilla.mozilla.org/show_bug.cgi?id=1047590
 */
.kmx-flex-wrapper {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: flex-start;
          justify-content: flex-start; }
  .kmx-flex-wrapper--horizontal {
    display: block; }

.kmx-fieldset--invalid .kmx-fieldset-helper-text--validation-msg {
  opacity: 1;
  color: #e01f1f; }

.kmx-fieldset-helper-text {
  color: #6d747a;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  font-size: 12px;
  line-height: 1.16667;
  margin: 0;
  padding: 0 8px; }

:root {
  --mdc-layout-grid-margin-desktop: 24px;
  --mdc-layout-grid-gutter-desktop: 24px;
  --mdc-layout-grid-column-width-desktop: 72px;
  --mdc-layout-grid-margin-tablet: 24px;
  --mdc-layout-grid-gutter-tablet: 24px;
  --mdc-layout-grid-column-width-tablet: 72px;
  --mdc-layout-grid-margin-phone: 16px;
  --mdc-layout-grid-gutter-phone: 16px;
  --mdc-layout-grid-column-width-phone: 72px; }

@media (min-width: 900px) {
  .mdc-layout-grid {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 24px;
    padding: 24px;
    padding: var(--mdc-layout-grid-margin-desktop, 24px); } }

@media (min-width: 600px) and (max-width: 899px) {
  .mdc-layout-grid {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 24px;
    padding: 24px;
    padding: var(--mdc-layout-grid-margin-tablet, 24px); } }

@media (max-width: 599px) {
  .mdc-layout-grid {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 16px;
    padding: 16px;
    padding: var(--mdc-layout-grid-margin-phone, 16px); } }

@media (min-width: 900px) {
  .mdc-layout-grid__inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-align-items: stretch;
            align-items: stretch;
    margin: -12px;
    margin: calc(24px / 2 * -1);
    margin: calc(var(--mdc-layout-grid-gutter-desktop, 24px) / 2 * -1); }
    @supports (display: grid) {
      .mdc-layout-grid__inner {
        display: -ms-grid;
        display: grid;
        margin: 0;
        grid-gap: 24px;
        grid-gap: 24px;
        grid-gap: var(--mdc-layout-grid-gutter-desktop, 24px);
        -ms-grid-columns: (minmax(0, 1fr))[12];
        grid-template-columns: repeat(12, minmax(0, 1fr)); } } }

@media (min-width: 600px) and (max-width: 899px) {
  .mdc-layout-grid__inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-align-items: stretch;
            align-items: stretch;
    margin: -12px;
    margin: calc(24px / 2 * -1);
    margin: calc(var(--mdc-layout-grid-gutter-tablet, 24px) / 2 * -1); }
    @supports (display: grid) {
      .mdc-layout-grid__inner {
        display: -ms-grid;
        display: grid;
        margin: 0;
        grid-gap: 24px;
        grid-gap: 24px;
        grid-gap: var(--mdc-layout-grid-gutter-tablet, 24px);
        -ms-grid-columns: (minmax(0, 1fr))[8];
        grid-template-columns: repeat(8, minmax(0, 1fr)); } } }

@media (max-width: 599px) {
  .mdc-layout-grid__inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-align-items: stretch;
            align-items: stretch;
    margin: -8px;
    margin: calc(16px / 2 * -1);
    margin: calc(var(--mdc-layout-grid-gutter-phone, 16px) / 2 * -1); }
    @supports (display: grid) {
      .mdc-layout-grid__inner {
        display: -ms-grid;
        display: grid;
        margin: 0;
        grid-gap: 16px;
        grid-gap: 16px;
        grid-gap: var(--mdc-layout-grid-gutter-phone, 16px);
        -ms-grid-columns: (minmax(0, 1fr))[4];
        grid-template-columns: repeat(4, minmax(0, 1fr)); } } }

@media (min-width: 900px) {
  .mdc-layout-grid__cell {
    width: calc(33.33333% - 24px);
    width: calc(33.33333% - 24px);
    width: calc(33.33333% - var(--mdc-layout-grid-gutter-desktop, 24px));
    box-sizing: border-box;
    margin: 12px;
    margin: calc(24px / 2);
    margin: calc(var(--mdc-layout-grid-gutter-desktop, 24px) / 2); }
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        width: auto;
        -ms-grid-column-span: 4;
        grid-column-end: span 4; } }
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        margin: 0; } }
    .mdc-layout-grid__cell--span-1,
    .mdc-layout-grid__cell--span-1-desktop {
      width: calc(8.33333% - 24px);
      width: calc(8.33333% - 24px);
      width: calc(8.33333% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-1,
        .mdc-layout-grid__cell--span-1-desktop {
          width: auto;
          -ms-grid-column-span: 1;
          grid-column-end: span 1; } }
    .mdc-layout-grid__cell--span-2,
    .mdc-layout-grid__cell--span-2-desktop {
      width: calc(16.66667% - 24px);
      width: calc(16.66667% - 24px);
      width: calc(16.66667% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-2,
        .mdc-layout-grid__cell--span-2-desktop {
          width: auto;
          -ms-grid-column-span: 2;
          grid-column-end: span 2; } }
    .mdc-layout-grid__cell--span-3,
    .mdc-layout-grid__cell--span-3-desktop {
      width: calc(25% - 24px);
      width: calc(25% - 24px);
      width: calc(25% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-3,
        .mdc-layout-grid__cell--span-3-desktop {
          width: auto;
          -ms-grid-column-span: 3;
          grid-column-end: span 3; } }
    .mdc-layout-grid__cell--span-4,
    .mdc-layout-grid__cell--span-4-desktop {
      width: calc(33.33333% - 24px);
      width: calc(33.33333% - 24px);
      width: calc(33.33333% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-4,
        .mdc-layout-grid__cell--span-4-desktop {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-5,
    .mdc-layout-grid__cell--span-5-desktop {
      width: calc(41.66667% - 24px);
      width: calc(41.66667% - 24px);
      width: calc(41.66667% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-5,
        .mdc-layout-grid__cell--span-5-desktop {
          width: auto;
          -ms-grid-column-span: 5;
          grid-column-end: span 5; } }
    .mdc-layout-grid__cell--span-6,
    .mdc-layout-grid__cell--span-6-desktop {
      width: calc(50% - 24px);
      width: calc(50% - 24px);
      width: calc(50% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-6,
        .mdc-layout-grid__cell--span-6-desktop {
          width: auto;
          -ms-grid-column-span: 6;
          grid-column-end: span 6; } }
    .mdc-layout-grid__cell--span-7,
    .mdc-layout-grid__cell--span-7-desktop {
      width: calc(58.33333% - 24px);
      width: calc(58.33333% - 24px);
      width: calc(58.33333% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-7,
        .mdc-layout-grid__cell--span-7-desktop {
          width: auto;
          -ms-grid-column-span: 7;
          grid-column-end: span 7; } }
    .mdc-layout-grid__cell--span-8,
    .mdc-layout-grid__cell--span-8-desktop {
      width: calc(66.66667% - 24px);
      width: calc(66.66667% - 24px);
      width: calc(66.66667% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-8,
        .mdc-layout-grid__cell--span-8-desktop {
          width: auto;
          -ms-grid-column-span: 8;
          grid-column-end: span 8; } }
    .mdc-layout-grid__cell--span-9,
    .mdc-layout-grid__cell--span-9-desktop {
      width: calc(75% - 24px);
      width: calc(75% - 24px);
      width: calc(75% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-9,
        .mdc-layout-grid__cell--span-9-desktop {
          width: auto;
          -ms-grid-column-span: 9;
          grid-column-end: span 9; } }
    .mdc-layout-grid__cell--span-10,
    .mdc-layout-grid__cell--span-10-desktop {
      width: calc(83.33333% - 24px);
      width: calc(83.33333% - 24px);
      width: calc(83.33333% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-10,
        .mdc-layout-grid__cell--span-10-desktop {
          width: auto;
          -ms-grid-column-span: 10;
          grid-column-end: span 10; } }
    .mdc-layout-grid__cell--span-11,
    .mdc-layout-grid__cell--span-11-desktop {
      width: calc(91.66667% - 24px);
      width: calc(91.66667% - 24px);
      width: calc(91.66667% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-11,
        .mdc-layout-grid__cell--span-11-desktop {
          width: auto;
          -ms-grid-column-span: 11;
          grid-column-end: span 11; } }
    .mdc-layout-grid__cell--span-12,
    .mdc-layout-grid__cell--span-12-desktop {
      width: calc(100% - 24px);
      width: calc(100% - 24px);
      width: calc(100% - var(--mdc-layout-grid-gutter-desktop, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-12,
        .mdc-layout-grid__cell--span-12-desktop {
          width: auto;
          -ms-grid-column-span: 12;
          grid-column-end: span 12; } } }

@media (min-width: 600px) and (max-width: 899px) {
  .mdc-layout-grid__cell {
    width: calc(50% - 24px);
    width: calc(50% - 24px);
    width: calc(50% - var(--mdc-layout-grid-gutter-tablet, 24px));
    box-sizing: border-box;
    margin: 12px;
    margin: calc(24px / 2);
    margin: calc(var(--mdc-layout-grid-gutter-tablet, 24px) / 2); }
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        width: auto;
        -ms-grid-column-span: 4;
        grid-column-end: span 4; } }
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        margin: 0; } }
    .mdc-layout-grid__cell--span-1,
    .mdc-layout-grid__cell--span-1-tablet {
      width: calc(12.5% - 24px);
      width: calc(12.5% - 24px);
      width: calc(12.5% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-1,
        .mdc-layout-grid__cell--span-1-tablet {
          width: auto;
          -ms-grid-column-span: 1;
          grid-column-end: span 1; } }
    .mdc-layout-grid__cell--span-2,
    .mdc-layout-grid__cell--span-2-tablet {
      width: calc(25% - 24px);
      width: calc(25% - 24px);
      width: calc(25% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-2,
        .mdc-layout-grid__cell--span-2-tablet {
          width: auto;
          -ms-grid-column-span: 2;
          grid-column-end: span 2; } }
    .mdc-layout-grid__cell--span-3,
    .mdc-layout-grid__cell--span-3-tablet {
      width: calc(37.5% - 24px);
      width: calc(37.5% - 24px);
      width: calc(37.5% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-3,
        .mdc-layout-grid__cell--span-3-tablet {
          width: auto;
          -ms-grid-column-span: 3;
          grid-column-end: span 3; } }
    .mdc-layout-grid__cell--span-4,
    .mdc-layout-grid__cell--span-4-tablet {
      width: calc(50% - 24px);
      width: calc(50% - 24px);
      width: calc(50% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-4,
        .mdc-layout-grid__cell--span-4-tablet {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-5,
    .mdc-layout-grid__cell--span-5-tablet {
      width: calc(62.5% - 24px);
      width: calc(62.5% - 24px);
      width: calc(62.5% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-5,
        .mdc-layout-grid__cell--span-5-tablet {
          width: auto;
          -ms-grid-column-span: 5;
          grid-column-end: span 5; } }
    .mdc-layout-grid__cell--span-6,
    .mdc-layout-grid__cell--span-6-tablet {
      width: calc(75% - 24px);
      width: calc(75% - 24px);
      width: calc(75% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-6,
        .mdc-layout-grid__cell--span-6-tablet {
          width: auto;
          -ms-grid-column-span: 6;
          grid-column-end: span 6; } }
    .mdc-layout-grid__cell--span-7,
    .mdc-layout-grid__cell--span-7-tablet {
      width: calc(87.5% - 24px);
      width: calc(87.5% - 24px);
      width: calc(87.5% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-7,
        .mdc-layout-grid__cell--span-7-tablet {
          width: auto;
          -ms-grid-column-span: 7;
          grid-column-end: span 7; } }
    .mdc-layout-grid__cell--span-8,
    .mdc-layout-grid__cell--span-8-tablet {
      width: calc(100% - 24px);
      width: calc(100% - 24px);
      width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-8,
        .mdc-layout-grid__cell--span-8-tablet {
          width: auto;
          -ms-grid-column-span: 8;
          grid-column-end: span 8; } }
    .mdc-layout-grid__cell--span-9,
    .mdc-layout-grid__cell--span-9-tablet {
      width: calc(100% - 24px);
      width: calc(100% - 24px);
      width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-9,
        .mdc-layout-grid__cell--span-9-tablet {
          width: auto;
          -ms-grid-column-span: 8;
          grid-column-end: span 8; } }
    .mdc-layout-grid__cell--span-10,
    .mdc-layout-grid__cell--span-10-tablet {
      width: calc(100% - 24px);
      width: calc(100% - 24px);
      width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-10,
        .mdc-layout-grid__cell--span-10-tablet {
          width: auto;
          -ms-grid-column-span: 8;
          grid-column-end: span 8; } }
    .mdc-layout-grid__cell--span-11,
    .mdc-layout-grid__cell--span-11-tablet {
      width: calc(100% - 24px);
      width: calc(100% - 24px);
      width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-11,
        .mdc-layout-grid__cell--span-11-tablet {
          width: auto;
          -ms-grid-column-span: 8;
          grid-column-end: span 8; } }
    .mdc-layout-grid__cell--span-12,
    .mdc-layout-grid__cell--span-12-tablet {
      width: calc(100% - 24px);
      width: calc(100% - 24px);
      width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 24px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-12,
        .mdc-layout-grid__cell--span-12-tablet {
          width: auto;
          -ms-grid-column-span: 8;
          grid-column-end: span 8; } } }

@media (max-width: 599px) {
  .mdc-layout-grid__cell {
    width: calc(100% - 16px);
    width: calc(100% - 16px);
    width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    box-sizing: border-box;
    margin: 8px;
    margin: calc(16px / 2);
    margin: calc(var(--mdc-layout-grid-gutter-phone, 16px) / 2); }
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        width: auto;
        -ms-grid-column-span: 4;
        grid-column-end: span 4; } }
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        margin: 0; } }
    .mdc-layout-grid__cell--span-1,
    .mdc-layout-grid__cell--span-1-phone {
      width: calc(25% - 16px);
      width: calc(25% - 16px);
      width: calc(25% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-1,
        .mdc-layout-grid__cell--span-1-phone {
          width: auto;
          -ms-grid-column-span: 1;
          grid-column-end: span 1; } }
    .mdc-layout-grid__cell--span-2,
    .mdc-layout-grid__cell--span-2-phone {
      width: calc(50% - 16px);
      width: calc(50% - 16px);
      width: calc(50% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-2,
        .mdc-layout-grid__cell--span-2-phone {
          width: auto;
          -ms-grid-column-span: 2;
          grid-column-end: span 2; } }
    .mdc-layout-grid__cell--span-3,
    .mdc-layout-grid__cell--span-3-phone {
      width: calc(75% - 16px);
      width: calc(75% - 16px);
      width: calc(75% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-3,
        .mdc-layout-grid__cell--span-3-phone {
          width: auto;
          -ms-grid-column-span: 3;
          grid-column-end: span 3; } }
    .mdc-layout-grid__cell--span-4,
    .mdc-layout-grid__cell--span-4-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-4,
        .mdc-layout-grid__cell--span-4-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-5,
    .mdc-layout-grid__cell--span-5-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-5,
        .mdc-layout-grid__cell--span-5-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-6,
    .mdc-layout-grid__cell--span-6-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-6,
        .mdc-layout-grid__cell--span-6-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-7,
    .mdc-layout-grid__cell--span-7-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-7,
        .mdc-layout-grid__cell--span-7-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-8,
    .mdc-layout-grid__cell--span-8-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-8,
        .mdc-layout-grid__cell--span-8-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-9,
    .mdc-layout-grid__cell--span-9-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-9,
        .mdc-layout-grid__cell--span-9-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-10,
    .mdc-layout-grid__cell--span-10-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-10,
        .mdc-layout-grid__cell--span-10-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-11,
    .mdc-layout-grid__cell--span-11-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-11,
        .mdc-layout-grid__cell--span-11-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } }
    .mdc-layout-grid__cell--span-12,
    .mdc-layout-grid__cell--span-12-phone {
      width: calc(100% - 16px);
      width: calc(100% - 16px);
      width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px)); }
      @supports (display: grid) {
        .mdc-layout-grid__cell--span-12,
        .mdc-layout-grid__cell--span-12-phone {
          width: auto;
          -ms-grid-column-span: 4;
          grid-column-end: span 4; } } }

.mdc-layout-grid__cell--order-1 {
  -webkit-order: 1;
          order: 1; }

.mdc-layout-grid__cell--order-2 {
  -webkit-order: 2;
          order: 2; }

.mdc-layout-grid__cell--order-3 {
  -webkit-order: 3;
          order: 3; }

.mdc-layout-grid__cell--order-4 {
  -webkit-order: 4;
          order: 4; }

.mdc-layout-grid__cell--order-5 {
  -webkit-order: 5;
          order: 5; }

.mdc-layout-grid__cell--order-6 {
  -webkit-order: 6;
          order: 6; }

.mdc-layout-grid__cell--order-7 {
  -webkit-order: 7;
          order: 7; }

.mdc-layout-grid__cell--order-8 {
  -webkit-order: 8;
          order: 8; }

.mdc-layout-grid__cell--order-9 {
  -webkit-order: 9;
          order: 9; }

.mdc-layout-grid__cell--order-10 {
  -webkit-order: 10;
          order: 10; }

.mdc-layout-grid__cell--order-11 {
  -webkit-order: 11;
          order: 11; }

.mdc-layout-grid__cell--order-12 {
  -webkit-order: 12;
          order: 12; }

.mdc-layout-grid__cell--align-top {
  -webkit-align-self: flex-start;
          align-self: flex-start; }
  @supports (display: grid) {
    .mdc-layout-grid__cell--align-top {
      -webkit-align-self: start;
                  -ms-grid-row-align: start;
              align-self: start; } }

.mdc-layout-grid__cell--align-middle {
  -webkit-align-self: center;
              -ms-grid-row-align: center;
          align-self: center; }

.mdc-layout-grid__cell--align-bottom {
  -webkit-align-self: flex-end;
          align-self: flex-end; }
  @supports (display: grid) {
    .mdc-layout-grid__cell--align-bottom {
      -webkit-align-self: end;
                  -ms-grid-row-align: end;
              align-self: end; } }

@media (min-width: 900px) {
  .mdc-layout-grid--fixed-column-width {
    width: 1176px;
    width: calc( 72px * 12 + 24px * 11 + 24px * 2);
    width: calc( var(--mdc-layout-grid-column-width-desktop, 72px) * 12 + var(--mdc-layout-grid-gutter-desktop, 24px) * 11 + var(--mdc-layout-grid-margin-desktop, 24px) * 2); } }

@media (min-width: 600px) and (max-width: 899px) {
  .mdc-layout-grid--fixed-column-width {
    width: 792px;
    width: calc( 72px * 8 + 24px * 7 + 24px * 2);
    width: calc( var(--mdc-layout-grid-column-width-tablet, 72px) * 8 + var(--mdc-layout-grid-gutter-tablet, 24px) * 7 + var(--mdc-layout-grid-margin-tablet, 24px) * 2); } }

@media (max-width: 599px) {
  .mdc-layout-grid--fixed-column-width {
    width: 368px;
    width: calc( 72px * 4 + 16px * 3 + 16px * 2);
    width: calc( var(--mdc-layout-grid-column-width-phone, 72px) * 4 + var(--mdc-layout-grid-gutter-phone, 16px) * 3 + var(--mdc-layout-grid-margin-phone, 16px) * 2); } }

.mdc-layout-grid--align-left {
  margin-right: auto;
  margin-left: 0; }

.mdc-layout-grid--align-right {
  margin-right: 0;
  margin-left: auto; }

/* stylelint-disable length-zero-no-unit */
/* -- screen sizes reference: --
$screen-sizes:
    small: 300px,
    medium: 600px,
    large: 900px,
    xlarge: 1200px,
    xxlarge: 2100px,
*/
@media (min-width: 900px) {
  .kmx-layout-grid {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 24px;
    padding: 24px;
    padding: var(--mdc-layout-grid-margin-desktop, 24px); } }

@media (min-width: 600px) and (max-width: 899px) {
  .kmx-layout-grid {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 24px;
    padding: 24px;
    padding: var(--mdc-layout-grid-margin-tablet, 24px); } }

@media (max-width: 599px) {
  .kmx-layout-grid {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 16px;
    padding: 16px;
    padding: var(--mdc-layout-grid-margin-phone, 16px); } }

.kmx-layout-grid.max-width--xl {
  max-width: 1200px; }

.kmx-layout-grid.max-width--lg {
  max-width: 900px; }

.kmx-layout-grid.max-width--md {
  max-width: 600px; }

.kmx-layout-grid.max-width--sm {
  max-width: 300px; }

.kmx-layout-grid.kmx-layout-grid--align-left {
  margin-right: auto;
  margin-left: 0; }

.kmx-layout-grid.kmx-layout-grid--align-right {
  margin-left: auto;
  margin-right: 0; }

.mdc-layout-grid__cell--justify-start {
  justify-self: flex-start; }
  @supports (display: grid) {
    .mdc-layout-grid__cell--justify-start {
      -ms-grid-column-align: start;
          justify-self: start; } }

.mdc-layout-grid__cell--justify-center {
  -ms-grid-column-align: center;
      justify-self: center; }

.mdc-layout-grid__cell--justify-end {
  justify-self: flex-end; }
  @supports (display: grid) {
    .mdc-layout-grid__cell--justify-end {
      -ms-grid-column-align: end;
          justify-self: end; } }

/* NOTE: Icon Toggle does not have a "pushed/active" state */
.kmx-icon-toggle-wrapper {
  position: relative; }
  .kmx-icon-toggle-wrapper .kmx-icon-toggle {
    height: 100%;
    opacity: 0;
    position: absolute;
    width: 40px; }
    .kmx-icon-toggle-wrapper .kmx-icon-toggle:hover ~ .svg-icon-wrapper > .svg-icon {
      background-color: rgba(23, 115, 207, 0.08); }
    .kmx-icon-toggle-wrapper .kmx-icon-toggle:focus ~ .svg-icon-wrapper > .svg-icon {
      background-color: rgba(23, 115, 207, 0.24); }
    .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled {
      /* stylelint-disable selector-max-type */
      /* stylelint-enable */ }
      .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled:hover ~ .svg-icon-wrapper > .svg-icon {
        background-color: transparent; }
      .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled ~ .svg-icon-wrapper > .svg-icon svg {
        fill: #abafb3; }
  .kmx-icon-toggle-wrapper .svg-icon-wrapper {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    width: 100%;
    height: 100%; }
  .kmx-icon-toggle-wrapper .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-icon-toggle-wrapper .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-icon-toggle-wrapper .svg-icon {
    border-radius: 100%;
    height: 40px;
    -webkit-justify-content: center;
            justify-content: center;
    width: 40px;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-icon-toggle-wrapper .svg-icon svg {
      fill: #053361;
      min-width: auto;
      width: 24px; }

.mdc-theme--dark .kmx-icon-toggle-wrapper .kmx-icon-toggle:hover ~ .svg-icon-wrapper > .svg-icon {
  background-color: rgba(255, 255, 255, 0.08); }

.mdc-theme--dark .kmx-icon-toggle-wrapper .kmx-icon-toggle:focus ~ .svg-icon-wrapper > .svg-icon {
  background-color: rgba(255, 255, 255, 0.24); }

.mdc-theme--dark .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled {
  /* stylelint-disable selector-max-type */
  /* stylelint-enable */ }
  .mdc-theme--dark .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled:focus ~ .svg-icon-wrapper > .svg-icon,
  .mdc-theme--dark .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled:hover ~ .svg-icon-wrapper > .svg-icon {
    background-color: transparent; }
  .mdc-theme--dark .kmx-icon-toggle-wrapper .kmx-icon-toggle:disabled ~ .svg-icon-wrapper > .svg-icon svg {
    fill: #abafb3; }

.mdc-theme--dark .kmx-icon-toggle-wrapper .svg-icon {
  /* stylelint-disable selector-max-type */
  /* stylelint-enable */ }
  .mdc-theme--dark .kmx-icon-toggle-wrapper .svg-icon svg {
    fill: #ffffff; }

@-webkit-keyframes primary-indeterminate-translate {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  20% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  59.15% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(83.67142%);
            transform: translateX(83.67142%); }
  100% {
    -webkit-transform: translateX(200.61106%);
            transform: translateX(200.61106%); } }

@keyframes primary-indeterminate-translate {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  20% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  59.15% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(83.67142%);
            transform: translateX(83.67142%); }
  100% {
    -webkit-transform: translateX(200.61106%);
            transform: translateX(200.61106%); } }

@-webkit-keyframes primary-indeterminate-scale {
  0% {
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); }
  36.65% {
    -webkit-animation-timing-function: cubic-bezier(0.33473, 0.12482, 0.78584, 1);
            animation-timing-function: cubic-bezier(0.33473, 0.12482, 0.78584, 1);
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); }
  69.15% {
    -webkit-animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
            animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
    -webkit-transform: scaleX(0.66148);
            transform: scaleX(0.66148); }
  100% {
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); } }

@keyframes primary-indeterminate-scale {
  0% {
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); }
  36.65% {
    -webkit-animation-timing-function: cubic-bezier(0.33473, 0.12482, 0.78584, 1);
            animation-timing-function: cubic-bezier(0.33473, 0.12482, 0.78584, 1);
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); }
  69.15% {
    -webkit-animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
            animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
    -webkit-transform: scaleX(0.66148);
            transform: scaleX(0.66148); }
  100% {
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); } }

@-webkit-keyframes secondary-indeterminate-translate {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
            animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  25% {
    -webkit-animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
            animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
    -webkit-transform: translateX(37.65191%);
            transform: translateX(37.65191%); }
  48.35% {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
            animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
    -webkit-transform: translateX(84.38617%);
            transform: translateX(84.38617%); }
  100% {
    -webkit-transform: translateX(160.27778%);
            transform: translateX(160.27778%); } }

@keyframes secondary-indeterminate-translate {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
            animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  25% {
    -webkit-animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
            animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
    -webkit-transform: translateX(37.65191%);
            transform: translateX(37.65191%); }
  48.35% {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
            animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
    -webkit-transform: translateX(84.38617%);
            transform: translateX(84.38617%); }
  100% {
    -webkit-transform: translateX(160.27778%);
            transform: translateX(160.27778%); } }

@-webkit-keyframes secondary-indeterminate-scale {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.20503, 0.05705, 0.57661, 0.45397);
            animation-timing-function: cubic-bezier(0.20503, 0.05705, 0.57661, 0.45397);
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); }
  19.15% {
    -webkit-animation-timing-function: cubic-bezier(0.15231, 0.19643, 0.64837, 1.00432);
            animation-timing-function: cubic-bezier(0.15231, 0.19643, 0.64837, 1.00432);
    -webkit-transform: scaleX(0.4571);
            transform: scaleX(0.4571); }
  44.15% {
    -webkit-animation-timing-function: cubic-bezier(0.25776, -0.00316, 0.21176, 1.38179);
            animation-timing-function: cubic-bezier(0.25776, -0.00316, 0.21176, 1.38179);
    -webkit-transform: scaleX(0.72796);
            transform: scaleX(0.72796); }
  100% {
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); } }

@keyframes secondary-indeterminate-scale {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.20503, 0.05705, 0.57661, 0.45397);
            animation-timing-function: cubic-bezier(0.20503, 0.05705, 0.57661, 0.45397);
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); }
  19.15% {
    -webkit-animation-timing-function: cubic-bezier(0.15231, 0.19643, 0.64837, 1.00432);
            animation-timing-function: cubic-bezier(0.15231, 0.19643, 0.64837, 1.00432);
    -webkit-transform: scaleX(0.4571);
            transform: scaleX(0.4571); }
  44.15% {
    -webkit-animation-timing-function: cubic-bezier(0.25776, -0.00316, 0.21176, 1.38179);
            animation-timing-function: cubic-bezier(0.25776, -0.00316, 0.21176, 1.38179);
    -webkit-transform: scaleX(0.72796);
            transform: scaleX(0.72796); }
  100% {
    -webkit-transform: scaleX(0.08);
            transform: scaleX(0.08); } }

@-webkit-keyframes buffering {
  to {
    -webkit-transform: translateX(-10px);
            transform: translateX(-10px); } }

@keyframes buffering {
  to {
    -webkit-transform: translateX(-10px);
            transform: translateX(-10px); } }

@-webkit-keyframes primary-indeterminate-translate-reverse {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  20% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  59.15% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(-83.67142%);
            transform: translateX(-83.67142%); }
  100% {
    -webkit-transform: translateX(-200.61106%);
            transform: translateX(-200.61106%); } }

@keyframes primary-indeterminate-translate-reverse {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  20% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  59.15% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(-83.67142%);
            transform: translateX(-83.67142%); }
  100% {
    -webkit-transform: translateX(-200.61106%);
            transform: translateX(-200.61106%); } }

@-webkit-keyframes secondary-indeterminate-translate-reverse {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
            animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  25% {
    -webkit-animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
            animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
    -webkit-transform: translateX(-37.65191%);
            transform: translateX(-37.65191%); }
  48.35% {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
            animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
    -webkit-transform: translateX(-84.38617%);
            transform: translateX(-84.38617%); }
  100% {
    -webkit-transform: translateX(-160.27778%);
            transform: translateX(-160.27778%); } }

@keyframes secondary-indeterminate-translate-reverse {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
            animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  25% {
    -webkit-animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
            animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
    -webkit-transform: translateX(-37.65191%);
            transform: translateX(-37.65191%); }
  48.35% {
    -webkit-animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
            animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
    -webkit-transform: translateX(-84.38617%);
            transform: translateX(-84.38617%); }
  100% {
    -webkit-transform: translateX(-160.27778%);
            transform: translateX(-160.27778%); } }

@-webkit-keyframes buffering-reverse {
  to {
    -webkit-transform: translateX(10px);
            transform: translateX(10px); } }

@keyframes buffering-reverse {
  to {
    -webkit-transform: translateX(10px);
            transform: translateX(10px); } }

.mdc-linear-progress, .kmx-linear-progress {
  position: relative;
  width: 100%;
  height: 4px;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-transition: opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
  overflow: hidden; }
  .mdc-linear-progress__bar {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-animation: none;
            animation: none;
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1); }
  .mdc-linear-progress__bar-inner {
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-animation: none;
            animation: none; }
  .mdc-linear-progress__buffering-dots {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-animation: buffering 250ms infinite linear;
            animation: buffering 250ms infinite linear;
    background-repeat: repeat-x;
    background-size: 10px 4px; }
  .mdc-linear-progress__buffer {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1); }
  .mdc-linear-progress__primary-bar {
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  .mdc-linear-progress__secondary-bar {
    visibility: hidden; }
  .mdc-linear-progress--indeterminate .mdc-linear-progress__bar {
    -webkit-transition: none;
    transition: none; }
  .mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar {
    left: -145.166611%;
    -webkit-animation: primary-indeterminate-translate 2s infinite linear;
            animation: primary-indeterminate-translate 2s infinite linear; }
    .mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar > .mdc-linear-progress__bar-inner {
      -webkit-animation: primary-indeterminate-scale 2s infinite linear;
              animation: primary-indeterminate-scale 2s infinite linear; }
  .mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar {
    left: -54.888891%;
    -webkit-animation: secondary-indeterminate-translate 2s infinite linear;
            animation: secondary-indeterminate-translate 2s infinite linear;
    visibility: visible; }
    .mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar > .mdc-linear-progress__bar-inner {
      -webkit-animation: secondary-indeterminate-scale 2s infinite linear;
              animation: secondary-indeterminate-scale 2s infinite linear; }
  .mdc-linear-progress--reversed .mdc-linear-progress__bar,
  .mdc-linear-progress--reversed .mdc-linear-progress__buffer {
    right: 0;
    -webkit-transform-origin: center right;
            transform-origin: center right; }
  .mdc-linear-progress--reversed .mdc-linear-progress__primary-bar {
    -webkit-animation-name: primary-indeterminate-translate-reverse;
            animation-name: primary-indeterminate-translate-reverse; }
  .mdc-linear-progress--reversed .mdc-linear-progress__secondary-bar {
    -webkit-animation-name: secondary-indeterminate-translate-reverse;
            animation-name: secondary-indeterminate-translate-reverse; }
  .mdc-linear-progress--reversed .mdc-linear-progress__buffering-dots {
    -webkit-animation: buffering-reverse 250ms infinite linear;
            animation: buffering-reverse 250ms infinite linear; }
  .mdc-linear-progress--closed {
    opacity: 0; }

.mdc-linear-progress__bar-inner {
  background-color: #053361;
  /* @alternate */
  background-color: #053361;
  background-color: var(--mdc-theme-primary, #053361); }

.mdc-linear-progress__buffering-dots {
  background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' enable-background='new 0 0 5 2' xml:space='preserve' viewBox='0 0 5 2' preserveAspectRatio='none slice'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23e6e6e6'/%3E%3C/svg%3E"); }

.mdc-linear-progress__buffer {
  background-color: #e6e6e6; }

.mdc-linear-progress--indeterminate.mdc-linear-progress--reversed .mdc-linear-progress__primary-bar {
  right: -145.166611%;
  left: auto; }

.mdc-linear-progress--indeterminate.mdc-linear-progress--reversed .mdc-linear-progress__secondary-bar {
  right: -54.888891%;
  left: auto; }

.mdc-linear-progress, .kmx-linear-progress {
  /* stylelint-disable declaration-no-important */
  /* stylelint-enable declaration-no-important */ }
  .mdc-linear-progress__bar-inner {
    background-color: #1773cf !important; }
  .mdc-linear-progress__buffer {
    background-color: #e0f2ff !important; }

.kmx-linear-progress {
  width: 100%; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

.mdc-list, .kmx-list {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  color: rgba(0, 0, 0, 0.87);
  /* @alternate */
  color: rgba(0, 0, 0, 0.87);
  color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
  margin: 0;
  padding: 8px 0;
  /* @alternate */
  line-height: 1.5rem;
  list-style-type: none; }

.mdc-list-item__secondary-text {
  color: rgba(0, 0, 0, 0.54);
  /* @alternate */
  color: rgba(0, 0, 0, 0.54);
  color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54)); }

.mdc-list-item__graphic {
  background-color: transparent; }

.mdc-list-item__graphic {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: rgba(0, 0, 0, 0.38);
  color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38)); }

.mdc-list-item__meta {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: rgba(0, 0, 0, 0.38);
  color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38)); }

.mdc-list--dense {
  padding-top: 4px;
  padding-bottom: 4px;
  font-size: .812rem; }

.mdc-list-item {
  display: -webkit-flex;
  display: flex;
  position: relative;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
  height: 48px;
  padding: 0 16px;
  overflow: hidden; }
  .mdc-list-item:focus {
    outline: none; }

.mdc-list-item--selected,
.mdc-list-item--activated {
  color: #053361;
  /* @alternate */
  color: #053361;
  color: var(--mdc-theme-primary, #053361); }
  .mdc-list-item--selected .mdc-list-item__graphic,
  .mdc-list-item--activated .mdc-list-item__graphic {
    color: #053361;
    /* @alternate */
    color: #053361;
    color: var(--mdc-theme-primary, #053361); }

.mdc-list-item--disabled {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: rgba(0, 0, 0, 0.38);
  color: var(--mdc-theme-text-disabled-on-background, rgba(0, 0, 0, 0.38)); }

.mdc-list-item__graphic {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 32px;
  width: 24px;
  height: 24px;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  fill: currentColor; }
  .mdc-list-item[dir="rtl"] .mdc-list-item__graphic,
  [dir="rtl"] .mdc-list-item .mdc-list-item__graphic {
    /* @noflip */
    margin-left: 32px;
    /* @noflip */
    margin-right: 0; }

.mdc-list-item__meta {
  /* @noflip */
  margin-left: auto;
  /* @noflip */
  margin-right: 0; }
  .mdc-list-item[dir="rtl"] .mdc-list-item__meta,
  [dir="rtl"] .mdc-list-item .mdc-list-item__meta {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: auto; }

.mdc-list-item__text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; }

.mdc-list-item__primary-text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin-bottom: -20px;
  display: block; }
  .mdc-list-item__primary-text::before {
    display: inline-block;
    width: 0;
    height: 32px;
    content: "";
    vertical-align: 0; }
  .mdc-list-item__primary-text::after {
    display: inline-block;
    width: 0;
    height: 20px;
    content: "";
    vertical-align: -20px; }
  .mdc-list--dense .mdc-list-item__primary-text {
    display: block;
    margin-top: 0;
    line-height: normal;
    margin-bottom: -20px; }
    .mdc-list--dense .mdc-list-item__primary-text::before {
      display: inline-block;
      width: 0;
      height: 24px;
      content: "";
      vertical-align: 0; }
    .mdc-list--dense .mdc-list-item__primary-text::after {
      display: inline-block;
      width: 0;
      height: 20px;
      content: "";
      vertical-align: -20px; }

.mdc-list-item__secondary-text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.01786em;
  text-decoration: inherit;
  text-transform: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  margin-top: 0;
  line-height: normal;
  display: block; }
  .mdc-list-item__secondary-text::before {
    display: inline-block;
    width: 0;
    height: 20px;
    content: "";
    vertical-align: 0; }
  .mdc-list--dense .mdc-list-item__secondary-text {
    display: block;
    margin-top: 0;
    line-height: normal;
    font-size: inherit; }
    .mdc-list--dense .mdc-list-item__secondary-text::before {
      display: inline-block;
      width: 0;
      height: 20px;
      content: "";
      vertical-align: 0; }

.mdc-list--dense .mdc-list-item {
  height: 40px; }

.mdc-list--dense .mdc-list-item__graphic {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 36px;
  width: 20px;
  height: 20px; }
  .mdc-list-item[dir="rtl"] .mdc-list--dense .mdc-list-item__graphic,
  [dir="rtl"] .mdc-list-item .mdc-list--dense .mdc-list-item__graphic {
    /* @noflip */
    margin-left: 36px;
    /* @noflip */
    margin-right: 0; }

.mdc-list--avatar-list .mdc-list-item {
  height: 56px; }

.mdc-list--avatar-list .mdc-list-item__graphic {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 16px;
  width: 40px;
  height: 40px;
  border-radius: 50%; }
  .mdc-list-item[dir="rtl"] .mdc-list--avatar-list .mdc-list-item__graphic,
  [dir="rtl"] .mdc-list-item .mdc-list--avatar-list .mdc-list-item__graphic {
    /* @noflip */
    margin-left: 16px;
    /* @noflip */
    margin-right: 0; }

.mdc-list--two-line .mdc-list-item__text {
  -webkit-align-self: flex-start;
          align-self: flex-start; }

.mdc-list--two-line .mdc-list-item {
  height: 72px; }

.mdc-list--two-line.mdc-list--dense .mdc-list-item {
  height: 60px; }

.mdc-list--avatar-list.mdc-list--dense .mdc-list-item {
  height: 60px; }

.mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 20px;
  width: 36px;
  height: 36px; }
  .mdc-list-item[dir="rtl"] .mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic,
  [dir="rtl"] .mdc-list-item .mdc-list--avatar-list.mdc-list--dense .mdc-list-item__graphic {
    /* @noflip */
    margin-left: 20px;
    /* @noflip */
    margin-right: 0; }

:not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item::after {
    background-color: black; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item:hover::before {
    opacity: 0.04; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item:not(.mdc-ripple-upgraded):focus::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.16; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated::before {
    opacity: 0.12; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated::after {
    background-color: #053361; }
    @supports not (-ms-ime-align: auto) {
      :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated::after {
        /* @alternate */
        background-color: #053361;
        background-color: var(--mdc-theme-primary, #053361); } }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated:hover::before {
    opacity: 0.16; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated:not(.mdc-ripple-upgraded):focus::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.24; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.28; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--activated.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.28; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected::before {
    opacity: 0.08; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected::after {
    background-color: #053361; }
    @supports not (-ms-ime-align: auto) {
      :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected::after {
        /* @alternate */
        background-color: #053361;
        background-color: var(--mdc-theme-primary, #053361); } }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected:hover::before {
    opacity: 0.12; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected:not(.mdc-ripple-upgraded):focus::before, :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.2; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.24; }
  :not(.mdc-list--non-interactive) > :not(.mdc-list-item--disabled).mdc-list-item--selected.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.24; }

a.mdc-list-item {
  color: inherit;
  text-decoration: none; }

.mdc-list-divider {
  height: 0;
  margin: 0;
  border: none;
  border-bottom-width: 1px;
  border-bottom-style: solid; }

.mdc-list-divider {
  border-bottom-color: rgba(0, 0, 0, 0.12); }

.mdc-list-divider--padded {
  margin: 0 16px; }

.mdc-list-divider--inset {
  /* @noflip */
  margin-left: 72px;
  /* @noflip */
  margin-right: 0;
  width: calc(100% - 72px); }
  .mdc-list-group[dir="rtl"] .mdc-list-divider--inset,
  [dir="rtl"] .mdc-list-group .mdc-list-divider--inset {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 72px; }

.mdc-list-divider--inset.mdc-list-divider--padded {
  width: calc(100% - 72px - 16px); }

.mdc-list-group .mdc-list, .mdc-list-group .kmx-list {
  padding: 0; }

.mdc-list-group__subheader {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  margin: 0.75rem 16px; }

.mdc-list-group__subheader {
  color: rgba(0, 0, 0, 0.87);
  /* @alternate */
  color: rgba(0, 0, 0, 0.87);
  color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87)); }

.kmx-list {
  letter-spacing: normal;
  line-height: 16px; }
  .kmx-list .mdc-list-item {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    height: 48px;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    margin-bottom: 16px; }
    .kmx-list .mdc-list-item__meta {
      color: #000000;
      margin-left: auto;
      padding-left: 8px; }
      .kmx-list .mdc-list-item__meta.kmx-icon-button--tertiary:not(:disabled) {
        color: #053361; }
    .kmx-list .mdc-list-item .kmx-list-item__end-button {
      margin-left: auto;
      -webkit-flex-shrink: 0;
              flex-shrink: 0; }
    .kmx-list .mdc-list-item .mdc-list-item__primary-text::before,
    .kmx-list .mdc-list-item .mdc-list-item__primary-text::after {
      height: 24px; }
  .kmx-list.mdc-list--dense, .kmx-list.kmx-list--dense {
    font-size: 16px; }
    .kmx-list.mdc-list--dense .mdc-list-item, .kmx-list.kmx-list--dense .mdc-list-item {
      height: 40px;
      margin-bottom: 8px; }
  .kmx-list.mdc-list--avatar-list .kmx-list-item__graphic {
    border-radius: 0;
    max-width: 40px;
    width: 100%;
    -webkit-flex-shrink: 0;
            flex-shrink: 0;
    margin-right: 16px; }
  .kmx-list.mdc-list--two-line .mdc-list-item, .kmx-list.mdc-list--three-line .mdc-list-item {
    height: auto; }
    .kmx-list.mdc-list--two-line .mdc-list-item .mdc-list-item__text, .kmx-list.mdc-list--three-line .mdc-list-item .mdc-list-item__text {
      padding: 8px; }
  .kmx-list.mdc-list--two-line .mdc-list-item__text, .kmx-list.mdc-list--three-line .mdc-list-item__text {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    -webkit-flex-direction: column;
            flex-direction: column; }
  .kmx-list.mdc-list--two-line.mdc-list--dense .mdc-list-item__text, .kmx-list.mdc-list--three-line.mdc-list--dense .mdc-list-item__text {
    padding: 4px; }
  .kmx-list.mdc-list--two-line .mdc-list-item__secondary-text {
    font-size: 14px;
    line-height: 1.29;
    max-height: 36px;
    overflow: hidden;
    white-space: normal; }
  .kmx-list.mdc-list--three-line .mdc-list-item__secondary-text {
    font-size: 14px;
    line-height: 1.29;
    overflow-y: visible;
    white-space: normal; }

.mdc-menu {
  min-width: 112px;
  max-width: 336px; }
  .mdc-menu .mdc-list-item__meta {
    color: rgba(0, 0, 0, 0.87);
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87)); }
  .mdc-menu .mdc-list-item__graphic {
    color: rgba(0, 0, 0, 0.87);
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87)); }
  .mdc-menu .mdc-list-divider {
    margin: 8px 0; }
  .mdc-menu .mdc-list-item {
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .mdc-menu .mdc-list-item--disabled {
    cursor: auto; }

.mdc-menu__selection-group {
  padding: 0;
  fill: currentColor; }
  .mdc-menu__selection-group .mdc-list-item {
    /* @noflip */
    padding-left: 56px;
    /* @noflip */
    padding-right: 0; }
    [dir="rtl"] .mdc-menu__selection-group .mdc-list-item, .mdc-menu__selection-group .mdc-list-item[dir="rtl"] {
      /* @noflip */
      padding-left: 0;
      /* @noflip */
      padding-right: 56px; }

.mdc-menu__selection-group-icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: auto;
  right: initial;
  display: none;
  position: absolute; }
  [dir="rtl"] .mdc-menu__selection-group-icon, .mdc-menu__selection-group-icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 16px; }

.mdc-menu-item--selected .mdc-menu__selection-group-icon {
  display: inline; }

.mdc-simple-menu--open-from-top-right {
  top: 0;
  right: 0; }

.mdc-radio, .kmx-radio, .kmx-radio--disabled {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  display: inline-block;
  position: relative;
  -webkit-flex: 0 0 auto;
          flex: 0 0 auto;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  padding: 10px;
  cursor: pointer;
  /* @alternate */
  will-change: opacity, transform, border-color, color; }
  .mdc-radio .mdc-radio__native-control:enabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle, .kmx-radio .mdc-radio__native-control:enabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle, .kmx-radio--disabled .mdc-radio__native-control:enabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle {
    border-color: rgba(0, 0, 0, 0.54); }
  .mdc-radio .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle, .kmx-radio .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle, .kmx-radio--disabled .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle {
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900); }
  .mdc-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle, .kmx-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle, .kmx-radio--disabled .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900); }
  .mdc-radio .mdc-radio__background::before, .kmx-radio .mdc-radio__background::before, .kmx-radio--disabled .mdc-radio__background::before {
    background-color: #ffd900; }
    @supports not (-ms-ime-align: auto) {
      .mdc-radio .mdc-radio__background::before, .kmx-radio .mdc-radio__background::before, .kmx-radio--disabled .mdc-radio__background::before {
        /* @alternate */
        background-color: #ffd900;
        background-color: var(--mdc-theme-secondary, #ffd900); } }
  .mdc-radio::before, .kmx-radio::before, .kmx-radio--disabled::before, .mdc-radio::after, .kmx-radio::after, .kmx-radio--disabled::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-radio::before, .kmx-radio::before, .kmx-radio--disabled::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-radio.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-radio::before, .mdc-ripple-upgraded.kmx-radio--disabled::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-radio.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-radio::after, .mdc-ripple-upgraded.kmx-radio--disabled::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-radio.mdc-ripple-upgraded--unbounded::after, .mdc-ripple-upgraded--unbounded.kmx-radio::after, .mdc-ripple-upgraded--unbounded.kmx-radio--disabled::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-radio.mdc-ripple-upgraded--foreground-activation::after, .mdc-ripple-upgraded--foreground-activation.kmx-radio::after, .mdc-ripple-upgraded--foreground-activation.kmx-radio--disabled::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-radio.mdc-ripple-upgraded--foreground-deactivation::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-radio::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-radio--disabled::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-radio::before, .kmx-radio::before, .kmx-radio--disabled::before, .mdc-radio::after, .kmx-radio::after, .kmx-radio--disabled::after {
    top: calc(50% - 50%);
    /* @noflip */
    left: calc(50% - 50%);
    width: 100%;
    height: 100%; }
  .mdc-radio.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-radio::before, .mdc-ripple-upgraded.kmx-radio--disabled::before, .mdc-radio.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-radio::after, .mdc-ripple-upgraded.kmx-radio--disabled::after {
    top: calc(50% - 50%);
    top: var(--mdc-ripple-top, calc(50% - 50%));
    /* @noflip */
    left: calc(50% - 50%);
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-radio.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-radio::after, .mdc-ripple-upgraded.kmx-radio--disabled::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-radio::before, .kmx-radio::before, .kmx-radio--disabled::before, .mdc-radio::after, .kmx-radio::after, .kmx-radio--disabled::after {
    background-color: #ffd900; }
    @supports not (-ms-ime-align: auto) {
      .mdc-radio::before, .kmx-radio::before, .kmx-radio--disabled::before, .mdc-radio::after, .kmx-radio::after, .kmx-radio--disabled::after {
        /* @alternate */
        background-color: #ffd900;
        background-color: var(--mdc-theme-secondary, #ffd900); } }
  .mdc-radio:hover::before, .kmx-radio:hover::before, .kmx-radio--disabled:hover::before {
    opacity: 0.08; }
  .mdc-radio:not(.mdc-ripple-upgraded):focus::before, .kmx-radio:not(.mdc-ripple-upgraded):focus::before, .kmx-radio--disabled:not(.mdc-ripple-upgraded):focus::before, .mdc-radio.mdc-ripple-upgraded--background-focused::before, .mdc-ripple-upgraded--background-focused.kmx-radio::before, .mdc-ripple-upgraded--background-focused.kmx-radio--disabled::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.24; }
  .mdc-radio:not(.mdc-ripple-upgraded)::after, .kmx-radio:not(.mdc-ripple-upgraded)::after, .kmx-radio--disabled:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  .mdc-radio:not(.mdc-ripple-upgraded):active::after, .kmx-radio:not(.mdc-ripple-upgraded):active::after, .kmx-radio--disabled:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.32; }
  .mdc-radio.mdc-ripple-upgraded, .mdc-ripple-upgraded.kmx-radio, .mdc-ripple-upgraded.kmx-radio--disabled {
    --mdc-ripple-fg-opacity: 0.32; }
  .mdc-radio__background {
    display: inline-block;
    position: absolute;
    left: 10px;
    box-sizing: border-box;
    width: 50%;
    height: 50%; }
    .mdc-radio__background::before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -webkit-transform: scale(0, 0);
              transform: scale(0, 0);
      -webkit-transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
      transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
      transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
      transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
      border-radius: 50%;
      opacity: 0;
      pointer-events: none;
      content: ""; }
  .mdc-radio__outer-circle {
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    -webkit-transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-width: 2px;
    border-style: solid;
    border-radius: 50%; }
  .mdc-radio__inner-circle {
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0, 0);
            transform: scale(0, 0);
    -webkit-transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    transition: transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-width: 10px;
    border-style: solid;
    border-radius: 50%; }
  .mdc-radio__native-control {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    cursor: inherit;
    z-index: 1; }
  .mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__background::before, .mdc-ripple-upgraded--background-focused.kmx-radio .mdc-radio__background::before, .mdc-ripple-upgraded--background-focused.kmx-radio--disabled .mdc-radio__background::before {
    content: none; }

.mdc-radio__native-control:checked + .mdc-radio__background,
.mdc-radio__native-control:disabled + .mdc-radio__background {
  -webkit-transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__outer-circle,
  .mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__outer-circle {
    -webkit-transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__inner-circle,
  .mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__inner-circle {
    -webkit-transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1); }

.mdc-radio--disabled {
  cursor: default;
  pointer-events: none; }

.mdc-radio__native-control:checked + .mdc-radio__background .mdc-radio__inner-circle {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1); }

.mdc-radio__native-control:disabled + .mdc-radio__background,
[aria-disabled="true"] .mdc-radio__native-control + .mdc-radio__background {
  cursor: default; }
  .mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__outer-circle,
  [aria-disabled="true"] .mdc-radio__native-control + .mdc-radio__background .mdc-radio__outer-circle {
    border-color: rgba(0, 0, 0, 0.26); }
  .mdc-radio__native-control:disabled + .mdc-radio__background .mdc-radio__inner-circle,
  [aria-disabled="true"] .mdc-radio__native-control + .mdc-radio__background .mdc-radio__inner-circle {
    border-color: rgba(0, 0, 0, 0.26); }

.mdc-radio__native-control:focus + .mdc-radio__background::before {
  -webkit-transform: scale(2, 2);
          transform: scale(2, 2);
  -webkit-transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
  opacity: 0.12; }

.kmx-radio .mdc-radio__native-control:enabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle, .kmx-radio--disabled .mdc-radio__native-control:enabled:not(:checked) + .mdc-radio__background .mdc-radio__outer-circle {
  border-color: #6d747a; }

.kmx-radio .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle, .kmx-radio--disabled .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle {
  border-color: #1773cf; }

.kmx-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle, .kmx-radio--disabled .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {
  border-color: #1773cf; }

.kmx-radio .mdc-radio__background::before, .kmx-radio--disabled .mdc-radio__background::before {
  background-color: #1773cf; }

.kmx-radio::before, .kmx-radio--disabled::before, .kmx-radio::after, .kmx-radio--disabled::after {
  background-color: #1773cf; }

.kmx-radio--disabled::before, .kmx-radio--disabled::after {
  background-color: #abafb3; }

.kmx-radio--invalid .mdc-text-field-helper-text--validation-msg {
  opacity: 1;
  color: #e01f1f; }

/* stylelint-disable length-zero-no-unit */
.kmx-radio:not(.kmx-radio--disabled), .kmx-radio--disabled:not(.kmx-radio--disabled) {
  /* stylelint-disable-next-line selector-max-type */ }
  .kmx-radio:not(.kmx-radio--disabled) + label, .kmx-radio--disabled:not(.kmx-radio--disabled) + label,
  .kmx-radio:not(.kmx-radio--disabled) + .kmx-radio-label,
  .kmx-radio--disabled:not(.kmx-radio--disabled) + .kmx-radio-label {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #6d747a; }

.kmx-radio--disabled {
  /* stylelint-disable-next-line selector-max-type */ }
  .kmx-radio--disabled + label,
  .kmx-radio--disabled + .kmx-radio-label {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #abafb3; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
.mdc-toolbar, .kmx-secondary-header, .kmx-toolbar {
  background-color: #053361;
  /* @alternate */
  background-color: #053361;
  background-color: var(--mdc-theme-primary, #053361);
  color: white;
  display: -webkit-flex;
  display: flex;
  position: relative;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  box-sizing: border-box;
  width: 100%; }
  .mdc-toolbar .mdc-toolbar__icon, .kmx-secondary-header .mdc-toolbar__icon, .kmx-toolbar .mdc-toolbar__icon, .mdc-toolbar .kmx-toolbar__icon, .kmx-secondary-header .kmx-toolbar__icon, .kmx-toolbar .kmx-toolbar__icon {
    color: white; }
    .mdc-toolbar .mdc-toolbar__icon::before, .kmx-secondary-header .mdc-toolbar__icon::before, .kmx-toolbar .mdc-toolbar__icon::before, .mdc-toolbar .kmx-toolbar__icon::before, .kmx-secondary-header .kmx-toolbar__icon::before, .kmx-toolbar .kmx-toolbar__icon::before, .mdc-toolbar .mdc-toolbar__icon::after, .kmx-secondary-header .mdc-toolbar__icon::after, .kmx-toolbar .mdc-toolbar__icon::after, .mdc-toolbar .kmx-toolbar__icon::after, .kmx-secondary-header .kmx-toolbar__icon::after, .kmx-toolbar .kmx-toolbar__icon::after {
      background-color: white; }
    .mdc-toolbar .mdc-toolbar__icon:hover::before, .kmx-secondary-header .mdc-toolbar__icon:hover::before, .kmx-toolbar .mdc-toolbar__icon:hover::before, .mdc-toolbar .kmx-toolbar__icon:hover::before, .kmx-secondary-header .kmx-toolbar__icon:hover::before, .kmx-toolbar .kmx-toolbar__icon:hover::before {
      opacity: 0.08; }
    .mdc-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-secondary-header .mdc-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .mdc-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-secondary-header .kmx-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .mdc-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded--background-focused::before, .kmx-secondary-header .mdc-toolbar__icon.mdc-ripple-upgraded--background-focused::before, .kmx-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded--background-focused::before, .mdc-toolbar .mdc-ripple-upgraded--background-focused.kmx-toolbar__icon::before, .kmx-secondary-header .mdc-ripple-upgraded--background-focused.kmx-toolbar__icon::before, .kmx-toolbar .mdc-ripple-upgraded--background-focused.kmx-toolbar__icon::before {
      -webkit-transition-duration: 75ms;
              transition-duration: 75ms;
      opacity: 0.24; }
    .mdc-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-secondary-header .mdc-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded)::after, .mdc-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-secondary-header .kmx-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded)::after {
      -webkit-transition: opacity 150ms linear;
      transition: opacity 150ms linear; }
    .mdc-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-secondary-header .mdc-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .mdc-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-secondary-header .kmx-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):active::after {
      -webkit-transition-duration: 75ms;
              transition-duration: 75ms;
      opacity: 0.32; }
    .mdc-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded, .kmx-secondary-header .mdc-toolbar__icon.mdc-ripple-upgraded, .kmx-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded, .mdc-toolbar .mdc-ripple-upgraded.kmx-toolbar__icon, .kmx-secondary-header .mdc-ripple-upgraded.kmx-toolbar__icon, .kmx-toolbar .mdc-ripple-upgraded.kmx-toolbar__icon {
      --mdc-ripple-fg-opacity: 0.32; }
  .mdc-toolbar__row, .kmx-toolbar__row {
    display: -webkit-flex;
    display: flex;
    position: relative;
    -webkit-align-items: center;
            align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    min-height: 64px; }
    @media (max-width: 959px) and (orientation: landscape) {
      .mdc-toolbar__row, .kmx-toolbar__row {
        min-height: 48px; } }
    @media (max-width: 599px) {
      .mdc-toolbar__row, .kmx-toolbar__row {
        min-height: 56px; } }
  .mdc-toolbar__section, .kmx-toolbar__section {
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex: 1;
            flex: 1;
    -webkit-align-items: start;
            align-items: start;
    -webkit-justify-content: center;
            justify-content: center;
    box-sizing: border-box;
    min-width: 0;
    height: 100%;
    padding: 8px;
    z-index: 1; }
    @media (max-width: 959px) and (orientation: landscape) {
      .mdc-toolbar__section, .kmx-toolbar__section {
        padding: 0; } }
    @media (max-width: 599px) {
      .mdc-toolbar__section, .kmx-toolbar__section {
        padding: 4px 0; } }
    .mdc-toolbar__section--align-start {
      /* @noflip */
      padding-left: 12px;
      /* @noflip */
      padding-right: 0;
      -webkit-justify-content: flex-start;
              justify-content: flex-start;
      -webkit-order: -1;
              order: -1; }
      [dir="rtl"] .mdc-toolbar__section--align-start, .mdc-toolbar__section--align-start[dir="rtl"] {
        /* @noflip */
        padding-left: 0;
        /* @noflip */
        padding-right: 12px; }
      @media (max-width: 959px) and (orientation: landscape) {
        .mdc-toolbar__section--align-start {
          /* @noflip */
          padding-left: 4px;
          /* @noflip */
          padding-right: 0; }
          [dir="rtl"] .mdc-toolbar__section--align-start, .mdc-toolbar__section--align-start[dir="rtl"] {
            /* @noflip */
            padding-left: 0;
            /* @noflip */
            padding-right: 4px; } }
      @media (max-width: 599px) {
        .mdc-toolbar__section--align-start {
          /* @noflip */
          padding-left: 4px;
          /* @noflip */
          padding-right: 0; }
          [dir="rtl"] .mdc-toolbar__section--align-start, .mdc-toolbar__section--align-start[dir="rtl"] {
            /* @noflip */
            padding-left: 0;
            /* @noflip */
            padding-right: 4px; } }
    .mdc-toolbar__section--align-end {
      /* @noflip */
      padding-left: 0;
      /* @noflip */
      padding-right: 12px;
      -webkit-justify-content: flex-end;
              justify-content: flex-end;
      -webkit-order: 1;
              order: 1; }
      [dir="rtl"] .mdc-toolbar__section--align-end, .mdc-toolbar__section--align-end[dir="rtl"] {
        /* @noflip */
        padding-left: 12px;
        /* @noflip */
        padding-right: 0; }
      @media (max-width: 959px) and (orientation: landscape) {
        .mdc-toolbar__section--align-end {
          /* @noflip */
          padding-left: 0;
          /* @noflip */
          padding-right: 4px; }
          [dir="rtl"] .mdc-toolbar__section--align-end, .mdc-toolbar__section--align-end[dir="rtl"] {
            /* @noflip */
            padding-left: 4px;
            /* @noflip */
            padding-right: 0; } }
      @media (max-width: 599px) {
        .mdc-toolbar__section--align-end {
          /* @noflip */
          padding-left: 0;
          /* @noflip */
          padding-right: 4px; }
          [dir="rtl"] .mdc-toolbar__section--align-end, .mdc-toolbar__section--align-end[dir="rtl"] {
            /* @noflip */
            padding-left: 4px;
            /* @noflip */
            padding-right: 0; } }
  .mdc-toolbar__title, .kmx-toolbar__title {
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    line-height: 2rem;
    font-weight: 500;
    letter-spacing: 0.0125em;
    text-decoration: inherit;
    text-transform: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    /* @noflip */
    margin-left: 24px;
    /* @noflip */
    margin-right: 0;
    -webkit-align-self: center;
                -ms-grid-row-align: center;
            align-self: center;
    padding: 12px 0;
    line-height: 1.5rem;
    z-index: 1; }
    [dir="rtl"] .mdc-toolbar__title, [dir="rtl"] .kmx-toolbar__title, .mdc-toolbar__title[dir="rtl"], .kmx-toolbar__title[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 24px; }
  .mdc-toolbar__icon, .kmx-toolbar__icon, .mdc-toolbar__menu-icon, .kmx-toolbar__menu-icon {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    will-change: transform, opacity;
    display: -webkit-flex;
    display: flex;
    position: relative;
    -webkit-align-items: start;
            align-items: start;
    -webkit-justify-content: center;
            justify-content: center;
    box-sizing: border-box;
    width: 48px;
    height: 48px;
    padding: 12px;
    border: none;
    outline: none;
    background-color: transparent;
    fill: currentColor;
    color: inherit;
    text-decoration: none;
    cursor: pointer; }
    .mdc-toolbar__icon::before, .kmx-toolbar__icon::before, .mdc-toolbar__icon::after, .kmx-toolbar__icon::after, .mdc-toolbar__menu-icon::before, .kmx-toolbar__menu-icon::before, .mdc-toolbar__menu-icon::after, .kmx-toolbar__menu-icon::after {
      position: absolute;
      border-radius: 50%;
      opacity: 0;
      pointer-events: none;
      content: ""; }
    .mdc-toolbar__icon::before, .kmx-toolbar__icon::before, .mdc-toolbar__menu-icon::before, .kmx-toolbar__menu-icon::before {
      -webkit-transition: opacity 15ms linear;
      transition: opacity 15ms linear;
      z-index: 1; }
    .mdc-toolbar__icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__icon::before, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::before {
      -webkit-transform: scale(1);
              transform: scale(1);
      -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
              transform: scale(var(--mdc-ripple-fg-scale, 1)); }
    .mdc-toolbar__icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::after {
      top: 0;
      /* @noflip */
      left: 0;
      -webkit-transform: scale(0);
              transform: scale(0);
      -webkit-transform-origin: center center;
              transform-origin: center center; }
    .mdc-toolbar__icon.mdc-ripple-upgraded--unbounded::after, .mdc-ripple-upgraded--unbounded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded--unbounded::after, .mdc-ripple-upgraded--unbounded.kmx-toolbar__menu-icon::after {
      top: 0;
      top: var(--mdc-ripple-top, 0);
      /* @noflip */
      left: 0;
      left: var(--mdc-ripple-left, 0); }
    .mdc-toolbar__icon.mdc-ripple-upgraded--foreground-activation::after, .mdc-ripple-upgraded--foreground-activation.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded--foreground-activation::after, .mdc-ripple-upgraded--foreground-activation.kmx-toolbar__menu-icon::after {
      -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
              animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
    .mdc-toolbar__icon.mdc-ripple-upgraded--foreground-deactivation::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded--foreground-deactivation::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-toolbar__menu-icon::after {
      -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
              animation: 150ms mdc-ripple-fg-opacity-out;
      -webkit-transform: translate(0) scale(1);
              transform: translate(0) scale(1);
      -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
              transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
    .mdc-toolbar__icon::before, .kmx-toolbar__icon::before, .mdc-toolbar__icon::after, .kmx-toolbar__icon::after, .mdc-toolbar__menu-icon::before, .kmx-toolbar__menu-icon::before, .mdc-toolbar__menu-icon::after, .kmx-toolbar__menu-icon::after {
      top: calc(50% - 50%);
      /* @noflip */
      left: calc(50% - 50%);
      width: 100%;
      height: 100%; }
    .mdc-toolbar__icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__icon::before, .mdc-toolbar__icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::before, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::after {
      top: calc(50% - 50%);
      top: var(--mdc-ripple-top, calc(50% - 50%));
      /* @noflip */
      left: calc(50% - 50%);
      left: var(--mdc-ripple-left, calc(50% - 50%));
      width: 100%;
      width: var(--mdc-ripple-fg-size, 100%);
      height: 100%;
      height: var(--mdc-ripple-fg-size, 100%); }
    .mdc-toolbar__icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::after {
      width: 100%;
      width: var(--mdc-ripple-fg-size, 100%);
      height: 100%;
      height: var(--mdc-ripple-fg-size, 100%); }

.mdc-toolbar__menu-icon + .mdc-toolbar__title, .kmx-toolbar__menu-icon + .mdc-toolbar__title, .mdc-toolbar__menu-icon + .kmx-toolbar__title, .kmx-toolbar__menu-icon + .kmx-toolbar__title {
  /* @noflip */
  margin-left: 8px;
  /* @noflip */
  margin-right: 0; }
  [dir="rtl"] .mdc-toolbar__menu-icon + .mdc-toolbar__title, [dir="rtl"] .kmx-toolbar__menu-icon + .mdc-toolbar__title, [dir="rtl"] .mdc-toolbar__menu-icon + .kmx-toolbar__title, [dir="rtl"] .kmx-toolbar__menu-icon + .kmx-toolbar__title, .mdc-toolbar__menu-icon + .mdc-toolbar__title[dir="rtl"], .kmx-toolbar__menu-icon + .mdc-toolbar__title[dir="rtl"], .mdc-toolbar__menu-icon + .kmx-toolbar__title[dir="rtl"], .kmx-toolbar__menu-icon + .kmx-toolbar__title[dir="rtl"] {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 8px; }

@media (max-width: 599px) {
  .mdc-toolbar__title, .kmx-toolbar__title {
    /* @noflip */
    margin-left: 16px;
    /* @noflip */
    margin-right: 0; }
    [dir="rtl"] .mdc-toolbar__title, [dir="rtl"] .kmx-toolbar__title, .mdc-toolbar__title[dir="rtl"], .kmx-toolbar__title[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 16px; } }

.mdc-toolbar--fixed, .kmx-toolbar--fixed {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 4; }

.mdc-toolbar--flexible {
  --mdc-toolbar-ratio-to-extend-flexible: 4; }
  .mdc-toolbar--flexible .mdc-toolbar__row:first-child, .mdc-toolbar--flexible .kmx-toolbar__row:first-child {
    height: 256px;
    height: calc(64px * 4);
    height: calc(64px * var(--mdc-toolbar-ratio-to-extend-flexible, 4)); }
    @media (max-width: 599px) {
      .mdc-toolbar--flexible .mdc-toolbar__row:first-child, .mdc-toolbar--flexible .kmx-toolbar__row:first-child {
        height: 224px;
        height: calc(56px * 4);
        height: calc(56px * var(--mdc-toolbar-ratio-to-extend-flexible, 4)); } }
    .mdc-toolbar--flexible .mdc-toolbar__row:first-child::after, .mdc-toolbar--flexible .kmx-toolbar__row:first-child::after {
      position: absolute;
      content: ""; }
  .mdc-toolbar--flexible-default-behavior .mdc-toolbar__title, .mdc-toolbar--flexible-default-behavior .kmx-toolbar__title {
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    line-height: 2rem;
    font-weight: 500;
    letter-spacing: 0.0125em;
    text-decoration: inherit;
    text-transform: inherit;
    -webkit-align-self: flex-end;
            align-self: flex-end;
    line-height: 1.5rem; }
  .mdc-toolbar--flexible-default-behavior .mdc-toolbar__row:first-child::after, .mdc-toolbar--flexible-default-behavior .kmx-toolbar__row:first-child::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease;
    opacity: 1; }
  .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .mdc-toolbar__row:first-child::after, .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .kmx-toolbar__row:first-child::after {
    opacity: 0; }
  .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .mdc-toolbar__title, .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .kmx-toolbar__title {
    font-weight: 500; }

.mdc-toolbar--waterfall.mdc-toolbar--fixed, .mdc-toolbar--waterfall.kmx-toolbar--fixed {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  -webkit-transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
  will-change: box-shadow; }
  .mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--flexible-space-minimized, .mdc-toolbar--waterfall.mdc-toolbar--flexible-space-minimized.kmx-toolbar--fixed {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12); }
  .mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--flexible-space-minimized, .mdc-toolbar--waterfall.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--flexible-space-minimized.kmx-toolbar--fixed {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12); }
  .mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--fixed-at-last-row, .mdc-toolbar--waterfall.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--fixed-at-last-row.kmx-toolbar--fixed {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12); }

.mdc-toolbar-fixed-adjust, .kmx-toolbar-fixed-adjust {
  padding-top: 64px; }
  @media (max-width: 959px) and (max-height: 599px) {
    .mdc-toolbar-fixed-adjust, .kmx-toolbar-fixed-adjust {
      padding-top: 48px; } }
  @media (max-width: 599px) {
    .mdc-toolbar-fixed-adjust, .kmx-toolbar-fixed-adjust {
      padding-top: 56px; } }

.mdc-toolbar__section--shrink-to-fit {
  -webkit-flex: none;
          flex: none; }

.kmx-secondary-header.kmx-secondary-header {
  border-color: transparent;
  box-shadow: 0 4px 8px 0 rgba(42, 52, 61, 0.16);
  background-color: #053361;
  -webkit-align-items: center;
          align-items: center;
  height: 48px;
  min-height: 48px;
  padding: 0 16px;
  /* stylelint-disable declaration-no-important */
  /* stylelint-enable declaration-no-important */ }
  @media (min-width: 37.5em) {
    .kmx-secondary-header.kmx-secondary-header {
      height: 56px;
      min-height: 56px; } }
  @media (min-width: 56.25em) {
    .kmx-secondary-header.kmx-secondary-header {
      padding: 0 24px; } }
  .kmx-secondary-header.kmx-secondary-header__content--double {
    height: 80px;
    min-height: 80px; }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header__content--double {
        height: 88px;
        min-height: 88px; } }
  .kmx-secondary-header.kmx-secondary-header__content--double-on-mobile {
    height: 80px;
    min-height: 80px; }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header__content--double-on-mobile {
        height: 56px;
        min-height: 56px; } }
    @media (max-width: 37.49em) {
      .kmx-secondary-header.kmx-secondary-header__content--double-on-mobile .kmx-secondary-header__title {
        min-height: 32px;
        height: 32px;
        padding-top: 16px;
        padding-bottom: 4px; } }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header__content--double-on-mobile .kmx-secondary-header__title {
        padding-top: 0; } }
  .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__title {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    color: #ffffff; }
    @media (max-width: 37.49em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__title {
        width: 100%; } }
    @media (max-width: 37.49em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__title--multi {
        min-height: 32px;
        height: 32px;
        padding-top: 16px;
        padding-bottom: 4px; } }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__title--multi {
        height: 56px;
        min-height: 56px;
        margin-bottom: 0; } }
  .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__tabs {
    padding-top: 0;
    margin: auto; }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__tabs {
        -webkit-flex: 1;
                flex: 1; } }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__tabs .mdc-tab-bar {
        margin-left: auto; } }
  .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content {
    display: inherit;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    margin: auto !important;
    max-width: 1200px;
    width: 100%;
    -webkit-flex-wrap: nowrap;
            flex-wrap: nowrap;
    height: 48px;
    min-height: 48px; }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content {
        -webkit-flex-wrap: nowrap;
                flex-wrap: nowrap;
        height: 56px;
        min-height: 56px; } }
    .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content--double {
      -webkit-flex-wrap: wrap;
              flex-wrap: wrap;
      margin: 0 !important; }
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content--double .kmx-secondary-header__title--multi {
        height: 32px;
        min-height: 32px;
        padding-top: 16px;
        padding-bottom: 4px; }
    .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content--centered {
      -webkit-justify-content: center;
              justify-content: center;
      min-height: 48px;
      height: 48px; }
      @media (min-width: 37.5em) {
        .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content--centered {
          -webkit-flex-wrap: nowrap;
                  flex-wrap: nowrap;
          height: 56px;
          min-height: 56px; } }
    .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__content--no-wrap {
      -webkit-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__tabs {
    margin: 0; }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-secondary-header__tabs {
        height: 56px;
        min-height: 56px; } }
  .kmx-secondary-header.kmx-secondary-header .kmx-button--tertiary,
  .kmx-secondary-header.kmx-secondary-header .kmx-icon-button--tertiary {
    color: #ffffff; }
    .kmx-secondary-header.kmx-secondary-header .kmx-button--tertiary:focus, .kmx-secondary-header.kmx-secondary-header .kmx-button--tertiary:hover:not(:disabled):not(:active),
    .kmx-secondary-header.kmx-secondary-header .kmx-icon-button--tertiary:focus,
    .kmx-secondary-header.kmx-secondary-header .kmx-icon-button--tertiary:hover:not(:disabled):not(:active) {
      color: rgba(255, 255, 255, 0.7); }
    .kmx-secondary-header.kmx-secondary-header .kmx-button--tertiary:active,
    .kmx-secondary-header.kmx-secondary-header .kmx-icon-button--tertiary:active {
      background-color: rgba(222, 223, 224, 0.7);
      color: #ffffff; }
  .kmx-secondary-header.kmx-secondary-header .kmx-search-form {
    -webkit-flex-grow: 1;
            flex-grow: 1; }
    .kmx-secondary-header.kmx-secondary-header .kmx-search-form:not(:only-child) {
      margin-right: 4px; }
    @media (min-width: 37.5em) {
      .kmx-secondary-header.kmx-secondary-header .kmx-search-form {
        max-width: 568px;
        width: 568px; }
        .kmx-secondary-header.kmx-secondary-header .kmx-search-form:not(:only-child) {
          margin-left: 16px;
          margin-right: 16px; } }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

@-webkit-keyframes mdc-select-float-native-control {
  0% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; } }

@keyframes mdc-select-float-native-control {
  0% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; } }

.mdc-line-ripple {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1), opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1), opacity 180ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 180ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  z-index: 2; }

.mdc-line-ripple--active {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  opacity: 1; }

.mdc-line-ripple--deactivating {
  opacity: 0; }

.mdc-notched-outline,
.mdc-notched-outline__idle {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%; }

.mdc-notched-outline {
  -webkit-transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  text-align: left;
  overflow: hidden; }
  [dir="rtl"] .mdc-notched-outline, .mdc-notched-outline[dir="rtl"] {
    text-align: right; }
  .mdc-notched-outline svg {
    position: absolute;
    width: 100%;
    height: 100%; }

.mdc-notched-outline__idle {
  -webkit-transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1), border-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1), border-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid;
  opacity: 1; }

.mdc-notched-outline__path {
  stroke-width: 1px;
  -webkit-transition: stroke 150ms cubic-bezier(0.4, 0, 0.2, 1), stroke-width 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: stroke 150ms cubic-bezier(0.4, 0, 0.2, 1), stroke-width 150ms cubic-bezier(0.4, 0, 0.2, 1);
  fill: transparent; }

.mdc-notched-outline--notched {
  opacity: 1; }

.mdc-notched-outline--notched ~ .mdc-notched-outline__idle {
  opacity: 0; }

.mdc-floating-label {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  position: absolute;
  bottom: 8px;
  left: 0;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1), color 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1), color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
  line-height: 1.15rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: text;
  overflow: hidden;
  will-change: transform; }
  [dir="rtl"] .mdc-floating-label, .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    right: 0;
    /* @noflip */
    left: auto;
    /* @noflip */
    -webkit-transform-origin: right top;
            transform-origin: right top; }

.mdc-floating-label--float-above {
  cursor: auto; }

.mdc-floating-label--float-above {
  -webkit-transform: translateY(-100%) scale(0.75);
          transform: translateY(-100%) scale(0.75); }

.mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-standard 250ms 1;
          animation: mdc-floating-label-shake-float-above-standard 250ms 1; }

@-webkit-keyframes mdc-floating-label-shake-float-above-standard {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-100%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-100%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-standard {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-100%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-100%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-100%) scale(0.75); } }

.mdc-select {
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%230%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.54%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E");
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 52px;
  background-repeat: no-repeat;
  background-position: right 8px bottom 12px; }
  .mdc-select:not(.mdc-select--disabled) {
    background-color: transparent; }
  .mdc-select:not(.mdc-select--disabled) .mdc-select__native-control {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-select:not(.mdc-select--disabled) .mdc-floating-label {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-select:not(.mdc-select--disabled) .mdc-select__native-control {
    border-bottom-color: rgba(0, 0, 0, 0.42); }
  .mdc-select:not(.mdc-select--disabled) .mdc-select__native-control:focus ~ .mdc-line-ripple {
    background-color: #053361;
    /* @alternate */
    background-color: #053361;
    background-color: var(--mdc-theme-primary, #053361); }
  .mdc-select:not(.mdc-select--disabled) .mdc-select__native-control:focus ~ .mdc-floating-label {
    color: rgba(5, 51, 97, 0.87); }
  .mdc-select:not(.mdc-select--disabled) .mdc-select__native-control:hover {
    border-bottom-color: rgba(0, 0, 0, 0.87); }
  [dir="rtl"] .mdc-select, .mdc-select[dir="rtl"] {
    background-position: left 8px bottom 12px; }
  .mdc-select__native-control {
    /* @noflip */
    padding-left: 0;
    /* @noflip */
    padding-right: 26px;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    line-height: 1.75rem;
    font-weight: 400;
    letter-spacing: 0.00937em;
    text-decoration: inherit;
    text-transform: inherit;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 4px;
    border: none;
    border-bottom: 1px solid;
    border-radius: 0;
    outline: none;
    background-color: transparent;
    color: inherit;
    white-space: nowrap;
    cursor: pointer;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none; }
    [dir="rtl"] .mdc-select__native-control, .mdc-select__native-control[dir="rtl"] {
      /* @noflip */
      padding-left: 26px;
      /* @noflip */
      padding-right: 0; }
    .mdc-select__native-control::-ms-expand {
      display: none; }
    .mdc-select__native-control::-ms-value {
      background-color: transparent;
      color: inherit; }

@-moz-document url-prefix("") {
  .mdc-select__native-control {
    text-indent: -2px; } }
    .mdc-select__native-control > option {
      color: inherit; }
  .mdc-select .mdc-floating-label {
    pointer-events: none; }
  .mdc-select .mdc-select__native-control:focus ~ .mdc-line-ripple::after {
    -webkit-transform: scale(1, 2);
            transform: scale(1, 2);
    opacity: 1; }

.mdc-select--box {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  height: 56px;
  border-radius: 4px 4px 0 0;
  background-position: right 10px center;
  overflow: hidden; }
  .mdc-select--box:not(.mdc-select--disabled) {
    background-color: whitesmoke; }
  .mdc-select--box::before, .mdc-select--box::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-select--box::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-select--box.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-select--box.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-select--box.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-select--box.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-select--box.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-select--box::before, .mdc-select--box::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-select--box.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-select--box::before, .mdc-select--box::after {
    background-color: rgba(0, 0, 0, 0.87); }
  .mdc-select--box:hover::before {
    opacity: 0.04; }
  .mdc-select--box:not(.mdc-ripple-upgraded):focus::before, .mdc-select--box.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  [dir="rtl"] .mdc-select--box, .mdc-select--box[dir="rtl"] {
    background-position: left 10px center; }
  .mdc-select--box .mdc-select__native-control {
    /* @noflip */
    padding-left: 16px;
    /* @noflip */
    padding-right: 26px;
    height: 56px;
    border-radius: 4px 4px 0 0; }
    [dir="rtl"] .mdc-select--box .mdc-select__native-control, .mdc-select--box .mdc-select__native-control[dir="rtl"] {
      /* @noflip */
      padding-left: 26px;
      /* @noflip */
      padding-right: 16px; }
  .mdc-select--box .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    bottom: 12px;
    line-height: 1.75rem; }
    [dir="rtl"] .mdc-select--box .mdc-floating-label, .mdc-select--box .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }
    .mdc-select--box .mdc-floating-label--float-above {
      -webkit-transform: translateY(-40%) scale(0.75, 0.75);
              transform: translateY(-40%) scale(0.75, 0.75); }

.mdc-select--outlined {
  height: 56px;
  border: none;
  background-position: right 10px center; }
  .mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.24); }
  .mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.24); }
  .mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select__native-control:focus) .mdc-select__native-control:hover ~ .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.87); }
  .mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select__native-control:focus) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.87); }
  .mdc-select--outlined:not(.mdc-select--disabled) .mdc-select__native-control:focus ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke-width: 2px; }
  .mdc-select--outlined:not(.mdc-select--disabled) .mdc-select__native-control:focus ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke: #053361;
    /* @alternate */
    stroke: #053361;
    stroke: var(--mdc-theme-primary, #053361); }
  .mdc-select--outlined .mdc-floating-label--float-above {
    -webkit-transform: translateY(-130%) scale(0.75);
            transform: translateY(-130%) scale(0.75); }
  .mdc-select--outlined .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1; }
  .mdc-select--outlined .mdc-notched-outline {
    border-radius: 4px; }
  .mdc-select--outlined .mdc-notched-outline__idle {
    border-radius: 4px; }
  [dir="rtl"] .mdc-select--outlined, .mdc-select--outlined[dir="rtl"] {
    background-position: left 10px center; }
  .mdc-select--outlined .mdc-select__native-control {
    /* @noflip */
    padding-left: 16px;
    /* @noflip */
    padding-right: 26px;
    display: -webkit-flex;
    display: flex;
    padding-top: 12px;
    padding-bottom: 12px;
    border: none;
    background-color: transparent;
    z-index: 1; }
    [dir="rtl"] .mdc-select--outlined .mdc-select__native-control, .mdc-select--outlined .mdc-select__native-control[dir="rtl"] {
      /* @noflip */
      padding-left: 26px;
      /* @noflip */
      padding-right: 16px; }
  .mdc-select--outlined .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    position: absolute;
    bottom: 20px; }
    [dir="rtl"] .mdc-select--outlined .mdc-floating-label, .mdc-select--outlined .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }

.mdc-select--disabled {
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%23#000%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.54%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E");
  cursor: default;
  pointer-events: none; }
  .mdc-select--disabled .mdc-floating-label {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-select--disabled .mdc-line-ripple {
    display: none; }
  .mdc-select--disabled .mdc-select__native-control {
    border-bottom-style: dotted;
    color: rgba(0, 0, 0, 0.37); }
  .mdc-select--disabled.mdc-select--box {
    background-color: #fafafa; }
  .mdc-select--disabled.mdc-select--outlined .mdc-select__native-control {
    border-bottom-style: none; }
  .mdc-select--disabled.mdc-select--outlined .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.16); }
  .mdc-select--disabled.mdc-select--outlined .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.16); }

.kmx-select.mdc-select:not(.mdc-select--disabled) {
  /* stylelint-disable-next-line comment-empty-line-before */
  /* This mixin requires the hex value to be passed without the leading hash: */
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%230559ad%22%20fill-rule%3D%22evenodd%22%20opacity%3D%221%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E");
  /* Match height & width of text-input */
  height: 56px;
  width: 100%;
  /* adjust the position of the triangle so it correctly positioned with baseline */
  background-position-y: 32px;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%236d747a%22%20fill-rule%3D%22evenodd%22%20opacity%3D%221%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E"); }
  .kmx-select.mdc-select:not(.mdc-select--disabled):not(.mdc-select--disabled) .mdc-select__native-control {
    color: #6d747a; }
  .kmx-select.mdc-select:not(.mdc-select--disabled):not(.mdc-select--disabled) .mdc-select__native-control {
    border-bottom-color: #6d747a; }
  .kmx-select.mdc-select:not(.mdc-select--disabled):not(.mdc-select--disabled) .mdc-select__native-control:hover {
    border-bottom-color: #6d747a; }
  .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control {
    /* stylelint-disable-next-line */ }
    .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control > option:disabled {
      color: #abafb3; }
  .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control {
    padding-left: 8px; }
  .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control:focus ~ .mdc-floating-label {
    background-color: transparent;
    color: #1773cf; }
  .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control:focus ~ .mdc-line-ripple {
    background-color: #053361; }
  .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-floating-label {
    color: #6d747a;
    line-height: 1;
    left: 8px;
    bottom: 12px; }
    .kmx-select.mdc-select:not(.mdc-select--disabled) .mdc-floating-label--float-above {
      color: #1773cf;
      -webkit-transform: translate(0, -21px) scale(0.75);
              transform: translate(0, -21px) scale(0.75); }

.mdc-select--disabled,
.mdc-select[disabled] {
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%23abafb3%22%20fill-rule%3D%22evenodd%22%20opacity%3D%221%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E");
  border-bottom-width: 0;
  opacity: 1;
  height: 56px;
  width: 100%; }
  .mdc-select--disabled .mdc-select__native-control:disabled,
  .mdc-select[disabled] .mdc-select__native-control:disabled {
    opacity: 1;
    border-bottom-style: solid;
    border-bottom-color: #abafb3;
    color: #abafb3; }
  .mdc-select--disabled .mdc-floating-label,
  .mdc-select[disabled] .mdc-floating-label {
    color: #abafb3; }

.kmx-select.mdc-select:not(.mdc-select--disabled) + .kmx-select-helper-text {
  color: #6d747a;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  font-size: 12px;
  line-height: 1.16667;
  margin: 0;
  padding: 0 8px;
  margin: 3px 0 0; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

.mdc-snackbar, .kmx-snackbar {
  display: -webkit-flex;
  display: flex;
  position: fixed;
  bottom: 0;
  left: 50%;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
  box-sizing: border-box;
  padding-right: 24px;
  padding-left: 24px;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  -webkit-transition: -webkit-transform 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);
  transition: -webkit-transform 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);
  transition: transform 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);
  transition: transform 0.25s 0ms cubic-bezier(0.4, 0, 1, 1), -webkit-transform 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);
  background-color: #323232;
  pointer-events: none;
  will-change: transform; }
  @media (max-width: 599px) {
    .mdc-snackbar, .kmx-snackbar {
      left: 0;
      width: 100%;
      -webkit-transform: translate(0, 100%);
              transform: translate(0, 100%); } }
  @media (min-width: 600px) {
    .mdc-snackbar, .kmx-snackbar {
      min-width: 288px;
      max-width: 568px;
      border-radius: 2px; } }

@media (min-width: 600px) {
  .mdc-snackbar--align-start {
    /* @noflip */
    left: 24px;
    /* @noflip */
    right: auto;
    right: initial;
    bottom: 24px;
    -webkit-transform: translate(0, 200%);
            transform: translate(0, 200%); }
    [dir="rtl"] .mdc-snackbar--align-start, .mdc-snackbar--align-start[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 24px; } }

@media (max-width: 599px) {
  .mdc-snackbar--align-start {
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-transform: translate(0, 100%);
            transform: translate(0, 100%); } }

.mdc-snackbar--active {
  -webkit-transform: translate(0);
          transform: translate(0);
  -webkit-transition: -webkit-transform 0.25s 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: -webkit-transform 0.25s 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: transform 0.25s 0ms cubic-bezier(0, 0, 0.2, 1);
  transition: transform 0.25s 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.25s 0ms cubic-bezier(0, 0, 0.2, 1);
  pointer-events: auto; }
  .mdc-snackbar--active:not(.mdc-snackbar--align-start) {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0); }
    @media (max-width: 599px) {
      .mdc-snackbar--active:not(.mdc-snackbar--align-start) {
        bottom: 0;
        left: 0;
        width: 100%;
        -webkit-transform: translate(0);
                transform: translate(0); } }

.mdc-snackbar__action-wrapper {
  /* @noflip */
  padding-left: 24px;
  /* @noflip */
  padding-right: 0; }
  [dir="rtl"] .mdc-snackbar__action-wrapper, .mdc-snackbar__action-wrapper[dir="rtl"] {
    /* @noflip */
    padding-left: 0;
    /* @noflip */
    padding-right: 24px; }

.mdc-snackbar--action-on-bottom {
  -webkit-flex-direction: column;
          flex-direction: column; }

.mdc-snackbar__text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.03125em;
  text-decoration: inherit;
  text-transform: inherit;
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: auto;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  height: 48px;
  -webkit-transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
  transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
  opacity: 0;
  color: white; }
  .mdc-snackbar[dir="rtl"] .mdc-snackbar__text, .kmx-snackbar[dir="rtl"] .mdc-snackbar__text,
  [dir="rtl"] .mdc-snackbar .mdc-snackbar__text,
  [dir="rtl"] .kmx-snackbar .mdc-snackbar__text {
    /* @noflip */
    margin-left: auto;
    /* @noflip */
    margin-right: 0; }
  @media (min-width: 600px) {
    .mdc-snackbar__text {
      /* @noflip */
      padding-left: 0;
      /* @noflip */
      padding-right: 24px; }
      [dir="rtl"] .mdc-snackbar__text, .mdc-snackbar__text[dir="rtl"] {
        /* @noflip */
        padding-left: 24px;
        /* @noflip */
        padding-right: 0; } }

.mdc-snackbar--action-on-bottom .mdc-snackbar__text {
  margin-right: inherit; }

.mdc-snackbar--action-on-bottom .mdc-snackbar__action-wrapper {
  /* @noflip */
  margin-left: auto;
  /* @noflip */
  margin-right: 0;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
  margin-top: -12px;
  margin-bottom: 8px; }
  [dir="rtl"] .mdc-snackbar--action-on-bottom .mdc-snackbar__action-wrapper, .mdc-snackbar--action-on-bottom .mdc-snackbar__action-wrapper[dir="rtl"] {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: auto; }

.mdc-snackbar--multiline .mdc-snackbar__text {
  height: 80px; }

.mdc-snackbar__action-button {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.08929em;
  text-decoration: none;
  text-transform: uppercase;
  color: #ffd900;
  /* @alternate */
  color: #ffd900;
  color: var(--mdc-theme-secondary, #ffd900);
  padding: 0;
  -webkit-transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
  transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
  border: none;
  outline: none;
  background-color: transparent;
  opacity: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none;
  visibility: hidden; }
  .mdc-snackbar__action-button::-moz-focus-inner {
    border: 0; }
  .mdc-snackbar__action-button:hover {
    cursor: pointer; }
  .mdc-snackbar__action-button:not([aria-hidden]) {
    visibility: inherit; }

.mdc-snackbar--active .mdc-snackbar__text,
.mdc-snackbar--active .mdc-snackbar__action-button:not([aria-hidden]) {
  -webkit-transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
  transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
  opacity: 1; }

.mdc-snackbar--multiline.mdc-snackbar--action-on-bottom .mdc-snackbar__text {
  margin: 0; }

.mdc-snackbar, .kmx-snackbar {
  border-color: transparent;
  box-shadow: 0 8px 12px 0 rgba(42, 52, 61, 0.16);
  background-color: #6d747a;
  padding-left: 16px;
  padding-right: 8px; }
  .mdc-snackbar:not(.mdc-snackbar--align-start), .kmx-snackbar:not(.mdc-snackbar--align-start) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .mdc-snackbar__icon .svg-icon-wrapper {
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    width: 100%;
    height: 100%; }
  .mdc-snackbar__icon .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .mdc-snackbar__icon .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .mdc-snackbar__icon .svg-icon {
    color: #ffffff;
    height: 1.25em;
    margin: 0 1em 0 0; }
  .mdc-snackbar__text {
    color: #ffffff;
    min-height: 48px;
    max-height: 64px;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.04em; }
  .mdc-snackbar__action-wrapper {
    padding-left: 8px; }
  .mdc-snackbar__action-button {
    color: #ffffff; }
    .mdc-snackbar__action-button.kmx-button--tertiary-white {
      padding-left: 8px;
      padding-right: 8px; }
  .mdc-theme--dark .mdc-snackbar, .mdc-theme--dark .kmx-snackbar {
    background-color: #6d747a; }
    .mdc-theme--dark .mdc-snackbar__text {
      color: #ffffff; }
    .mdc-theme--dark .mdc-snackbar__action-button {
      color: #ffffff; }
      .mdc-theme--dark .mdc-snackbar__action-button.kmx-button--tertiary-white {
        padding-left: 8px;
        padding-right: 8px; }
  .mdc-snackbar--success {
    background-color: #28820a; }
    .mdc-snackbar--success .mdc-snackbar__text {
      color: #ffffff; }
    .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white {
      color: #ffffff; }
      .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white:hover, .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white:focus {
        color: #ffffff; }
      .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white:active {
        background-color: rgba(222, 223, 224, 0.7);
        color: #ffffff; }
    .mdc-theme--dark .mdc-snackbar--success {
      background-color: #28820a; }
      .mdc-theme--dark .mdc-snackbar--success .mdc-snackbar__text {
        color: #ffffff; }
      .mdc-theme--dark .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white {
        color: #ffffff; }
        .mdc-theme--dark .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white:hover, .mdc-theme--dark .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white:focus {
          color: #1773cf; }
        .mdc-theme--dark .mdc-snackbar--success .mdc-snackbar__action-button.kmx-button--tertiary-white:active {
          background-color: rgba(222, 223, 224, 0.7);
          color: #ffffff; }
  .mdc-snackbar--warning {
    background-color: #e01f1f; }
    .mdc-snackbar--warning .mdc-snackbar__text {
      color: #ffffff; }
    .mdc-theme--dark .mdc-snackbar--warning {
      background-color: #e01f1f; }
      .mdc-theme--dark .mdc-snackbar--warning .mdc-snackbar__text {
        color: #ffffff; }
  .mdc-snackbar--multiline .mdc-snackbar__text {
    height: 72px; }

.kmx-snackbar {
  z-index: 990; }

/* stylelint-disable length-zero-no-unit */
.kmx-store-list-icon {
  -webkit-align-items: center;
          align-items: center;
  background-color: #053361;
  border-radius: 100%;
  color: #ffffff;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 14px;
  height: 24px;
  -webkit-justify-content: center;
          justify-content: center;
  position: relative;
  width: 24px; }
  .kmx-store-list-icon .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-store-list-icon .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-store-list-icon .svg-icon {
    height: 16px;
    width: 16px; }
  .kmx-store-list-icon--favorite {
    background-color: #ffd900; }
    .kmx-store-list-icon--favorite .svg-icon {
      color: #053361; }

/* stylelint-disable length-zero-no-unit */
/* stylelint-disable length-zero-no-unit */
.kmx-store-list-icon {
  -webkit-align-items: center;
          align-items: center;
  background-color: #053361;
  border-radius: 100%;
  color: #ffffff;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 14px;
  height: 24px;
  -webkit-justify-content: center;
          justify-content: center;
  position: relative;
  width: 24px; }
  .kmx-store-list-icon .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-store-list-icon .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-store-list-icon .svg-icon {
    height: 16px;
    width: 16px; }
  .kmx-store-list-icon--favorite {
    background-color: #ffd900; }
    .kmx-store-list-icon--favorite .svg-icon {
      color: #053361; }

.kmx-stores-list {
  list-style: none;
  margin: 0;
  padding: 0; }

.kmx-stores-list-item {
  border-bottom: 1px solid #dedfe0;
  display: block;
  margin: 0;
  min-width: 320px; }
  .kmx-stores-list-item:hover {
    background-color: rgba(23, 115, 207, 0.08); }
  .kmx-stores-list-item:last-of-type {
    border-bottom: none; }
  .kmx-stores-list-item__your-store-label {
    padding: 16px 48px 0; }
  .kmx-stores-list-item__link {
    -webkit-align-items: flex-start;
            align-items: flex-start;
    display: -webkit-flex;
    display: flex;
    text-decoration: none; }
    .kmx-stores-list-item__link .kmx-store-list-icon {
      margin-right: 8px; }
    .kmx-stores-list-item__link .svg-icon-wrapper {
      -webkit-align-items: center;
              align-items: center;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
              justify-content: center;
      width: 100%;
      height: 100%; }
    .kmx-stores-list-item__link .svg-icon-wrapper {
      width: 24px; }
  .kmx-stores-list-item__info {
    -webkit-flex-grow: 1;
            flex-grow: 1; }
  .kmx-stores-list-item__name {
    font-weight: 700;
    font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
    font-size: 16px;
    letter-spacing: -0.13px;
    line-height: 1.25;
    color: #053361;
    margin: 0; }
    @media (min-width: 37.5em) {
      .kmx-stores-list-item__name {
        font-weight: 700;
        font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
        font-size: 20px;
        letter-spacing: -0.25px;
        line-height: 1.25; } }
  .kmx-stores-list-item__address {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #2a343d;
    font-style: normal;
    margin-bottom: 8px; }
  .kmx-stores-list-item__distance {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 14px;
    line-height: 1.42857;
    color: #6d747a; }
  .kmx-stores-list-item__text {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #6d747a;
    margin: 0; }
  .kmx-stores-list-item__arrow-right .svg-icon {
    display: -webkit-flex;
    display: flex;
    min-height: 1em;
    min-width: 1em;
    position: static;
    position: initial;
    /* stylelint-disable selector-max-type */
    /* stylelint-enable */ }
    .kmx-stores-list-item__arrow-right .svg-icon svg {
      fill: currentColor;
      height: 100%;
      max-width: 100%; }
  .kmx-stores-list-item__arrow-right .svg-icon {
    color: #053361;
    height: 24px;
    width: 24px; }
  .kmx-stores-list-item__actions {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
            flex-direction: column;
    padding: 4px 48px 24px; }
    .kmx-stores-list-item__actions .kmx-button {
      margin-top: 16px; }
  .kmx-stores-list-item__phone {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 16px;
    line-height: 1.5625;
    color: #6d747a; }
  .kmx-stores-list-item__label {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 14px;
    line-height: 1.42857;
    color: #6d747a;
    -webkit-align-items: center;
            align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    margin-top: 8px; }
    .kmx-stores-list-item__label .svg-icon-wrapper {
      -webkit-align-items: center;
              align-items: center;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
              justify-content: center;
      width: 100%;
      height: 100%; }
    .kmx-stores-list-item__label .svg-icon {
      display: -webkit-flex;
      display: flex;
      min-height: 1em;
      min-width: 1em;
      position: static;
      position: initial;
      /* stylelint-disable selector-max-type */
      /* stylelint-enable */ }
      .kmx-stores-list-item__label .svg-icon svg {
        fill: currentColor;
        height: 100%;
        max-width: 100%; }
    .kmx-stores-list-item__label .svg-icon-wrapper {
      -webkit-flex-shrink: 0;
              flex-shrink: 0;
      margin-right: 8px;
      width: 24px; }
    .kmx-stores-list-item__label .svg-icon {
      height: 24px;
      width: 24px; }
    .kmx-stores-list-item__label--buying-center {
      color: #28820a; }
      .kmx-stores-list-item__label--buying-center .svg-icon {
        color: #28820a; }
    .kmx-stores-list-item__label--new-car-sales, .kmx-stores-list-item__label--opening-soon {
      color: #1773cf; }
      .kmx-stores-list-item__label--new-car-sales .svg-icon, .kmx-stores-list-item__label--opening-soon .svg-icon {
        color: #1773cf; }
    .kmx-stores-list-item__label--store-warning {
      color: #e01f1f; }
      .kmx-stores-list-item__label--store-warning .svg-icon {
        color: #e01f1f; }
  .kmx-stores-list-item--region .kmx-stores-list-item__link {
    padding: 16px; }
    .kmx-stores-list-item--region .kmx-stores-list-item__link .svg-icon-wrapper {
      -webkit-align-self: center;
                  -ms-grid-row-align: center;
              align-self: center; }
  .kmx-stores-list-item--store .kmx-stores-list-item__your-store-label + .kmx-stores-list-item__link {
    padding-top: 0; }
  .kmx-stores-list-item--store .kmx-stores-list-item__link {
    padding: 16px 16px 4px 16px; }

.mdc-switch, .kmx-switch {
  display: inline-block;
  position: relative;
  outline: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .mdc-switch.mdc-switch--checked .mdc-switch__track, .mdc-switch--checked.kmx-switch .mdc-switch__track {
    background-color: #ffd900;
    /* @alternate */
    background-color: #ffd900;
    background-color: var(--mdc-theme-secondary, #ffd900);
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900); }
  .mdc-switch.mdc-switch--checked .mdc-switch__thumb, .mdc-switch--checked.kmx-switch .mdc-switch__thumb {
    background-color: #ffd900;
    /* @alternate */
    background-color: #ffd900;
    background-color: var(--mdc-theme-secondary, #ffd900);
    border-color: #ffd900;
    /* @alternate */
    border-color: #ffd900;
    border-color: var(--mdc-theme-secondary, #ffd900); }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__track, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__track {
    background-color: #000;
    border-color: #000; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb {
    background-color: #fff;
    border-color: #fff; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after {
    background-color: #9e9e9e; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before {
    opacity: 0.08; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.24; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.32; }
  .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32; }

.mdc-switch__native-control {
  /* @noflip */
  left: 0;
  /* @noflip */
  right: auto;
  right: initial;
  position: absolute;
  top: 0;
  width: 68px;
  height: 48px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
  pointer-events: auto; }
  [dir="rtl"] .mdc-switch__native-control, .mdc-switch__native-control[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 0; }

.mdc-switch__track {
  box-sizing: border-box;
  width: 32px;
  height: 14px;
  -webkit-transition: opacity 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid;
  border-radius: 7px;
  opacity: .38; }

.mdc-switch__thumb-underlay {
  /* @noflip */
  left: -18px;
  /* @noflip */
  right: auto;
  right: initial;
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  display: -webkit-flex;
  display: flex;
  position: absolute;
  top: -17px;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  width: 48px;
  height: 48px;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), border-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1); }
  [dir="rtl"] .mdc-switch__thumb-underlay, .mdc-switch__thumb-underlay[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: -18px; }
  .mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-switch__thumb-underlay::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {
    top: calc(50% - 50%);
    /* @noflip */
    left: calc(50% - 50%);
    width: 100%;
    height: 100%; }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded::before, .mdc-switch__thumb-underlay.mdc-ripple-upgraded::after {
    top: calc(50% - 50%);
    top: var(--mdc-ripple-top, calc(50% - 50%));
    /* @noflip */
    left: calc(50% - 50%);
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {
    background-color: #ffd900; }
    @supports not (-ms-ime-align: auto) {
      .mdc-switch__thumb-underlay::before, .mdc-switch__thumb-underlay::after {
        /* @alternate */
        background-color: #ffd900;
        background-color: var(--mdc-theme-secondary, #ffd900); } }
  .mdc-switch__thumb-underlay:hover::before {
    opacity: 0.08; }
  .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.24; }
  .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.32; }
  .mdc-switch__thumb-underlay.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32; }

.mdc-switch__thumb {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  border: 10px solid;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1; }

.mdc-switch--checked .mdc-switch__track {
  opacity: .54; }

.mdc-switch--checked .mdc-switch__thumb-underlay {
  -webkit-transform: translateX(20px);
          transform: translateX(20px); }
  [dir="rtl"] .mdc-switch--checked .mdc-switch__thumb-underlay, .mdc-switch--checked .mdc-switch__thumb-underlay[dir="rtl"] {
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px); }

.mdc-switch--checked .mdc-switch__native-control {
  -webkit-transform: translateX(-20px);
          transform: translateX(-20px); }
  [dir="rtl"] .mdc-switch--checked .mdc-switch__native-control, .mdc-switch--checked .mdc-switch__native-control[dir="rtl"] {
    -webkit-transform: translateX(20px);
            transform: translateX(20px); }

.mdc-switch--disabled {
  opacity: .38;
  pointer-events: none; }
  .mdc-switch--disabled .mdc-switch__thumb {
    border-width: 1px; }
  .mdc-switch--disabled .mdc-switch__native-control {
    cursor: default;
    pointer-events: none; }

/* stylelint-disable selector-max-type */
[class^='kmx-typography--label-'] + .kmx-switch,
.kmx-typography--label-lg + .kmx-switch {
  margin-left: 20px; }

.kmx-switch + [class^='kmx-typography--label-'] {
  margin-left: 12px; }

/* stylelint-enable selector-max-type */
.kmx-form-field .kmx-typography--label-lg, .kmx-form-field--stacked .kmx-typography--label-lg, .kmx-form-field--align-push-down .kmx-typography--label-lg {
  margin-top: 7px; }

.kmx-form-field .kmx-typography--label-sm, .kmx-form-field--stacked .kmx-typography--label-sm, .kmx-form-field--align-push-down .kmx-typography--label-sm {
  margin-top: 10px; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__track, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__track {
  background-color: #c8cacc;
  border-color: #c8cacc; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb {
  background-color: #fafafa;
  border-color: #fafafa; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after {
  background-color: #2a343d; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before {
  opacity: 0.04; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.12; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.16; }

.mdc-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.16; }

.mdc-switch.mdc-switch--checked .mdc-switch__track, .mdc-switch--checked.kmx-switch .mdc-switch__track {
  background-color: #9ccef7;
  border-color: #9ccef7; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb, .mdc-switch--checked.kmx-switch .mdc-switch__thumb {
  background-color: #1773cf;
  border-color: #1773cf; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay::before, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay::before, .mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay::after, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay::after {
  background-color: #1773cf; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay:hover::before, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:hover::before {
  opacity: 0.04; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.12; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.16; }

.mdc-switch.mdc-switch--checked .mdc-switch__thumb-underlay.mdc-ripple-upgraded, .mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.16; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__track, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__track {
  background-color: #c8cacc;
  border-color: #c8cacc; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb {
  background-color: #abafb3;
  border-color: #abafb3; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::before, .mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay::after {
  background-color: #abafb3; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover::before {
  opacity: 0.08; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.24; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.32; }

.mdc-switch.mdc-switch--disabled:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded, .mdc-switch--disabled.kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.32; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__track, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__track {
  background-color: #c8cacc;
  border-color: #c8cacc; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb {
  background-color: #abafb3;
  border-color: #abafb3; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay::before, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay::before, .mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay::after, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay::after {
  background-color: #abafb3; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay:hover::before, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:hover::before {
  opacity: 0.08; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):focus::before, .mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay.mdc-ripple-upgraded--background-focused::before {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.24; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded)::after {
  -webkit-transition: opacity 150ms linear;
  transition: opacity 150ms linear; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay:not(.mdc-ripple-upgraded):active::after {
  -webkit-transition-duration: 75ms;
          transition-duration: 75ms;
  opacity: 0.32; }

.mdc-switch.mdc-switch--disabled.mdc-switch--checked .mdc-switch__thumb-underlay.mdc-ripple-upgraded, .mdc-switch--disabled.mdc-switch--checked.kmx-switch .mdc-switch__thumb-underlay.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.32; }

.kmx-switch.mdc-switch--disabled {
  opacity: 1; }

.kmx-switch .mdc-switch__track {
  opacity: 1; }

.kmx-switch .mdc-switch__thumb {
  box-shadow: 0 2px 2px rgba(42, 52, 61, 0.16); }

.kmx-switch.mdc-switch--checked .mdc-switch__thumb-underlay, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay {
  height: 40px;
  width: 40px;
  top: -13px; }
  .kmx-switch.mdc-switch--checked .mdc-switch__thumb-underlay:hover:before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:hover:before {
    opacity: 0.08; }
  .kmx-switch.mdc-switch--checked .mdc-switch__thumb-underlay:focus:before, .kmx-switch:not(.mdc-switch--checked) .mdc-switch__thumb-underlay:focus:before {
    opacity: 0.24; }

[class^='kmx-form-field'] .kmx-switch {
  margin-top: 8px; }

[class^='kmx-form-field'] + .kmx-switch {
  margin-left: 18px; }

.kmx-form-field--stacked > .kmx-switch {
  margin-left: 12px; }

/* stylelint-disable length-zero-no-unit */
.kmx-table {
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0 auto;
  padding: 0;
  width: auto;
  /* stylelint-disable selector-max-type */
  /* stylelint-enable selector-max-type */ }
  .kmx-table:last-child {
    border-bottom: none; }
  .kmx-table caption {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 20px;
    line-height: 1.55;
    font-weight: 700;
    color: #053361;
    text-align: left; }
  .kmx-table td,
  .kmx-table th {
    font-weight: 400;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    letter-spacing: normal;
    font-size: 14px;
    line-height: 1.42857;
    color: #6d747a;
    font-weight: 400;
    text-align: left;
    padding-right: 16px; }
    .kmx-table td:last-child,
    .kmx-table th:last-child {
      padding-right: 0;
      padding-left: 16px;
      text-align: right;
      word-break: break-word; }
  .kmx-table td .icon-td {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
            justify-content: flex-end; }
  .kmx-table td:last-child {
    color: #053361; }
    .kmx-table td:last-child svg {
      width: 24px;
      height: 24px;
      fill: currentColor; }
  .kmx-table td.no {
    color: #e01f1f; }
  .kmx-table td.yes {
    color: #28820a; }
  .kmx-table thead {
    height: 0; }
    .kmx-table thead tr:not(.zero-height) {
      height: 28px; }
    .kmx-table thead th {
      font-weight: 400;
      font-family: "Lato", "Verdana", "Arial", sans-serif;
      letter-spacing: normal;
      font-size: 16px;
      line-height: 1.5625;
      color: #6d747a;
      line-height: 1;
      vertical-align: bottom; }
      .kmx-table thead th .visually-hidden {
        height: 0; }
  .kmx-table tbody tr {
    border-bottom: 1px solid #c8cacc;
    height: 48px; }
    .kmx-table tbody tr:last-child {
      border-bottom: none; }
  .kmx-table tfoot tr {
    border-top: 1px solid #c8cacc;
    border-bottom-color: transparent;
    height: 48px; }
  .kmx-table tfoot td {
    font-weight: 700; }
  .kmx-table--align-left {
    margin-left: 0;
    margin-right: auto; }
  .kmx-table--full-width {
    width: 100%; }

.kmx-tab__content {
  display: none; }
  .kmx-tab__content--active {
    display: block; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
/**
 * @license
 * Copyright 2018 Google Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
/**
 * @license
 * Copyright 2018 Google Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
.mdc-tab-bar {
  width: 100%; }

/**
 * @license
 * Copyright 2018 Google Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
.mdc-tab-scroller {
  overflow-y: hidden; }

.mdc-tab-scroller__test {
  position: absolute;
  top: -9999px;
  width: 100px;
  height: 100px;
  overflow-x: scroll; }

.mdc-tab-scroller__scroll-area {
  -webkit-overflow-scrolling: touch;
  display: -webkit-flex;
  display: flex;
  overflow-x: hidden; }

.mdc-tab-scroller__scroll-area::-webkit-scrollbar,
.mdc-tab-scroller__test::-webkit-scrollbar {
  display: none; }

.mdc-tab-scroller__scroll-area--scroll {
  overflow-x: scroll; }

.mdc-tab-scroller__scroll-content {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 1 0 auto;
          flex: 1 0 auto;
  -webkit-transform: none;
          transform: none;
  will-change: transform; }

.mdc-tab-scroller--align-start .mdc-tab-scroller__scroll-content {
  -webkit-justify-content: flex-start;
          justify-content: flex-start; }

.mdc-tab-scroller--align-end .mdc-tab-scroller__scroll-content {
  -webkit-justify-content: flex-end;
          justify-content: flex-end; }

.mdc-tab-scroller--align-center .mdc-tab-scroller__scroll-content {
  -webkit-justify-content: center;
          justify-content: center; }

.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-area {
  -webkit-overflow-scrolling: auto; }

.mdc-tab-scroller--animating .mdc-tab-scroller__scroll-content {
  -webkit-transition: 250ms -webkit-transform cubic-bezier(0.4, 0, 0.2, 1);
  transition: 250ms -webkit-transform cubic-bezier(0.4, 0, 0.2, 1);
  transition: 250ms transform cubic-bezier(0.4, 0, 0.2, 1);
  transition: 250ms transform cubic-bezier(0.4, 0, 0.2, 1), 250ms -webkit-transform cubic-bezier(0.4, 0, 0.2, 1); }

/**
 * @license
 * Copyright 2018 Google Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
/**
 * @license
 * Copyright 2018 Google Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
.mdc-tab-indicator {
  display: -webkit-flex;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1; }
  .mdc-tab-indicator > .mdc-tab-indicator__content--underline {
    background-color: #053361;
    /* @alternate */
    background-color: #053361;
    background-color: var(--mdc-theme-primary, #053361); }
  .mdc-tab-indicator > .mdc-tab-indicator__content--underline {
    height: 2px; }
  .mdc-tab-indicator > .mdc-tab-indicator__content--icon {
    color: #ffd900;
    /* @alternate */
    color: #ffd900;
    color: var(--mdc-theme-secondary, #ffd900); }
  .mdc-tab-indicator > .mdc-tab-indicator__content--icon {
    height: 34px;
    font-size: 34px; }

.mdc-tab-indicator__content {
  -webkit-transform-origin: left;
          transform-origin: left;
  opacity: 0; }

.mdc-tab-indicator__content--underline {
  -webkit-align-self: flex-end;
          align-self: flex-end;
  width: 100%; }

.mdc-tab-indicator__content--icon {
  -webkit-align-self: center;
              -ms-grid-row-align: center;
          align-self: center;
  margin: 0 auto; }

.mdc-tab-indicator--active > .mdc-tab-indicator__content {
  opacity: 1; }

.mdc-tab-indicator > .mdc-tab-indicator__content {
  -webkit-transition: 250ms -webkit-transform cubic-bezier(0.4, 0, 0.2, 1);
  transition: 250ms -webkit-transform cubic-bezier(0.4, 0, 0.2, 1);
  transition: 250ms transform cubic-bezier(0.4, 0, 0.2, 1);
  transition: 250ms transform cubic-bezier(0.4, 0, 0.2, 1), 250ms -webkit-transform cubic-bezier(0.4, 0, 0.2, 1); }

.mdc-tab-indicator--no-transition > .mdc-tab-indicator__content {
  -webkit-transition: none;
  transition: none; }

.mdc-tab-indicator--fade > .mdc-tab-indicator__content {
  -webkit-transition: 150ms opacity linear;
  transition: 150ms opacity linear; }

.mdc-tab-indicator--active.mdc-tab-indicator--fade > .mdc-tab-indicator__content {
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms; }

/**
 * @license
 * Copyright 2018 Google Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
.mdc-tab {
  position: relative;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.875rem;
  line-height: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.08929em;
  text-decoration: none;
  text-transform: uppercase;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 1 0 auto;
          flex: 1 0 auto;
  -webkit-justify-content: center;
          justify-content: center;
  box-sizing: border-box;
  height: 48px;
  padding: 0 24px;
  border: none;
  outline: none;
  background: none;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  -webkit-appearance: none;
  z-index: 1; }
  .mdc-tab .mdc-tab__text-label {
    color: #000;
    /* @alternate */
    color: #000;
    color: var(--mdc-theme-on-surface, #000); }
  .mdc-tab .mdc-tab__icon {
    color: #000;
    /* @alternate */
    color: #000;
    color: var(--mdc-theme-on-surface, #000); }

.mdc-tab--min-width {
  -webkit-flex: 0 1 auto;
          flex: 0 1 auto; }

.mdc-tab__ripple {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }
  .mdc-tab__ripple::before, .mdc-tab__ripple::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-tab__ripple::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-tab__ripple.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-tab__ripple.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-tab__ripple.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-tab__ripple.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-tab__ripple.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-tab__ripple::before, .mdc-tab__ripple::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-tab__ripple.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-tab__ripple::before, .mdc-tab__ripple::after {
    background-color: #053361; }
    @supports not (-ms-ime-align: auto) {
      .mdc-tab__ripple::before, .mdc-tab__ripple::after {
        /* @alternate */
        background-color: #053361;
        background-color: var(--mdc-theme-primary, #053361); } }
  .mdc-tab__ripple:hover::before {
    opacity: 0.04; }
  .mdc-tab__ripple:not(.mdc-ripple-upgraded):focus::before, .mdc-tab__ripple.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  .mdc-tab__ripple:not(.mdc-ripple-upgraded)::after {
    -webkit-transition: opacity 150ms linear;
    transition: opacity 150ms linear; }
  .mdc-tab__ripple:not(.mdc-ripple-upgraded):active::after {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.16; }
  .mdc-tab__ripple.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16; }

.mdc-tab__content {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: center;
          justify-content: center;
  height: inherit;
  pointer-events: none; }

.mdc-tab__text-label,
.mdc-tab__icon {
  -webkit-transition: 150ms color linear, 150ms opacity linear;
  transition: 150ms color linear, 150ms opacity linear;
  z-index: 2; }

.mdc-tab__text-label {
  display: inline-block;
  opacity: 0.6;
  line-height: 1; }

.mdc-tab__icon {
  width: 24px;
  height: 24px;
  opacity: 0.54; }

.mdc-tab--stacked {
  height: 72px; }

.mdc-tab--stacked .mdc-tab__content {
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: space-between;
          justify-content: space-between; }

.mdc-tab--stacked .mdc-tab__icon {
  padding-top: 12px; }

.mdc-tab--stacked .mdc-tab__text-label {
  padding-bottom: 16px; }

.mdc-tab--active .mdc-tab__text-label {
  color: #053361;
  /* @alternate */
  color: #053361;
  color: var(--mdc-theme-primary, #053361); }

.mdc-tab--active .mdc-tab__icon {
  color: #053361;
  /* @alternate */
  color: #053361;
  color: var(--mdc-theme-primary, #053361); }

.mdc-tab--active .mdc-tab__text-label,
.mdc-tab--active .mdc-tab__icon {
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
  opacity: 1; }

.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label {
  /* @noflip */
  padding-left: 8px;
  /* @noflip */
  padding-right: 0; }
  [dir="rtl"] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label, .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon + .mdc-tab__text-label[dir="rtl"] {
    /* @noflip */
    padding-left: 0;
    /* @noflip */
    padding-right: 8px; }

.kmx-tab-bar .kmx-tab .mdc-tab__text-label {
  color: #6d747a; }

.kmx-tab-bar .kmx-tab .mdc-tab__text-label {
  font-weight: 400;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  letter-spacing: normal;
  font-size: 16px;
  line-height: 1.5625;
  color: #6d747a;
  opacity: 1;
  text-transform: capitalize; }

.kmx-tab-bar .kmx-tab .mdc-tab__icon {
  color: #6d747a; }

.kmx-tab-bar .kmx-tab .mdc-tab__icon {
  fill: #6d747a;
  opacity: 1; }

.kmx-tab-bar .kmx-tab .mdc-tab-indicator > .mdc-tab-indicator__content--underline {
  height: 2px; }

.kmx-tab-bar .kmx-tab .mdc-tab__ripple:after, .kmx-tab-bar .kmx-tab .mdc-tab__ripple:before {
  background-color: #1773cf; }

.kmx-tab-bar .kmx-tab .mdc-tab__ripple:hover:before {
  opacity: 0.08; }

.kmx-tab-bar .kmx-tab .mdc-tab__ripple.mdc-ripple-upgraded--background-focused:before {
  opacity: 0.24; }

.kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab__text-label {
  color: #053361; }

.kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab__icon {
  color: #053361; }

.kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab__icon {
  fill: #053361; }

.kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab-indicator > .mdc-tab-indicator__content--underline {
  background-color: #053361; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab .mdc-tab__text-label {
  color: #9ccef7; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab .mdc-tab__icon {
  color: #9ccef7; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab .mdc-tab__icon {
  fill: #9ccef7; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab .mdc-tab__ripple:after, .mdc-theme--dark .kmx-tab-bar .kmx-tab .mdc-tab__ripple:before {
  background-color: #ffffff; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab__text-label {
  color: #ffffff; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab__icon {
  color: #ffffff; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab__icon {
  fill: #ffffff; }

.mdc-theme--dark .kmx-tab-bar .kmx-tab.mdc-tab--active .mdc-tab-indicator > .mdc-tab-indicator__content--underline {
  background-color: #ffffff; }

.kmx-tab-bar .kmx-tab:disabled,
.mdc-theme--dark .kmx-tab-bar .kmx-tab:disabled {
  cursor: unset; }
  .kmx-tab-bar .kmx-tab:disabled .mdc-tab__text-label,
  .mdc-theme--dark .kmx-tab-bar .kmx-tab:disabled .mdc-tab__text-label {
    color: #abafb3; }
  .kmx-tab-bar .kmx-tab:disabled .mdc-tab-indicator > .mdc-tab-indicator__content--underline,
  .mdc-theme--dark .kmx-tab-bar .kmx-tab:disabled .mdc-tab-indicator > .mdc-tab-indicator__content--underline {
    background-color: #dedfe0; }
  .kmx-tab-bar .kmx-tab:disabled .mdc-tab__ripple:after, .kmx-tab-bar .kmx-tab:disabled .mdc-tab__ripple:before,
  .mdc-theme--dark .kmx-tab-bar .kmx-tab:disabled .mdc-tab__ripple:after,
  .mdc-theme--dark .kmx-tab-bar .kmx-tab:disabled .mdc-tab__ripple:before {
    background-color: transparent; }

.kmx-tab-bar .kmx-tab-scroller {
  display: -webkit-flex;
  display: flex; }
  .kmx-tab-bar .kmx-tab-scroller__button {
    -webkit-align-self: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .kmx-tab-bar .kmx-tab-scroller .mdc-tab-scroller__scroll-area {
    -webkit-flex-grow: 1;
            flex-grow: 1; }

.mdc-text-field-helper-text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.75rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.03333em;
  text-decoration: inherit;
  text-transform: inherit;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin: 0;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  will-change: opacity; }
  .mdc-text-field-helper-text::before {
    display: inline-block;
    width: 0;
    height: 16px;
    content: "";
    vertical-align: 0; }

.mdc-text-field-helper-text--persistent {
  -webkit-transition: none;
  transition: none;
  opacity: 1;
  will-change: initial; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  position: absolute;
  bottom: 16px;
  cursor: pointer; }

.mdc-text-field__icon:not([tabindex]),
.mdc-text-field__icon[tabindex="-1"] {
  cursor: default;
  pointer-events: none; }

.mdc-text-field {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  border-radius: 4px 4px 0 0;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 56px;
  overflow: hidden;
  will-change: opacity, transform, color; }
  .mdc-text-field::before, .mdc-text-field::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-text-field::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-text-field.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-text-field.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-text-field.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-text-field.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field::before, .mdc-text-field::after {
    background-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field:hover::before {
    opacity: 0.04; }
  .mdc-text-field:not(.mdc-ripple-upgraded):focus::before, .mdc-text-field.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  .mdc-text-field::before, .mdc-text-field::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-text-field.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-floating-label {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-text-field__input {
    caret-color: #053361;
    /* @alternate */
    caret-color: #053361;
    caret-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.42); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
    border-bottom-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-line-ripple {
    background-color: #053361;
    /* @alternate */
    background-color: #053361;
    background-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.54); }
  .mdc-text-field:not(.mdc-text-field--disabled) {
    background-color: whitesmoke; }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    bottom: 20px; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }
  .mdc-text-field:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-floating-label {
    max-width: calc(100% - 48px); }
  .mdc-text-field .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.75);
            transform: translateY(-50%) scale(0.75); }
  .mdc-text-field .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1; }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-box {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-box {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); } }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 12px; }

.mdc-text-field__input {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  -webkit-align-self: flex-end;
          align-self: flex-end;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 20px 12px 6px;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
  border-bottom: 1px solid;
  border-radius: 0;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .mdc-text-field__input::-webkit-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-moz-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:focus {
    outline: none; }
  .mdc-text-field__input:invalid {
    box-shadow: none; }

.mdc-text-field__input:-webkit-autofill + .mdc-floating-label {
  -webkit-transform: translateY(-50%) scale(0.75);
          transform: translateY(-50%) scale(0.75);
  cursor: auto; }

.mdc-text-field--outlined {
  border: none;
  overflow: visible; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
    stroke: #053361;
    /* @alternate */
    stroke: #053361;
    stroke: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--outlined .mdc-floating-label--float-above {
    -webkit-transform: translateY(-130%) scale(0.75);
            transform: translateY(-130%) scale(0.75); }
  .mdc-text-field--outlined .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1; }
  .mdc-text-field--outlined .mdc-notched-outline {
    border-radius: 4px; }
  .mdc-text-field--outlined .mdc-notched-outline__idle {
    border-radius: 4px; }
  .mdc-text-field--outlined::before, .mdc-text-field--outlined::after {
    background-color: transparent; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--outlined .mdc-text-field__input {
    display: -webkit-flex;
    display: flex;
    padding: 12px 16px 14px;
    border: none !important;
    background-color: transparent;
    z-index: 1; }
  .mdc-text-field--outlined .mdc-text-field__icon {
    z-index: 2; }
  .mdc-text-field--outlined .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    width: auto; }
    [dir="rtl"] .mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--outlined .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }

.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__path {
  stroke-width: 2px; }

.mdc-text-field--outlined.mdc-text-field--disabled {
  background-color: transparent; }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    border-bottom: none; }

.mdc-text-field--outlined.mdc-text-field--dense {
  height: 48px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
    -webkit-transform: translateY(-110%) scale(0.923);
            transform: translateY(-110%) scale(0.923); }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__input {
    padding: 12px 12px 7px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label {
    bottom: 16px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__icon {
    top: 12px; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__icon, .mdc-text-field--with-leading-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 16px; }

.mdc-text-field--with-leading-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 16px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__input, .mdc-text-field--with-leading-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 16px;
    /* @noflip */
    padding-right: 48px; }

.mdc-text-field--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 48px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-floating-label, .mdc-text-field--with-leading-icon .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 48px; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {
  -webkit-transform: translateY(-130%) translateX(-32px) scale(0.75);
          transform: translateY(-130%) translateX(-32px) scale(0.75); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-130%) translateX(32px) scale(0.75);
            transform: translateY(-130%) translateX(32px) scale(0.75); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-110%) translateX(-21px) scale(0.923);
          transform: translateY(-110%) translateX(-21px) scale(0.923); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-110%) translateX(21px) scale(0.923);
            transform: translateY(-110%) translateX(21px) scale(0.923); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1; }

.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__icon, .mdc-text-field--with-trailing-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__input, .mdc-text-field--with-trailing-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 16px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 16px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  bottom: 16px;
  -webkit-transform: scale(0.8);
          transform: scale(0.8); }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: 12px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 12px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 38px;
  /* @noflip */
  padding-right: 12px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 12px;
    /* @noflip */
    padding-right: 38px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label {
  /* @noflip */
  left: 38px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 38px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 38px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 38px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-70%) scale(0.923);
          transform: translateY(-70%) scale(0.923); }

.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1; }

.mdc-text-field--dense .mdc-text-field__input {
  padding: 12px 12px 0; }

.mdc-text-field--dense .mdc-floating-label {
  font-size: .813rem; }

.mdc-text-field__input:required + .mdc-floating-label::after {
  margin-left: 1px;
  content: "*"; }

.mdc-text-field--textarea {
  border-radius: 4px;
  display: -webkit-flex;
  display: flex;
  width: auto;
  height: auto;
  -webkit-transition: none;
  transition: none;
  border: 1px solid;
  overflow: hidden; }
  .mdc-text-field--textarea .mdc-floating-label {
    border-radius: 4px 4px 0 0; }
  .mdc-text-field--textarea .mdc-text-field__input {
    border-radius: 2px; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    border-color: rgba(0, 0, 0, 0.73); }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
      border-color: rgba(0, 0, 0, 0.73); }
  .mdc-text-field--textarea .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.923);
            transform: translateY(-50%) scale(0.923); }
  .mdc-text-field--textarea .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-textarea 250ms 1;
            animation: mdc-floating-label-shake-float-above-textarea 250ms 1; }
  .mdc-text-field--textarea::before, .mdc-text-field--textarea::after {
    background-color: transparent; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--textarea .mdc-text-field__input {
    -webkit-align-self: auto;
                -ms-grid-row-align: auto;
            align-self: auto;
    box-sizing: content-box;
    height: auto;
    margin: 0;
    padding: 16px;
    padding-top: 32px;
    border: 1px solid transparent; }
  .mdc-text-field--textarea .mdc-floating-label {
    background-color: white;
    /* @noflip */
    left: 1px;
    /* @noflip */
    right: 0;
    /* @noflip */
    margin-left: 8px;
    /* @noflip */
    margin-right: 0;
    top: 18px;
    bottom: auto;
    width: auto;
    margin-top: 2px;
    padding: 12px 8px 8px 8px;
    line-height: 1.15;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: 0;
      /* @noflip */
      right: 1px; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 8px; }

.mdc-text-field--fullwidth {
  width: 100%; }
  .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) {
    display: block; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::before, .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::after {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) .mdc-text-field__input {
      padding: 0; }

.mdc-text-field--fullwidth.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
  border-bottom-color: #b00020; }

.mdc-text-field--dense + .mdc-text-field-helper-text {
  margin-bottom: 4px; }

.mdc-text-field + .mdc-text-field-helper-text {
  margin-right: 12px;
  margin-left: 12px; }

.mdc-text-field--outlined + .mdc-text-field-helper-text {
  margin-right: 16px;
  margin-left: 16px; }

.mdc-form-field > .mdc-text-field + label, .kmx-form-field > .mdc-text-field + label, .kmx-form-field--stacked > .mdc-text-field + label, .kmx-form-field--align-push-down > .mdc-text-field + label {
  -webkit-align-self: flex-start;
          align-self: flex-start; }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused .mdc-text-field__input:required + .mdc-floating-label::after {
  color: #b00020; }

.mdc-text-field--focused + .mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) {
  border-color: #053361;
  /* @alternate */
  border-color: #053361;
  border-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #053361;
    /* @alternate */
    border-color: #053361;
    border-color: var(--mdc-theme-primary, #053361); }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple {
  background-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  color: #b00020; }

.mdc-text-field--invalid .mdc-text-field__input {
  caret-color: #b00020; }

.mdc-text-field--invalid.mdc-text-field--with-trailing-icon:not(.mdc-text-field--disabled) .mdc-text-field__icon {
  color: #b00020; }

.mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) {
  border-color: #b00020; }
  .mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--disabled {
  background-color: #fafafa;
  border-bottom: none;
  pointer-events: none; }
  .mdc-text-field--disabled .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-floating-label {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.3); }
  .mdc-text-field--disabled:not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field--disabled .mdc-floating-label {
    cursor: default; }

.mdc-text-field--textarea.mdc-text-field--disabled {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: #f9f9f9;
  border-bottom-width: 1px;
  border-style: solid; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input:focus {
    border-color: rgba(0, 0, 0, 0.26); }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input {
    border: 1px solid transparent; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-floating-label {
    background-color: #f9f9f9; }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-outlined {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-outlined-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon {
  0% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon {
  0% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); } }

@-webkit-keyframes mdc-floating-label-shake-float-above-textarea {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-textarea {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); } }

.mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area {
  border-color: #6d747a;
  border-radius: 0;
  overflow: visible;
  width: 100%; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area:before, .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area:after {
    content: none; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area:hover, .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area:focus {
    border-color: #1773cf; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-field--focused:not(.mdc-text-field--invalid) {
    border-color: #1773cf; }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-field--focused:not(.mdc-text-field--invalid) .mdc-floating-label--float-above {
      color: #1773cf; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area .kmx-text-area__input {
    background-color: transparent;
    border: none;
    caret-color: #1773cf;
    color: #2a343d;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    line-height: 1.5625;
    padding: 5px 8px 8px;
    -webkit-transition: none;
    transition: none;
    resize: vertical; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area .mdc-floating-label {
    background-color: transparent;
    color: #6d747a;
    line-height: 1;
    top: 3px;
    left: 0;
    margin: 0;
    padding: 8px 8px 0; }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area .mdc-floating-label--float-above {
      -webkit-transform: translate(0, -27px) scale(0.75);
              transform: translate(0, -27px) scale(0.75); }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-area--focused:not(.mdc-text-area--disabled) {
    border-color: transparent; }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-area--focused:not(.mdc-text-area--disabled) .mdc-floating-label--float-above {
      color: #1773cf; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-area--focused:not(.mdc-text-area--disabled).mdc-text-field--invalid {
    border-color: #e01f1f; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-area--focused:not(.mdc-text-area--disabled):hover, .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area.mdc-text-area--focused:not(.mdc-text-area--disabled):focus {
    border-color: #e01f1f; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled).kmx-text-area--vertical-align {
    margin-top: 16px; }

.kmx-text-area:not(.kmx-text-area--disabled).mdc-text-field:not(.mdc-text-field--disabled) + .kmx-text-area-helper-text.mdc-text-field-helper-text {
  color: #6d747a;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  font-size: 12px;
  line-height: 1.16667;
  margin: 0;
  padding: 0 8px; }

.kmx-form-component-helper-line {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  width: 100%; }
  .kmx-form-component-helper-line .kmx-text-area-helper-text {
    color: #6d747a;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    font-size: 12px;
    line-height: 1.16667;
    margin: 0;
    padding: 0 8px; }
    .kmx-form-component-helper-line .kmx-text-area-helper-text--invalid {
      color: #e01f1f; }
    .kmx-form-component-helper-line .kmx-text-area-helper-text:first-child {
      visibility: hidden; }
      .kmx-form-component-helper-line .kmx-text-area-helper-text:first-child:before {
        height: 12px; }
    .kmx-form-component-helper-line .kmx-text-area-helper-text:last-child {
      text-align: right; }

.mdc-text-field-helper-text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.75rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.03333em;
  text-decoration: inherit;
  text-transform: inherit;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin: 0;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  will-change: opacity; }
  .mdc-text-field-helper-text::before {
    display: inline-block;
    width: 0;
    height: 16px;
    content: "";
    vertical-align: 0; }

.mdc-text-field-helper-text--persistent {
  -webkit-transition: none;
  transition: none;
  opacity: 1;
  will-change: initial; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  position: absolute;
  bottom: 16px;
  cursor: pointer; }

.mdc-text-field__icon:not([tabindex]),
.mdc-text-field__icon[tabindex="-1"] {
  cursor: default;
  pointer-events: none; }

.mdc-text-field {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  border-radius: 4px 4px 0 0;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 56px;
  overflow: hidden;
  will-change: opacity, transform, color; }
  .mdc-text-field::before, .mdc-text-field::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-text-field::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-text-field.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-text-field.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-text-field.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-text-field.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field::before, .mdc-text-field::after {
    background-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field:hover::before {
    opacity: 0.04; }
  .mdc-text-field:not(.mdc-ripple-upgraded):focus::before, .mdc-text-field.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  .mdc-text-field::before, .mdc-text-field::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-text-field.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-floating-label {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-text-field__input {
    caret-color: #053361;
    /* @alternate */
    caret-color: #053361;
    caret-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.42); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
    border-bottom-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-line-ripple {
    background-color: #053361;
    /* @alternate */
    background-color: #053361;
    background-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.54); }
  .mdc-text-field:not(.mdc-text-field--disabled) {
    background-color: whitesmoke; }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    bottom: 20px; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }
  .mdc-text-field:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-floating-label {
    max-width: calc(100% - 48px); }
  .mdc-text-field .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.75);
            transform: translateY(-50%) scale(0.75); }
  .mdc-text-field .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1; }

@keyframes mdc-floating-label-shake-float-above-text-field-box {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); } }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 12px; }

.mdc-text-field__input {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  -webkit-align-self: flex-end;
          align-self: flex-end;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 20px 12px 6px;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
  border-bottom: 1px solid;
  border-radius: 0;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .mdc-text-field__input::-webkit-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-moz-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:focus {
    outline: none; }
  .mdc-text-field__input:invalid {
    box-shadow: none; }

.mdc-text-field__input:-webkit-autofill + .mdc-floating-label {
  -webkit-transform: translateY(-50%) scale(0.75);
          transform: translateY(-50%) scale(0.75);
  cursor: auto; }

.mdc-text-field--outlined {
  border: none;
  overflow: visible; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
    stroke: #053361;
    /* @alternate */
    stroke: #053361;
    stroke: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--outlined .mdc-floating-label--float-above {
    -webkit-transform: translateY(-130%) scale(0.75);
            transform: translateY(-130%) scale(0.75); }
  .mdc-text-field--outlined .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1; }
  .mdc-text-field--outlined .mdc-notched-outline {
    border-radius: 4px; }
  .mdc-text-field--outlined .mdc-notched-outline__idle {
    border-radius: 4px; }
  .mdc-text-field--outlined::before, .mdc-text-field--outlined::after {
    background-color: transparent; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--outlined .mdc-text-field__input {
    display: -webkit-flex;
    display: flex;
    padding: 12px 16px 14px;
    border: none !important;
    background-color: transparent;
    z-index: 1; }
  .mdc-text-field--outlined .mdc-text-field__icon {
    z-index: 2; }
  .mdc-text-field--outlined .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    width: auto; }
    [dir="rtl"] .mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--outlined .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }

.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__path {
  stroke-width: 2px; }

.mdc-text-field--outlined.mdc-text-field--disabled {
  background-color: transparent; }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    border-bottom: none; }

.mdc-text-field--outlined.mdc-text-field--dense {
  height: 48px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
    -webkit-transform: translateY(-110%) scale(0.923);
            transform: translateY(-110%) scale(0.923); }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__input {
    padding: 12px 12px 7px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label {
    bottom: 16px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__icon {
    top: 12px; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__icon, .mdc-text-field--with-leading-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 16px; }

.mdc-text-field--with-leading-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 16px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__input, .mdc-text-field--with-leading-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 16px;
    /* @noflip */
    padding-right: 48px; }

.mdc-text-field--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 48px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-floating-label, .mdc-text-field--with-leading-icon .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 48px; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {
  -webkit-transform: translateY(-130%) translateX(-32px) scale(0.75);
          transform: translateY(-130%) translateX(-32px) scale(0.75); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-130%) translateX(32px) scale(0.75);
            transform: translateY(-130%) translateX(32px) scale(0.75); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-110%) translateX(-21px) scale(0.923);
          transform: translateY(-110%) translateX(-21px) scale(0.923); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-110%) translateX(21px) scale(0.923);
            transform: translateY(-110%) translateX(21px) scale(0.923); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1; }

.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__icon, .mdc-text-field--with-trailing-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__input, .mdc-text-field--with-trailing-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 16px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 16px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  bottom: 16px;
  -webkit-transform: scale(0.8);
          transform: scale(0.8); }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: 12px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 12px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 38px;
  /* @noflip */
  padding-right: 12px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 12px;
    /* @noflip */
    padding-right: 38px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label {
  /* @noflip */
  left: 38px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 38px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 38px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 38px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-70%) scale(0.923);
          transform: translateY(-70%) scale(0.923); }

.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1; }

.mdc-text-field--dense .mdc-text-field__input {
  padding: 12px 12px 0; }

.mdc-text-field--dense .mdc-floating-label {
  font-size: .813rem; }

.mdc-text-field__input:required + .mdc-floating-label::after {
  margin-left: 1px;
  content: "*"; }

.mdc-text-field--textarea {
  border-radius: 4px;
  display: -webkit-flex;
  display: flex;
  width: auto;
  height: auto;
  -webkit-transition: none;
  transition: none;
  border: 1px solid;
  overflow: hidden; }
  .mdc-text-field--textarea .mdc-floating-label {
    border-radius: 4px 4px 0 0; }
  .mdc-text-field--textarea .mdc-text-field__input {
    border-radius: 2px; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    border-color: rgba(0, 0, 0, 0.73); }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
      border-color: rgba(0, 0, 0, 0.73); }
  .mdc-text-field--textarea .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.923);
            transform: translateY(-50%) scale(0.923); }
  .mdc-text-field--textarea .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-textarea 250ms 1;
            animation: mdc-floating-label-shake-float-above-textarea 250ms 1; }
  .mdc-text-field--textarea::before, .mdc-text-field--textarea::after {
    background-color: transparent; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--textarea .mdc-text-field__input {
    -webkit-align-self: auto;
                -ms-grid-row-align: auto;
            align-self: auto;
    box-sizing: content-box;
    height: auto;
    margin: 0;
    padding: 16px;
    padding-top: 32px;
    border: 1px solid transparent; }
  .mdc-text-field--textarea .mdc-floating-label {
    background-color: white;
    /* @noflip */
    left: 1px;
    /* @noflip */
    right: 0;
    /* @noflip */
    margin-left: 8px;
    /* @noflip */
    margin-right: 0;
    top: 18px;
    bottom: auto;
    width: auto;
    margin-top: 2px;
    padding: 12px 8px 8px 8px;
    line-height: 1.15;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: 0;
      /* @noflip */
      right: 1px; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 8px; }

.mdc-text-field--fullwidth {
  width: 100%; }
  .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) {
    display: block; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::before, .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::after {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) .mdc-text-field__input {
      padding: 0; }

.mdc-text-field--fullwidth.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
  border-bottom-color: #b00020; }

.mdc-text-field--dense + .mdc-text-field-helper-text {
  margin-bottom: 4px; }

.mdc-text-field + .mdc-text-field-helper-text {
  margin-right: 12px;
  margin-left: 12px; }

.mdc-text-field--outlined + .mdc-text-field-helper-text {
  margin-right: 16px;
  margin-left: 16px; }

.mdc-form-field > .mdc-text-field + label, .kmx-form-field > .mdc-text-field + label, .kmx-form-field--stacked > .mdc-text-field + label, .kmx-form-field--align-push-down > .mdc-text-field + label {
  -webkit-align-self: flex-start;
          align-self: flex-start; }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused .mdc-text-field__input:required + .mdc-floating-label::after {
  color: #b00020; }

.mdc-text-field--focused + .mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) {
  border-color: #053361;
  /* @alternate */
  border-color: #053361;
  border-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #053361;
    /* @alternate */
    border-color: #053361;
    border-color: var(--mdc-theme-primary, #053361); }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple {
  background-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  color: #b00020; }

.mdc-text-field--invalid .mdc-text-field__input {
  caret-color: #b00020; }

.mdc-text-field--invalid.mdc-text-field--with-trailing-icon:not(.mdc-text-field--disabled) .mdc-text-field__icon {
  color: #b00020; }

.mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) {
  border-color: #b00020; }
  .mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--disabled {
  background-color: #fafafa;
  border-bottom: none;
  pointer-events: none; }
  .mdc-text-field--disabled .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-floating-label {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.3); }
  .mdc-text-field--disabled:not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field--disabled .mdc-floating-label {
    cursor: default; }

.mdc-text-field--textarea.mdc-text-field--disabled {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: #f9f9f9;
  border-bottom-width: 1px;
  border-style: solid; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input:focus {
    border-color: rgba(0, 0, 0, 0.26); }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input {
    border: 1px solid transparent; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-floating-label {
    background-color: #f9f9f9; }

@keyframes mdc-floating-label-shake-float-above-text-field-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon {
  0% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-textarea {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); } }

.kmx-text-area.mdc-text-field--textarea.mdc-text-field--disabled {
  border-radius: 0; }
  .kmx-text-area.mdc-text-field--textarea.mdc-text-field--disabled .mdc-floating-label {
    color: #abafb3;
    border-color: #abafb3;
    line-height: 1;
    top: 3px;
    left: 0;
    margin: 0;
    padding: 8px 8px 0; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable declaration-no-important */
.m-0 {
  margin: 0 !important; }

.m-t-0 {
  margin-top: 0 !important; }

.m-r-0 {
  margin-right: 0 !important; }

.m-b-0 {
  margin-bottom: 0 !important; }

.m-l-0 {
  margin-left: 0 !important; }

.m-xxs {
  margin: 2px !important; }

.m-t-xxs {
  margin-top: 2px !important; }

.m-r-xxs {
  margin-right: 2px !important; }

.m-b-xxs {
  margin-bottom: 2px !important; }

.m-l-xxs {
  margin-left: 2px !important; }

.m-xs {
  margin: 4px !important; }

.m-t-xs {
  margin-top: 4px !important; }

.m-r-xs {
  margin-right: 4px !important; }

.m-b-xs {
  margin-bottom: 4px !important; }

.m-l-xs {
  margin-left: 4px !important; }

.m-s {
  margin: 8px !important; }

.m-t-s {
  margin-top: 8px !important; }

.m-r-s {
  margin-right: 8px !important; }

.m-b-s {
  margin-bottom: 8px !important; }

.m-l-s {
  margin-left: 8px !important; }

.m-m {
  margin: 16px !important; }

.m-t-m {
  margin-top: 16px !important; }

.m-r-m {
  margin-right: 16px !important; }

.m-b-m {
  margin-bottom: 16px !important; }

.m-l-m {
  margin-left: 16px !important; }

.m-l {
  margin: 24px !important; }

.m-t-l {
  margin-top: 24px !important; }

.m-r-l {
  margin-right: 24px !important; }

.m-b-l {
  margin-bottom: 24px !important; }

.m-l-l {
  margin-left: 24px !important; }

.m-xl {
  margin: 32px !important; }

.m-t-xl {
  margin-top: 32px !important; }

.m-r-xl {
  margin-right: 32px !important; }

.m-b-xl {
  margin-bottom: 32px !important; }

.m-l-xl {
  margin-left: 32px !important; }

.m-2xl {
  margin: 48px !important; }

.m-t-2xl {
  margin-top: 48px !important; }

.m-r-2xl {
  margin-right: 48px !important; }

.m-b-2xl {
  margin-bottom: 48px !important; }

.m-l-2xl {
  margin-left: 48px !important; }

.m-3xl {
  margin: 64px !important; }

.m-t-3xl {
  margin-top: 64px !important; }

.m-r-3xl {
  margin-right: 64px !important; }

.m-b-3xl {
  margin-bottom: 64px !important; }

.m-l-3xl {
  margin-left: 64px !important; }

.m-4xl {
  margin: 72px !important; }

.m-t-4xl {
  margin-top: 72px !important; }

.m-r-4xl {
  margin-right: 72px !important; }

.m-b-4xl {
  margin-bottom: 72px !important; }

.m-l-4xl {
  margin-left: 72px !important; }

.m-5xl {
  margin: 96px !important; }

.m-t-5xl {
  margin-top: 96px !important; }

.m-r-5xl {
  margin-right: 96px !important; }

.m-b-5xl {
  margin-bottom: 96px !important; }

.m-l-5xl {
  margin-left: 96px !important; }

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

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

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

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

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

.p-xxs {
  padding: 2px !important; }

.p-t-xxs {
  padding-top: 2px !important; }

.p-r-xxs {
  padding-right: 2px !important; }

.p-b-xxs {
  padding-bottom: 2px !important; }

.p-l-xxs {
  padding-left: 2px !important; }

.p-xs {
  padding: 4px !important; }

.p-t-xs {
  padding-top: 4px !important; }

.p-r-xs {
  padding-right: 4px !important; }

.p-b-xs {
  padding-bottom: 4px !important; }

.p-l-xs {
  padding-left: 4px !important; }

.p-s {
  padding: 8px !important; }

.p-t-s {
  padding-top: 8px !important; }

.p-r-s {
  padding-right: 8px !important; }

.p-b-s {
  padding-bottom: 8px !important; }

.p-l-s {
  padding-left: 8px !important; }

.p-m {
  padding: 16px !important; }

.p-t-m {
  padding-top: 16px !important; }

.p-r-m {
  padding-right: 16px !important; }

.p-b-m {
  padding-bottom: 16px !important; }

.p-l-m {
  padding-left: 16px !important; }

.p-l {
  padding: 24px !important; }

.p-t-l {
  padding-top: 24px !important; }

.p-r-l {
  padding-right: 24px !important; }

.p-b-l {
  padding-bottom: 24px !important; }

.p-l-l {
  padding-left: 24px !important; }

.p-xl {
  padding: 32px !important; }

.p-t-xl {
  padding-top: 32px !important; }

.p-r-xl {
  padding-right: 32px !important; }

.p-b-xl {
  padding-bottom: 32px !important; }

.p-l-xl {
  padding-left: 32px !important; }

.p-2xl {
  padding: 48px !important; }

.p-t-2xl {
  padding-top: 48px !important; }

.p-r-2xl {
  padding-right: 48px !important; }

.p-b-2xl {
  padding-bottom: 48px !important; }

.p-l-2xl {
  padding-left: 48px !important; }

.p-3xl {
  padding: 64px !important; }

.p-t-3xl {
  padding-top: 64px !important; }

.p-r-3xl {
  padding-right: 64px !important; }

.p-b-3xl {
  padding-bottom: 64px !important; }

.p-l-3xl {
  padding-left: 64px !important; }

.p-4xl {
  padding: 72px !important; }

.p-t-4xl {
  padding-top: 72px !important; }

.p-r-4xl {
  padding-right: 72px !important; }

.p-b-4xl {
  padding-bottom: 72px !important; }

.p-l-4xl {
  padding-left: 72px !important; }

.p-5xl {
  padding: 96px !important; }

.p-t-5xl {
  padding-top: 96px !important; }

.p-r-5xl {
  padding-right: 96px !important; }

.p-b-5xl {
  padding-bottom: 96px !important; }

.p-l-5xl {
  padding-left: 96px !important; }

.w-0 {
  width: 0 !important; }

.w-xxs {
  width: 2px !important; }

.w-xs {
  width: 4px !important; }

.w-s {
  width: 8px !important; }

.w-m {
  width: 16px !important; }

.w-l {
  width: 24px !important; }

.w-xl {
  width: 32px !important; }

.w-2xl {
  width: 48px !important; }

.w-3xl {
  width: 64px !important; }

.w-4xl {
  width: 72px !important; }

.w-5xl {
  width: 96px !important; }

.h-0 {
  height: 0 !important; }

.h-xxs {
  height: 2px !important; }

.h-xs {
  height: 4px !important; }

.h-s {
  height: 8px !important; }

.h-m {
  height: 16px !important; }

.h-l {
  height: 24px !important; }

.h-xl {
  height: 32px !important; }

.h-2xl {
  height: 48px !important; }

.h-3xl {
  height: 64px !important; }

.h-4xl {
  height: 72px !important; }

.h-5xl {
  height: 96px !important; }

/* stylelint-enable declaration-no-important */
.mdc-text-field-helper-text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.75rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.03333em;
  text-decoration: inherit;
  text-transform: inherit;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin: 0;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  will-change: opacity; }
  .mdc-text-field-helper-text::before {
    display: inline-block;
    width: 0;
    height: 16px;
    content: "";
    vertical-align: 0; }

.mdc-text-field-helper-text--persistent {
  -webkit-transition: none;
  transition: none;
  opacity: 1;
  will-change: initial; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  position: absolute;
  bottom: 16px;
  cursor: pointer; }

.mdc-text-field__icon:not([tabindex]),
.mdc-text-field__icon[tabindex="-1"] {
  cursor: default;
  pointer-events: none; }

.mdc-text-field {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  border-radius: 4px 4px 0 0;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 56px;
  overflow: hidden;
  will-change: opacity, transform, color; }
  .mdc-text-field::before, .mdc-text-field::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-text-field::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-text-field.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-text-field.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-text-field.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-text-field.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field::before, .mdc-text-field::after {
    background-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field:hover::before {
    opacity: 0.04; }
  .mdc-text-field:not(.mdc-ripple-upgraded):focus::before, .mdc-text-field.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  .mdc-text-field::before, .mdc-text-field::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-text-field.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-floating-label {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-text-field__input {
    caret-color: #053361;
    /* @alternate */
    caret-color: #053361;
    caret-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.42); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
    border-bottom-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-line-ripple {
    background-color: #053361;
    /* @alternate */
    background-color: #053361;
    background-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.54); }
  .mdc-text-field:not(.mdc-text-field--disabled) {
    background-color: whitesmoke; }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    bottom: 20px; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }
  .mdc-text-field:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-floating-label {
    max-width: calc(100% - 48px); }
  .mdc-text-field .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.75);
            transform: translateY(-50%) scale(0.75); }
  .mdc-text-field .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1; }

@keyframes mdc-floating-label-shake-float-above-text-field-box {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); } }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 12px; }

.mdc-text-field__input {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  -webkit-align-self: flex-end;
          align-self: flex-end;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 20px 12px 6px;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
  border-bottom: 1px solid;
  border-radius: 0;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .mdc-text-field__input::-webkit-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-moz-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:focus {
    outline: none; }
  .mdc-text-field__input:invalid {
    box-shadow: none; }

.mdc-text-field__input:-webkit-autofill + .mdc-floating-label {
  -webkit-transform: translateY(-50%) scale(0.75);
          transform: translateY(-50%) scale(0.75);
  cursor: auto; }

.mdc-text-field--outlined {
  border: none;
  overflow: visible; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
    stroke: #053361;
    /* @alternate */
    stroke: #053361;
    stroke: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--outlined .mdc-floating-label--float-above {
    -webkit-transform: translateY(-130%) scale(0.75);
            transform: translateY(-130%) scale(0.75); }
  .mdc-text-field--outlined .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1; }
  .mdc-text-field--outlined .mdc-notched-outline {
    border-radius: 4px; }
  .mdc-text-field--outlined .mdc-notched-outline__idle {
    border-radius: 4px; }
  .mdc-text-field--outlined::before, .mdc-text-field--outlined::after {
    background-color: transparent; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--outlined .mdc-text-field__input {
    display: -webkit-flex;
    display: flex;
    padding: 12px 16px 14px;
    border: none !important;
    background-color: transparent;
    z-index: 1; }
  .mdc-text-field--outlined .mdc-text-field__icon {
    z-index: 2; }
  .mdc-text-field--outlined .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    width: auto; }
    [dir="rtl"] .mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--outlined .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }

.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__path {
  stroke-width: 2px; }

.mdc-text-field--outlined.mdc-text-field--disabled {
  background-color: transparent; }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    border-bottom: none; }

.mdc-text-field--outlined.mdc-text-field--dense {
  height: 48px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
    -webkit-transform: translateY(-110%) scale(0.923);
            transform: translateY(-110%) scale(0.923); }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__input {
    padding: 12px 12px 7px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label {
    bottom: 16px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__icon {
    top: 12px; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__icon, .mdc-text-field--with-leading-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 16px; }

.mdc-text-field--with-leading-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 16px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__input, .mdc-text-field--with-leading-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 16px;
    /* @noflip */
    padding-right: 48px; }

.mdc-text-field--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 48px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-floating-label, .mdc-text-field--with-leading-icon .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 48px; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {
  -webkit-transform: translateY(-130%) translateX(-32px) scale(0.75);
          transform: translateY(-130%) translateX(-32px) scale(0.75); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-130%) translateX(32px) scale(0.75);
            transform: translateY(-130%) translateX(32px) scale(0.75); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-110%) translateX(-21px) scale(0.923);
          transform: translateY(-110%) translateX(-21px) scale(0.923); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-110%) translateX(21px) scale(0.923);
            transform: translateY(-110%) translateX(21px) scale(0.923); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1; }

.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__icon, .mdc-text-field--with-trailing-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__input, .mdc-text-field--with-trailing-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 16px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 16px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  bottom: 16px;
  -webkit-transform: scale(0.8);
          transform: scale(0.8); }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: 12px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 12px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 38px;
  /* @noflip */
  padding-right: 12px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 12px;
    /* @noflip */
    padding-right: 38px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label {
  /* @noflip */
  left: 38px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 38px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 38px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 38px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-70%) scale(0.923);
          transform: translateY(-70%) scale(0.923); }

.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1; }

.mdc-text-field--dense .mdc-text-field__input {
  padding: 12px 12px 0; }

.mdc-text-field--dense .mdc-floating-label {
  font-size: .813rem; }

.mdc-text-field__input:required + .mdc-floating-label::after {
  margin-left: 1px;
  content: "*"; }

.mdc-text-field--textarea {
  border-radius: 4px;
  display: -webkit-flex;
  display: flex;
  width: auto;
  height: auto;
  -webkit-transition: none;
  transition: none;
  border: 1px solid;
  overflow: hidden; }
  .mdc-text-field--textarea .mdc-floating-label {
    border-radius: 4px 4px 0 0; }
  .mdc-text-field--textarea .mdc-text-field__input {
    border-radius: 2px; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    border-color: rgba(0, 0, 0, 0.73); }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
      border-color: rgba(0, 0, 0, 0.73); }
  .mdc-text-field--textarea .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.923);
            transform: translateY(-50%) scale(0.923); }
  .mdc-text-field--textarea .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-textarea 250ms 1;
            animation: mdc-floating-label-shake-float-above-textarea 250ms 1; }
  .mdc-text-field--textarea::before, .mdc-text-field--textarea::after {
    background-color: transparent; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--textarea .mdc-text-field__input {
    -webkit-align-self: auto;
                -ms-grid-row-align: auto;
            align-self: auto;
    box-sizing: content-box;
    height: auto;
    margin: 0;
    padding: 16px;
    padding-top: 32px;
    border: 1px solid transparent; }
  .mdc-text-field--textarea .mdc-floating-label {
    background-color: white;
    /* @noflip */
    left: 1px;
    /* @noflip */
    right: 0;
    /* @noflip */
    margin-left: 8px;
    /* @noflip */
    margin-right: 0;
    top: 18px;
    bottom: auto;
    width: auto;
    margin-top: 2px;
    padding: 12px 8px 8px 8px;
    line-height: 1.15;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: 0;
      /* @noflip */
      right: 1px; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 8px; }

.mdc-text-field--fullwidth {
  width: 100%; }
  .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) {
    display: block; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::before, .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::after {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) .mdc-text-field__input {
      padding: 0; }

.mdc-text-field--fullwidth.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
  border-bottom-color: #b00020; }

.mdc-text-field--dense + .mdc-text-field-helper-text {
  margin-bottom: 4px; }

.mdc-text-field + .mdc-text-field-helper-text {
  margin-right: 12px;
  margin-left: 12px; }

.mdc-text-field--outlined + .mdc-text-field-helper-text {
  margin-right: 16px;
  margin-left: 16px; }

.mdc-form-field > .mdc-text-field + label, .kmx-form-field > .mdc-text-field + label, .kmx-form-field--stacked > .mdc-text-field + label, .kmx-form-field--align-push-down > .mdc-text-field + label {
  -webkit-align-self: flex-start;
          align-self: flex-start; }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused .mdc-text-field__input:required + .mdc-floating-label::after {
  color: #b00020; }

.mdc-text-field--focused + .mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) {
  border-color: #053361;
  /* @alternate */
  border-color: #053361;
  border-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #053361;
    /* @alternate */
    border-color: #053361;
    border-color: var(--mdc-theme-primary, #053361); }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple {
  background-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  color: #b00020; }

.mdc-text-field--invalid .mdc-text-field__input {
  caret-color: #b00020; }

.mdc-text-field--invalid.mdc-text-field--with-trailing-icon:not(.mdc-text-field--disabled) .mdc-text-field__icon {
  color: #b00020; }

.mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) {
  border-color: #b00020; }
  .mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--disabled {
  background-color: #fafafa;
  border-bottom: none;
  pointer-events: none; }
  .mdc-text-field--disabled .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-floating-label {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.3); }
  .mdc-text-field--disabled:not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field--disabled .mdc-floating-label {
    cursor: default; }

.mdc-text-field--textarea.mdc-text-field--disabled {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: #f9f9f9;
  border-bottom-width: 1px;
  border-style: solid; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input:focus {
    border-color: rgba(0, 0, 0, 0.26); }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input {
    border: 1px solid transparent; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-floating-label {
    background-color: #f9f9f9; }

@keyframes mdc-floating-label-shake-float-above-text-field-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon {
  0% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-textarea {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); } }

/*
 * NOTE: The mdc outlined text-field variant is not used in LEGOS,
 * therefore selectors for outlined text-field are not included here.
 *
 * Text-field styling is wrapped with both kmx-* and mdc-* selectors
 * to provide a higher specificity than the base mdc-* rules:
*/
/* Set the width of text-field to 100% by default (allow the display context / parent container to govern component width): */
.kmx-text-field:not(.kmx-text-field--textarea) {
  width: 100%; }

/*
 * NOTE: The mdc outlined text-field variant is not used in LEGOS,
 * therefore selectors for outlined text-field are not included here.
 *
 * Text-field styling is wrapped with both kmx-* and mdc-* selectors
 * to provide a higher specificity than the base mdc-* rules:
*/
.kmx-text-field.mdc-text-field .kmx-text-field__input.mdc-text-field__input {
  line-height: 1;
  height: auto; }

.kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) {
  border-radius: 0 0 0 0; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-floating-label--float-above {
    -webkit-transform: translateY(-20px) scale(0.75);
            transform: translateY(-20px) scale(0.75); }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-text-field__input {
    caret-color: #1773cf; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):not(.mdc-text-field--disabled), .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):not(.mdc-text-field--textarea), .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):hover, .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):after, .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):before {
    background-color: transparent; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .kmx-text-field__input.mdc-text-field__input {
    border-bottom-color: #6d747a;
    color: #2a343d;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    height: auto;
    line-height: 24px;
    padding: 20px 8px 8px; }
    .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .kmx-text-field__input.mdc-text-field__input:hover {
      border-bottom-color: #1773cf; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .kmx-text-field-icon {
    color: inherit;
    position: absolute;
    height: 16px;
    width: 16px;
    pointer-events: none;
    top: 25px;
    bottom: auto;
    visibility: hidden;
    /* stylelint-disable-next-line selector-max-type */ }
    .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .kmx-text-field-icon svg {
      fill: currentColor; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).icon-right .kmx-text-field-icon {
    right: 8px;
    left: auto; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).icon-right .kmx-text-field__input.mdc-text-field__input {
    padding-right: 24px; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).icon-right.mdc-text-field--invalid .kmx-text-field-icon {
    visibility: visible;
    color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-line-ripple {
    background-color: #1773cf; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):not(.mdc-text-field--invalid) .mdc-floating-label {
    bottom: 12px;
    color: #6d747a;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    left: 8px; }
    .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled):not(.mdc-text-field--invalid) .mdc-floating-label.mdc-floating-label--float-above {
      color: #6d747a;
      left: 8px; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--focused .kmx-text-field__input.mdc-text-field__input {
    color: #6d747a; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label.mdc-floating-label--float-above {
    color: #1773cf; }

.kmx-form-component-helper-line {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  width: 100%; }
  .kmx-form-component-helper-line .kmx-text-field-helper-text {
    color: #6d747a;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    font-size: 12px;
    line-height: 1.16667;
    margin: 0;
    padding: 0 8px; }
    .kmx-form-component-helper-line .kmx-text-field-helper-text--invalid {
      color: #e01f1f; }
    .kmx-form-component-helper-line .kmx-text-field-helper-text:first-child {
      visibility: hidden; }
      .kmx-form-component-helper-line .kmx-text-field-helper-text:first-child:before {
        height: 12px; }
    .kmx-form-component-helper-line .kmx-text-field-helper-text:last-child {
      text-align: right; }

/* stylelint-disable declaration-no-important */
.m-0 {
  margin: 0 !important; }

.m-t-0 {
  margin-top: 0 !important; }

.m-r-0 {
  margin-right: 0 !important; }

.m-b-0 {
  margin-bottom: 0 !important; }

.m-l-0 {
  margin-left: 0 !important; }

.m-xxs {
  margin: 2px !important; }

.m-t-xxs {
  margin-top: 2px !important; }

.m-r-xxs {
  margin-right: 2px !important; }

.m-b-xxs {
  margin-bottom: 2px !important; }

.m-l-xxs {
  margin-left: 2px !important; }

.m-xs {
  margin: 4px !important; }

.m-t-xs {
  margin-top: 4px !important; }

.m-r-xs {
  margin-right: 4px !important; }

.m-b-xs {
  margin-bottom: 4px !important; }

.m-l-xs {
  margin-left: 4px !important; }

.m-s {
  margin: 8px !important; }

.m-t-s {
  margin-top: 8px !important; }

.m-r-s {
  margin-right: 8px !important; }

.m-b-s {
  margin-bottom: 8px !important; }

.m-l-s {
  margin-left: 8px !important; }

.m-m {
  margin: 16px !important; }

.m-t-m {
  margin-top: 16px !important; }

.m-r-m {
  margin-right: 16px !important; }

.m-b-m {
  margin-bottom: 16px !important; }

.m-l-m {
  margin-left: 16px !important; }

.m-l {
  margin: 24px !important; }

.m-t-l {
  margin-top: 24px !important; }

.m-r-l {
  margin-right: 24px !important; }

.m-b-l {
  margin-bottom: 24px !important; }

.m-l-l {
  margin-left: 24px !important; }

.m-xl {
  margin: 32px !important; }

.m-t-xl {
  margin-top: 32px !important; }

.m-r-xl {
  margin-right: 32px !important; }

.m-b-xl {
  margin-bottom: 32px !important; }

.m-l-xl {
  margin-left: 32px !important; }

.m-2xl {
  margin: 48px !important; }

.m-t-2xl {
  margin-top: 48px !important; }

.m-r-2xl {
  margin-right: 48px !important; }

.m-b-2xl {
  margin-bottom: 48px !important; }

.m-l-2xl {
  margin-left: 48px !important; }

.m-3xl {
  margin: 64px !important; }

.m-t-3xl {
  margin-top: 64px !important; }

.m-r-3xl {
  margin-right: 64px !important; }

.m-b-3xl {
  margin-bottom: 64px !important; }

.m-l-3xl {
  margin-left: 64px !important; }

.m-4xl {
  margin: 72px !important; }

.m-t-4xl {
  margin-top: 72px !important; }

.m-r-4xl {
  margin-right: 72px !important; }

.m-b-4xl {
  margin-bottom: 72px !important; }

.m-l-4xl {
  margin-left: 72px !important; }

.m-5xl {
  margin: 96px !important; }

.m-t-5xl {
  margin-top: 96px !important; }

.m-r-5xl {
  margin-right: 96px !important; }

.m-b-5xl {
  margin-bottom: 96px !important; }

.m-l-5xl {
  margin-left: 96px !important; }

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

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

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

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

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

.p-xxs {
  padding: 2px !important; }

.p-t-xxs {
  padding-top: 2px !important; }

.p-r-xxs {
  padding-right: 2px !important; }

.p-b-xxs {
  padding-bottom: 2px !important; }

.p-l-xxs {
  padding-left: 2px !important; }

.p-xs {
  padding: 4px !important; }

.p-t-xs {
  padding-top: 4px !important; }

.p-r-xs {
  padding-right: 4px !important; }

.p-b-xs {
  padding-bottom: 4px !important; }

.p-l-xs {
  padding-left: 4px !important; }

.p-s {
  padding: 8px !important; }

.p-t-s {
  padding-top: 8px !important; }

.p-r-s {
  padding-right: 8px !important; }

.p-b-s {
  padding-bottom: 8px !important; }

.p-l-s {
  padding-left: 8px !important; }

.p-m {
  padding: 16px !important; }

.p-t-m {
  padding-top: 16px !important; }

.p-r-m {
  padding-right: 16px !important; }

.p-b-m {
  padding-bottom: 16px !important; }

.p-l-m {
  padding-left: 16px !important; }

.p-l {
  padding: 24px !important; }

.p-t-l {
  padding-top: 24px !important; }

.p-r-l {
  padding-right: 24px !important; }

.p-b-l {
  padding-bottom: 24px !important; }

.p-l-l {
  padding-left: 24px !important; }

.p-xl {
  padding: 32px !important; }

.p-t-xl {
  padding-top: 32px !important; }

.p-r-xl {
  padding-right: 32px !important; }

.p-b-xl {
  padding-bottom: 32px !important; }

.p-l-xl {
  padding-left: 32px !important; }

.p-2xl {
  padding: 48px !important; }

.p-t-2xl {
  padding-top: 48px !important; }

.p-r-2xl {
  padding-right: 48px !important; }

.p-b-2xl {
  padding-bottom: 48px !important; }

.p-l-2xl {
  padding-left: 48px !important; }

.p-3xl {
  padding: 64px !important; }

.p-t-3xl {
  padding-top: 64px !important; }

.p-r-3xl {
  padding-right: 64px !important; }

.p-b-3xl {
  padding-bottom: 64px !important; }

.p-l-3xl {
  padding-left: 64px !important; }

.p-4xl {
  padding: 72px !important; }

.p-t-4xl {
  padding-top: 72px !important; }

.p-r-4xl {
  padding-right: 72px !important; }

.p-b-4xl {
  padding-bottom: 72px !important; }

.p-l-4xl {
  padding-left: 72px !important; }

.p-5xl {
  padding: 96px !important; }

.p-t-5xl {
  padding-top: 96px !important; }

.p-r-5xl {
  padding-right: 96px !important; }

.p-b-5xl {
  padding-bottom: 96px !important; }

.p-l-5xl {
  padding-left: 96px !important; }

.w-0 {
  width: 0 !important; }

.w-xxs {
  width: 2px !important; }

.w-xs {
  width: 4px !important; }

.w-s {
  width: 8px !important; }

.w-m {
  width: 16px !important; }

.w-l {
  width: 24px !important; }

.w-xl {
  width: 32px !important; }

.w-2xl {
  width: 48px !important; }

.w-3xl {
  width: 64px !important; }

.w-4xl {
  width: 72px !important; }

.w-5xl {
  width: 96px !important; }

.h-0 {
  height: 0 !important; }

.h-xxs {
  height: 2px !important; }

.h-xs {
  height: 4px !important; }

.h-s {
  height: 8px !important; }

.h-m {
  height: 16px !important; }

.h-l {
  height: 24px !important; }

.h-xl {
  height: 32px !important; }

.h-2xl {
  height: 48px !important; }

.h-3xl {
  height: 64px !important; }

.h-4xl {
  height: 72px !important; }

.h-5xl {
  height: 96px !important; }

/* stylelint-enable declaration-no-important */
.kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled,
.mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled {
  border-radius: 0 0 0 0; }
  .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled .mdc-floating-label--float-above,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled .mdc-floating-label--float-above {
    -webkit-transform: translateY(-20px) scale(0.75);
            transform: translateY(-20px) scale(0.75); }
  .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled:not(.mdc-text-field--disabled), .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled:not(.mdc-text-field--textarea), .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled:hover, .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled:after, .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled:before,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled:not(.mdc-text-field--disabled),
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled:not(.mdc-text-field--textarea),
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled:hover,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled:after,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled:before {
    background-color: transparent; }
  .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled .mdc-floating-label,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled .mdc-floating-label {
    bottom: 12px;
    color: #abafb3;
    left: 8px;
    line-height: 1; }
    .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled .mdc-floating-label.mdc-floating-label--float-above,
    .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled .mdc-floating-label.mdc-floating-label--float-above {
      color: #abafb3; }
  .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled .kmx-text-field__input.mdc-text-field__input,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled .kmx-text-field__input.mdc-text-field__input {
    border-bottom-color: #abafb3;
    color: #abafb3;
    padding: 20px 8px 8px; }
  .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled .mdc-line-ripple,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled .mdc-line-ripple {
    background-color: #abafb3; }
  .kmx-text-field:not(.kmx-text-field--textarea).kmx-text-field--disabled + .kmx-text-field-helper-text.mdc-text-field-helper-text,
  .mdc-text-field:not(.mdc-text-field--textarea).mdc-text-field--disabled + .kmx-text-field-helper-text.mdc-text-field-helper-text {
    color: #abafb3; }

/*
 * Note: the validation styling for text-field-helper
 * is located in ./_text-field-validation.scss
 *
 * The disabled styling for text-field-helper
 * is located in ./_text-field-disabled.scss
 */
.kmx-text-field.mdc-text-field:not(.mdc-text-field--disabled) + .kmx-text-field-helper-text.mdc-text-field-helper-text {
  color: #6d747a;
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  font-size: 12px;
  line-height: 1.16667;
  margin: 0;
  padding: 0 8px; }

.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

.mdc-text-field-helper-text {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 0.75rem;
  line-height: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.03333em;
  text-decoration: inherit;
  text-transform: inherit;
  display: block;
  margin-top: 0;
  line-height: normal;
  margin: 0;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  will-change: opacity; }
  .mdc-text-field-helper-text::before {
    display: inline-block;
    width: 0;
    height: 16px;
    content: "";
    vertical-align: 0; }

.mdc-text-field-helper-text--persistent {
  -webkit-transition: none;
  transition: none;
  opacity: 1;
  will-change: initial; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  position: absolute;
  bottom: 16px;
  cursor: pointer; }

.mdc-text-field__icon:not([tabindex]),
.mdc-text-field__icon[tabindex="-1"] {
  cursor: default;
  pointer-events: none; }

.mdc-text-field {
  --mdc-ripple-fg-size: 0;
  --mdc-ripple-left: 0;
  --mdc-ripple-top: 0;
  --mdc-ripple-fg-scale: 1;
  --mdc-ripple-fg-translate-end: 0;
  --mdc-ripple-fg-translate-start: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  will-change: transform, opacity;
  border-radius: 4px 4px 0 0;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 56px;
  overflow: hidden;
  will-change: opacity, transform, color; }
  .mdc-text-field::before, .mdc-text-field::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: ""; }
  .mdc-text-field::before {
    -webkit-transition: opacity 15ms linear;
    transition: opacity 15ms linear;
    z-index: 1; }
  .mdc-text-field.mdc-ripple-upgraded::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
            transform: scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field.mdc-ripple-upgraded::after {
    top: 0;
    /* @noflip */
    left: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: center center;
            transform-origin: center center; }
  .mdc-text-field.mdc-ripple-upgraded--unbounded::after {
    top: 0;
    top: var(--mdc-ripple-top, 0);
    /* @noflip */
    left: 0;
    left: var(--mdc-ripple-left, 0); }
  .mdc-text-field.mdc-ripple-upgraded--foreground-activation::after {
    -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
            animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
  .mdc-text-field.mdc-ripple-upgraded--foreground-deactivation::after {
    -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
            animation: 150ms mdc-ripple-fg-opacity-out;
    -webkit-transform: translate(0) scale(1);
            transform: translate(0) scale(1);
    -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
            transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
  .mdc-text-field::before, .mdc-text-field::after {
    background-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field:hover::before {
    opacity: 0.04; }
  .mdc-text-field:not(.mdc-ripple-upgraded):focus::before, .mdc-text-field.mdc-ripple-upgraded--background-focused::before {
    -webkit-transition-duration: 75ms;
            transition-duration: 75ms;
    opacity: 0.12; }
  .mdc-text-field::before, .mdc-text-field::after {
    top: calc(50% - 100%);
    /* @noflip */
    left: calc(50% - 100%);
    width: 200%;
    height: 200%; }
  .mdc-text-field.mdc-ripple-upgraded::after {
    width: 100%;
    width: var(--mdc-ripple-fg-size, 100%);
    height: 100%;
    height: var(--mdc-ripple-fg-size, 100%); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-floating-label {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-text-field__input {
    caret-color: #053361;
    /* @alternate */
    caret-color: #053361;
    caret-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.42); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
    border-bottom-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field .mdc-line-ripple {
    background-color: #053361;
    /* @alternate */
    background-color: #053361;
    background-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.54); }
  .mdc-text-field:not(.mdc-text-field--disabled) {
    background-color: whitesmoke; }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    bottom: 20px; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }
  .mdc-text-field:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-floating-label {
    max-width: calc(100% - 48px); }
  .mdc-text-field .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.75);
            transform: translateY(-50%) scale(0.75); }
  .mdc-text-field .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-box 250ms 1; }

@keyframes mdc-floating-label-shake-float-above-text-field-box {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.75); } }
  .mdc-text-field .mdc-floating-label {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field .mdc-floating-label, .mdc-text-field .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 12px; }

.mdc-text-field__input {
  font-family: "Lato", "Verdana", "Arial", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  line-height: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.00937em;
  text-decoration: inherit;
  text-transform: inherit;
  -webkit-align-self: flex-end;
          align-self: flex-end;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 20px 12px 6px;
  -webkit-transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
  border-bottom: 1px solid;
  border-radius: 0;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .mdc-text-field__input::-webkit-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-moz-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::-ms-input-placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input::placeholder {
    -webkit-transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1; }
  .mdc-text-field__input:focus {
    outline: none; }
  .mdc-text-field__input:invalid {
    box-shadow: none; }

.mdc-text-field__input:-webkit-autofill + .mdc-floating-label {
  -webkit-transform: translateY(-50%) scale(0.75);
          transform: translateY(-50%) scale(0.75);
  cursor: auto; }

.mdc-text-field--outlined {
  border: none;
  overflow: visible; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.24); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
  .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.87); }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
    stroke: #053361;
    /* @alternate */
    stroke: #053361;
    stroke: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--outlined .mdc-floating-label--float-above {
    -webkit-transform: translateY(-130%) scale(0.75);
            transform: translateY(-130%) scale(0.75); }
  .mdc-text-field--outlined .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined 250ms 1; }
  .mdc-text-field--outlined .mdc-notched-outline {
    border-radius: 4px; }
  .mdc-text-field--outlined .mdc-notched-outline__idle {
    border-radius: 4px; }
  .mdc-text-field--outlined::before, .mdc-text-field--outlined::after {
    background-color: transparent; }
  .mdc-text-field--outlined:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--outlined .mdc-text-field__input {
    display: -webkit-flex;
    display: flex;
    padding: 12px 16px 14px;
    border: none !important;
    background-color: transparent;
    z-index: 1; }
  .mdc-text-field--outlined .mdc-text-field__icon {
    z-index: 2; }
  .mdc-text-field--outlined .mdc-floating-label {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial;
    width: auto; }
    [dir="rtl"] .mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--outlined .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: auto;
      left: initial;
      /* @noflip */
      right: 16px; }

.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__path {
  stroke-width: 2px; }

.mdc-text-field--outlined.mdc-text-field--disabled {
  background-color: transparent; }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.6); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__idle {
    border-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__path {
    stroke: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input {
    border-bottom: none; }

.mdc-text-field--outlined.mdc-text-field--dense {
  height: 48px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
    -webkit-transform: translateY(-110%) scale(0.923);
            transform: translateY(-110%) scale(0.923); }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1;
            animation: mdc-floating-label-shake-float-above-text-field-outlined-dense 250ms 1; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__input {
    padding: 12px 12px 7px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label {
    bottom: 16px; }
  .mdc-text-field--outlined.mdc-text-field--dense .mdc-text-field__icon {
    top: 12px; }

.mdc-text-field--with-leading-icon .mdc-text-field__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__icon, .mdc-text-field--with-leading-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 16px; }

.mdc-text-field--with-leading-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 16px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__input, .mdc-text-field--with-leading-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 16px;
    /* @noflip */
    padding-right: 48px; }

.mdc-text-field--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 48px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon .mdc-floating-label, .mdc-text-field--with-leading-icon .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 48px; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {
  -webkit-transform: translateY(-130%) translateX(-32px) scale(0.75);
          transform: translateY(-130%) translateX(-32px) scale(0.75); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-130%) translateX(32px) scale(0.75);
            transform: translateY(-130%) translateX(32px) scale(0.75); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl 250ms 1; }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-110%) translateX(-21px) scale(0.923);
          transform: translateY(-110%) translateX(-21px) scale(0.923); }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above[dir="rtl"] {
    -webkit-transform: translateY(-110%) translateX(21px) scale(0.923);
            transform: translateY(-110%) translateX(21px) scale(0.923); }

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense 250ms 1; }

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake, .mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense[dir="rtl"] .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1; }

.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__icon, .mdc-text-field--with-trailing-icon .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__input, .mdc-text-field--with-trailing-icon .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 16px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 16px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 48px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 48px;
    /* @noflip */
    padding-right: 16px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  bottom: 16px;
  -webkit-transform: scale(0.8);
          transform: scale(0.8); }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: 12px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 12px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 38px;
  /* @noflip */
  padding-right: 12px; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 12px;
    /* @noflip */
    padding-right: 38px; }

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label {
  /* @noflip */
  left: 38px;
  /* @noflip */
  right: auto;
  right: initial; }
  [dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label, .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label[dir="rtl"] {
    /* @noflip */
    left: auto;
    left: initial;
    /* @noflip */
    right: 38px; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: auto;
  left: initial;
  /* @noflip */
  right: 12px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    /* @noflip */
    left: 12px;
    /* @noflip */
    right: auto;
    right: initial; }

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 12px;
  /* @noflip */
  padding-right: 38px; }
  [dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input, .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    /* @noflip */
    padding-left: 38px;
    /* @noflip */
    padding-right: 12px; }

.mdc-text-field--dense .mdc-floating-label--float-above {
  -webkit-transform: translateY(-70%) scale(0.923);
          transform: translateY(-70%) scale(0.923); }

.mdc-text-field--dense .mdc-floating-label--shake {
  -webkit-animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1;
          animation: mdc-floating-label-shake-float-above-text-field-dense 250ms 1; }

.mdc-text-field--dense .mdc-text-field__input {
  padding: 12px 12px 0; }

.mdc-text-field--dense .mdc-floating-label {
  font-size: .813rem; }

.mdc-text-field__input:required + .mdc-floating-label::after {
  margin-left: 1px;
  content: "*"; }

.mdc-text-field--textarea {
  border-radius: 4px;
  display: -webkit-flex;
  display: flex;
  width: auto;
  height: auto;
  -webkit-transition: none;
  transition: none;
  border: 1px solid;
  overflow: hidden; }
  .mdc-text-field--textarea .mdc-floating-label {
    border-radius: 4px 4px 0 0; }
  .mdc-text-field--textarea .mdc-text-field__input {
    border-radius: 2px; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    border-color: rgba(0, 0, 0, 0.73); }
    .mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
      border-color: rgba(0, 0, 0, 0.73); }
  .mdc-text-field--textarea .mdc-floating-label--float-above {
    -webkit-transform: translateY(-50%) scale(0.923);
            transform: translateY(-50%) scale(0.923); }
  .mdc-text-field--textarea .mdc-floating-label--shake {
    -webkit-animation: mdc-floating-label-shake-float-above-textarea 250ms 1;
            animation: mdc-floating-label-shake-float-above-textarea 250ms 1; }
  .mdc-text-field--textarea::before, .mdc-text-field--textarea::after {
    background-color: transparent; }
  .mdc-text-field--textarea:not(.mdc-text-field--disabled) {
    background-color: transparent; }
  .mdc-text-field--textarea .mdc-text-field__input {
    -webkit-align-self: auto;
                -ms-grid-row-align: auto;
            align-self: auto;
    box-sizing: content-box;
    height: auto;
    margin: 0;
    padding: 16px;
    padding-top: 32px;
    border: 1px solid transparent; }
  .mdc-text-field--textarea .mdc-floating-label {
    background-color: white;
    /* @noflip */
    left: 1px;
    /* @noflip */
    right: 0;
    /* @noflip */
    margin-left: 8px;
    /* @noflip */
    margin-right: 0;
    top: 18px;
    bottom: auto;
    width: auto;
    margin-top: 2px;
    padding: 12px 8px 8px 8px;
    line-height: 1.15;
    pointer-events: none; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      left: 0;
      /* @noflip */
      right: 1px; }
    [dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 8px; }

.mdc-text-field--fullwidth {
  width: 100%; }
  .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) {
    display: block; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::before, .mdc-text-field--fullwidth:not(.mdc-text-field--textarea)::after {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) {
      background-color: transparent; }
    .mdc-text-field--fullwidth:not(.mdc-text-field--textarea) .mdc-text-field__input {
      padding: 0; }

.mdc-text-field--fullwidth.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
  border-bottom-color: #b00020; }

.mdc-text-field--dense + .mdc-text-field-helper-text {
  margin-bottom: 4px; }

.mdc-text-field + .mdc-text-field-helper-text {
  margin-right: 12px;
  margin-left: 12px; }

.mdc-text-field--outlined + .mdc-text-field-helper-text {
  margin-right: 16px;
  margin-left: 16px; }

.mdc-form-field > .mdc-text-field + label, .kmx-form-field > .mdc-text-field + label, .kmx-form-field--stacked > .mdc-text-field + label, .kmx-form-field--align-push-down > .mdc-text-field + label {
  -webkit-align-self: flex-start;
          align-self: flex-start; }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: rgba(5, 51, 97, 0.87); }

.mdc-text-field--focused .mdc-text-field__input:required + .mdc-floating-label::after {
  color: #b00020; }

.mdc-text-field--focused + .mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) {
  border-color: #053361;
  /* @alternate */
  border-color: #053361;
  border-color: var(--mdc-theme-primary, #053361); }
  .mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #053361;
    /* @alternate */
    border-color: #053361;
    border-color: var(--mdc-theme-primary, #053361); }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
  border-bottom-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple {
  background-color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::-ms-input-placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder {
  color: #b00020; }

.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  color: #b00020; }

.mdc-text-field--invalid .mdc-text-field__input {
  caret-color: #b00020; }

.mdc-text-field--invalid.mdc-text-field--with-trailing-icon:not(.mdc-text-field--disabled) .mdc-text-field__icon {
  color: #b00020; }

.mdc-text-field--invalid + .mdc-text-field-helper-text--validation-msg {
  opacity: 1; }

.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) {
  border-color: #b00020; }
  .mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:focus {
    border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline__idle,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline__idle {
  border-color: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__path,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__path {
  stroke: #b00020; }

.mdc-text-field--disabled {
  background-color: #fafafa;
  border-bottom: none;
  pointer-events: none; }
  .mdc-text-field--disabled .mdc-text-field__input {
    border-bottom-color: rgba(0, 0, 0, 0.06); }
  .mdc-text-field--disabled .mdc-text-field__input {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-floating-label {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-moz-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__input::placeholder {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled + .mdc-text-field-helper-text {
    color: rgba(0, 0, 0, 0.37); }
  .mdc-text-field--disabled .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.3); }
  .mdc-text-field--disabled:not(.mdc-text-field--textarea) {
    border-bottom-color: rgba(0, 0, 0, 0.12); }
  .mdc-text-field--disabled .mdc-floating-label {
    cursor: default; }

.mdc-text-field--textarea.mdc-text-field--disabled {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: #f9f9f9;
  border-bottom-width: 1px;
  border-style: solid; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input:focus {
    border-color: rgba(0, 0, 0, 0.26); }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input {
    border: 1px solid transparent; }
  .mdc-text-field--textarea.mdc-text-field--disabled .mdc-floating-label {
    background-color: #f9f9f9; }

@keyframes mdc-floating-label-shake-float-above-text-field-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-70%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-70%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-70%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 0%)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 0%)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 0%)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon {
  0% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - 32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - 32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - 32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense {
  0% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - 21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - 21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - 21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(4% - -32px)) translateY(-130%) scale(0.75); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(-4% - -32px)) translateY(-130%) scale(0.75); }
  100% {
    -webkit-transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75);
            transform: translateX(calc(0 - -32px)) translateY(-130%) scale(0.75); } }

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl {
  0% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(4% - -21px)) translateY(-110%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(-4% - -21px)) translateY(-110%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923);
            transform: translateX(calc(0 - -21px)) translateY(-110%) scale(0.923); } }

@keyframes mdc-floating-label-shake-float-above-textarea {
  0% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); }
  33% {
    -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
            animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    -webkit-transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(4% - 0%)) translateY(-50%) scale(0.923); }
  66% {
    -webkit-animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
            animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    -webkit-transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(-4% - 0%)) translateY(-50%) scale(0.923); }
  100% {
    -webkit-transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923);
            transform: translateX(calc(0 - 0%)) translateY(-50%) scale(0.923); } }

/*
 * NOTE: The mdc outlined text-field variant is not used in LEGOS,
 * therefore selectors for outlined text-field are not included here.
 *
 * Text-field styling is wrapped with both kmx-* and mdc-* selectors
 * to provide a higher specificity than the base mdc-* rules:
*/
.kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) {
  /*
        MDC automatically appends an asterisk to the label element child of a required textfield.
        The LEGOS UX strategy is to mark inputs as optional, rather than required.

        The following suppresses the 'required' asterisk on required text-fields:
    */ }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) .mdc-text-field__input {
    border-bottom-color: #e01f1f;
    color: #e01f1f; }
    .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
      border-bottom-color: #e01f1f;
      color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-text-field__input:required + .mdc-floating-label:after {
    content: '';
    display: none; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label {
    bottom: 12px;
    color: #e01f1f;
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    left: 8px; }
    .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label.mdc-floating-label--float-above {
      color: #e01f1f;
      left: 8px; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label.mdc-floating-label--float-above {
    color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) .mdc-text-field__input .mdc-text-field__input:hover,
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) .mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) .mdc-text-field__input:hover {
    color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-floating-label--float-above.mdc-floating-label--shake {
    -webkit-animation: none;
            animation: none; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {
    color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled) .mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label--float-above {
    color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) .mdc-line-ripple {
    background-color: #e01f1f; }
  .kmx-text-field:not(.kmx-text-field--textarea):not(.kmx-text-field--disabled).mdc-text-field:not(.mdc-text-field--textarea):not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled) + .mdc-text-field-helper-text--validation-msg {
    opacity: 1;
    color: #e01f1f; }

/*
 *  Removes the inset shadow and overly-rounded UI on iOS webkit:
 */
/* stylelint-disable selector-max-type */
input[type='search'] {
  -webkit-appearance: none;
  border-radius: 0; }

/* stylelint-enable selector-max-type */
.kmx-theme__background,
.mdc-theme--background {
  background-color: #ffffff;
  background-color: #ffffff;
  background-color: var(--kmx-theme-background, #ffffff); }

/* increases the specificity of the container background color without resorting to implementing !important: */
.kmx-theme__background--dark.kmx-theme__background--dark {
  background-color: #053361; }

:root {
  --kmx-theme-text-disabled-on-light: #8c9196;
  --kmx-text-field-text-primary-on-light: #2a343d;
  --kmx-input-label-primary-on-light: #6d747a;
  --kmx-text-field-caret-color: #1773cf;
  --kmx-text-field-divider-on-light: #6d747a;
  --kmx-text-field-error-on-light: #e01f1f;
  --kmx-text-field-label-primary-on-light: #2a343d;
  --kmx-text-field-focused-text-on-light: #1773cf;
  --kmx-text-field-focused-divider-on-light: #1773cf;
  --kmx-text-field-underline-hover-on-light: #2a343d;
  --kmx-theme-text-hint-on-light: #6d747a;
  --kmx-checkbox-border-color: #6d747a;
  --kmx-checkbox-disabled-color: #8c9196;
  --kmx-theme-tab-label-on-light: rgba(5, 51, 97, 0.7);
  --kmx-theme-tab-label-on-dark: rgba(255, 255, 255, 0.7);
  --kmx-theme-tab-label-on-light--active: #053361;
  --kmx-theme-tab-label-on-dark--active: white;
  --kmx-theme-background: #ffffff;
  --kmx-form-component-blue: #1773cf; }

/* stylelint-disable length-zero-no-unit */
/* stylelint-disable length-zero-no-unit */
.mdc-toolbar, .kmx-secondary-header, .kmx-toolbar {
  background-color: #053361;
  /* @alternate */
  background-color: #053361;
  background-color: var(--mdc-theme-primary, #053361);
  color: white;
  display: -webkit-flex;
  display: flex;
  position: relative;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  box-sizing: border-box;
  width: 100%; }
  .mdc-toolbar .mdc-toolbar__icon, .kmx-secondary-header .mdc-toolbar__icon, .kmx-toolbar .mdc-toolbar__icon, .mdc-toolbar .kmx-toolbar__icon, .kmx-secondary-header .kmx-toolbar__icon, .kmx-toolbar .kmx-toolbar__icon {
    color: white; }
    .mdc-toolbar .mdc-toolbar__icon::before, .kmx-secondary-header .mdc-toolbar__icon::before, .kmx-toolbar .mdc-toolbar__icon::before, .mdc-toolbar .kmx-toolbar__icon::before, .kmx-secondary-header .kmx-toolbar__icon::before, .kmx-toolbar .kmx-toolbar__icon::before, .mdc-toolbar .mdc-toolbar__icon::after, .kmx-secondary-header .mdc-toolbar__icon::after, .kmx-toolbar .mdc-toolbar__icon::after, .mdc-toolbar .kmx-toolbar__icon::after, .kmx-secondary-header .kmx-toolbar__icon::after, .kmx-toolbar .kmx-toolbar__icon::after {
      background-color: white; }
    .mdc-toolbar .mdc-toolbar__icon:hover::before, .kmx-secondary-header .mdc-toolbar__icon:hover::before, .kmx-toolbar .mdc-toolbar__icon:hover::before, .mdc-toolbar .kmx-toolbar__icon:hover::before, .kmx-secondary-header .kmx-toolbar__icon:hover::before, .kmx-toolbar .kmx-toolbar__icon:hover::before {
      opacity: 0.08; }
    .mdc-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-secondary-header .mdc-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .mdc-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-secondary-header .kmx-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .kmx-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):focus::before, .mdc-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded--background-focused::before, .kmx-secondary-header .mdc-toolbar__icon.mdc-ripple-upgraded--background-focused::before, .kmx-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded--background-focused::before, .mdc-toolbar .mdc-ripple-upgraded--background-focused.kmx-toolbar__icon::before, .kmx-secondary-header .mdc-ripple-upgraded--background-focused.kmx-toolbar__icon::before, .kmx-toolbar .mdc-ripple-upgraded--background-focused.kmx-toolbar__icon::before {
      -webkit-transition-duration: 75ms;
              transition-duration: 75ms;
      opacity: 0.24; }
    .mdc-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-secondary-header .mdc-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded)::after, .mdc-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-secondary-header .kmx-toolbar__icon:not(.mdc-ripple-upgraded)::after, .kmx-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded)::after {
      -webkit-transition: opacity 150ms linear;
      transition: opacity 150ms linear; }
    .mdc-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-secondary-header .mdc-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-toolbar .mdc-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .mdc-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-secondary-header .kmx-toolbar__icon:not(.mdc-ripple-upgraded):active::after, .kmx-toolbar .kmx-toolbar__icon:not(.mdc-ripple-upgraded):active::after {
      -webkit-transition-duration: 75ms;
              transition-duration: 75ms;
      opacity: 0.32; }
    .mdc-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded, .kmx-secondary-header .mdc-toolbar__icon.mdc-ripple-upgraded, .kmx-toolbar .mdc-toolbar__icon.mdc-ripple-upgraded, .mdc-toolbar .mdc-ripple-upgraded.kmx-toolbar__icon, .kmx-secondary-header .mdc-ripple-upgraded.kmx-toolbar__icon, .kmx-toolbar .mdc-ripple-upgraded.kmx-toolbar__icon {
      --mdc-ripple-fg-opacity: 0.32; }
  .mdc-toolbar__row, .kmx-toolbar__row {
    display: -webkit-flex;
    display: flex;
    position: relative;
    -webkit-align-items: center;
            align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    min-height: 64px; }
    @media (max-width: 959px) and (orientation: landscape) {
      .mdc-toolbar__row, .kmx-toolbar__row {
        min-height: 48px; } }
    @media (max-width: 599px) {
      .mdc-toolbar__row, .kmx-toolbar__row {
        min-height: 56px; } }
  .mdc-toolbar__section, .kmx-toolbar__section {
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex: 1;
            flex: 1;
    -webkit-align-items: start;
            align-items: start;
    -webkit-justify-content: center;
            justify-content: center;
    box-sizing: border-box;
    min-width: 0;
    height: 100%;
    padding: 8px;
    z-index: 1; }
    @media (max-width: 959px) and (orientation: landscape) {
      .mdc-toolbar__section, .kmx-toolbar__section {
        padding: 0; } }
    @media (max-width: 599px) {
      .mdc-toolbar__section, .kmx-toolbar__section {
        padding: 4px 0; } }
    .mdc-toolbar__section--align-start {
      /* @noflip */
      padding-left: 12px;
      /* @noflip */
      padding-right: 0;
      -webkit-justify-content: flex-start;
              justify-content: flex-start;
      -webkit-order: -1;
              order: -1; }
      [dir="rtl"] .mdc-toolbar__section--align-start, .mdc-toolbar__section--align-start[dir="rtl"] {
        /* @noflip */
        padding-left: 0;
        /* @noflip */
        padding-right: 12px; }
      @media (max-width: 959px) and (orientation: landscape) {
        .mdc-toolbar__section--align-start {
          /* @noflip */
          padding-left: 4px;
          /* @noflip */
          padding-right: 0; }
          [dir="rtl"] .mdc-toolbar__section--align-start, .mdc-toolbar__section--align-start[dir="rtl"] {
            /* @noflip */
            padding-left: 0;
            /* @noflip */
            padding-right: 4px; } }
      @media (max-width: 599px) {
        .mdc-toolbar__section--align-start {
          /* @noflip */
          padding-left: 4px;
          /* @noflip */
          padding-right: 0; }
          [dir="rtl"] .mdc-toolbar__section--align-start, .mdc-toolbar__section--align-start[dir="rtl"] {
            /* @noflip */
            padding-left: 0;
            /* @noflip */
            padding-right: 4px; } }
    .mdc-toolbar__section--align-end {
      /* @noflip */
      padding-left: 0;
      /* @noflip */
      padding-right: 12px;
      -webkit-justify-content: flex-end;
              justify-content: flex-end;
      -webkit-order: 1;
              order: 1; }
      [dir="rtl"] .mdc-toolbar__section--align-end, .mdc-toolbar__section--align-end[dir="rtl"] {
        /* @noflip */
        padding-left: 12px;
        /* @noflip */
        padding-right: 0; }
      @media (max-width: 959px) and (orientation: landscape) {
        .mdc-toolbar__section--align-end {
          /* @noflip */
          padding-left: 0;
          /* @noflip */
          padding-right: 4px; }
          [dir="rtl"] .mdc-toolbar__section--align-end, .mdc-toolbar__section--align-end[dir="rtl"] {
            /* @noflip */
            padding-left: 4px;
            /* @noflip */
            padding-right: 0; } }
      @media (max-width: 599px) {
        .mdc-toolbar__section--align-end {
          /* @noflip */
          padding-left: 0;
          /* @noflip */
          padding-right: 4px; }
          [dir="rtl"] .mdc-toolbar__section--align-end, .mdc-toolbar__section--align-end[dir="rtl"] {
            /* @noflip */
            padding-left: 4px;
            /* @noflip */
            padding-right: 0; } }
  .mdc-toolbar__title, .kmx-toolbar__title {
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    line-height: 2rem;
    font-weight: 500;
    letter-spacing: 0.0125em;
    text-decoration: inherit;
    text-transform: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    /* @noflip */
    margin-left: 24px;
    /* @noflip */
    margin-right: 0;
    -webkit-align-self: center;
                -ms-grid-row-align: center;
            align-self: center;
    padding: 12px 0;
    line-height: 1.5rem;
    z-index: 1; }
    [dir="rtl"] .mdc-toolbar__title, [dir="rtl"] .kmx-toolbar__title, .mdc-toolbar__title[dir="rtl"], .kmx-toolbar__title[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 24px; }
  .mdc-toolbar__icon, .kmx-toolbar__icon, .mdc-toolbar__menu-icon, .kmx-toolbar__menu-icon {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    will-change: transform, opacity;
    display: -webkit-flex;
    display: flex;
    position: relative;
    -webkit-align-items: start;
            align-items: start;
    -webkit-justify-content: center;
            justify-content: center;
    box-sizing: border-box;
    width: 48px;
    height: 48px;
    padding: 12px;
    border: none;
    outline: none;
    background-color: transparent;
    fill: currentColor;
    color: inherit;
    text-decoration: none;
    cursor: pointer; }
    .mdc-toolbar__icon::before, .kmx-toolbar__icon::before, .mdc-toolbar__icon::after, .kmx-toolbar__icon::after, .mdc-toolbar__menu-icon::before, .kmx-toolbar__menu-icon::before, .mdc-toolbar__menu-icon::after, .kmx-toolbar__menu-icon::after {
      position: absolute;
      border-radius: 50%;
      opacity: 0;
      pointer-events: none;
      content: ""; }
    .mdc-toolbar__icon::before, .kmx-toolbar__icon::before, .mdc-toolbar__menu-icon::before, .kmx-toolbar__menu-icon::before {
      -webkit-transition: opacity 15ms linear;
      transition: opacity 15ms linear;
      z-index: 1; }
    .mdc-toolbar__icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__icon::before, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::before {
      -webkit-transform: scale(1);
              transform: scale(1);
      -webkit-transform: scale(var(--mdc-ripple-fg-scale, 1));
              transform: scale(var(--mdc-ripple-fg-scale, 1)); }
    .mdc-toolbar__icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::after {
      top: 0;
      /* @noflip */
      left: 0;
      -webkit-transform: scale(0);
              transform: scale(0);
      -webkit-transform-origin: center center;
              transform-origin: center center; }
    .mdc-toolbar__icon.mdc-ripple-upgraded--unbounded::after, .mdc-ripple-upgraded--unbounded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded--unbounded::after, .mdc-ripple-upgraded--unbounded.kmx-toolbar__menu-icon::after {
      top: 0;
      top: var(--mdc-ripple-top, 0);
      /* @noflip */
      left: 0;
      left: var(--mdc-ripple-left, 0); }
    .mdc-toolbar__icon.mdc-ripple-upgraded--foreground-activation::after, .mdc-ripple-upgraded--foreground-activation.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded--foreground-activation::after, .mdc-ripple-upgraded--foreground-activation.kmx-toolbar__menu-icon::after {
      -webkit-animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
              animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards; }
    .mdc-toolbar__icon.mdc-ripple-upgraded--foreground-deactivation::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded--foreground-deactivation::after, .mdc-ripple-upgraded--foreground-deactivation.kmx-toolbar__menu-icon::after {
      -webkit-animation: 150ms mdc-ripple-fg-opacity-out;
              animation: 150ms mdc-ripple-fg-opacity-out;
      -webkit-transform: translate(0) scale(1);
              transform: translate(0) scale(1);
      -webkit-transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
              transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1)); }
    .mdc-toolbar__icon::before, .kmx-toolbar__icon::before, .mdc-toolbar__icon::after, .kmx-toolbar__icon::after, .mdc-toolbar__menu-icon::before, .kmx-toolbar__menu-icon::before, .mdc-toolbar__menu-icon::after, .kmx-toolbar__menu-icon::after {
      top: calc(50% - 50%);
      /* @noflip */
      left: calc(50% - 50%);
      width: 100%;
      height: 100%; }
    .mdc-toolbar__icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__icon::before, .mdc-toolbar__icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::before, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::before, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::after {
      top: calc(50% - 50%);
      top: var(--mdc-ripple-top, calc(50% - 50%));
      /* @noflip */
      left: calc(50% - 50%);
      left: var(--mdc-ripple-left, calc(50% - 50%));
      width: 100%;
      width: var(--mdc-ripple-fg-size, 100%);
      height: 100%;
      height: var(--mdc-ripple-fg-size, 100%); }
    .mdc-toolbar__icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__icon::after, .mdc-toolbar__menu-icon.mdc-ripple-upgraded::after, .mdc-ripple-upgraded.kmx-toolbar__menu-icon::after {
      width: 100%;
      width: var(--mdc-ripple-fg-size, 100%);
      height: 100%;
      height: var(--mdc-ripple-fg-size, 100%); }

.mdc-toolbar__menu-icon + .mdc-toolbar__title, .kmx-toolbar__menu-icon + .mdc-toolbar__title, .mdc-toolbar__menu-icon + .kmx-toolbar__title, .kmx-toolbar__menu-icon + .kmx-toolbar__title {
  /* @noflip */
  margin-left: 8px;
  /* @noflip */
  margin-right: 0; }
  [dir="rtl"] .mdc-toolbar__menu-icon + .mdc-toolbar__title, [dir="rtl"] .kmx-toolbar__menu-icon + .mdc-toolbar__title, [dir="rtl"] .mdc-toolbar__menu-icon + .kmx-toolbar__title, [dir="rtl"] .kmx-toolbar__menu-icon + .kmx-toolbar__title, .mdc-toolbar__menu-icon + .mdc-toolbar__title[dir="rtl"], .kmx-toolbar__menu-icon + .mdc-toolbar__title[dir="rtl"], .mdc-toolbar__menu-icon + .kmx-toolbar__title[dir="rtl"], .kmx-toolbar__menu-icon + .kmx-toolbar__title[dir="rtl"] {
    /* @noflip */
    margin-left: 0;
    /* @noflip */
    margin-right: 8px; }

@media (max-width: 599px) {
  .mdc-toolbar__title, .kmx-toolbar__title {
    /* @noflip */
    margin-left: 16px;
    /* @noflip */
    margin-right: 0; }
    [dir="rtl"] .mdc-toolbar__title, [dir="rtl"] .kmx-toolbar__title, .mdc-toolbar__title[dir="rtl"], .kmx-toolbar__title[dir="rtl"] {
      /* @noflip */
      margin-left: 0;
      /* @noflip */
      margin-right: 16px; } }

.mdc-toolbar--fixed, .kmx-toolbar--fixed {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 4; }

.mdc-toolbar--flexible {
  --mdc-toolbar-ratio-to-extend-flexible: 4; }
  .mdc-toolbar--flexible .mdc-toolbar__row:first-child, .mdc-toolbar--flexible .kmx-toolbar__row:first-child {
    height: 256px;
    height: calc(64px * 4);
    height: calc(64px * var(--mdc-toolbar-ratio-to-extend-flexible, 4)); }
    @media (max-width: 599px) {
      .mdc-toolbar--flexible .mdc-toolbar__row:first-child, .mdc-toolbar--flexible .kmx-toolbar__row:first-child {
        height: 224px;
        height: calc(56px * 4);
        height: calc(56px * var(--mdc-toolbar-ratio-to-extend-flexible, 4)); } }
    .mdc-toolbar--flexible .mdc-toolbar__row:first-child::after, .mdc-toolbar--flexible .kmx-toolbar__row:first-child::after {
      position: absolute;
      content: ""; }
  .mdc-toolbar--flexible-default-behavior .mdc-toolbar__title, .mdc-toolbar--flexible-default-behavior .kmx-toolbar__title {
    font-family: "Lato", "Verdana", "Arial", sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    line-height: 2rem;
    font-weight: 500;
    letter-spacing: 0.0125em;
    text-decoration: inherit;
    text-transform: inherit;
    -webkit-align-self: flex-end;
            align-self: flex-end;
    line-height: 1.5rem; }
  .mdc-toolbar--flexible-default-behavior .mdc-toolbar__row:first-child::after, .mdc-toolbar--flexible-default-behavior .kmx-toolbar__row:first-child::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease;
    opacity: 1; }
  .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .mdc-toolbar__row:first-child::after, .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .kmx-toolbar__row:first-child::after {
    opacity: 0; }
  .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .mdc-toolbar__title, .mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .kmx-toolbar__title {
    font-weight: 500; }

.mdc-toolbar--waterfall.mdc-toolbar--fixed, .mdc-toolbar--waterfall.kmx-toolbar--fixed {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  -webkit-transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
  will-change: box-shadow; }
  .mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--flexible-space-minimized, .mdc-toolbar--waterfall.mdc-toolbar--flexible-space-minimized.kmx-toolbar--fixed {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12); }
  .mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--flexible-space-minimized, .mdc-toolbar--waterfall.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--flexible-space-minimized.kmx-toolbar--fixed {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12); }
  .mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--fixed-at-last-row, .mdc-toolbar--waterfall.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--fixed-at-last-row.kmx-toolbar--fixed {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12); }

.mdc-toolbar-fixed-adjust, .kmx-toolbar-fixed-adjust {
  padding-top: 64px; }
  @media (max-width: 959px) and (max-height: 599px) {
    .mdc-toolbar-fixed-adjust, .kmx-toolbar-fixed-adjust {
      padding-top: 48px; } }
  @media (max-width: 599px) {
    .mdc-toolbar-fixed-adjust, .kmx-toolbar-fixed-adjust {
      padding-top: 56px; } }

.mdc-toolbar__section--shrink-to-fit {
  -webkit-flex: none;
          flex: none; }

.kmx-toolbar__section {
  -webkit-align-items: center;
          align-items: center; }

.kmx-toolbar__title {
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  font-size: 16px; }

.kmx-toolbar--fixed-bottom {
  top: auto;
  bottom: 0; }

.kmx-toolbar__icon--primary {
  display: -webkit-flex;
  display: flex;
  font-size: 24px;
  margin: 0 8px;
  min-width: 48px;
  padding: 0; }
  .kmx-toolbar__icon--primary:last-of-type {
    padding: 0; }

.kmx-toolbar__logo {
  font-size: 48px;
  padding: 0 10px; }
  .kmx-toolbar__logo .kmx-icon {
    width: 2.5em; }

.kmx-toolbar__link {
  display: -webkit-flex;
  display: flex;
  font-family: "Montserrat", "Trebuchet MS", "Helvetica", sans-serif;
  text-transform: uppercase;
  font-size: 14px;
  margin-right: 24px; }
  .kmx-toolbar__link .kmx-icon {
    font-size: 16px;
    margin: 0 4px; }

.kmx-toolbar.kmx-toolbar--branded {
  background-color: #ffffff;
  color: rgba(0, 0, 0, 0.87);
  /* @alternate */
  color: rgba(0, 0, 0, 0.87);
  color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87)); }
  .kmx-toolbar.kmx-toolbar--branded .kmx-toolbar__menu-icon,
  .kmx-toolbar.kmx-toolbar--branded .kmx-toolbar__icon:not(.kmx-toolbar__icon--primary) {
    color: rgba(0, 0, 0, 0.87);
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    font-size: 24px; }
  .kmx-toolbar.kmx-toolbar--branded .kmx-toolbar__menu-icon:disabled,
  .kmx-toolbar.kmx-toolbar--branded .kmx-toolbar__icon:disabled {
    color: rgba(0, 0, 0, 0.38);
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38)); }

.kmx-toolbar.kmx-toolbar--centered .kmx-toolbar__row {
  margin: 0 auto;
  max-width: 900px; }

.kmx-toolbar--fixed.kmx-toolbar--fixed--secondary:not(.kmx-toolbar--flexible-space-minimized) {
  top: 56px; }

.kmx-toolbar .kmx-toolbar__menu-icon:disabled,
.kmx-toolbar .kmx-toolbar__icon:disabled {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: rgba(0, 0, 0, 0.38);
  color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38)); }

.kmx-icon {
  display: -webkit-flex;
  display: flex;
  position: static;
  position: initial;
  height: 1em;
  width: 1em;
  /* stylelint-disable selector-max-type */
  /* stylelint-enable */ }
  .kmx-icon svg {
    height: 100%;
    max-width: 100%;
    fill: currentColor; }

/*
	Improved screen reader only CSS class
	@author Gaël Poupard
		@note Based on Yahoo!'s technique
		@author Thierry Koblentz
		@see https://developer.yahoo.com/blogs/ydn/clip-hidden-content-better-accessibility-53456.html
	* 1.
		@note `clip` is deprecated but works everywhere
		@see https://developer.mozilla.org/en-US/docs/Web/CSS/clip
	* 2.
		@note `clip-path` is the future-proof version, but not very well supported yet
		@see https://developer.mozilla.org/en-US/docs/Web/CSS/clip-path
		@see http://caniuse.com/#search=clip-path
		@author Yvain Liechti
		@see https://twitter.com/ryuran78/status/778943389819604992
	* 3.
		@note preventing text to be condensed
		author J. Renée Beach
		@see https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
		@note Drupal 8 goes with word-wrap: normal instead
		@see https://www.drupal.org/node/2045151
		@see http://cgit.drupalcode.org/drupal/commit/?id=5b847ea
	* 4.
		@note !important is important
		@note Obviously you wanna hide something
		@author Harry Roberts
		@see http://csswizardry.com/2016/05/the-importance-of-important/
*/
/* stylelint-disable declaration-no-important */
.visually-hidden {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  /* 1 */
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  /* 2 */
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
  /* 3 */ }

/* stylelint-enable declaration-no-important */
/*
	Use in conjunction with .visually-hidden to only display content when it's focused.
	@note Useful for skip links
	@see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
	@note Based on a HTML5 Boilerplate technique, included in Bootstrap
	@note Fixed a bug with position: static on iOS 10.0.2 + VoiceOver
		@author Sylvain Pigeard
		@see https://github.com/twbs/bootstrap/issues/20732
*/
/* stylelint-disable declaration-no-important */
.visually-hidden-focusable:focus,
.visually-hidden-focusable:active {
  clip: auto !important;
  -webkit-clip-path: none !important;
  clip-path: none !important;
  height: auto !important;
  overflow: visible !important;
  width: auto !important;
  white-space: normal !important; }

/* stylelint-enable declaration-no-important */
.kmx-theme__background--gray {
  background-color: #e4e4e4; }

.page-footer--legal--copyright {
  float: right;
  color: gray;
  margin-right: 20px; }

.footer {
  position: relative;
  bottom: 0;
  width: 100%;
  white-space: nowrap; }

.mdc-content {
  padding-top: 80px;
  padding-left: 100px;
  padding-right: 100px;
  padding-bottom: 0px; }

.mdc-background {
  background-color: #e4e4e4; }

html,
body {
  margin: 0px;
  padding: 0px;
  height: 100%; }

#header {
  background: #ff0;
  padding: 0px; }

#body {
  padding-bottom: 0px; }

#footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #e4e4e4; }

#container {
  min-height: 100%;
  position: relative;
  background-color: #e4e4e4;
  overflow: hidden; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vU2NoZWR1bGVyLVVJLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGhlbWUvc3JjL19rbXgtdGhlbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvbGF5b3V0L192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvZWxldmF0aW9uL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvZWxldmF0aW9uL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvc3BhY2luZy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvX2Jhc2Utc3R5bGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRoZW1lL25vZGVfbW9kdWxlcy9zYXNzLW1xL19tcS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS9fbGlua3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGhlbWUvbWRjLXRoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90aGVtZS9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90aGVtZS9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90eXBvZ3JhcGh5L21kYy10eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90eXBvZ3JhcGh5L19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3R5cG9ncmFwaHkvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdHlwb2dyYXBoeS9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtYnJlYWRjcnVtYi9zcmMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3JpcHBsZS9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9idXR0b24vX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvYnV0dG9uL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1idXR0b24vc3JjL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1idXR0b24vc3JjL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy11dGlsaXRpZXMvc3JjL3N2Zy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtYnV0dG9uL3NyYy9fYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9lbGV2YXRpb24vX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZWxldmF0aW9uL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1idXR0b24vc3JjL19pY29uLWJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvY2FyZC9tZGMtY2FyZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvY2FyZC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9jYXJkL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3JpcHBsZS9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9ydGwvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWNhcmQvc3JjL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9yaXBwbGUvX2tleWZyYW1lcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvYW5pbWF0aW9uL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3JpcHBsZS9jb21tb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2NoZWNrYm94L19rZXlmcmFtZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2NoZWNrYm94L192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2NoZWNrYm94L21kYy1jaGVja2JveC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvY2hlY2tib3gvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWNoZWNrYm94L3NyYy9fY2hlY2tib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10aGVtZS9zcmMvZm9ybXMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWNoZWNrYm94L3NyYy9fbGFiZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1jaGVja2JveC9zcmMvX2NoZWNrYm94LWhlbHBlci10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGhlbWUvc3JjL2Zvcm1zL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy11dGlsaXRpZXMvc3JjL2hlbHBlcnMvYTExeS9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtY2lyY3VsYXItcHJvZ3Jlc3Mvc3JjL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtY29udGV4dHVhbC1zZWFyY2gvc3JjL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9kaWFsb2cvbWRjLWRpYWxvZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWRpYWxvZy9zcmMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1kaWFsb2cvbm9kZV9tb2R1bGVzL3Nhc3MtbXEvX21xLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtbGlzdC9zcmMvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZHJhd2VyL2NvbW1vbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZHJhd2VyL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2xpc3QvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZHJhd2VyL2Rpc21pc3NpYmxlL21kYy1kcmF3ZXItZGlzbWlzc2libGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2RyYXdlci9tb2RhbC9tZGMtZHJhd2VyLW1vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9kcmF3ZXIvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWRyYXdlci9zcmMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1kcmF3ZXIvbm9kZV9tb2R1bGVzL3Nhc3MtbXEvX21xLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtZmFiL3NyYy9pbmRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZmFiL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1mYWIvc3JjL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2Zvcm0tZmllbGQvbWRjLWZvcm0tZmllbGQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1mb3JtLWZpZWxkL3NyYy9fZm9ybS1maWVsZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWZvcm0tZmllbGQvc3JjL19maWVsZHNldC1sZWdlbmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1mb3JtLWZpZWxkL3NyYy9faGVscGVyLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2xheW91dC1ncmlkL21kYy1sYXlvdXQtZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbGF5b3V0LWdyaWQvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbGF5b3V0LWdyaWQvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWxheW91dC1ncmlkL3NyYy9fbGF5b3V0LWdyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1sYXlvdXQtZ3JpZC9zcmMvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLWljb24tdG9nZ2xlL3NyYy9pbmRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbGluZWFyLXByb2dyZXNzL19rZXlmcmFtZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2xpbmVhci1wcm9ncmVzcy9tZGMtbGluZWFyLXByb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9saW5lYXItcHJvZ3Jlc3MvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbGluZWFyLXByb2dyZXNzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1saW5lYXItcHJvZ3Jlc3Mvc3JjL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9saXN0L21kYy1saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9saXN0L192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1saXN0L3NyYy9fbGlzdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbWVudS9tZGMtbWVudS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbWVudS9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtbWVudS9zcmMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3JhZGlvL21kYy1yYWRpby5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvcmFkaW8vX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXJhZGlvLWJ1dHRvbi9zcmMvX3JhZGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtcmFkaW8tYnV0dG9uL3NyYy9fbGFiZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3Rvb2xiYXIvbWRjLXRvb2xiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3Rvb2xiYXIvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdG9vbGJhci9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3Mtc2Vjb25kYXJ5LWhlYWRlci9zcmMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1zZWNvbmRhcnktaGVhZGVyL25vZGVfbW9kdWxlcy9zYXNzLW1xL19tcS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc2VsZWN0L19rZXlmcmFtZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2xpbmUtcmlwcGxlL21kYy1saW5lLXJpcHBsZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbm90Y2hlZC1vdXRsaW5lL21kYy1ub3RjaGVkLW91dGxpbmUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2Zsb2F0aW5nLWxhYmVsL21kYy1mbG9hdGluZy1sYWJlbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZmxvYXRpbmctbGFiZWwvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc2VsZWN0L21kYy1zZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3NlbGVjdC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9zZWxlY3QvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvbm90Y2hlZC1vdXRsaW5lL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1zZWxlY3Qvc3JjL19zZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1zZWxlY3Qvc3JjL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1zZWxlY3Qvc3JjL19zZWxlY3QtaGVscGVyLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3NuYWNrYmFyL21kYy1zbmFja2Jhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc25hY2tiYXIvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXNuYWNrYmFyL3NyYy9pbmRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXN0b3JlLWxhYmVsL3NyYy9pbmRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXN0b3Jlcy1saXN0L3NyYy9pbmRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc3dpdGNoL21kYy1zd2l0Y2guc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3N3aXRjaC9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3Mtc3dpdGNoL3NyYy9fbGFiZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy1zd2l0Y2gvc3JjL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGFibGUvc3JjL2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGFibGUvc3JjL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10YWItYmFyL3NyYy9fdGFiLWJhci1jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90YWItYmFyL21kYy10YWItYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90YWItYmFyL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RhYi1zY3JvbGxlci9tZGMtdGFiLXNjcm9sbGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90YWIvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGFiLWluZGljYXRvci9tZGMtdGFiLWluZGljYXRvci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGFiLWluZGljYXRvci9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90YWIvbWRjLXRhYi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGFiL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10YWItYmFyL3NyYy9pbmRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGV4dGZpZWxkL2hlbHBlci10ZXh0L21kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90ZXh0ZmllbGQvaWNvbi9tZGMtdGV4dC1maWVsZC1pY29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90ZXh0ZmllbGQvbWRjLXRleHQtZmllbGQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RleHRmaWVsZC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90ZXh0ZmllbGQvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGV4dGZpZWxkL2ljb24vX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRleHQtYXJlYS9zcmMvX3RleHQtYXJlYS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRleHQtYXJlYS9zcmMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRleHQtYXJlYS9zcmMvX3RleHQtYXJlYS1kaXNhYmxlZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRleHQtZmllbGQvc3JjL190ZXh0LWZpZWxkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGV4dC1maWVsZC9zcmMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9Aa214L2xlZ29zLXRleHQtZmllbGQvc3JjL190ZXh0LWZpZWxkLWRpc2FibGVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGV4dC1maWVsZC9zcmMvX3RleHQtZmllbGQtaGVscGVyLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy10ZXh0LWZpZWxkL3NyYy9fdGV4dC1maWVsZC12YWxpZGF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdGV4dC1maWVsZC9zcmMvX3RleHQtZmllbGQtaW9zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BrbXgvbGVnb3MtdG9vbGJhci9zcmMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGtteC9sZWdvcy11dGlsaXRpZXMvc3JjL3N2Zy9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvU2NoZWR1bGVyLVVJLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDU2hCOztFQUVJLHlCQ29GVztFRG5GWCx5QkFBcUQ7RUFBckQsc0RBQXFEOztBQUd6RDtBQUNBO0VBQ0kseUJDTmdCOztBRFdwQjtFQUNJLDJDQUFtQztFQUNuQywrQ0FBdUM7RUFDdkMsMkNBQW1DO0VBQ25DLHFDQUE2QjtFQUM3QiwwQ0FBa0M7RUFDbEMsd0NBQWdDO0VBQ2hDLGdEQUF3QztFQUN4QywrQ0FBdUM7RUFDdkMsa0RBQTBDO0VBQzFDLGtEQUEwQztFQUMxQyx1Q0FBK0I7RUFDL0Isb0NBQTRCO0VBQzVCLHNDQUE4QjtFQUM5QixvREFBK0I7RUFDL0IsdURBQThCO0VBQzlCLCtDQUF1QztFQUN2Qyw0Q0FBc0M7RUFDdEMsK0JBQXVCO0VBQ3ZCLGtDQUEwQjs7QUVyQzlCO0FDQUk7RUNFUSx5QkhrRFE7RUdqRFIsZ0JBQWdCOztBREh4QjtFQ0tRLHlCQUF5QjtFQUN6Qiw4Q0NBa0Q7O0FGTjFEO0VDS1EseUJBQXlCO0VBQ3pCLCtDQ0FrRDs7QUZOMUQ7RUNLUSx5QkFBeUI7RUFDekIsZ0RDQWtEOztBRk4xRDtFQ0tRLHlCQUF5QjtFQUN6QixnRENBa0Q7O0FDRDlEO0FBR1E7RUFDSSxvQkFBNkM7O0FBRzdDO0VBQ0ksd0JBQTZEOztBQURqRTtFQUNJLDBCQUE2RDs7QUFEakU7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0kseUJBQTZEOztBQUxyRTtFQUNJLHNCQUE2Qzs7QUFHN0M7RUFDSSwwQkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSwyQkFBNkQ7O0FBTHJFO0VBQ0ksc0JBQTZDOztBQUc3QztFQUNJLDBCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDJCQUE2RDs7QUFMckU7RUFDSSxzQkFBNkM7O0FBRzdDO0VBQ0ksMEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksMkJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0kscUJBQTZDOztBQUc3QztFQUNJLHlCQUE2RDs7QUFEakU7RUFDSSwy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SUZoQm5COztBQUVEO0VFWkksZ0JEQ1M7RUNJVCxrRURYNEU7RUM4QjVFLGVDZHVDO0VEZXZDLHVCQ2Z1QztFRGdCdkMsaUJBQWdCO0VBNkZoQixjUnJIZ0I7RVVzTlo7SUo1TVI7TUVaSSxnQkRDUztNQ0lULGtFRFg0RTtNQ3FDNUUsZUNyQnVDO01Ec0J2Qyx1QkN0QnVDO01EdUJ2QyxpQkFBZ0IsSUZuQm5COztBQUVEO0VFaEJJLGdCRENTO0VDSVQsa0VEWDRFO0VDcUM1RSxlQ3JCdUM7RURzQnZDLHVCQ3RCdUM7RUR1QnZDLGlCQUFnQjtFQStGaEIsY1I5SGdCO0VVc05aO0lKeE1SO01FaEJJLGdCRENTO01DSVQsa0VEWDRFO01DNEM1RSxlQzVCdUM7TUQ2QnZDLHNCQzdCdUM7TUQ4QnZDLG9CQUFnQixJRnRCbkI7O0FBRUQ7RUVwQkksZ0JEQ1M7RUNJVCxrRURYNEU7RUM0QzVFLGVDNUJ1QztFRDZCdkMsc0JDN0J1QztFRDhCdkMsb0JBQWdCO0VBaUdoQixjUnZJZ0I7RVVzTlo7SUpwTVI7TUVwQkksZ0JEQ1M7TUNJVCxrRURYNEU7TUNtRDVFLGVDbkN1QztNRG9DdkMsdUJDcEN1QztNRHFDdkMsb0JBQWdCLElGekJuQjs7QUFFRDtFRXhCSSxnQkRDUztFQ0lULGtFRFg0RTtFQ21ENUUsZUNuQ3VDO0VEb0N2Qyx1QkNwQ3VDO0VEcUN2QyxvQkFBZ0I7RUFtR2hCLGNSaEpnQjtFVXNOWjtJSmhNUjtNRXhCSSxnQkRDUztNQ0lULGtFRFg0RTtNQzBENUUsZUMxQ3VDO01EMkN2Qyx1QkMzQ3VDO01ENEN2QyxvQkFBZ0IsSUY1Qm5COztBQUVEO0VFNUJJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQVd0QixlQzdEdUM7RUQ4RHZDLG9CQUFnQjtFQXhFaEIsZ0JEQ1M7RUNvTFQsY1JuTGdCOztBTThCcEI7RUVoQ0ksZ0JEQVk7RUMyRFosbUREaEU0RDtFQ2lFNUQsc0JBQXNCO0VBaUJ0QixlQ25FdUM7RURvRXZDLG1CQUFnQjtFQTlFaEIsZ0JEQ1M7RUMwTFQsY1J6TGdCOztBTWtDcEI7RUVwQ0ksZ0JEQVk7RUMyRFosbUREaEU0RDtFQ2lFNUQsc0JBQXNCO0VBdUJ0QixlQ3pFdUM7RUQwRXZDLGlCQUFnQjtFQXBGaEIsZ0JEQ1M7RUNnTVQsY1IvTGdCOztBTXNDcEI7RUV4Q0ksZ0JEQVk7RUMyRFosbUREaEU0RDtFQ2lFNUQsc0JBQXNCO0VBV3RCLGVDN0R1QztFRDhEdkMsb0JBQWdCO0VBbUZoQixjUnhHZ0I7O0FNUHBCOztFRTVDSSxnQkRBWTtFQzJEWixtRERoRTREO0VDaUU1RCxzQkFBc0I7RUFpQnRCLGVDbkV1QztFRG9FdkMsbUJBQWdCO0VBa0ZoQixjUjdHZ0I7O0FNRnBCO0VFakRJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQXVCdEIsZUN6RXVDO0VEMEV2QyxpQkFBZ0I7RUFpRmhCLGNSbEhnQjs7QU1FcEI7RUVyREksZ0JEQVk7RUMyRFosbUREaEU0RDtFQ2lFNUQsc0JBQXNCO0VBS3RCLGVDdkR1QztFRHdEdkMsb0JBQWdCO0VBNkdoQixjUjVIZ0I7O0FNTXBCO0VFekRJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQW1DdEIsZUNyRnVDO0VEc0Z2QyxvQkFBZ0I7RUEwRWhCLGNSM0tnQjs7QU04RHBCO0VFN0RJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQUt0QixlQ3ZEdUM7RUR3RHZDLG9CQUFnQjtFQW9JaEIsY1JuSmdCOztBTWNwQjtFRWpFSSxnQkRBWTtFQzJEWixtRERoRTREO0VDaUU1RCxzQkFBc0I7RUFpQnRCLGVDbkV1QztFRG9FdkMsbUJBQWdCO0VBNkhoQixjUnhKZ0I7O0FNa0JwQjtBQUNBOzs7RUFHSSxTQUFTOztBQUdiO0VFNUVJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQW1DdEIsZUNyRnVDO0VEc0Z2QyxvQkFBZ0I7RUEwRWhCLGNSM0tnQjtFVXlOWjtJSjVJUjtNQUlZLGVLL0VvQjtNTGdGcEIsa0JBQWtCLElBRXpCOztBQUdMO0VBQ0ksY0FBbUI7O0FBR3ZCO0VFMUZJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQVd0QixlQzdEdUM7RUQ4RHZDLG9CQUFnQjtFQW1GaEIsY1J4R2dCO0VVcUtaO0lKOUhSO01FMUZJLGdCREFZO01DMkRaLG1ERGhFNEQ7TUNpRTVELHNCQUFzQjtNQWlCdEIsZUNuRXVDO01Eb0V2QyxtQkFBZ0I7TUFrRmhCLGNSN0dnQixJTTZDbkI7O0FBRUQ7O0VFbEdJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQWlCdEIsZUNuRXVDO0VEb0V2QyxtQkFBZ0I7RUErSWhCLGNSMUtnQjtFUTJLaEIsNEJBQTRCO0VBQzVCLGtCRzdOMkI7RUg4TjNCLG1CR2hPMEI7RUhzTzFCO0VGaklBLFVBQVU7RUFDVixTQUFTO0VBQ1QsMkJBQTJCO0VFZ0kzQjs7SUFDSSxtQkd2T3dCO0VIc081Qjs7SUY5SEksbUJLekdzQjs7QUw0RzlCO0FNckhBOzs7O0VkeXJCRTtBY25xQkY7QUFmSTtFQUNJLGNaQVk7O0FZR2hCO0VBQ0ksY1pKWTs7QVlPaEI7RUFHSSxjWlJZOztBWWdCcEI7QUFFQTtBQXJCSTtFQUNJLGNaQVk7O0FZR2hCO0VBQ0ksY1pKWTs7QVlPaEI7RUFHSSxjWlJZOztBQ05wQjtBWUZBO0FBQ0E7Ozs7RUxNSSxnQkRBWTtFQzJEWixtRERoRTREO0VDaUU1RCxzQkFBc0I7RUFpQnRCLGVDbkV1QztFRG9FdkMsbUJBQWdCO0VBK0loQixjUjFLZ0I7RVEyS2hCLDRCQUE0QjtFQUM1QixrQkc3TjJCO0VIOE4zQixtQkdoTzBCO0VIc08xQixvREFBbUQ7RUFDbkQ7Ozs7SUFDSSxtQkd2T3dCOztBRUFoQztFTERJLGdCREFZO0VDMkRaLG1ERGhFNEQ7RUNpRTVELHNCQUFzQjtFQWlCdEIsZUNuRXVDO0VEb0V2QyxtQkFBZ0I7RUErSWhCLGNSMUtnQjtFUTJLaEIsNEJBQTRCO0VBQzVCLGtCRzdOMkI7RUg4TjNCLG1CR2hPMEI7RUhtT3RCLHFCQUFxQjtFQUd6QixvREFBbUQ7RUFDbkQ7SUFDSSxtQkd2T3dCOztBRUloQztBQ2RBO0VBQ0ksZ0JBQWdCOztBQUdwQjtFQUNJLGlCQUFpQjs7QUFHckI7RUFDSSxrRVBONEU7O0FPU2hGO0VBQ0ksbURQVDREOztBT1loRTtFQUNJLHdEUFprRTs7QU9ldEU7RU5YSSxnQkRBWTs7QU9laEI7RU5mSSxnQkRDUzs7QU9rQmI7RU5uQkksZ0JEQ1M7O0FPc0JiOztFQUVJLG1CQUFtQjs7QUFHdkI7RUFDSSxrQkFBa0I7O0FBR3RCO0VBQ0ksZ0JBQWdCOztBQUdwQjtFQUNJLGlCQUFpQjs7QUFHckI7RUFDSSw2QkFBNkI7O0FmNUJqQztFZ0JJSSw0QkFBa0M7RUFBbEMsOEJBQWtDO0VBQWxDLDRCQUFrQztFQUFsQyx5QkFBa0M7RUFBbEMsNEJBQWtDO0VBQWxDLDhCQUFrQztFQUFsQyw0QkFBa0M7RUFBbEMsMkRBQWtDO0VBQWxDLDZEQUFrQztFQUFsQyx3REFBa0M7RUFBbEMsNERBQWtDO0VBQWxDLHdEQUFrQztFQUFsQyxzREFBa0M7RUFBbEMsd0RBQWtDO0VBQWxDLG1EQUFrQztFQUFsQyx1REFBa0M7RUFBbEMsbURBQWtDO0VBQWxDLHVDQUFrQztFQUFsQyw0REFBa0M7RUFBbEMsdURBQWtDO0VBQWxDLDJEQUFrQztFQUFsQyx1REFBa0M7O0FBTWxDO0VDWUUseUJBQStCO0VBZ0I3QjtFQUNBLHlCQUF1RTtFQUF2RSxtREFBdUU7O0FEN0IzRTtFQ1lFLHlCQUErQjtFQWdCN0I7RUFDQSx5QkFBdUU7RUFBdkUscURBQXVFOztBRHpCM0U7RUM0QkUsc0JDMUJxQjtFRDBDbkI7RUFDQSxzQkFBNEQ7RUFBNUQsbURBQTREOztBRDdDaEU7RUM0QkUsc0JDeEJrQjtFRHdDaEI7RUFDQSxzQkFBNEQ7RUFBNUQsZ0RBQTREOztBRGpEaEU7RUNZRSxzQkFBK0I7RUFnQjdCO0VBQ0Esc0JBQXVFO0VBQXZFLG1EQUF1RTs7QUQ3QjNFO0VDWUUsc0JBQStCO0VBZ0I3QjtFQUNBLHNCQUF1RTtFQUF2RSxxREFBdUU7O0FEN0IzRTtFQ1lFLHNCQUErQjtFQWdCN0I7RUFDQSxzQkFBdUU7RUFBdkUsbURBQXVFOztBRDdCM0U7RUNZRSxxQ0FBK0I7RUFnQjdCO0VBQ0EscUNBQXVFO0VBQXZFLGtGQUF1RTs7QUQ3QjNFO0VDWUUscUNBQStCO0VBZ0I3QjtFQUNBLHFDQUF1RTtFQUF2RSxvRkFBdUU7O0FEN0IzRTtFQ1lFLHFDQUErQjtFQWdCN0I7RUFDQSxxQ0FBdUU7RUFBdkUsK0VBQXVFOztBRDdCM0U7RUNZRSxxQ0FBK0I7RUFnQjdCO0VBQ0EscUNBQXVFO0VBQXZFLG1GQUF1RTs7QUQ3QjNFO0VDWUUscUNBQStCO0VBZ0I3QjtFQUNBLHFDQUF1RTtFQUF2RSwrRUFBdUU7O0FEN0IzRTtFQ1lFLHFDQUErQjtFQWdCN0I7RUFDQSxxQ0FBdUU7RUFBdkUsNkVBQXVFOztBRDdCM0U7RUNZRSxxQ0FBK0I7RUFnQjdCO0VBQ0EscUNBQXVFO0VBQXZFLCtFQUF1RTs7QUQ3QjNFO0VDWUUscUNBQStCO0VBZ0I3QjtFQUNBLHFDQUF1RTtFQUF2RSwwRUFBdUU7O0FEN0IzRTtFQ1lFLHFDQUErQjtFQWdCN0I7RUFDQSxxQ0FBdUU7RUFBdkUsOEVBQXVFOztBRDdCM0U7RUNZRSxxQ0FBK0I7RUFnQjdCO0VBQ0EscUNBQXVFO0VBQXZFLDBFQUF1RTs7QUQ3QjNFO0VDWUUsdUJBQStCO0VBZ0I3QjtFQUNBLHVCQUF1RTtFQUF2RSw4REFBdUU7O0FEN0IzRTtFQ1lFLDBDQUErQjtFQWdCN0I7RUFDQSwwQ0FBdUU7RUFBdkUsbUZBQXVFOztBRDdCM0U7RUNZRSwwQ0FBK0I7RUFnQjdCO0VBQ0EsMENBQXVFO0VBQXZFLDhFQUF1RTs7QUQ3QjNFO0VDWUUsMENBQStCO0VBZ0I3QjtFQUNBLDBDQUF1RTtFQUF2RSxrRkFBdUU7O0FEN0IzRTtFQ1lFLDBDQUErQjtFQWdCN0I7RUFDQSwwQ0FBdUU7RUFBdkUsOEVBQXVFOztBRGpCN0U7RUNBSSxvQ0FBK0I7RUFnQjdCO0VBQ0Esb0NBQXVFO0VBQXZFLDhEQUF1RTs7QURqQjdFO0VDQUksb0NBQStCO0VBZ0I3QjtFQUNBLG9DQUF1RTtFQUF2RSxnRUFBdUU7O0FFcEMvRTtFQ0NJLG1EWnRCNEQ7RVlzQjVELGtDQ0VnQztFREZoQyxtQ0NHaUM7O0FGQ25DO0VDUUUsbURabEM0RDtFWWtDNUQsa0NDVmdDO0VEVWhDLG1DQ1RpQztFRFNqQyxlQ09pQjtFRFBqQixpQkNRbUI7RURSbkIsZ0JDSlE7RURJUiwwQkVvQ3lDO0VGcEN6Qyx3QkNXMEI7RURYMUIsdUJDWXlCOztBRnBCM0I7RUNRRSxtRFpsQzREO0VZa0M1RCxrQ0NWZ0M7RURVaEMsbUNDVGlDO0VEU2pDLGtCQ2VvQjtFRGZwQixvQkNnQnNCO0VEaEJ0QixnQkNKUTtFRElSLDBCRW9DeUM7RUZwQ3pDLHdCQ21CMEI7RURuQjFCLHVCQ29CeUI7O0FGNUIzQjtFQ1FFLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsZUN1QmlCO0VEdkJqQixxQkN3QnVCO0VEeEJ2QixnQkNIVTtFREdWLHNCQzBCd0I7RUQxQnhCLHdCQzJCMEI7RUQzQjFCLHVCQzRCeUI7O0FGcEMzQjtFQ1FFLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsbUJDK0JxQjtFRC9CckIsbUJDZ0NxQjtFRGhDckIsZ0JDSFU7RURHVix5QkVvQ3lDO0VGcEN6Qyx3QkNtQzBCO0VEbkMxQix1QkNvQ3lCOztBRjVDM0I7RUNRRSxtRFpsQzREO0VZa0M1RCxrQ0NWZ0M7RURVaEMsbUNDVGlDO0VEU2pDLGlCQ3VDbUI7RUR2Q25CLGlCQ3dDbUI7RUR4Q25CLGdCQ0hVO0VER1Ysc0JDMEN3QjtFRDFDeEIsd0JDMkMwQjtFRDNDMUIsdUJDNEN5Qjs7QUZwRDNCO0VDUUUsbURabEM0RDtFWWtDNUQsa0NDVmdDO0VEVWhDLG1DQ1RpQztFRFNqQyxrQkMrQ29CO0VEL0NwQixpQkNnRG1CO0VEaERuQixnQkNGUztFREVULHdCRW9DeUM7RUZwQ3pDLHdCQ21EMEI7RURuRDFCLHVCQ29EeUI7O0FGNUQzQjtFQ1FFLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsZUN1RGlCO0VEdkRqQixvQkN3RHNCO0VEeER0QixnQkNIVTtFREdWLHlCRW9DeUM7RUZwQ3pDLHdCQzJEMEI7RUQzRDFCLHVCQzREeUI7O0FGcEUzQjtFQ1FFLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsbUJDK0RvQjtFRC9EcEIscUJDZ0V1QjtFRGhFdkIsZ0JDRlM7RURFVCx5QkVvQ3lDO0VGcEN6Qyx3QkNtRTBCO0VEbkUxQix1QkNvRXlCOztBRjVFM0I7RUNRRSxtRFpsQzREO0VZa0M1RCxrQ0NWZ0M7RURVaEMsbUNDVGlDO0VEU2pDLGVDdUVpQjtFRHZFakIsbUJDd0VxQjtFRHhFckIsZ0JDSFU7RURHVix5QkVvQ3lDO0VGcEN6Qyx3QkMyRTBCO0VEM0UxQix1QkM0RXlCOztBRnBGM0I7RUNRRSxtRFpsQzREO0VZa0M1RCxrQ0NWZ0M7RURVaEMsbUNDVGlDO0VEU2pDLG1CQytFb0I7RUQvRXBCLG9CQ2dGc0I7RURoRnRCLGdCQ0hVO0VER1YseUJFb0N5QztFRnBDekMsd0JDbUYwQjtFRG5GMUIsdUJDb0Z5Qjs7QUY1RjNCO0VDUUUsbURabEM0RDtFWWtDNUQsa0NDVmdDO0VEVWhDLG1DQ1RpQztFRFNqQyxrQkN1Rm1CO0VEdkZuQixvQkN3RnNCO0VEeEZ0QixnQkNIVTtFREdWLHlCRW9DeUM7RUZwQ3pDLHdCQzJGMEI7RUQzRjFCLHVCQzRGeUI7O0FGcEczQjtFQ1FFLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsbUJDK0ZvQjtFRC9GcEIsb0JDZ0dzQjtFRGhHdEIsZ0JDRlM7RURFVCx5QkVvQ3lDO0VGcEN6QyxxQkNtR3VCO0VEbkd2Qix5QkNvRzJCOztBRjVHN0I7RUNRRSxtRFpsQzREO0VZa0M1RCxrQ0NWZ0M7RURVaEMsbUNDVGlDO0VEU2pDLGtCQ3VHbUI7RUR2R25CLGlCQ3dHbUI7RUR4R25CLGdCQ0ZTO0VERVQseUJFb0N5QztFRnBDekMscUJDMkd1QjtFRDNHdkIseUJDNEcyQjs7QW5COUkvQjtBcUJHQTtFZEVJLGdCREFZO0VlQ1osY3RCaURnQjtFc0Jo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O01GaURyQztRUm5CSSxxQmhCMUJjO0kyQnlJaEI7TUFFSSx5QjNCM0ZZO00yQjRGWiw0Q0RoSitCO01DZ0ovQixvQ0RoSitCO01DaUovQixnRERqSitCO01DaUovQix3Q0RqSitCO01GaURyQztRUm5CSSxxQmhCdkJjO0U2QlVoQjtJRndJQSxxQ0R6Sm1DO0lDeUpuQyw2QkR6Sm1DO0lDMEpuQyxnREQxSm1DO0lDMEpuQyx3Q0QxSm1DO0lGMkNyQztNUmJJLDZCVWhCeUM7SUY2QjdDO01SYkksY2hCdkJjO0kyQnFKaEI7TUFFSSxjM0IxSlk7TTJCMkpaLHFDRC9KK0I7TUMrSi9CLDZCRC9KK0I7SUNrS25DO01BQ0kseUIzQi9HWTtNMkJnSFosYzNCN0pZO00yQjhKWixnRERySytCO01DcUsvQix3Q0RySytCO01Dc0svQixxQ0R0SytCO01Dc0svQiw2QkR0SytCO0VHcUJuQztJRm9JQSxxQ0R6Sm1DO0lDeUpuQyw2QkR6Sm1DO0lDMEpuQyxnREQxSm1DO0lDMEpuQyx3Q0QxSm1DO0lGMkNyQztNUmJJLDZCVWhCeUM7SUY2QjdDO01SYkksY2hCdkJjO0kyQnFKaEI7TUFFSSxjM0IxSlk7TTJCMkpaLHFDRC9KK0I7TUMrSi9CLDZCRC9KK0I7SUNrS25DO01BQ0kseUIzQi9HWTtNMkJnSFosYzNCN0pZO00yQjhKWixnRERySytCO01DcUsvQix3Q0RySytCO01Dc0svQixxQ0R0SytCO01Dc0svQiw2QkR0SytCO0lGMkNyQztNUmJJLDZCVWhCeUM7SUY2QjdDO01SYkksY2hCNkRTO0kyQnVFWDtNRXZJUSwwQ3pCckJrRDtNeUJzQmxELGM3QitERztNNkI5REgsZ0RBQXdDO01BQXhDLHdDQUF3QztNQUN4QyxxQ0FBNkI7TUFBN0IsNkJBQTZCOztBQUt6Qzs7RUFFSSxlbEJoQzBCOztBa0JtQzlCO0VDSUUseUhDeEJrQztFUG9KbEMsaUVNekcwRDtFTnlHMUQseURNekcwRDtFTjJHMUQ7SU05SEEsMEhDeEJrQztFUDJKbEM7SU1uSUEsMkhDeEJrQztFUCtKbEM7SU12SUEsd0hDeEJrQzs7QUZ3QnBDOzs7OztF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aEo1QztFN0IzQ0ksV0NIcUY7O0E0QmtEekY7RTdCL0NJLGtCQ0hxRjs7QTRCeUR6RjtFN0J4QkkseUJoQlNjO0VnQkp3QjtJNkJtQjFDO003QmhCWTtNQUNBLHlCQUE0RDtNQUE1RCxxREFBNEQsSUFDN0Q7O0E2Qm9KWDtFN0I1TEksaUNDTytFO0VEUC9FLDZCNkJBNkI7O0FBeU1qQzs7RTdCM0tJLHFCaEJTYztFZ0JPWjtFQUNBLHFCQUE0RDtFQUE1RCxpREFBNEQ7RUFqQjlELHlCaEJTYztFZ0JPWjtFQUNBLHlCQUE0RDtFQUE1RCxxREFBNEQ7O0EwQmpEbEU7RUFDRTtJMUJDRSxpQ0NPK0U7SURQL0UsNkI2QkE2QjtFSEkvQjtJMUIwQkUscUJoQlNjO0lnQk9aO0lBQ0EscUJBQTREO0lBQTVELGlEQUE0RDtJQWpCOUQseUJoQlNjO0lnQk9aO0lBQ0EseUJBQTREO0lBQTVELHFEQUE0RDs7QTBCakRsRTtFQUNFO0kxQkNFLGlDQ08rRTtJRFAvRSw2QjZCQTZCO0VISS9CO0kxQjBCRSxxQmhCU2M7SWdCT1o7SUFDQSxxQkFBNEQ7SUFBNUQsaURBQTREO0lBakI5RCx5QmhCU2M7SWdCT1o7SUFDQSx5QkFBNEQ7SUFBNUQscURBQTREOztBMEJyQ2xFO0VBQ0U7STFCbUJFLHFCaEJTYztJZ0JPWjtJQUNBLHFCQUE0RDtJQUE1RCxpREFBNEQ7SUFqQjlELHlCaEJTYztJZ0JPWjtJQUNBLHlCQUE0RDtJQUE1RCxxREFBNEQ7RTBCOUJoRTtJMUJqQkUsaUNDTytFO0lEUC9FLDZCNkJBNkI7O0FIVWpDO0VBQ0U7STFCbUJFLHFCaEJTYztJZ0JPWjtJQUNBLHFCQUE0RDtJQUE1RCxpREFBNEQ7SUFqQjlELHlCaEJTYztJZ0JPWjtJQUNBLHlCQUE0RDtJQUE1RCxxREFBNEQ7RTBCOUJoRTtJMUJqQkUsaUNDTytFO0lEUC9FLDZCNkJBNkI7O0FBeUI1QjtFQUdHLHlEQUFnQjtVQUFoQixpREFBZ0I7O0FBSW5CO0VBR0csMERBQWdCO1VBQWhCLGtEQUFnQjs7QUFnS3hCO0U3Qm5NSSxpQ0NPK0U7O0E0QnlNbkY7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UTZFWjtFQzJNRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7RUFDVCxVQUFVO0VBQ1YsVUFBVTtFQUNWLGVBQWU7RURuTmpCO0lDaUJFLGVBQWU7SUFDZixvQkFBb0I7O0FEVnRCO0VDNk5FLHdITHpUMEU7RUt5VDFFLGdITHpUMEU7RUt5VDFFLHdHTHpUMEU7RUt5VDFFLGdLTHpUMEU7RUs0VDFFLFVBQVU7O0FEaE9aO0VDMlFFLDJDQUFtQztVQUFuQyxtQ0FBbUM7O0FEalFyQztFQzBORSxnQ0FBd0I7VUFBeEIsd0JBQXdCO0VBQ3hCLDBITDlUb0U7RUs4VHBFLGtITDlUb0U7RUs4VHBFLDBHTDlUb0U7RUs4VHBFLG1LTDlUb0U7RUtpVXBFLFVBQVU7O0FEOU5aO0VDcVFFLHlDQUFpQztVQUFqQyxpQ0FBaUM7RUFDakMsVUFBVTs7QXRCdlNWO0VQekRJLHlCaEIxQmM7O0F1QjJGbEI7RUFDRSxhYXhFUTs7QWJ3RlY7RUFHRSxpQ0FBeUI7VUFBekIseUJBQXlCO0VBQ3pCLGFhM0ZROztBYm9HUjtFQUNFLHdDQUF3RDtFQUF4RCxnQ0FBd0Q7O0FBRzFEO0VBQ0UsaUNhaEg0QjtVYmdINUIseUJhaEg0QjtFYmlINUIsYWF6R007O0FiNkdWO0VBQ0UsNkJBQXdCOztBdUJ4STVCO0U5QjhCTSx5QmhCMUJjOztBOENKcEI7RTlCOEJNLHFCaEIwQmM7RWdCMUJkLHlCaEI2RFM7O0E4QzNGZjs7O0U5QjhCTSxxQmhCMUJjO0VnQjBCZCx5QmhCMUJjOztBMEN3QmxCO0VBQ0U7STFCQ0UscUJoQjBCYztJZ0IxQmQseUJoQjZEUztFMEN6RFg7STFCSkUscUJoQjFCYztJZ0IwQmQseUJoQjFCYzs7QTBDd0JsQjtFQUNFO0kxQkNFLHFCaEIwQmM7SWdCMUJkLHlCaEI2RFM7RTBDekRYO0kxQkpFLHFCaEIxQmM7SWdCMEJkLHlCaEIxQmM7O0EwQ29DbEI7RUFDRTs7STFCWEUscUJoQjFCYztJZ0IwQmQseUJoQjFCYztFMEMyQ2hCO0kxQmpCRSxxQmhCMEJjO0lnQjFCZCx5QmhCNkRTOztBMENuRGI7RUFDRTs7STFCWEUscUJoQjFCYztJZ0IwQmQseUJoQjFCYztFMEMyQ2hCO0kxQmpCRSxxQmhCMEJjO0lnQjFCZCx5QmhCNkRTOztBOEMzRmY7RUQwRFUseURBQWdCO1VBQWhCLGlEQUFnQjs7QUMxRDFCO0VEaUVVLDBEQUFnQjtVQUFoQixrREFBZ0I7O0F0QjhCeEI7RUFDRSxhd0IzQ3NDOztBeEIyRHhDO0VBR0UsaUNBQXlCO1VBQXpCLHlCQUF5QjtFQUN6Qixhd0I5RHNDOztBeEJpQ3hDO0V1QjdFTSx5QjlDTlk7O0E4Q1NmO0VBR08seUI5Q3NDUTs7QThDbENmO0VBRU8sVUFBVTtFQUNWLGM5Q29CUTs7QThDZnBCO0VBRVEsVUFBVTtFQUNWLGM5Q1lZO0U4Q1haLGtCQUFpRTs7QTdDaEN6RTtBK0NBQTtFQUNJLG9EQUFtRDtFQUR2RDs7O0l4Q0tJLGdCREFZO0lDMkRaLG1ERGhFNEQ7SUNpRTVELHNCQUFzQjtJQWlCdEIsZUNuRXVDO0lEb0V2QyxtQkFBZ0I7SUE2SGhCLGNSeEpnQjs7QWdEeERQO0VBV1Qsb0RBQW1EO0VBSHZEOztJeENISSxnQkRBWTtJQzJEWixtRERoRTREO0lDaUU1RCxzQkFBc0I7SUFpQnRCLGVDbkV1QztJRG9FdkMsbUJBQWdCO0lBNkhoQixjUjFKZ0I7O0FpRHREcEI7Ozs7OztFbkRtMkVFO0FtRDUxRUY7RUNQSSxjbER3RGdCO0VrRHZEaEIsbUQzQ0Q0RDtFMkNFNUQsZXpDYXVDO0V5Q1p2QyxvQkhvQitCO0VHbkIvQixTQUFTO0VBQ1QsY3ZDRDRCO0VzQ0s1QixnQkFBZ0I7O0FFYnBCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q3JENDRFQztBcUQvMkVEO0FBQ0E7RUFDSSxvQkFBb0I7RUFDcEIseUNBQXlDO0VBQUU7RUFDM0Msd0NBQXdDO0VBQ3hDLGdDQUFnQztFQUFFO0VBQ2xDLHNCQUFzQjtFQUN0QiwyQkFBMkI7RUFDM0IscUJBQXFCO0VBQ3JCLDZCQUE2QjtFQUM3QixxQkFBcUI7RUFDckIsOEJBQThCO0VBQUUs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Q08rRTtFeUNQckY7STFDQU0sMEJDTytFO0V5Q1ByRjtJMUNBTSxjaEJ2QmM7RTBEdUJwQjtJMUNBTSw0QmhCdkJjO0UwRHVCcEI7SUV3Qkksa0JGZndDO0U1RHEwRjFDO0k0RHB6RkUscUJBQXFCO0lBQ3JCLHNCQUFzQjtJQUN0Qix3QkFBd0I7SUFDeEIsd0JBQXdCO0VBN0I1QjtJdkNJSSxtRFpsQzREO0lZa0M1RCxrQ0NWZ0M7SURVaEMsbUNDVGlDO0lEU2pDLG1CQytEb0I7SUQvRHBCLHFCQ2dFdUI7SURoRXZCLGdCQ0ZTO0lERVQseUJFb0N5QztJRnBDekMsd0JDbUUwQjtJRG5FMUIsdUJDb0V5QjtJc0NwQ3pCLDRCQUF5RDtJQUV6RCxlQUErQztJQUMvQyxjQUEwQztFQXZDOUM7SUE0Q0ksZUFBZTtFQTVDbkI7SUFpREksZ0JBQWdCO0VBakRwQjtJdkNJSSxtRFpsQzREO0lZa0M1RCxrQ0NWZ0M7SURVaEMsbUNDVGlDO0lEU2pDLG1CQytFb0I7SUQvRXBCLG9CQ2dGc0I7SURoRnRCLGdCQ0hVO0lER1YseUJFb0N5QztJRnBDekMsd0JDbUYwQjtJRG5GMUIsdUJDb0Z5QjtJRHhFM0IsY0FBYztJQUNkLGFBQWE7SUFDYixtQkFBbUI7SXVDdUNqQixTQUFTO0lBQ1QsZUNoRDZCO0l4Q1UvQjtNQWtCQSxxQkFBcUI7TUFDckIsUUFBUTtNQUNSLFl1Q2UyQztNdkNkM0MsV0FBVztNQWxCVCxpQkFBaUI7RXVDdkJyQjtJQStESSxtQkFBbUI7RUEvRHZCOztJQXNFSSxvQkFBb0I7O0FBSXhCO0VBQ0UsNEVsQnRGdUU7RWtCc0Z2RSxvRWxCdEZ1RTtFa0JzRnZFLDREbEJ0RnVFO0VrQnNGdkUsc0hsQnRGdUU7O0FrQnlGekU7RUFDRSxvQ0FBNEI7VUFBNUIsNEJBQTRCO0U1RHF6RjVCO0k0RGx6RkUsbUNBQTJCO1lBQTNCLDJCQUEyQjs7QUFJL0I7RUFDRSxnQ0FBd0I7VUFBeEIsd0JBQXdCO0VBQ3hCLGtDQzNFZ0M7VUQyRWhDLDBCQzNFZ0M7RTdENjNGaEM7STREOXlGRSxnQ0FBd0I7WUFBeEIsd0JB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dUJDN0RNLElGd0NEO0lBSE87O01DbUJkLHdCQUFxQztNQUNyQyx3QkFBc0c7TUFBdEcsNkRBQXNHO01BRTdFO1FEdEJYOztVQ3VCWixXQUFXO1VBQ1gsdUJDN0RNO1VENkROLHVCQzdETSxJRndDRDtJQUhPOztNQ21CZCx3QkFBcUM7TUFDckMsd0JBQXNHO01BQXRHLDZEQUFzRztNQUU3RTtRRHRCWDs7VUN1QlosV0FBVztVQUNYLHVCQzdETTtVRDZETix1QkM3RE0sSUZ3Q0Q7SUFITzs7TUNtQmQsd0JBQXFDO01BQ3JDLHdCQUFzRztNQUF0Ryw2REFBc0c7TUFFN0U7UUR0Qlg7O1VDdUJaLFdBQVc7VUFDWCx1QkM3RE07VUQ2RE4sdUJDN0RNLElGd0NEOztBQVFMO0VDc0VGLGdCRHZFYztVQ3VFZCxRRHZFYzs7QUFDWjtFQ3NFRixnQkR2RWM7VUN1RWQsUUR2RWM7O0FBQ1o7RUNzRUYsZ0JEdkVjO1VDdUVkLFFEdkVjOztBQUNaO0VDc0VGLGdCRHZFYztVQ3VFZCxRRHZFYzs7QUFDWjtFQ3NFRixnQkR2RWM7VUN1RWQsUUR2RWM7O0FBQ1o7RUNzRUYsZ0JEdkVjO1VDdUVkLFFEdkVjOztBQUNaO0VDc0VGLGdCRHZFYztVQ3VFZCxRRHZFYzs7QUFDWjtFQ3NFRixnQkR2RWM7VUN1RWQsUUR2RWM7O0FBQ1o7RUNzRUYsZ0JEdkVjO1VDdUVkLFFEdkVjOztBQUNaO0VDc0VGLGlCRHZFYztVQ3VFZCxTRHZFYzs7QUFDWjtFQ3NFRixpQkR2RWM7VUN1RWQsU0R2RWM7O0FBQ1o7RUNzRUYsaUJEdkVjO1VDdUVkLFNEdkVjOztBQU9kO0VDcUVFLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFFRztJRHZFM0I7TUN3RUkseUJBQWlCO2tCQUFqQix5QkFBaUI7Y0FBakIsaUJBQWlCLElEdEVwQjs7QUFFRDtFQ3lFRSwwQkFBa0I7Y0FBbEIsMEJBQWtCO1VBQWxCLGtCQUFrQjs7QURyRXBCO0VDeUVFLDRCQUFvQjtVQUFwQixvQkFBb0I7RUFFSztJRDNFM0I7TUM0RUksdUJBQWU7a0JBQWYsdUJBQWU7Y0FBZixlQUFlLElEMUVsQjs7QUM1QkM7RUQrQko7SUN5RkUsYUFBeUY7SUFDekYsOENBS0c7SUFMSCx5S0FLRyxJRHJGSjs7QUM5Q0c7RURvQ0o7SUN5RkUsWUFBeUY7SUFDekYsNENBS0c7SUFMSCxvS0FLRyxJRHJGSjs7QUNuREc7RUR5Q0o7SUN5RkUsWUFBeUY7SUFDekYsNENBS0c7SUFMSCxpS0FLRyxJRHJGSjs7QUFFRDtFQUNFLGtCQUFrQjtFQUNsQixjQUFjOztBQUdoQjtFQUNFLGVBQWU7RUFDZixpQkFBaUI7O0F4RS9HbkI7QTJFQUE7Ozs7Ozs7QzlFczZIQztBNEV6MkhHO0VFcERKO0lGdUZFLHNCQUFzQjtJQUN0QixjQUFjO0lBQ2QsYXpFaEZlO0l5RWlGZixhQUFvRjtJQUFwRixvREFBb0YsSUV6RHJGOztBRmNHO0VFL0NKO0lGdUZFLHNCQUFzQjtJQUN0QixjQUFjO0lBQ2QsYXpFL0VjO0l5RWdGZCxhQUFvRjtJQUFwRixtREFBb0YsSUV6RHJGOztBRlNHO0VFMUNKO0lGdUZFLHNCQUFzQjtJQUN0QixjQUFjO0lBQ2QsYXpFOUVhO0l5RStFYixhQUFvRjtJQUFwRixrREFBb0YsSUV6RHJGOztBQWpDRDtFQVNRLGlCM0ViVTs7QTJFSWxCO0VBYVEsZ0IzRWxCUTs7QTJFS2hCO0VBaUJRLGdCM0V2QlM7O0EyRU1qQjtFQXFCUSxnQjNFNUJROztBMkVPaEI7RUF5QlEsa0JBQWtCO0VBQ2xCLGNBQWM7O0FBMUJ0QjtFQThCUSxpQkFBaUI7RUFDakIsZUFBZTs7QUFLbkI7RUM3Q0ksd0JBQXdCO0VBRUM7SUQyQzdCO01DMUNRLDRCQUFtQjtVQUFuQixtQkFBbUIsSUQ0QzFCOztBQUVEO0VDekNJLDZCQUFvQjtNQUFwQixvQkFBb0I7O0FENkN4QjtFQ3pDSSxzQkFBc0I7RUFFRztJRHVDN0I7TUN0Q1EsMEJBQWlCO1VBQWpCLGlCQUFpQixJRHdDeEI7O0FFckRMO0FBRUE7RUFDSSxrQkFBa0I7RUFEdEI7SUFJUSxZQUFZO0lBQ1osVUFBVTtJQUNWLGtCQUFrQjtJQUNsQixXckVJbUM7SXFFWDNDO01BVVksMEMxRVJrRDtJMEVGOUQ7TUFjWSwwQzFFWmtEO0kwRUY5RDtNQXVCWTtNQUlBLHVCQUFzQjtNQTNCbEM7UUFvQmdCLDZCQUE2QjtNQXBCN0M7UUF5QmdCLGE5RXlCSTtFNEJ2RGhCO0lBQ0ksMkJBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQixxQkFBYTtJQUFiLGFBQWE7SUFDYiwrQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLFdBQVc7SUFDWCxZQUFZO0VBS2hCO0lBQ0kscUJBQWE7SUFBYixhQUFhO0lBQ2IsZUFBZTtJQUNmLGNBQWM7SUFDZCxnQkFBaUI7SUFBakIsaUJBQWlCO0lBRWpCO0lBTUEsdUJBQXNCO0lBTHRCO01BQ0ksa0JBQWtCO01BQ2xCLFlBQVk7TUFDWixlQUFlO0VBVnZCO0lrRDZCSSxtQkFBbUI7SUFDbkIsWXJFeEJtQztJcUV5Qm5DLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsV3JFMUJtQztJcUU0Qm5DO0lBTUEsdUJBQXNCO0lsRGpDdEI7TWtENkJJLGE5RXRDUTtNOEV1Q1IsZUFBZTtNQUNmLFduRXpDb0I7O0FtRStDaEM7RUFJZ0IsMkM5RWtDRDs7QThFdENmO0VBUWdCLDJDOUU4QkQ7O0E4RXRDZjtFQWlCZ0I7RUFJQSx1QkFBc0I7RUFyQnRDOztJQWNvQiw2QkFBNkI7RUFkakQ7SUFtQm9CLGE5RWxCQTs7QThFRHBCO0VBMEJZO0VBSUEsdUJBQXNCO0VBOUJsQztJQTRCZ0IsYTlFVUQ7O0ErRXpFZjtFQUNFO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLHlFQUFnRTtZQUFoRSxpRUFBZ0U7SUFDaEUsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLGdGQUF1RTtZQUF2RSx3RUFBdUU7SUFDdkUsd0NBQWdDO1lBQWhDLGdDQUFnQztFQUdsQztJQUNFLHlDQUFrQztZQUFsQyxpQ0FBa0M7O0FBaEJ0QztFQUNFO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLHlFQUFnRTtZQUFoRSxpRUFBZ0U7SUFDaEUsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLGdGQUF1RTtZQUF2RSx3RUFBdUU7SUFDdkUsd0NBQWdDO1lBQWhDLGdDQUFnQztFQUdsQztJQUNFLHlDQUFrQztZQUFsQyxpQ0FBa0M7O0FBSXRDO0VBQ0U7SUFDRSwrQkFBc0I7WUFBdEIsdUJBQXNCO0VBR3hCO0lBQ0UsNkVBQW9FO1lBQXBFLHFFQUFvRTtJQUNwRSwrQkFBc0I7WUFBdEIsdUJBQXNCO0VBR3hCO0lBQ0UsbUVBQXdEO1lBQXhELDJEQUF3RDtJQUN4RCxrQ0FBMEI7WUFBMUIsMEJBQTBCO0VBRzVCO0lBQ0UsK0JBQXNCO1lBQXRCLHVCQUFzQjs7QUFoQjFCO0VBQ0U7SUFDRSwrQkFBc0I7WUFBdEIsdUJBQXNCO0VBR3hCO0lBQ0UsNkVBQW9FO1lBQXBFLHFFQUFvRTtJQUNwRSwrQkFBc0I7WUFBdEIsdUJBQXNCO0VBR3hCO0lBQ0UsbUVBQXdEO1lBQXhELDJEQUF3RDtJQUN4RCxrQ0FBMEI7WUFBMUIsMEJBQTBCO0VBRzVCO0lBQ0UsK0JBQXNCO1lBQXRCLHVCQUFzQjs7QUFJMUI7RUFDRTtJQUNFLDBFQUFpRTtZQUFqRSxrRUFBaUU7SUFDakUsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLCtFQUFxRTtZQUFyRSx1RUFBcUU7SUFDckUsd0NBQWlDO1lBQWpDLGdDQUFpQztFQUduQztJQUNFLDJFQUFpRTtZQUFqRSxtRUFBaUU7SUFDakUsd0NBQWlDO1lBQWpDLGdDQUFpQztFQUduQztJQUNFLHlDQUFrQztZQUFsQyxpQ0FBa0M7O0FBakJ0QztFQUNFO0lBQ0UsMEVBQWlFO1lBQWpFLGtFQUFpRTtJQUNqRSxnQ0FBd0I7WUFBeEIsd0JBQXdCO0VBRzFCO0lBQ0UsK0VBQXFFO1lBQXJFLHVFQUFxRTtJQUNyRSx3Q0FBaUM7WUFBakMsZ0NBQWlDO0VBR25DO0lBQ0UsMkVBQWlFO1lBQWpFLG1FQUFpRTtJQUNqRSx3Q0FBaUM7WUFBakMsZ0NBQWlDO0VBR25DO0lBQ0UseUNBQWtDO1lBQWxDLGlDQUFrQzs7QUFJdEM7RUFDRTtJQUNFLG1GQUEwRTtZQUExRSwyRUFBMEU7SUFDMUUsK0JBQXNCO1lBQXRCLHVCQUFzQjtFQUd4QjtJQUNFLG1GQUE0RTtZQUE1RSwyRUFBNEU7SUFDNUUsaUNBQTBCO1lBQTFCLHlCQUEwQjtFQUc1QjtJQUNFLG9GQUE0RTtZQUE1RSw0RUFBNEU7SUFDNUUsa0NBQXlCO1lBQXpCLDBCQUF5QjtFQUczQjtJQUNFLCtCQUFzQjtZQUF0Qix1QkFBc0I7O0FBakIxQjtFQUNFO0lBQ0UsbUZBQTBFO1lBQTFFLDJFQUEwRTtJQUMxRSwrQkFBc0I7WUFBdEIsdUJBQXNCO0VBR3hCO0lBQ0UsbUZBQTRFO1lBQTVFLDJFQUE0RTtJQUM1RSxpQ0FBMEI7WUFBMUIseUJBQTBCO0VBRzVCO0lBQ0Usb0ZBQTRFO1lBQTVFLDRFQUE0RTtJQUM1RSxrQ0FBeUI7WUFBekIsMEJBQXlCO0VBRzNCO0lBQ0UsK0JBQXNCO1lBQXRCLHVCQUFzQjs7QUFJMUI7RUFDRTtJQUNFLG9DQUE0QjtZQUE1Qiw0QkFBNEI7O0FBRmhDO0VBQ0U7SUFDRSxvQ0FBNEI7WUFBNUIsNEJBQTRCOztBQUloQztFQUNFO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLHlFQUFnRTtZQUFoRSxpRUFBZ0U7SUFDaEUsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLGdGQUF1RTtZQUF2RSx3RUFBdUU7SUFDdkUseUNBQWlDO1lBQWpDLGlDQUFpQztFQUduQztJQUNFLDBDQUFtQztZQUFuQyxrQ0FBbUM7O0FBaEJ2QztFQUNFO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLHlFQUFnRTtZQUFoRSxpRUFBZ0U7SUFDaEUsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLGdGQUF1RTtZQUF2RSx3RUFBdUU7SUFDdkUseUNBQWlDO1lBQWpDLGlDQUFpQztFQUduQztJQUNFLDBDQUFtQztZQUFuQyxrQ0FBbUM7O0FBSXZDO0VBQ0U7SUFDRSwwRUFBaUU7WUFBakUsa0VBQWlFO0lBQ2pFLGdDQUF3QjtZQUF4Qix3QkFBd0I7RUFHMUI7SUFDRSwrRUFBcUU7WUFBckUsdUVBQXFFO0lBQ3JFLHlDQUFrQztZQUFsQyxpQ0FBa0M7RUFHcEM7SUFDRSwyRUFBaUU7WUFBakUsbUVBQWlFO0lBQ2pFLHlDQUFrQztZQUFsQyxpQ0FBa0M7RUFHcEM7SUFDRSwwQ0FBbUM7WUFBbkMsa0NBQW1DOztBQWpCdkM7RUFDRTtJQUNFLDBFQUFpRTtZQUFqRSxrRUFBaUU7SUFDakUsZ0NBQXdCO1lBQXhCLHdCQUF3QjtFQUcxQjtJQUNFLCtFQUFxRTtZQUFyRSx1RUFBcUU7SUFDckUseUNBQWtDO1lBQWxDLGlDQUFrQztFQUdwQztJQUNFLDJFQUFpRTtZQUFqRSxtRUFBaUU7SUFDakUseUNBQWtDO1lBQWxDLGlDQUFrQztFQUdwQztJQUNFLDBDQUFtQztZQUFuQyxrQ0FBbUM7O0FBSXZDO0VBQ0U7SUFDRSxtQ0FBMkI7WUFBM0IsMkJBQTJCOztBQUYvQjtFQUNFO0lBQ0UsbUNBQTJCO1lBQTNCLDJCQUEyQjs7QUNoSS9CO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsZ0NBQXdCO1VBQXhCLHdCQUF3QjtFQUN4QixrRXhDTG9FO0V3Q0twRSwwRHhDTG9FO0V3Q01wRSxnQkFBZ0I7RUFFaEI7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWix1QkFBZTtZQUFmLGVBQWU7SUFDZixrQ0FBMEI7WUFBMUIsMEJBQTBCO0lBQzFCLDRFeENka0U7SXdDY2xFLG9FeENka0U7SXdDY2xFLDREeENka0U7SXdDY2xFLHNIeENka0U7RXdDaUJwRTtJQUNFLHFCQUFxQjtJQUNyQixrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWix1QkFBZTtZQUFmLGVBQWU7RUFHakI7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixrREFBMEM7WUFBMUMsMENBQTBDO0lBQzFDLDJCQUEyQjtJQUMzQix5QkFBeUI7RUFHM0I7SUFDRSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixrQ0FBMEI7WUFBMUIsMEJBQTBCO0lBQzFCLDRFeEN2Q2tFO0l3Q3VDbEUsb0V4Q3ZDa0U7SXdDdUNsRSw0RHhDdkNrRTtJd0N1Q2xFLHNIeEN2Q2tFO0V3QzBDcEU7SUFDRSw0QkFBb0I7WUFBcEIsb0JBQW9CO0VBR3RCO0lBQ0Usa0JBQWtCO0VBR25CO0lBRUcsd0JBQWdCO0lBQWhCLGdCQUFnQjtFQUZuQjtJQU1HLGtCQUFrQjtJQUNsQixxRUFBNkQ7WUFBN0QsNkRBQTZEO0lBUGhFO01BVUssaUVBQXlEO2NBQXpELHlEQUF5RDtFQVY5RDtJQWVHLGlCQUFpQjtJQUNqQix1RUFBK0Q7WUFBL0QsK0RBQStEO0lBQy9ELG1CQUFtQjtJQWpCdEI7TUFvQkssbUVBQTJEO2NBQTNELDJEQUEyRDtFQUtoRTs7SUFHRyxRQUFRO0lBQ1Isc0NBQThCO1lBQTlCLDhCQUE4QjtFQUpqQztJQVFHLCtEQUF1RDtZQUF2RCx1REFBdUQ7RUFSMUQ7SUFZRyxpRUFBeUQ7WUFBekQseURBQXlEO0VBWjVEO0lBZ0JHLDBEQUFrRDtZQUFsRCxrREFBa0Q7RUFJdEQ7SUFDRSxVQUFVOztBQS9FWjtFaEVzQkkseUJoQnJEYztFZ0JxRVo7RUFDQSx5QkFBNEQ7RUFBNUQsbURBQTREOztBZ0UvQmxFO0VDYkUscVVBQW1WOztBRHNCclY7RUNsQkUseUJDckIrQzs7QUY4R25EO0VBRUksbUJBQW1CO0VBQ25CLFVBQVU7O0FBSGQ7RUFPSSxrQkFBa0I7RUFDbEIsVUFBVTs7QUFqSGQ7RUdyQkk7RUFRQSxnREFBK0M7RUg4QmpEO0lHcENNLG9DQUFtRDtFSHFEekQ7SUdqRE0sb0NBQW1EOztBQUszRDtFQUNJLFdBQVc7O0FwRlBmOztFQUVJLHlCQ29GVztFRG5GWCx5QkFBcUQ7RUFBckQsc0RBQXFEOztBQUd6RDtBQUNBO0VBQ0kseUJDTmdCOztBRFdwQjtFQUNJLDJDQUFtQztFQUNuQywrQ0FBdUM7RUFDdkMsMkNBQW1DO0VBQ25DLHFDQUE2QjtFQUM3QiwwQ0FBa0M7RUFDbEMsd0NBQWdDO0VBQ2hDLGdEQUF3QztFQUN4QywrQ0FBdUM7RUFDdkMsa0RBQTBDO0VBQzFDLGtEQUEwQztFQUMxQyx1Q0FBK0I7RUFDL0Isb0NBQTRCO0VBQzVCLHNDQUE4QjtFQUM5QixvREFBK0I7RUFDL0IsdURBQThCO0VBQzlCLCtDQUF1QztFQUN2Qyw0Q0FBc0M7RUFDdEMsK0JBQXVCO0VBQ3ZCLGtDQUEwQjs7QXFGVjlCO0VqRU9JLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsZUN1RGlCO0VEdkRqQixvQkN3RHNCO0VEeER0QixnQkNIVTtFREdWLHlCRW9DeUM7RUZwQ3pDLHdCQzJEMEI7RUQzRDFCLHVCQzREeUI7RUpsQ3ZCLDBCQ2ZpQjtFRCtCZjtFQUNBLDBCQUE0RDtFQUE1RCx1RUFBNEQ7RW9FOUNsRSxTQUFTO0VBQ1QsY0FBYztFQUtkO0VBQ0EsbUJoRW9FdUI7RWdFbkV2QixxQkFBcUI7O0F4QlZyQjtFNUMrQkksMEJDZG1CO0VEOEJqQjtFQUNBLDBCQUE0RDtFQUE1RCx5RUFBNEQ7O0E0QzFDbEU7RTVDTEksNkJvRWNpRDs7QXhCVHJEO0U1Q3lCSSwwQkNYYztFRDJCWjtFQUNBLDBCQUE0RDtFQUE1RCxvRUFBNEQ7O0E0QzlCbEU7RTVDYUksMEJDYmM7RUQ2Qlo7RUFDQSwwQkFBNEQ7RUFBNUQsb0VBQTREOztBb0U1QnBFO0VBQ0UsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixrQkFBa0I7O0FBT3BCO0VBQ0UscUJBQWE7RUFBYixhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLDJCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsbUNBQTJCO1VBQTNCLDJCQUEyQjtFQUMzQixZQUFZO0VBQ1osZUMvQzBCO0VEZ0QxQixnQkFBZ0I7RUFQbEI7SUFVSSxhQUFhOztBQU1qQjs7RXBFZk0sY2hCckRjO0VnQnFFWjtFQUNBLGNBQTREO0VBQTVELHdDQUE0RDtFb0VGcEU7O0lwRWZNLGNoQnJEYztJZ0JxRVo7SUFDQSxjQUE0RDtJQUE1RCx3Q0FBNEQ7O0FvRUlwRTtFcEVyQk0sMEJDWmtCO0VENEJoQjtFQUNBLDBCQUE0RDtFQUE1RCx3RUFBNEQ7O0E0QzFDbEU7RXZCMk5BO0VBQ0EsY0FqSGdCO0VBbUhoQjtFQUNBLGtCdUJsTG1EO0VBSW5ELFd3QkVvQztFeEJEcEMsWXdCQ29DO0VBRXBDLDRCQUFvQjtFQUFwQixvQkFBb0I7RUFDcEIsc0JBQWM7VUFBZCxjQUFjO0VBQ2QsMkJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQiwrQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFL0N6QmQ7O0lBa01GO0lBQ0EsaUJ1QnRMaUQ7SXZCd0xqRDtJQUNBLGVBM0hjOztBdUIvRmhCO0V2QitNQTtFQUNBLGlCK0MvSmdEO0UvQ2lLaEQ7RUFDQSxlK0NsS21EO0UvQzdCL0M7O0lBa01GO0lBQ0EsYytDdEtpRDtJL0N3S2pEO0lBQ0Esa0IrQ3pLOEM7O0FBR2xEO0VqRTNERSx1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGdCQUFnQjs7QWlFaUVsQjtFakVuRUUsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFJaEIsY0FBYztFQUNkLGFBQWE7RUFDYixtQkFBbUI7RUFVbkIsb0JBQTZCO0VpRXNEN0IsY0FBYztFakU5RGQ7SUFrQkEscUJBQXFCO0lBQ3JCLFFBQVE7SUFDUixZaUVpQ2dEO0lqRWhDaEQsV0FBVztJQWxCVCxpQkFBaUI7RUFPbkI7SUFRQSxxQkFBcUI7SUFDckIsUUFBUTtJQUNSLFlpRWtDa0Q7SWpFakNsRCxXQUFXO0lBUlQscUJBQThCO0VpRW9EaEM7SWpFckVBLGNBQWM7SUFDZCxhQUFhO0lBQ2IsbUJBQW1CO0lBVW5CLG9CQUE2QjtJQVI3QjtNQWtCQSxxQkFBcUI7TUFDckIsUUFBUTtNQUNSLFlpRW1Dc0Q7TWpFbEN0RCxXQUFXO01BbEJULGlCQUFpQjtJQU9uQjtNQVFBLHFCQUFxQjtNQUNyQixRQUFRO01BQ1IsWWlFa0NrRDtNakVqQ2xELFdBQVc7TUFSVCxxQkFBOEI7O0F5Q2xDaEM7RXpDS0UsbURabEM0RDtFWWtDNUQsa0NDVmdDO0VEVWhDLG1DQ1RpQztFRFNqQyxtQkMrRW9CO0VEL0VwQixvQkNnRnNCO0VEaEZ0QixnQkNIVTtFREdWLHlCRW9DeUM7RUZwQ3pDLHdCQ21GMEI7RURuRjFCLHVCQ29GeUI7RUQ5RTNCLHVCQUF1QjtFQUN2QixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBSWhCLGNBQWM7RUFDZCxhQUFhO0VBQ2IsbUJBQW1CO0VpRStFbkIsY0FBYztFakU3RWQ7SUFrQkEscUJBQXFCO0lBQ3JCLFFBQVE7SUFDUixZaUVrQ2tEO0lqRWpDbEQsV0FBVztJQWxCVCxpQkFBaUI7RWlFNkVuQjtJakVwRkEsY0FBYztJQUNkLGFBQWE7SUFDYixtQkFBbUI7SWlFcUZqQixrQkFBa0I7SWpFbkZwQjtNQWtCQSxxQkFBcUI7TUFDckIsUUFBUTtNQUNSLFlpRWtDa0Q7TWpFakNsRCxXQUFXO01BbEJULGlCQUFpQjs7QWlFc0ZyQjtFQUNFLFlBQVk7O0FBR2Q7RS9DK0dFO0VBQ0EsY0FqSGdCO0VBbUhoQjtFQUNBLGtCdUJsTG1EO0VBSW5ELFd3QjREb0M7RXhCM0RwQyxZd0IyRG9DO0UvQzdFaEM7O0lBa01GO0lBQ0EsaUJ1QnRMaUQ7SXZCd0xqRDtJQUNBLGVBM0hjOztBK0NLbEI7RUFDRSxZQUFZOztBQUdkO0UvQ3VHRTtFQUNBLGNBakhnQjtFQW1IaEI7RUFDQSxrQnVCbExtRDtFQUluRCxXd0JvRW9DO0V4Qm5FcEMsWXdCbUVvQztFQUVwQyxrQkFBa0I7RS9DdkZkOztJQWtNRjtJQUNBLGlCdUJ0TGlEO0l2QndMakQ7SUFDQSxlQTNIYzs7QStDZWxCO0VBQ0UsOEJBQXNCO1VBQXRCLHNCQUFzQjs7QUFHeEI7RUFDRSxZQUFZOztBQUdkO0VBQ0UsWUFBWTs7QUFHZDtFQUNFLFlBQVk7O0FBR2Q7RS9DaUZFO0VBQ0EsY0FqSGdCO0VBbUhoQjtFQUNBLGtCdUJsTG1EO0VBSW5ELFd3QjBGb0M7RXhCekZwQyxZd0J5Rm9DO0UvQzNHaEM7O0lBa01GO0lBQ0EsaUJ1QnRMaUQ7SXZCd0xqRDtJQUNBLGVBM0hjOztBK0NxQ2xCO0U3RDNKRSx1QkFBcUI7RUFDckIsb0JBQWtCO0VBQ2xCLG1CQUFpQjtFQUNqQix3QkFBc0I7RUFDdEIsZ0NBQThCO0VBQzlCLGtDQUFnQztFQUVoQyw2Q0FBNkM7RUFDN0MsK0JBQStCO0VBRS9CO0lBRUUsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1Ysb0JBQW9CO0lBQ3BCLFdBQVc7RUFHYjtJQUNFLHVDQUFvRDtJQUFwRCwrQkFBb0Q7SUFDcEQsVUFBVTtFQUtaO0lBQ0UsMkJBQStDO1lBQS9DLG1CQUErQztJQUEvQyx1REFBK0M7WUFBL0MsK0NBQStDO0VBR2pEO0lBQ0UsTUFBTTtJQUVOO0lBQ0EsT0FBTztJQUNQLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsdUNBQStCO1lBQS9CLCtCQUErQjtFQUdqQztJQUNFLE1BQTZCO0lBQTdCLDZCQUE2QjtJQUU3QjtJQUNBLE9BQStCO0lBQS9CLCtCQUErQjtFQUdqQztJQUNFLGlHQUVnRTtZQUZoRSx5RkFFZ0U7RUFHbEU7SUFDRSxrREFBa0U7WUFBbEUsMENBQWtFO0lBRWxFLHdDQUFnRztZQUFoRyxnQ0FBZ0c7SUFBaEcsd0dBQWdHO1lBQWhHLGdHQUFnRztFQTdDbEc7SUFrSkUscUJBQTJCO0lBRTNCO0lBQ0Esc0JBQTRCO0lBQzVCLFdBQWtCO0lBQ2xCLFlBQW1CO0VBbklyQjtJQXVJRSxXQUF5QztJQUF6QyxzQ0FBeUM7SUFDekMsWUFBMEM7SUFBMUMsdUNBQTBDO0VBNUo1QztJUEpJLHVCT2dIeUI7RUEvQzdCO0lBQ0UsYWF4RVE7RWJ3RlY7SUFHRSxpQ0FBeUI7WUFBekIseUJBQXlCO0lBQ3pCLGFhM0ZRO0Vib0dSO0lBQ0Usd0NBQXdEO0lBQXhELGdDQUF3RDtFQUcxRDtJQUNFLGlDYWhINEI7WWJnSDVCLHlCYWhINEI7SWJpSDVCLGFhekdNO0ViNkdWO0lBQ0UsNkJBQXdCO0VBa0J4QjtJQUNFLGFhL0hVO0ViMkRkO0lQM0JJLHlCaEJyRGM7SWdCMER3QjtNT3NCMUM7UVBuQlk7UUFDQSx5QkFBNEQ7UUFBNUQsbURBQTRELElBQzdEO0VPeUJYO0lBQ0UsYWF4RVE7RWJ3RlY7SUFHRSxpQ0FBeUI7WUFBekIseUJBQXlCO0lBQ3pCLGFhM0ZRO0Vib0dSO0lBQ0Usd0NBQXdEO0lBQXhELGdDQUF3RDtFQUcxRDtJQUNFLGlDYWhINEI7WWJnSDVCLHlCYWhINEI7SWJpSDVCLGFhekdNO0ViNkdWO0lBQ0UsNkJBQXdCO0VBaUN4QjtJQUNFLGFhL0lTO0ViNERiO0lQM0JJLHlCaEJyRGM7SWdCMER3QjtNT3NCMUM7UVBuQlk7UUFDQSx5QkFBNEQ7UUFBNUQsbURBQTRELElBQzdEO0VPeUJYO0lBQ0UsYWF4RVE7RWJ3RlY7SUFHRSxpQ0FBeUI7WUFBekIseUJBQXlCO0lBQ3pCLFlhM0ZRO0Vib0dSO0lBQ0Usd0NBQXdEO0lBQXhELGdDQUF3RDtFQUcxRDtJQUNFLGlDYWhINEI7WWJnSDVCLHlCYWhINEI7SWJpSDVCLGFhekdNO0ViNkdWO0lBQ0UsNkJBQXdCOztBNkRzRDVCO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjs7QUFNdkI7RUFDRSxTQUFTO0VBQ1QsU0FBUztFQUNULFlBQVk7RUFDWix3QkFBd0I7RUFDeEIsMEJBQTBCOztBQUw1QjtFcEV4S00sd0NxRWRpRDs7QUR3TXZEO0VBRUUsY0N4TTBCOztBRDJNNUI7RS9DaUNFO0VBQ0EsaUJnRDVPeUI7RWhEOE96QjtFQUNBLGVBdkhlO0UrQ3FGZix3QkFBNEM7RS9DN0p4Qzs7SUFrTUY7SUFDQSxjQTNIYTtJQTZIYjtJQUNBLGtCZ0R0UHVCOztBRGdOM0I7RUFDRSwrQkFBd0U7O0FBTzFFO0VBR0ksVUFBVTs7QUFJZDtFakVoTkksbURabEM0RDtFWWtDNUQsa0NDVmdDO0VEVWhDLG1DQ1RpQztFRFNqQyxlQ3VEaUI7RUR2RGpCLG9CQ3dEc0I7RUR4RHRCLGdCQ0hVO0VER1YseUJFb0N5QztFRnBDekMsd0JDMkQwQjtFRDNEMUIsdUJDNER5QjtFZ0U0SjNCLG9CQ3hPMEI7O0FEZ081QjtFcEV0TE0sMEJDZmlCO0VEK0JmO0VBQ0EsMEJBQTREO0VBQTVELHVFQUE0RDs7QXNFM0VwRTtFQUVJLHNCQUFzQjtFQUN0QixpQjNFQTBCO0UyRUg5QjtJQU1RLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIscUJBQWE7SUFBYixhQUFhO0lBQ2IsWTNFRndCO0kyRUd4QixtQ0FBMkI7WUFBM0IsMkJBQTJCO0lBQzNCLG1CM0VQc0I7STJFSDlCO01BYVksY3RGNkVHO01zRjVFSCxpQkFBaUI7TUFDakIsaUIzRWJvQjtNMkVGaEM7UUFpQmdCLGN0RlpJO0lzRkxwQjtNQXNCWSxpQkFBaUI7TUFDakIsc0JBQWM7Y0FBZCxjQUFjO0lBdkIxQjs7TUE0QlksWUFBWTtFQTVCeEI7SUFrQ1EsZTNFL0JzQjtJMkVIOUI7TUFxQ1ksWUFBWTtNQUNaLGtCM0VwQ29CO0UyRUZoQztJQTRDWSxnQkFBZ0I7SUFDaEIsZTdFaEMrQjtJNkVpQy9CLFdBQVc7SUFDWCxzQkFBYztZQUFkLGNBQWM7SUFDZCxrQjNFN0NrQjtFMkVIOUI7SUF1RFksWUFBWTtJQXZEeEI7TUEwRGdCLFkzRXhEZ0I7RTJFRmhDO0lBOERZLHFCQUFhO0lBQWIsYUFBYTtJQUNiLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsOEJBQXNCO1lBQXRCLHNCQUFzQjtFQWhFbEM7SUFxRWdCLFkzRXBFa0I7RTJFRGxDO0lBNEVZLGU3RS9EK0I7STZFZ0UvQixpQkFBaUI7SUFDakIsZ0I3RWpFK0I7STZFa0UvQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VBaEYvQjtJQXNGWSxlN0V6RStCO0k2RTBFL0IsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixtQkFBbUI7O0FDakUvQjtFQUlFLGdCQ1gyQztFRFkzQyxnQkNYMkM7RTVCMkIzQztJNUNhSSwwQkNmaUI7SUQrQmY7SUFDQSwwQkFBNEQ7SUFBNUQsdUVBQTREO0U0Q3BDbEU7STVDbUJJLDBCQ2ZpQjtJRCtCZjtJQUNBLDBCQUE0RDtJQUE1RCx1RUFBNEQ7RXVFbkRwRTtJQVFJLGFBQWE7RUFSakI7SUFZSSxlQUFlO0lBQ2YseUJBQWlCO09BQWpCLHNCQUFpQjtRQUFqQixxQkFBaUI7WUFBakIsaUJBQWlCO0VBYnJCO0lBaUJJLFlBQVk7O0FBS2hCO0VBQ0UsVUFBVTtFQUNWLGtCQUFrQjtFQUZwQjtJbEQ4TUU7SUFDQSxrQmtEMU1vRDtJbEQ0TXBEO0lBQ0EsZ0JBdkhlO0l2Q2drSmI7TXVDdDhJQTtNQUNBLGVBM0hhO01BNkhiO01BQ0EsbUJrRHBOa0Q7O0FBSXREO0VsRHFNRTtFQUNBLFVrRHJNOEM7RWxEdU05QztFQUNBLFdBN0NxQjtFQTZDckIsY0E3Q3FCO0VrRHpKckIsYUFBYTtFQUNiLGtCQUFrQjtFekYycEpsQjtJdUNuOUlFO0lBQ0EsVUFqRG1CO0lBaURuQixhQWpEbUI7SUFtRG5CO0lBQ0EsV2tEL000Qzs7QUFPaEQ7RUFDRSxlQUFlOztBRXBFakI7RUFDSSxNQUFNO0VBQ04sUUFBUTs7QUMyQlo7RW5FSEUsdUJBQXFCO0VBQ3JCLG9CQUFrQjtFQUNsQixtQkFBaUI7RUFDakIsd0JBQXNCO0VBQ3RCLGdDQUE4QjtFQUM5QixrQ0FBZ0M7RUFFaEMsNkNBQTZDO0VBQzdDLCtCQUErQjtFbUVJL0IscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixzQkFBYztVQUFkLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIsV0NwQnlCO0VEcUJ6QixZQ3JCeUI7RURzQnpCLGFBQXlEO0VBQ3pELGVBQWU7RUFFZjtFQUNBLG9EQUFvRDtFQW5CdEQ7STFFR00saUNDTytFO0V5RVZyRjtJMUVpQ00scUJoQlNjO0lnQk9aO0lBQ0EscUJBQTREO0lBQTVELGlEQUE0RDtFMEVsRHBFO0kxRWlDTSxxQmhCU2M7SWdCT1o7SUFDQSxxQkFBNEQ7SUFBNUQsaURBQTREO0UwRWxEcEU7STFFaUNNLHlCaEJTYztJZ0JKd0I7TTBFdEM1QztRMUV5Q2M7UUFDQSx5QkFBNEQ7UUFBNUQscURBQTRELElBQzdEO0VPcENYO0lBRUUsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1Ysb0JBQW9CO0lBQ3BCLFdBQVc7RUFHYjtJQUNFLHVDQUFvRDtJQUFwRCwrQkFBb0Q7SUFDcEQsVUFBVTtFQUtaO0lBQ0UsMkJBQStDO1lBQS9DLG1CQUErQztJQUEvQyx1REFBK0M7WUFBL0MsK0NBQStDO0VBR2pEO0lBQ0UsTUFBTTtJQUVOO0lBQ0EsT0FBTztJQUNQLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsdUNBQStCO1lBQS9CLCtCQUErQjtFQUdqQztJQUNFLE1BQTZCO0lBQTdCLDZCQUE2QjtJQUU3QjtJQUNBLE9BQStCO0lBQS9CLCtCQUErQjtFQUdqQztJQUNFLGlHQUVnRTtZQUZoRSx5RkFFZ0U7RUFHbEU7SUFDRSxrREFBa0U7WUFBbEUsMENBQWtFO0lBRWxFLHdDQUFnRztZQUFoRyxnQ0FBZ0c7SUFBaEcsd0dBQWdHO1lBQWhHLGdHQUFnRztFQTdDbEc7SUFtS0Usb0JBQStCO0lBRS9CO0lBQ0EscUJBQWdDO0lBQ2hDLFdBUDRDO0lBUTVDLFlBUjRDO0VBVzlDO0lBRUUsb0JBQXNEO0lBQXRELDJDQUFzRDtJQUV0RDtJQUNBLHFCQUF3RDtJQUF4RCw2Q0FBd0Q7SUFDeEQsV0FBeUM7SUFBekMsc0NBQXlDO0lBQ3pDLFlBQTBDO0lBQTFDLHVDQUEwQztFQTlKNUM7SUFrS0UsV0FBeUM7SUFBekMsc0NBQXlDO0lBQ3pDLFlBQTBDO0lBQTFDLHVDQUEwQztFQXZMNUM7SVAwQkkseUJoQlNjO0lnQkp3QjtNTy9CMUM7UVBrQ1k7UUFDQSx5QkFBNEQ7UUFBNUQscURBQTRELElBQzdEO0VPeUJYO0lBQ0UsYWFoRVE7RWJnRlY7SUFHRSxpQ0FBeUI7WUFBekIseUJBQXlCO0lBQ3pCLGFhbkZRO0ViNEZSO0lBQ0Usd0NBQXdEO0lBQXhELGdDQUF3RDtFQUcxRDtJQUNFLGlDYWhINEI7WWJnSDVCLHlCYWhINEI7SWJpSDVCLGFhakdNO0VicUdWO0lBQ0UsNkJBQXdCO0VtRXZGMUI7SUFDRSxxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLFVBQXNEO0lBQ3RELHNCQUFzQjtJQUN0QixVQ2hDcUU7SURpQ3JFLFdDakNxRTtJRDJCdEU7TUFTRyxrQkFBa0I7TUFDbEIsTUFBTTtNQUNOLE9BQU87TUFDUCxXQUFXO01BQ1gsWUFBWTtNQUNaLDhCQUFzQjtjQUF0QixzQkFBc0I7TUFDdEIsNEhsRDNDZ0U7TWtEMkNoRSxvSGxEM0NnRTtNa0QyQ2hFLDRHbEQzQ2dFO01rRDJDaEUsc0tsRDNDZ0U7TWtENENoRSxrQkFBa0I7TUFDbEIsVUFBVTtNQUNWLG9CQUFvQjtNQUNwQixXQUFXO0VBSWY7SUFDRSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxzQkFBc0I7SUFDdEIsV0FBVztJQUNYLFlBQVk7SUFDWix1RWxEMURrRTtJa0QwRGxFLCtEbEQxRGtFO0lrRDJEbEUsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixrQkFBa0I7RUFHcEI7SUFDRSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxzQkFBc0I7SUFDdEIsV0FBVztJQUNYLFlBQVk7SUFDWiw4QkFBc0I7WUFBdEIsc0JBQXNCO0lBQ3RCLGlJbER4RWtFO0lrRHdFbEUseUhsRHhFa0U7SWtEd0VsRSxpSGxEeEVrRTtJa0R3RWxFLDJLbER4RWtFO0lrRHlFbEUsa0JBQWtCO0lBQ2xCLG1CQUFtQjtJQUNuQixrQkFBa0I7RUFHcEI7SUFDRSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gsWUFBWTtJQUNaLFNBQVM7SUFDVCxVQUFVO0lBQ1YsVUFBVTtJQUNWLGVBQWU7SUFDZixVQUFVO0VBbEZkO0lBd0ZNLGFBQWE7O0FBTW5COztFQUdJLHdIbEQxR3dFO0VrRDBHeEUsZ0hsRDFHd0U7RWtEMEd4RSx3R2xEMUd3RTtFa0QwR3hFLGdLbEQxR3dFO0VrRHVHNUU7O0lBTU0scUVsRDdHc0U7SWtENkd0RSw2RGxEN0dzRTtFa0R1RzVFOztJQVVNLDZIbERqSHNFO0lrRGlIdEUscUhsRGpIc0U7SWtEaUh0RSw2R2xEakhzRTtJa0RpSHRFLHFLbERqSHNFOztBa0RzSDVFO0VBQ0UsZUFBZTtFQUNmLG9CQUFvQjs7QUFHdEI7RUFHTSw2QkFBb0I7VUFBcEIscUJBQW9CO0VBQ3BCLDZIbEQvSHNFO0VrRCtIdEUscUhsRC9Ic0U7RWtEK0h0RSw2R2xEL0hzRTtFa0QrSHRFLHFLbEQvSHNFOztBa0RvSTVFOztFQUdJLGVBQWU7RUFIbkI7O0lBTU0saUN6RXZIK0U7RXlFaUhyRjs7SUFVTSxpQ3pFM0grRTs7QXlFZ0lyRjtFQUVJLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsd0hsRHRKd0U7RWtEc0p4RSxnSGxEdEp3RTtFa0RzSnhFLHdHbER0SndFO0VrRHNKeEUsZ0tsRHRKd0U7RWtEdUp4RSxhdERoSlE7O0F3RHpCWjtFNUU4Qk0scUJoQjBCYzs7QTRGeERwQjtFNUU4Qk0scUJoQjFCYzs7QTRGSnBCO0U1RThCTSxxQmhCMUJjOztBNEZKcEI7RTVFOEJNLHlCaEIxQmM7O0E0RkpwQjtFQVNRLHlCNUZMWTs7QTRGUWY7RUFHTyx5QjVGdUNROztBNEZuQ2Y7RUFFTyxVQUFVO0VBQ1YsYzVGcUJROztBQzNDcEI7QTRGQUE7RUFDSSxvREFBbUQ7RUFEdkQ7OztJckZLSSxnQkRBWTtJQzJEWixtRERoRTREO0lDaUU1RCxzQkFBc0I7SUFpQnRCLGVDbkV1QztJRG9FdkMsbUJBQWdCO0lBNkhoQixjUnhKZ0I7O0E2RnhEVjtFQVdOLG9EQUFtRDtFQUh2RDs7SXJGSEksZ0JEQVk7SUMyRFosbUREaEU0RDtJQ2lFNUQsc0JBQXNCO0lBaUJ0QixlQ25FdUM7SURvRXZDLG1CQUFnQjtJQTZIaEIsY1IxSmdCOztBRGpEcEI7O0VBRUkseUJDb0ZXO0VEbkZYLHlCQUFxRDtFQUFyRCxzREFBcUQ7O0FBR3pEO0FBQ0E7RUFDSSx5QkNOZ0I7O0FEV3BCO0VBQ0ksMkNBQW1DO0VBQ25DLCtDQUF1QztFQUN2QywyQ0FBbUM7RUFDbkMscUNBQTZCO0VBQzdCLDBDQUFrQztFQUNsQyx3Q0FBZ0M7RUFDaEMsZ0RBQXdDO0VBQ3hDLCtDQUF1QztFQUN2QyxrREFBMEM7RUFDMUMsa0RBQTBDO0VBQzFDLHVDQUErQjtFQUMvQixvQ0FBNEI7RUFDNUIsc0NBQThCO0VBQzlCLG9EQUErQjtFQUMvQix1REFBOEI7RUFDOUIsK0NBQXVDO0VBQ3ZDLDRDQUFzQztFQUN0QywrQkFBdUI7RUFDdkIsa0NBQTBCOztBRXJDOUI7QTZGMkJBO0U5RWlDTSx5QmhCckRjO0VnQnFFWjtFQUNBLHlCQUE0RDtFQUE1RCxtREFBNEQ7RUEvQzlELFlDc0JZO0U2RXRCaEIscUJBQWE7RUFBYixhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsc0NBQThCO1VBQTlCLDhCQUE4QjtFQUM5QixzQkFBc0I7RUFDdEIsV0FBVztFQVJiO0k5RUdNLFlDc0JZO0lNbUNoQjtNUHpESSx1QkNzQlk7SU0yQ2hCO01BQ0UsYWFoRVE7SWJnRlY7TUFHRSxpQ0FBeUI7Y0FBekIseUJBQXlCO01BQ3pCLGFhbkZRO0liNEZSO01BQ0Usd0NBQXdEO01BQXhELGdDQUF3RDtJQUcxRDtNQUNFLGlDYWhINEI7Y2JnSDVCLHlCYWhINEI7TWJpSDVCLGFhakdNO0licUdWO01BQ0UsNkJBQXdCO0V1RW5HMUI7SUFDRSxxQkFBYTtJQUFiLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsMkJBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsV0FBVztJQUNYLFlBQVk7SUFDWixnQkMxQnlCO0lENkJ6QjtNQVZGO1FBWUksZ0JDN0J3QyxJRG9DM0M7SUFIQztNQWhCRjtRQWlCSSxnQkNuQzhCLElEcUNqQztFQUVEO0lBQ0UsNEJBQW9CO0lBQXBCLG9CQUFvQjtJQUNwQixlQUFPO1lBQVAsT0FBTztJQUNQLDBCQUFrQjtZQUFsQixrQkFBa0I7SUFDbEIsK0JBQXVCO1lBQXZCLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIsWUFBWTtJQUNaLFlBQVk7SUFDWixZQzVDcUM7SUQ2Q3JDLFVBQVU7SUFFVjtNQVhGO1FBYUksVUFBVSxJQXNDYjtJQW5DQztNQWhCRjtRQWlCSSxjQUFzRCxJQWtDekQ7SUEvQkM7TXpEZ0xGO01BQ0Esa0IwRDNOMkM7TTFENk4zQztNQUNBLGdCQXZIZTtNeUQxRFgsbUNBQTJCO2NBQTNCLDJCQUEyQjtNQUMzQixpQkFBUztjQUFULFNBQVM7TWhHdTlKVDtRdUNweUpGO1FBQ0EsZUEzSGE7UUE2SGI7UUFDQSxtQjBEck95QztNRGdEdkM7UUFORjtVekRnTEY7VUFDQSxpQjBEMU5pRDtVMUQ0TmpEO1VBQ0EsZ0JBdkhlO1V2Q3k2SlA7WXVDL3lKTjtZQUNBLGVBM0hhO1lBNkhiO1lBQ0Esa0IwRHBPK0MsSTFEdUM5QztNeURhQztRQVhGO1V6RGdMRjtVQUNBLGlCMEQxTmlEO1UxRDROakQ7VUFDQSxnQkF2SGU7VXZDbzdKUDtZdUMxekpOO1lBQ0EsZUEzSGE7WUE2SGI7WUFDQSxrQjBEcE8rQyxJMUR1QzlDO0l5RGtCRDtNekRnS0Y7TUFDQSxlQWpIZ0I7TUFtSGhCO01BQ0EsbUIwRDlOMkM7TUQ2RHZDLGlDQUF5QjtjQUF6Qix5QkFBeUI7TUFDekIsZ0JBQVE7Y0FBUixRQUFRO01oR3krSlI7UXVDdDBKRjtRQUNBLGtCMERsT3lDO1ExRG9PekM7UUFDQSxnQkEzSGM7TXlEMUNaO1FBTkY7VXpEZ0tGO1VBQ0EsZUFqSGdCO1VBbUhoQjtVQUNBLGtCMEQ3TmlEO1VqR2lqS3pDO1l1Q2oxSk47WUFDQSxpQjBEak8rQztZMURtTy9DO1lBQ0EsZ0JBM0hjLElBbEViO015RDZCQztRQVhGO1V6RGdLRjtVQUNBLGVBakhnQjtVQW1IaEI7VUFDQSxrQjBEN05pRDtVakc0akt6QztZdUM1MUpOO1lBQ0EsaUIwRGpPK0M7WTFEbU8vQztZQUNBLGdCQTNIYyxJQWxFYjtFeURtQ0g7STNFN0VFLG1EWmxDNEQ7SVlrQzVELGtDQ1ZnQztJRFVoQyxtQ0NUaUM7SURTakMsa0JDK0NvQjtJRC9DcEIsaUJDZ0RtQjtJRGhEbkIsZ0JDRlM7SURFVCx3QkVvQ3lDO0lGcEN6Qyx3QkNtRDBCO0lEbkQxQix1QkNvRHlCO0lEOUMzQix1QkFBdUI7SUFDdkIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJa0JvTmhCO0lBQ0EsaUIwRHRPbUQ7STFEd09uRDtJQUNBLGVBdkhlO0l5RHZCYiwwQkFBa0I7Z0JBQWxCLDBCQUFrQjtZQUFsQixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixVQUFVO0loR29nS1Y7TXVDdDNKQTtNQUNBLGNBM0hhO01BNkhiO01BQ0Esa0IwRGhQaUQ7RURpR25EO0l2RWxHQSx1QkFBcUI7SUFDckIsb0JBQWtCO0lBQ2xCLG1CQUFpQjtJQUNqQix3QkFBc0I7SUFDdEIsZ0NBQThCO0lBQzlCLGtDQUFnQztJQUVoQyw2Q0FBNkM7SUFDN0MsK0JBQStCO0l5RTRCL0IscUJBQWE7SUFBYixhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLDBCQUFrQjtZQUFsQixrQkFBa0I7SUFDbEIsK0JBQXVCO1lBQXZCLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIsV0FBNkQ7SUFDN0QsWUFBOEQ7SUFDOUQsYURoQzZCO0lDaUM3QixZQUFZO0lBQ1osYUFBYTtJQUNiLDZCQUE2QjtJQUM3QixrQkFBa0I7SUFDbEIsY0FBYztJQUNkLHFCQUFxQjtJQUNyQixlQUFlO0l6RXhDZjtNQUVFLGtCQUFrQjtNQUNsQixrQkFBa0I7TUFDbEIsVUFBVTtNQUNWLG9CQUFvQjtNQUNwQixXQUFXO0lBR2I7TUFDRSx1Q0FBb0Q7TUFBcEQsK0JBQW9EO01BQ3BELFVBQVU7SUFLWjtNQUNFLDJCQUErQztjQUEvQyxtQkFBK0M7TUFBL0MsdURBQStDO2NBQS9DLCtDQUErQztJQUdqRDtNQUNFLE1BQU07TUFFTjtNQUNBLE9BQU87TUFDUCwyQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLHVDQUErQjtjQUEvQiwrQkFBK0I7SUFHakM7TUFDRSxNQUE2QjtNQUE3Qiw2QkFBNkI7TUFFN0I7TUFDQSxPQUErQjtNQUEvQiwrQkFBK0I7SUFHakM7TUFDRSxpR0FFZ0U7Y0FGaEUseUZBRWdFO0lBR2xFO01BQ0Usa0RBQWtFO2NBQWxFLDBDQUFrRTtNQUVsRSx3Q0FBZ0c7Y0FBaEcsZ0NBQWdHO01BQWhHLHdHQUFnRztjQUFoRyxnR0FBZ0c7SUE3Q2xHO01BbUtFLG9CQUErQjtNQUUvQjtNQUNBLHFCQUFnQztNQUNoQyxXQVA0QztNQVE1QyxZQVI0QztJQVc5QztNQUVFLG9CQUFzRDtNQUF0RCwyQ0FBc0Q7TUFFdEQ7TUFDQSxxQkFBd0Q7TUFBeEQsNkNBQXdEO01BQ3hELFdBQXlDO01BQXpDLHNDQUF5QztNQUN6QyxZQUEwQztNQUExQyx1Q0FBMEM7SUE5SjVDO01Ba0tFLFdBQXlDO01BQXpDLHNDQUF5QztNQUN6QyxZQUEwQztNQUExQyx1Q0FBMEM7O0F1RXpGOUM7RXpEOEhFO0VBQ0EsZ0IwRHBPaUQ7RTFEc09qRDtFQUNBLGVBdkhlO0V2QzRqS2Y7SXVDbDhKRTtJQUNBLGNBM0hhO0lBNkhiO0lBQ0EsaUIwRDlPK0M7O0FEeUduRDtFQXJCRTtJekQrSUE7SUFDQSxpQjBEck9rRDtJMUR1T2xEO0lBQ0EsZUF2SGU7SXZDd2tLYjtNdUM5OEpBO01BQ0EsY0EzSGE7TUE2SGI7TUFDQSxrQjBEL09nRCxJMURrRC9DOztBeUQ4REw7RWhFOUZFLDBIQ3hCa0M7RStEeUhsQyxlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxVQUFVOztBQUdaO0VBR0UseUNBQXVDO0VBSHpDO0lBTUksYUFBdUU7SUFDdkUsc0JBQWdJO0lBQWhJLG1FQUFnSTtJQUVoSTtNQVRKO1FBVU0sYUFBOEU7UUFDOUUsc0JBQXVJO1FBQXZJLG1FQUF1SSxJQVExSTtJQW5CSDtNQWdCTSxrQkFBa0I7TUFDbEIsV0FBVztFQU1kO0kzRXhJQyxtRFpsQzREO0lZa0M1RCxrQ0NWZ0M7SURVaEMsbUNDVGlDO0lEU2pDLGtCQytDb0I7SUQvQ3BCLGlCQ2dEbUI7SURoRG5CLGdCQ0ZTO0lERVQsd0JFb0N5QztJRnBDekMsd0JDbUQwQjtJRG5EMUIsdUJDb0R5QjtJMEV3RnZCLDRCQUFvQjtZQUFwQixvQkFBb0I7SUFDcEIsbUJBQW1CO0VBTHRCO0lBU0csTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gsWUFBWTtJQUNaLG9DQUE0QjtJQUE1Qiw0QkFBNEI7SUFDNUIsVUFBVTtFQWRiO0lBbUJLLFVBQVU7RUFuQmY7SUF1QkssZ0JBQWE7O0FBTXJCO0VoRTNKRSx3SEN4QmtDO0UrRHVMaEMsaUVoRTVJd0Q7RWdFNEl4RCx5RGhFNUl3RDtFZ0U2SXhELHVCL0Q1RitCO0UrRHVGbkM7SWhFM0pFLDBIQ3hCa0M7RStEbUxwQztJaEUzSkUsd0hDeEJrQztFK0RtTHBDO0loRTNKRSwwSEN4QmtDOztBK0Q0TXBDO0VBQ0UsaUJDL00yQjtFRGlOM0I7SUFIRjtNQUtJLGlCQ2pOMEMsSUR1TjdDO0VBSEM7SUFSRjtNQVNJLGlCQ3ROZ0MsSUR3Tm5DOztBQUVEO0VBQ0Usa0JBQVU7VUFBVixVQUFVOztBR3ZPWjtFOUZGWSx5QkFBeUI7RUFDekIsOENDQWtEO0VZd0J4RCx5QmhCdkJjO0VpR01aLDJCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsWXRGTndCO0VzRk94QixnQnRGUHdCO0VzRlF4QixldEZYc0I7RXNGaUd0QjtFQStDQSxnREFBK0M7RUN3RS9DO0lEdE5SO01BWVksWXhGSitCO013RksvQixnQnhGTCtCLEl3Rm9MdEM7RUMwQkc7SUR0TlI7TUFpQlksZXRGbEJvQixJc0Y2TDNCO0VBNUxMO0lBcUJZLFl4RmIrQjtJd0ZjL0IsZ0J4RmQrQjtJeUY4TW5DO01EdE5SO1FBeUJnQixZeEZqQjJCO1F3RmtCM0IsZ0J4RmxCMkIsSXdGb0JsQztFQTVCVDtJQStCWSxZeEZ2QitCO0l3RndCL0IsZ0J4RnhCK0I7SXlGOE1uQztNRHROUjtRQW1DZ0IsWXhGM0IyQjtRd0Y0QjNCLGdCeEY1QjJCLEl3RjJDbEM7SUNtS0Q7TUR0TlI7UUF5Q29CLGdCdEZ6Q1c7UXNGMENYLFl0RjFDVztRc0YyQ1gsaUJ0RjdDVTtRc0Y4Q1YsbUJ0RmhEYyxJc0ZzRHJCO0lDb0tMO01EdE5SO1FBZ0RvQixjQUFjLElBRXJCO0VBbERiO0lBdURnQiwyQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLHFCQUFhO0lBQWIsYUFBYTtJQUNiLGNqRzJCRDtJa0drSVA7TUR0TlI7UUE0RG9CLFdBQVcsSUFpQmxCO0lDeUlMO01EdE5SO1FBaUV3QixnQnRGakVPO1FzRmtFUCxZdEZsRU87UXNGbUVQLGlCdEZyRU07UXNGc0VOLG1CdEZ4RVUsSXNGZ0ZqQjtJQzBJVDtNRHROUjtRQXdFd0IsWXhGaEVtQjtRd0ZpRW5CLGdCeEZqRW1CO1F3RmtFbkIsZ0JBQWdCLElBRXZCO0VBNUVqQjtJQWdG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QXlCO0lBQ3pCLGFhM0ZRO0V0Q3FwTFY7STBHcmpMRSxxQ0FBcUM7RUFmekM7SW5Fb0pFO0lBQ0Esa0JxRTFPNkI7SXJFNE83QjtJQUNBLG1CcUU5TzZCO0lGMkczQixZQUFZO0lBQ1osMEJBQTBCO0kxR3VqTDFCO011Q2w3S0E7TUFDQSxrQnFFbFAyQjtNckVvUDNCO01BQ0EsbUJxRXBQMkI7RUZxRi9CO0luRW9KRTtJQUNBLFVtRTFIZ0Q7SW5FNEhoRDtJQUNBLFdBN0NxQjtJQTZDckIsY0E3Q3FCO0ltRTlFbkIsWUFBWTtJQUNaLG9CQUFvQjtJMUcyakxwQjtNdUM5N0tBO01BQ0EsVUFqRG1CO01BaURuQixhQWpEbUI7TUFtRG5CO01BQ0EsV21FcEk4QztJQTNCbEQ7TUFpQ00scURBQTJDO2NBQTNDLDZDQUEyQzs7QUFNakQ7RUFRRSxZQUFZO0VBQ1osWUFBWTtFQUNaLHNDQUFzQztFQVZ4QztJeEZuSE0saUNDTytFO0V1RjRHckY7SXhGbkhNLDJCQ08rRTtFdUY0R3JGO0l4Rm5ITSxpQ0NPK0U7RXVGNEdyRjtJeEZuSE0sMkJDTytFO0V1RjRHckY7SUcvR0ksaUJGZ0Y2QztFRCtCakQ7SXhGckZNLGVoQnJEYztJZ0JxRVo7SUFDQSxlQUE0RDtJQUE1RCx5Q0FBNEQ7RXdGb0VwRTtJRDFGTSxnREFBb0Q7WUFBcEQsd0NBQW9EO0VDMEYxRDtJRDdFSSxtRkFBeUc7WUFBekcsMkVBQXlHO0VDNkU3RztJRzFHRSxrQkRqQjRCO0VGMkg5QjtJR3JHSSxrQkR0QjBCO0U1RytzTDVCO0kwR3ZrTEUscUNBQXFDO0VBYnpDO0luRTZHRTtJQUNBLGtCcUUxTzZCO0lyRTRPN0I7SUFDQSxtQnFFOU82QjtJRmdKM0IscUJBQWE7SUFBYixhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJQUNwQixZQUFZO0lBQ1osNkJBQTZCO0lBQzdCLFVBQVU7STFHeWtMVjtNdUM3K0tBO01BQ0Esa0JxRWxQMkI7TXJFb1AzQjtNQUNBLG1CcUVwUDJCO0VGNEgvQjtJbkU2R0U7SUFDQSxVbUVqRmdEO0luRW1GaEQ7SUFDQSxXQTdDcUI7SUE2Q3JCLGNBN0NxQjtJbUVyQ25CLGtCQUFrQjtJQUNsQixZQUFZO0kxRzZrTFo7TXVDei9LQTtNQUNBLFVBakRtQjtNQWlEbkIsYUFqRG1CO01BbURuQjtNQUNBLFdtRTNGOEM7O0FDOUkvQztFQWtIRCxxZUFBMmY7RURrRTNmLGVBQWU7RUFDZixvQkFBb0I7RUFoQ3RCO0l4RnZKTSwwQkNPK0U7RXVGZ0pyRjtJQVNJLGFBQWE7RUFUakI7SUFhSSwyQkFBMkI7SUFDM0IsMEJ2RjlKaUY7RXVGZ0pyRjtJeEZ2Sk0seUIwRk11RztFRmlKN0c7SUF5Qk0seUJBQXlCO0VBekIvQjtJeEZ2Sk0saUNDTytFO0V1RmdKckY7SXhGdkpNLDJCQ08rRTs7QTJGdkNyRjtFQUNJO0VBQ0E7RUhrSkYsb2VBQTJmO0VHM0l6ZjtFQUNBLFlDVGdCO0VEV2hCLFdDVGU7RURXZjtFQUNBLDJCakdOMkI7RThGMkk3QixvZUFBMmY7RUExQjNmO0l6RjFGSSxjaEIwQmM7RXlHZ0VsQjtJQWdCQSw0QnpHaEZrQjtFeUdWbEI7SUEwRkEsNEJ6R2hGa0I7RTRHMURwQjtJQW1CUSxrQ0FBaUM7SUFuQnpDO01Bc0JZLGM1R2tDUTtFNEd4RHBCO0lBMkJRLGlCakdyQndCO0VpR05oQztJQStCUSw2QkFBNkI7SUFDN0IsYzVHMUJZO0U0R05wQjtJQW9DUSx5QjVHM0JZO0U0R1RwQjtJQXdDUSxjNUdrQlk7STRHakJaLGM3RDNCd0I7STZENEJ4QixTakdwQ3dCO0lpR3FDeEIsWUN0QnFDO0lEckI3QztNQThDWSxjNUd4Q1E7TTRHeUNSLGtEQUEyRztjQUEzRywwQ0FBMkc7O0FBS3ZIOztFSGdHRSxvZUFBMmY7RUc1RnpmLHNCQUFzQjtFQUN0QixVQUFVO0VBRVYsWUMxRGdCO0VEMkRoQixXQ3pEZTtFRGlEbkI7O0lBWVksVUFBVTtJQUNWLDBCQUEwQjtJQUMxQiw0QjVHVlE7STRHV1IsYzVHWFE7RTRHSnBCOztJQW9CUSxjNUdoQlk7O0E4R3ZEcEI7RTVEQ0ksY2xEd0RnQjtFa0R2RGhCLG1EM0NENEQ7RTJDRTVELGV6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dUI7SUFDdkIsV0FBVztJQUNYLFlBQVk7RUFLaEI7SUFDSSxxQkFBYTtJQUFiLGFBQWE7SUFDYixlQUFlO0lBQ2YsY0FBYztJQUNkLGdCQUFpQjtJQUFqQixpQkFBaUI7SUFFakI7SUFNQSx1QkFBc0I7SUFMdEI7TUFDSSxrQkFBa0I7TUFDbEIsWUFBWTtNQUNaLGVBQWU7RUFWdkI7SXFGY1EsY2pIb0VHO0lpSG5FSCxjQUFjO0lBQ2QsaUJBQWlCO0VGc0U3QjtJRWpFUSxjakg2RE87SWlINURQLGdCdEd2QndCO0lzR3dCeEIsZ0J0R3ZCd0I7SXNHd0J4QixleEdsQm1DO0l3R21CbkMsaUJ4R25CbUM7SXdHb0JuQyxzQkFBc0I7RUZvRDlCO0lFaERRLGlCdEduQ3dCO0VvRzRIaEM7SUVyRlEsY2pIZ0RPO0lpSGpEVjtNQUlPLGlCdEcxQ29CO01zRzJDcEIsa0J0RzNDb0I7RXNHK0M1QjtJQUNJLHlCakhJWTtJaUhMaEI7TUFJUSxjakhvQ0c7SWlIeENYO01BUVEsY2pIZ0NHO01pSHhDWDtRQVdZLGlCdEcxRGdCO1FzRzJEaEIsa0J0RzNEZ0I7RXNHZ0U1QjtJQUNJLHlCakhwRFk7SWlIbURmO01BSU8sY2pIbUJHO0lpSHZCVjtNQVFPLGNqSGVHO01pSHZCVjtRQVlXLGNqSFdEO01pSHZCVjtRQWdCVywwQzdHOUU4QztRNkcrRTlDLGNqSE1EO0lpSEZQO01BQ0kseUJqSHpFUTtNaUh3RVo7UUFJUSxjakhGRDtNaUhGUDtRQVFRLGNqSE5EO1FpSEZQO1VBWVksY2pIakdBO1FpSHFGWjtVQWdCWSwwQzdHbkcwQztVNkdvRzFDLGNqSGZMO0VpSHFCWDtJQUNJLHlCakh0RVk7SWlIcUVmO01BSU8sY2pIekJHO0lpSDRCUDtNQUNJLHlCakg3RVE7TWlINEVaO1FBSVEsY2pIaENEO0UrR2lDZjtJRU1ZLFl4R25IK0I7O0F3R3dIM0M7RUFHSSxZQUFZOztBaEgxSWhCO0FpSENBO0VBR0ksMkJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQix5QmxIRWdCO0VrSERoQixtQkFBbUI7RUFDbkIsY2xIb0ZXO0VrSG5GWCw0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aEJ1QmM7O0FvSDNCcEI7RXBHSU0seUJoQm9CYTtFZ0JwQmIscUJoQm9CYTs7QXVCcUNqQjtFUHpESSx5QmhCNkJjOztBdUJvQ2xCO0VBQ0UsYWF4RVE7O0Fid0ZWO0VBR0UsaUNBQXlCO1VBQXpCLHlCQUF5QjtFQUN6QixhYTNGUTs7QWJvR1I7RUFDRSx3Q0FBd0Q7RUFBeEQsZ0NBQXdEOztBQUcxRDtFQUNFLGlDYWhINEI7VWJnSDVCLHlCYWhINEI7RWJpSDVCLGFhekdNOztBYjZHVjtFQUNFLDZCQUF3Qjs7QTZGOUc1QjtFcEdJTSx5QmhCN0JjO0VnQjZCZCxxQmhCN0JjOztBb0h5QnBCO0VwR0lNLHlCaEIxQmM7RWdCMEJkLHFCaEIxQmM7O0F1Qm1GbEI7RVB6REkseUJoQjFCYzs7QXVCMkZsQjtFQUNFLGFheEVROztBYndGVjtFQUdFLGlDQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIsYWEzRlE7O0Fib0dSO0VBQ0Usd0NBQXdEO0VBQXhELGdDQUF3RDs7QUFHMUQ7RUFDRSxpQ2FoSDRCO1ViZ0g1Qix5QmFoSDRCO0ViaUg1QixhYXpHTTs7QWI2R1Y7RUFDRSw2QkFBd0I7O0FnR3hJNUI7RXZHOEJNLHlCaEJ1QmM7RWdCdkJkLHFCaEJ1QmM7O0F1SHJEcEI7RXZHOEJNLHlCaEJ3QmM7RWdCeEJkLHFCaEJ3QmM7O0F1QmlDbEI7RVB6REkseUJoQndCYzs7QXVCeUNsQjtFQUNFLGFhaEVROztBYmdGVjtFQUdFLGlDQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIsYWFuRlE7O0FiNEZSO0VBQ0Usd0NBQXdEO0VBQXhELGdDQUF3RDs7QUFHMUQ7RUFDRSxpQ2FoSDRCO1ViZ0g1Qix5QmFoSDRCO0ViaUg1QixhYWpHTTs7QWJxR1Y7RUFDRSw2QkFBd0I7O0FnR3hJNUI7RXZHOEJNLHlCaEJ1QmM7RWdCdkJkLHFCaEJ1QmM7O0F1SHJEcEI7RXZHOEJNLHlCaEJ3QmM7RWdCeEJkLHFCaEJ3QmM7O0F1QmlDbEI7RVB6REkseUJoQndCYzs7QXVCeUNsQjtFQUNFLGFhaEVROztBYmdGVjtFQUdFLGlDQUF5QjtVQUF6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QlBoQztJQUNFLGtCNkJNOEI7RWpIcUNoQztJUHpESSw2QnVIMFBzQztFRG5LNUM7SXRIdkZNLDZCdUgyUDBDO0VEcEtoRDtJQzBLSSxxQkFBYTtJQUFiLGFBQWE7SUFDYix1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLDZCQUE2QjtJQUM3QixVQUFVO0VEOUtkO0lDa0xJLFVBQVU7RURsTGQ7SWpHeUlFO0lBQ0EsVWtHNENnRDtJbEcxQ2hEO0lBQ0EsV0E3Q3FCO0lBNkNyQixjQTdDcUI7SWtHd0ZuQixXQUFXO0l6SThzT1g7TXVDdHZPQTtNQUNBLFVBakRtQjtNQWlEbkIsYUFqRG1CO01BbURuQjtNQUNBLFdrR2tDOEM7O0E1QjFRaEQ7RUFDRSxpQjRCeU4yQzs7QUQ5SC9DO0V0SC9GTSw2QnVIK00yQztFRGhIakQ7SXRIL0ZNLHlCQ08rRTtFMEZoQm5GO0kzRlNJLGlDQ08rRTtFMEZWbkY7STNGR0ksMkJDTytFO0VxSHdGckY7SUNtSEksbUJBQW1COztBRC9HdkI7RUNpSUUsWUFBWTtFaEM3TVo7SUFFSSxpREFBb0Q7WUFBcEQseUNBQW9EO0VBWXhEO0lBQ0UseUZBQXlHO1lBQXpHLGlGQUF5RztFK0I2RDdHO0lDb0lJLHNCQUFzQjtFRHBJMUI7SUN3SUksWUFBWTtFRHhJaEI7SUM0SUksU0FBUzs7QUR4SWI7RWpHeUhFO0VBQ0EsVW9HN09pQztFcEcrT2pDO0VBQ0EsV0E3Q3FCO0VBNkNyQixjQTdDcUI7RXZDNDBPckI7SXVDNXhPRTtJQUNBLFVBakRtQjtJQWlEbkIsYUFqRG1CO0lBbURuQjtJQUNBLFdvR3ZQK0I7O0FIbUhuQztFakd5SEU7RUFDQSxrQm9HM09nQztFcEc2T2hDO0VBQ0EsbUJvR2hQaUM7RTNJMGhQakM7SXVDdnlPRTtJQUNBLGtCb0dwUCtCO0lwR3NQL0I7SUFDQSxtQm9HclA4Qjs7QUhpSGxDO0VqR3lIRTtFQUNBLFVvRzNPZ0M7RXBHNk9oQztFQUNBLFdBN0NxQjtFQTZDckIsY0E3Q3FCO0V2Q2syT3JCO0l1Q2x6T0U7SUFDQSxVQWpEbUI7SUFpRG5CLGFBakRtQjtJQW1E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SSw2QnVIK1lzQztFRC9QNUM7SXRIaEpNLDZCdUhnWjBDO0VEaFFoRDtJQzhRSSx3QkFBZ0I7Z0JBQWhCLHdCQUFnQjtZQUFoQixnQkFBZ0I7SUFDaEIsdUJBQXVCO0lBQ3ZCLFlBQVk7SUFDWixTQUFTO0lBQ1QsYUFoQmtCO0lBaUJsQixpQkFBK0I7SUFDL0IsNkJBQTZCO0VEcFJqQztJdEhoSk0sdUJDTWtCO0lvQjBOdEI7SUFDQSxTa0d3TXNDO0lsR3RNdEM7SUFDQSxRa0dxTWdEO0lsR3pNaEQ7SUFDQSxnQmtHeU1pRDtJbEd2TWpEO0lBQ0EsZWtHc01vRDtJQUVsRCxTQXpCaUM7SUEwQmpDLFlBQVk7SUFDWixXQUFXO0lBQ1gsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixpQkFBaUI7SUFDakIsb0JBQW9CO0l6STR5T3BCO011Q3YvT0E7TUFDQSxPa0dpTThDO01sRy9MOUM7TUFDQSxVa0c4TG9DO0l6STB6T3BDO011QzUvT0E7TUFDQSxja0drTWtEO01sR2hNbEQ7TUFDQSxpQmtHK0wrQzs7QUR0Um5EO0VDNE1FLFdBQVc7RUQ1TWI7SUNrTkksY0FBYztJaEg3U2hCO01QekRJLDZCdUhtV3dDO0lEL005QztNdEhwSk0sNkJ1SG9XNEM7SURoTmxEO01DcU5NLFVBQVU7O0FEak5oQjtFdEh4Sk0sNEJ3SGJ3Qjs7QUY2SzVCO0VBQ0Usa0JBQWtCOztBQUdwQjtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7O0FBR25CO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjs7QUFVckI7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCOztBQUl4QjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFQ3hDSSxjQy9KMEI7O0FGdU05QjtFQ3BDSSxVQUFVOztBRHdDZDtFdEhoS00scUJoQnJEYztFZ0JxRVo7RUFDQSxxQkFBNEQ7RUFBNUQsK0NBQTREO0VzSCtJcEU7SXRIaEtNLHFCaEJyRGM7SWdCcUVaO0lBQ0EscUJBQTREO0lBQTVELCtDQUE0RDs7QXNIbUpwRTtFdEhsTU0sNEJ3SGJ3Qjs7QUYrTTlCO0V0SGxNTSw0QndIYndCOztBRitNOUI7RXRIbE1NLHlCd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLG9Cd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RUN4REksVUFBVTs7QUQ0RGQ7RXRIdE1NLHFCd0hid0I7RUZtTjlCO0l0SHRNTSxxQndIYndCOztBN0JJNUI7RTNGU0kscUJ3SGJ3Qjs7QTdCVTVCO0UzRkdJLGV3SGJ3Qjs7QTdCSTVCOztFM0ZTSSxxQndIYndCOztBN0JVNUI7O0UzRkdJLGV3SGJ3Qjs7QTdCVTVCO0UzRkdJLGV3SGJ3Qjs7QUR3RjNCO0V2SDNFRyx5QndITXVHO0VEK0czRyxtQkFBbUI7RUFDbkIsb0JBQW9CO0VEd0Z0QjtJdEg5TU0sd0NDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0seUJDTytFO0VxSHVNckY7SXRIOU1NLHdDQ08rRTtFcUh1TXJGO0lDckZJLGVBQWU7O0FEeUZuQjtFdEhsTk0saUNDTytFO0VEUC9FLHlCd0hrQm1EO0VEcVd2RCx3QkFBd0I7RUFDeEIsbUJBQW1CO0VEdEtyQjtJ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TWhEO0lBQ0EsZ0JrR3lNaUQ7SWxHdk1qRDtJQUNBLGVrR3NNb0Q7SUFFbEQsU0F6QmlDO0lBMEJqQyxZQUFZO0lBQ1osV0FBVztJQUNYLGVBQWU7SUFDZix5QkFBeUI7SUFDekIsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJeklzbFFwQjtNdUNqeVFBO01BQ0EsT2tHaU04QztNbEcvTDlDO01BQ0EsVWtHOExvQztJeklvbVFwQztNdUN0eVFBO01BQ0EsY2tHa01rRDtNbEdoTWxEO01BQ0EsaUJrRytMK0M7O0FEdFJuRDtFQzRNRSxXQUFXO0VENU1iO0lDa05JLGNBQWM7SWhIN1NoQjtNUHpESSw2QnVIbVd3QztJRC9NOUM7TXRIcEpNLDZCdUhvVzRDO0lEaE5sRDtNQ3FOTSxVQUFVOztBRGpOaEI7RXRIeEpNLDRCd0hid0I7O0FGNks1QjtFQUNFLGtCQUFrQjs7QUFHcEI7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCOztBQUduQjtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7O0FBVXJCO0VBQ0UsOEJBQXNCO1VBQXRCLHNCQUFzQjs7QUFJeEI7RXRIMUxNLDRCaEJ2QmM7O0FzSWlOcEI7RXRIMUxNLDRCaEJ2QmM7O0FzSWlOcEI7RXRIMUxNLDRCaEJ2QmM7O0FzSWlOcEI7RXRIMUxNLDRCaEJ2QmM7O0FzSWlOcEI7RXRIMUxNLDRCaEJ2QmM7O0FzSWlOcEI7RXRIMUxNLDRCaEJ2QmM7O0FzSWlOcEI7RUN4Q0ksY0MvSjBCOztBRnVNOUI7RUNwQ0ksVUFBVTs7QUR3Q2Q7RXRIaEtNLHFCaEJyRGM7RWdCcUVaO0VBQ0EscUJBQTREO0VBQTVELCtDQUE0RDtFc0grSXBFO0l0SGhLTSxxQmhCckRjO0lnQnFFWjtJQUNBLHFCQUE0RDtJQUE1RCwrQ0FBNEQ7O0FzSG1KcEU7RXRIbE1NLDRCd0hid0I7O0FGK005QjtFdEhsTU0sNEJ3SGJ3Qjs7QUYrTTlCO0V0SGxNTSx5QndIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxvQndIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0VDeERJLFVBQVU7O0FENERkO0V0SHRNTSxxQndIYndCO0VGbU45QjtJdEh0TU0scUJ3SGJ3Qjs7QTdCSTVCO0UzRlNJLHFCd0hid0I7O0E3QlU1QjtFM0ZHSSxld0hid0I7O0E3Qkk1Qjs7RTNGU0kscUJ3SGJ3Qjs7QTdCVTVCOztFM0ZHSSxld0hid0I7O0E3QlU1QjtFM0ZHSSxld0hid0I7O0FEd0YzQjtFdkgzRUcseUJ3SE11RztFRCtHM0csbUJBQW1CO0VBQ25CLG9CQUFvQjtFRHdGdEI7SXRIOU1NLHdDQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLHlCQ08rRTtFcUh1TXJGO0l0SDlNTSx3Q0NPK0U7RXFIdU1yRjtJQ3JGSSxlQUFlOztBRHlGbkI7RXRIbE5NLGlDQ08rRTtFRFAvRSx5QndIa0JtRDtFRHFXdkQsd0JBQXdCO0VBQ3hCLG1CQUFtQjtFRHRLckI7SXRIbE5NLGlDQ08rRTtFcUgyTXJGO0lDeUtJLDZCQUE2QjtFRHpLakM7SXRIbE5NLHlCd0hrQm1EOztBakNqQnZEO0VBQ0U7SUFDRSx5RUFBMkY7WUFBM0YsaUVBQTJGO0VBRzdGO0lBQ0UseUVBQWdFO1lBQWhFLGlFQUFnRTtJQUNoRSwwRUFBNEY7WUFBNUYsa0VBQTRGO0VBRzlGO0lBQ0UsZ0ZBQXVFO1lBQXZFLHdFQUF1RTtJQUN2RSwyRUFBNkY7WUFBN0YsbUVBQTZGO0VBRy9GO0lBQ0Us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akU7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0kseUJBQTZEOztBQUxyRTtFQUNJLHNCQUE2Qzs7QUFHN0M7RUFDSSwwQkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSwyQkFBNkQ7O0FBTHJFO0VBQ0ksc0JBQTZDOztBQUc3QztFQUNJLDBCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDJCQUE2RDs7QUFMckU7RUFDSSxzQkFBNkM7O0FBRzdDO0VBQ0ksMEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksMkJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJ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SSwyQkNPK0U7RTBGVm5GO0kzRmlDSSxlaEJyRGM7SWdCcUVaO0lBQ0EsZUFBNEQ7SUFBNUQseUNBQTREO0V1RnhCbEU7SUFFSSxnREFBb0Q7WUFBcEQsd0NBQW9EO0VBWXhEO0lBQ0UsbUZBQXlHO1lBQXpHLDJFQUF5RztFK0JpRDdHO0kzQjlFRSxrQjZCV2dDO0U3QlBoQztJQUNFLGtCNkJNOEI7RWpIcUNoQztJUHpESSw2QnVIMFBzQztFRG5LNUM7SXRIdkZNLDZCdUgyUDBDO0VEcEtoRDtJQzBLSSxxQkFBYTtJQUFiLGFBQWE7SUFDYix1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLDZCQUE2QjtJQUM3QixVQUFVO0VEOUtkO0lDa0xJLFVBQVU7RURsTGQ7SWpHeUlFO0lBQ0EsVWtHNENnRDtJbEcxQ2hEO0lBQ0EsV0E3Q3FCO0lBNkNyQixjQTdDcUI7SWtHd0ZuQixXQUFXO0l6SStvU1g7TXVDdnJTQTtNQUNBLFVBakRtQjtNQWlEbkIsYUFqRG1CO01BbURuQjtNQUNBLFdrR2tDOEM7O0E1QjFRaEQ7RUFDRSxpQjRCeU4yQzs7QUQ5SC9DO0V0SC9GTSw2QnVIK00yQztFRGhIakQ7SXRIL0ZNLHlCQ08rRTtFMEZoQm5GO0kzRlNJLGlDQ08rRTtFMEZWbkY7STNGR0ksMkJDTytFO0VxSHdGckY7SUNtSEksbUJBQW1COztBRC9HdkI7RUNpSUUsWUFBWTtFaEM3TVo7SUFFSSxpREFBb0Q7WUFBcEQseUNBQW9EO0VBWXhEO0lBQ0UseUZBQXlHO1lBQXpHLGlGQUF5RztFK0I2RDdHO0lDb0lJLHNCQUFzQjtFRHBJMUI7SUN3SUksWUFBWTtFRHhJaEI7SUM0SUksU0FBUzs7QUR4SWI7RWpHeUhFO0VBQ0EsVW9HN09pQztFcEcrT2pDO0VBQ0EsV0E3Q3FCO0VBNkNyQixjQTdDcUI7RXZDNndTckI7SXVDN3RTRTtJQUNBLFVBakRtQjtJQWlEbkIsYUFqRG1CO0lBbURuQjtJQUNBLFdvR3ZQK0I7O0FIbUhuQztFakd5SEU7RUFDQSxrQm9HM09nQztFcEc2T2hDO0VBQ0EsbUJvR2hQaUM7RTNJMjlTakM7SXVD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QnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFdEgxTE0sNEJoQnZCYzs7QXNJaU5wQjtFQ3hDSSxjQy9KMEI7O0FGdU05QjtFQ3BDSSxVQUFVOztBRHdDZDtFdEhoS00scUJoQnJEYztFZ0JxRVo7RUFDQSxxQkFBNEQ7RUFBNUQsK0NBQTREO0VzSCtJcEU7SXRIaEtNLHFCaEJyRGM7SWdCcUVaO0lBQ0EscUJBQTREO0lBQTVELCtDQUE0RDs7QXNIbUpwRTtFdEhsTU0sNEJ3SGJ3Qjs7QUYrTTlCO0V0SGxNTSw0QndIYndCOztBRitNOUI7RXRIbE1NLHlCd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLG9Cd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RUN4REksVUFBVTs7QUQ0RGQ7RXRIdE1NLHFCd0hid0I7RUZtTjlCO0l0SHRNTSxxQndIYndCOztBN0JJNUI7RTNGU0kscUJ3SGJ3Qjs7QTdCVTVCO0UzRkdJLGV3SGJ3Qjs7QTdCSTVCOztFM0ZTSSxxQndIYndCOztBN0JVNUI7O0UzRkdJLGV3SGJ3Qjs7QTdCVTVCO0UzRkdJLGV3SGJ3Qjs7QUR3RjNCO0V2SDNFRyx5QndITXVHO0VEK0czRyxtQkFBbUI7RUFDbkIsb0JBQW9CO0VEd0Z0QjtJdEg5TU0sd0NDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJG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QUFvRDtZQUFwRCx3Q0FBb0Q7RWdDMEV4RDtJdkhuR0ksb0JoQjFCYztFNkkyQnBCO0lBV1EsNkJDNUNnQztFRGlDeEM7SUFlUSw0QjdJVVk7STZJVFosYzdJWVk7STZJWFosbUR0SWhEd0Q7SXNJaUR4RCxZQUFZO0lBQ1osaUJsSTVDd0I7SWtJNkN4QixxQmxJL0N3QjtJa0kyQmhDO01BdUJZLDRCN0lsRFE7RTZJMkJwQjtJQTRCUSxjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLFlsSXhEc0I7SWtJeUR0QixXbEl6RHNCO0lrSTBEdEIsb0JBQW9CO0lBQ3BCLFNBQVM7SUFDVCxZQUFZO0lBRVosa0JBQWtCO0lBQ2xCLG9EQUFtRDtJQXJDM0Q7TUF1Q1ksa0JBQWtCO0VBdkM5QjtJQTZDWSxVbEl4RW9CO0lrSXlFcEIsVUFBVTtFQTlDdEI7SUFpRFksbUJsSTFFb0I7RWtJeUJoQztJQXFEZ0IsbUJBQW1CO0lBR25CLGM3STVDSTtFNklacEI7SUE4RFEseUI3SXpGWTtFNkkyQnBCO0lBbUVZLFlDMUZvQztJRDJGcEMsYzdJM0NRO0k2STRDUixtRHRJcEdvRDtJc0lxR3BELFNsSWpHb0I7SWtJMkJoQztNQXlFZ0IsYzdJaERJO002SWlESixTbElyR2dCO0VrSTJCaEM7SUFpRlksYzdJeERRO0U2SXpCcEI7SUFxRlksYzdJaEhROztBMElpRnBCO0VHcUNJLHFCQUFhO0VBQWIsYUFBYTtFQUNiLDJCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsc0NBQThCO1VBQTlCLDhCQUE4QjtFQUM5QixtRHRJN0g0RDtFc0k4SDVELFdDeEhrQjtFRG1IdEI7STNGekhJLGNsRHdEZ0I7SWtEdkRoQixtRDNDRDREO0kyQ0U1RCxlekNhdUM7SXlDWnZDLG9CSG9CK0I7SUduQi9CLFNBQVM7SUFDVCxjdkNENEI7SWtJcUhoQztNQVdZLGM3SXpGUTtJNkk4RXBCO01BZ0JZLGtCQUFrQjtNQWhCOUI7UUFtQmdCLFlwSTdIMkI7SW9JMEczQztNQXdCWSxpQkFBaUI7O0F4STVJN0I7QUFHUTtFQUNJLG9CQUE2Qzs7QUFHN0M7RUFDSSx3QkFBNkQ7O0FBRGpFO0VBQ0ksMEJBQTZEOztBQURqRTtFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSx5QkFBNkQ7O0FBTHJFO0VBQ0ksc0JBQTZDOztBQUc3QztFQUNJLDBCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDJCQUE2RDs7QUFMckU7RUFDSSxzQkFBNkM7O0FBRzdDO0VBQ0ksMEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksMkJBQTZEOztBQUxyRTtFQUNJLHNCQUE2Qzs7QUFHN0M7RUFDSSwwQkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSwyQkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSxxQkFBNkM7O0FBRzdDO0VBQ0kseUJBQTZEOztBQURqRTtFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksMEJBQTZEOztBQUxyRTtFQUNJLHVCQUE2Qzs7QUFHN0M7RUFDSSwyQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSw0QkFBNkQ7O0FBTHJFO0VBQ0ksdUJBQTZDOztBQUc3QztFQUNJLDJCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLDRCQUE2RDs7QUFMckU7RUFDSSx1QkFBNkM7O0FBRzdDO0VBQ0ksMkJBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksNEJBQTZEOztBQUxyRTtFQUNJLHdCQUE2Qzs7QUFHN0M7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLCtCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBTHJFO0VBQ0ksd0JBQTZDOztBQUc3QztFQUNJLDRCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksK0JBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFMckU7RUFDSSx3QkFBNkM7O0FBRzdDO0VBQ0ksNEJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSwrQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQUxyRTtFQUNJLHdCQUE2Qzs7QUFHN0M7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLCtCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBTHJFO0VBQ0ksd0JBQTZDOztBQUc3QztFQUNJLDRCQUE2RDs7QUFEakU7RUFDSSw4QkFBNkQ7O0FBRGpFO0VBQ0ksK0JBQTZEOztBQURqRTtFQUNJLDZCQUE2RDs7QUFMckU7RUFDSSx3QkFBNkM7O0FBRzdDO0VBQ0ksNEJBQTZEOztBQURqRTtFQUNJLDhCQUE2RDs7QUFEakU7RUFDSSwrQkFBNkQ7O0FBRGpFO0VBQ0ksNkJBQTZEOztBQUxyRTtFQUNJLHdCQUE2Qzs7QUFHN0M7RUFDSSw0QkFBNkQ7O0FBRGpFO0VBQ0ksOEJBQTZEOztBQURqRTtFQUNJLCtCQUE2RDs7QUFEakU7RUFDSSw2QkFBNkQ7O0FBV3JFO0VBQ0ksbUJBQStCOztBQURuQztFQUNJLHFCQUErQjs7QUFEbkM7RUFDSSxxQkFBK0I7O0FBRG5DO0VBQ0kscUJBQStCOztBQURuQztFQUNJLHNCQUErQjs7QUFEbkM7RUFDSSxzQkFBK0I7O0FBRG5DO0VBQ0ksc0JBQStCOztBQURuQztFQUNJLHNCQUErQjs7QUFEbkM7RUFDSSxzQkFBK0I7O0FBRG5DO0VBQ0ksc0JBQStCOztBQURuQztFQUNJLHNCQUErQjs7QUFEbkM7RUFDSSxvQkFBK0I7O0FBRG5DO0VBQ0ksc0JBQStCOztBQURuQztFQUNJLHNCQUErQjs7QUFEbkM7RUFDSSxzQkFBK0I7O0FBRG5DO0VBQ0ksdUJBQStCOztBQURuQztFQUNJLHVCQUErQjs7QUFEbkM7RUFDSSx1QkFBK0I7O0FBRG5DO0VBQ0ksdUJBQStCOztBQURuQztFQUNJLHVCQUErQjs7QUFEbkM7RUFDSSx1QkFBK0I7O0FBRG5DO0VBQ0ksdUJBQStCOztBQUkzQztBMEk5QkE7O0VSNkJFLHNCQUFrQztFaEN5QmxDOztJQUVJLGdEQUFvRDtZQUFwRCx3Q0FBb0Q7RXdDeEQxRDs7Ozs7O0lBV1EsNkJEWmdDO0VDQ3hDOztJQWVRLFlBQVk7SUFDWixjL0l1Q1k7SStJdENaLFNBQVM7SUFDVCxjQUFjO0lBbEJ0Qjs7TUFxQlksYy9Ja0NRO0UrSXZEcEI7O0lBMEJRLDRCL0k2Qlk7SStJNUJaLGMvSTRCWTtJK0kzQloscUJwSXZCd0I7RW9JTGhDOztJQWdDUSx5Qi9JdUJZO0UrSXZEcEI7O0lBb0NRLGMvSW1CWTs7QWdKdERwQjs7Ozs7O0VsSmk4VUU7QWtKMTdVRjtFOUZQSSxjbER3RGdCO0VrRHZEaEIsbUQzQ0Q0RDtFMkNFNUQsZXpDYXVDO0V5Q1p2QyxvQkhvQitCO0VHbkIvQixTQUFTO0VBQ1QsY3ZDRDRCOztBWkNoQzs7RUFFSSx5QkNvRlc7RURuRlgseUJBQXFEO0VBQXJELHNEQUFxRDs7QUFHekQ7QUFDQTtFQUNJLHlCQ05nQjs7QURXcEI7RUFDSSwyQ0FBbUM7RUFDbkMsK0NBQXVDO0VBQ3ZDLDJDQUFtQztFQUNuQyxxQ0FBNkI7RUFDN0IsMENBQWtDO0VBQ2xDLHdDQUFnQztFQUNoQyxnREFBd0M7RUFDeEMsK0NBQXVDO0VBQ3ZDLGtEQUEwQztFQUMxQyxrREFBMEM7RUFDMUMsdUNBQStCO0VBQy9CLG9DQUE0QjtFQUM1QixzQ0FBOEI7RUFDOUIsb0RBQStCO0VBQy9CLHVEQUE4QjtFQUM5QiwrQ0FBdUM7RUFDdkMsNENBQXNDO0VBQ3RDLCtCQUF1QjtFQUN2QixrQ0FBMEI7O0F1RWdDOUI7RW5EbkNJLG1EWmxDNEQ7RVlrQzVELGtDQ1ZnQztFRFVoQyxtQ0NUaUM7RURTakMsa0JDdUZtQjtFRHZGbkIsb0JDd0ZzQjtFRHhGdEIsZ0JDSFU7RURHVix5QkVvQ3lDO0VGcEN6Qyx3QkMyRjBCO0VEM0YxQix1QkM0RnlCO0VEaEYzQixjQUFjO0VBQ2QsYUFBYTtFQUNiLG1CQUFtQjtFaUhwQm5CLFNBQVM7RUFDVCw4RDVGVnVFO0U0RlV2RSxzRDVGVnVFO0U0Rld2RSxVQUFVO0VBQ1Ysb0JBQW9CO0VqSG1CcEI7SUFrQkEscUJBQXFCO0lBQ3JCLFFBQVE7SUFDUixZaUg1Q3lDO0lqSDZDekMsV0FBVztJQWxCVCxpQkFBaUI7O0FpSG5CckI7RUFDRSx3QkFBZ0I7RUFBaEIsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixvQkFBb0I7O0FDaEJ0Qjs7RUFFRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGVBQWU7O0FBR2pCOztFQUVFLGVBQWU7RUFDZixvQkFBb0I7O0FDS3RCO0UvR1pFLHVCQUFxQjtFQUNyQixvQkFBa0I7RUFDbEIsbUJBQWlCO0VBQ2pCLHdCQUFzQjtFQUN0QixnQ0FBOEI7RUFDOUIsa0NBQWdDO0VBRWhDLDZDQUE2QztFQUM3QywrQkFBK0I7RWdISi9CLDBCQUFrQztFRHNDbEMsNEJBQW9CO0VBQXBCLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsc0NBQXNDO0UvR3JDdEM7SUFFRSxrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixvQkFBb0I7SUFDcEIsV0FBVztFQUdiO0lBQ0UsdUNBQW9EO0lBQXBELCtCQUFvRDtJQUNwRCxVQUFVO0VBS1o7SUFDRSwyQkFBK0M7WUFBL0MsbUJBQStDO0lBQS9DLHVEQUErQztZQUEvQywrQ0FBK0M7RUFHakQ7SUFDRSxNQUFNO0lBRU47SUFDQSxPQUFPO0lBQ1AsMkJBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQix1Q0FBK0I7WUFBL0IsK0JBQStCO0VBR2pDO0lBQ0UsTUFBNkI7SUFBN0IsNkJBQTZCO0lBRTdCO0lBQ0EsT0FBK0I7SUFBL0IsK0JBQStCO0VBR2pDO0lBQ0UsaUdBRWdFO1lBRmhFLHlGQUVnRTtFQUdsRTtJQUNFLGtEQUFrRTtZQUFsRSwwQ0FBa0U7SUFFbEUsd0NBQWdHO1lBQWhHLGdDQUFnRztJQUFoRyx3R0FBZ0c7WUFBaEcsZ0dBQWdHO0VBN0NsRztJUEpJLHFDQ08rRTtFTTBEbkY7SUFDRSxhYXhFUTtFYndGVjtJQUdFLGlDQUF5QjtZQUF6Qix5QkFBeUI7SUFDekIsYWEzRlE7RWJTVjtJQWtKRSxxQkFBMkI7SUFFM0I7SUFDQSxzQkFBNEI7SUFDNUIsV0FBa0I7SUFDbEIsWUFBbUI7RUFuSXJCO0lBdUlFLFdBQXlDO0lBQXpDLHNDQUF5QztJQUN6QyxZQUEwQztJQUExQyx1Q0FBMEM7RStHMUo5QztJdEhOTSx5QkNPK0U7RXFIRHJGO0l0SE5NLHlCQ08rRTtFcUhEckY7SXRITk0seUJDTytFO0VxSERyRjtJdEhOTSx5QkNPK0U7RXFIRHJGO0l0SE5NLHlCQ08rRTtFcUhEckY7SXRITk0seUJDTytFO0VxSERyRjtJdEhOTSwwQkNPK0U7RXFIRHJGO0l0SHdCTSxvQmhCckRjO0lnQnFFWjtJQUNBLG9CQUE0RDtJQUE1RCw4Q0FBNEQ7RXNIekNwRTtJdEhOTSx3Q0NPK0U7RXFIRHJGO0l0SE5NLHdDQ08rRTtFcUhEckY7SXRId0JNLHlCaEJyRGM7SWdCcUVaO0lBQ0EseUJBQTREO0lBQTVELG1EQUE0RDtFc0h6Q3BFO0l0SE5NLHdDQ08rRTtFcUhEckY7SXRITk0seUJDTytFO0VxSERyRjtJdEhOTSwwQkNPK0U7RXFIRHJGO0l0SE5NLDRCd0hLOEY7RUZDcEc7SWpHME5FO0lBQ0EsVWtHcENnRDtJbEdzQ2hEO0lBQ0EsV0E3Q3FCO0lBNkNyQixjQTdDcUI7SWtHUW5CLFlBQVk7SXpJNjRVWjtNdUNyMlVBO01BQ0EsVUFqRG1CO01BaURuQixhQWpEbUI7TUFtRG5CO01BQ0EsV2tHOUM4QztFRHZMbEQ7SUMrTE0sNEJBQXVEO0VoQzlLM0Q7SUFFSSwrQ0FBb0Q7WUFBcEQsdUNBQW9EO0VBWXhEO0lBQ0UsOEVBQXlHO1lBQXpHLHNFQUF5Rzs7QUFyQzNHO0VBQ0U7SUFDRSx3RUFBMkY7WUFBM0YsZ0VBQTJGO0VBRzdGO0lBQ0UseUVBQWdFO1lBQWhFLGlFQUFnRTtJQUNoRSx5RUFBNEY7WUFBNUYsaUVBQTRGO0VBRzlGO0lBQ0UsZ0ZBQXVFO1lBQXZFLHdFQUF1RTtJQUN2RSwwRUFBNkY7WUFBN0Ysa0VBQTZGO0VBRy9GO0lBQ0Usd0VBQTJGO1lBQTNGLGdFQUEyRjtFK0JYakc7SWpHME5FO0lBQ0EsVWlHcExnRDtJakdzTGhEO0lBQ0EsV0E3Q3FCO0lBNkNyQixjQTdDcUI7SWlHeEluQixvQkFBb0I7SXhJMGpWcEI7TXVDbDRVQTtNQUNBLFVBakRtQjtNQWlEbkIsYUFqRG1CO01BbURuQjtNQUNBLFdpRzlMOEM7O0FBTWxEO0VuSC9DSSxtRFpsQzREO0VZa0M1RCxrQ0NWZ0M7RURVaEMsbUNDVGlDO0VEU2pDLGVDdURpQjtFRHZEakIsb0JDd0RzQjtFRHhEdEIsZ0JDSFU7RURHVix5QkVvQ3lDO0VGcEN6Qyx3QkMyRDBCO0VEM0QxQix1QkM0RHlCO0VrSFYzQiw0QkFBb0I7VUFBcEIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsWUFBWTtFQUNaLHNCQUFzQjtFQUN0Qiw4RDlGdEV1RTtFOEZzRXZFLHNEOUZ0RXVFO0U4RnVFdkUsWUFBWTtFQUNaLHdCQUF3QjtFQUN4QixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCO0VBYmxCO0lBZ0JJLDREOUY5RXFFO0k4RjhFckUsb0Q5RjlFcUU7SThGK0VyRSxVQUFVO0VBakJkO0lBZ0JJLDREOUY5RXFFO0k4RjhFckUsb0Q5RjlFcUU7SThGK0VyRSxVQUFVO0VBakJkO0lBZ0JJLDREOUY5RXFFO0k4RjhFckUsb0Q5RjlFcUU7SThGK0VyRSxVQUFVO0VBakJkO0lBZ0JJLDREOUY5RXFFO0k4RjhFckUsb0Q5RjlFcUU7SThGK0VyRSxVQUFVO0VBakJkO0lBZ0JJLDREOUY5RXFFO0k4RjhFckUsb0Q5RjlFcUU7SThGK0VyRSxVQUFVO0VBakJkO0lBcUJJLGFBQWE7RUFyQmpCO0lBMEJJLGdCQUFnQjs7QUFLcEI7RUFDRSwrQ0FBc0M7VUFBdEMsdUNBQXNDO0VBQ3RDLFlBQVk7O0FDM0JvQjtFQW9NaEMsWUFBWTtFQUNaLGlCQUFpQjtFNUJ2UWpCO0kzRlNJLGlDQ08rRTtFMEZWbkY7STNGR0ksMkJDTytFO0UwRmhCbkY7O0kzRlNJLGlDQ08rRTtFMEZWbkY7O0kzRkdJLDJCQ08rRTtFMEZWbkY7STNGaUNJLGVoQnJEYztJZ0JxRVo7SUFDQSxlQUE0RDtJQUE1RCx5Q0FBNEQ7RXVGeEJsRTtJQUVJLGdEQUFvRDtZQUFwRCx3Q0FBb0Q7RUFZeEQ7SUFDRSxtRkFBeUc7WUFBekcsMkVBQXlHO0UrQmlEN0c7STNCOUVFLGtCNkJXZ0M7RTdCUGhDO0lBQ0Usa0I2Qk04QjtFakhxQ2hDO0lQekRJLDZCdUgwUHNDO0VEbks1QztJdEh2Rk0sNkJ1SDJQMEM7RURwS2hEO0lDMEtJLHFCQUFhO0lBQWIsYUFBYTtJQUNiLHVCQUF1QjtJQUN2Qix1QkFBdUI7SUFDdkIsNkJBQTZCO0lBQzdCLFVBQVU7RUQ5S2Q7SUNrTEksVUFBVTtFRGxMZDtJakd5SUU7SUFDQSxVa0c0Q2dEO0lsRzFDaEQ7SUFDQSxXQTdDcUI7SUE2Q3JCLGNBN0NxQjtJa0d3Rm5CLFdBQVc7SXpJNDZVWDtNdUNwOVVBO01BQ0EsVUFqRG1CO01BaURuQixhQWpEbUI7TUFtRG5CO01BQ0EsV2tHa0M4Qzs7QTVCMVFoRDtFQUNFLGlCNEJ5TjJDOztBRDlIL0M7RXRIL0ZNLDZCdUgrTTJDO0VEaEhqRDtJdEgvRk0seUJDTytFO0UwRmhCbkY7STNGU0ksaUNDTytFO0UwRlZuRjtJM0ZHSSwyQkNPK0U7RXFId0ZyRjtJQ21ISSxtQkFBbUI7O0FEL0d2QjtFQ2lJRSxZQUFZO0VoQzdNWjtJQUVJLGlEQUFvRDtZQUFwRCx5Q0FBb0Q7RUFZeEQ7SUFDRSx5RkFBeUc7WUFBekcsaUZBQXlHO0UrQjZEN0c7SUNvSUksc0JBQXNCO0VEcEkxQjtJQ3dJSSxZQUFZO0VEeEloQjtJQzRJSSxTQUFTOztBRHhJYjtFakd5SEU7RUFDQSxVb0c3T2lDO0VwRytPakM7RUFDQSxXQTdDcUI7RUE2Q3JCLGNBN0NxQjtFdkMwaVZyQjtJdUMxL1VFO0lBQ0EsVUFqRG1CO0lBaURuQixhQWpEbUI7SUFtRG5CO0lBQ0EsV29HdlArQjs7QUhtSG5DO0VqR3lIRTtFQUNBLGtCb0czT2dDO0VwRzZPaEM7RUFDQSxtQm9HaFBpQztFM0l3dlZqQztJdUNyZ1ZFO0lBQ0Esa0JvR3BQK0I7SXBHc1AvQjtJQUNBLG1Cb0dyUDhCOztBSGlIbEM7RWpHeUhFO0VBQ0EsVW9HM09nQztFcEc2T2hDO0VBQ0EsV0E3Q3FCO0VBNkNyQixjQTdDcUI7RXZDZ2tWckI7SXVDaGhWRTtJQUNBLFVBakRtQjtJQWlEbkIsYUFqRG1CO0lBbURuQjtJQUNBLFdvR3JQOEI7O0FsQ2lDaEM7RUFJSSxrRUFB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RURoUWhEO0lDOFFJLHdCQUFnQjtnQkFBaEIsd0JBQWdCO1lBQWhCLGdCQUFnQjtJQUNoQix1QkFBdUI7SUFDdkIsWUFBWTtJQUNaLFNBQVM7SUFDVCxhQWhCa0I7SUFpQmxCLGlCQUErQjtJQUMvQiw2QkFBNkI7RURwUmpDO0l0SGhKTSx1QkNNa0I7SW9CME50QjtJQUNBLFNrR3dNc0M7SWxHdE10QztJQUNBLFFrR3FNZ0Q7SWxHek1oRDtJQUNBLGdCa0d5TWlEO0lsR3ZNakQ7SUFDQSxla0dzTW9EO0lBRWxELFNBekJpQztJQTBCakMsWUFBWTtJQUNaLFdBQVc7SUFDWCxlQUFlO0lBQ2YseUJBQXlCO0lBQ3pCLGlCQUFpQjtJQUNqQixvQkFBb0I7SXpJMGdWcEI7TXVDcnRWQTtNQUNBLE9rR2lNOEM7TWxHL0w5QztNQUNBLFVrRzhMb0M7SXpJd2hWcEM7TXVDMXRWQTtNQUNBLGNrR2tNa0Q7TWxHaE1sRDtNQUNBLGlCa0crTCtDOztBRHRSbkQ7RUM0TUUsV0FBVztFRDVNYjtJQ2tOSSxjQUFjO0loSDdTaEI7TVB6REksNkJ1SG1Xd0M7SUQvTTlDO010SHBKTSw2QnVIb1c0QztJRGhObEQ7TUNxTk0sVUFBVTs7QURqTmhCO0V0SHhKTSw0QndIYndCOztBRjZLNUI7RUFDRSxrQkFBa0I7O0FBR3BCO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjs7QUFHbkI7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCOztBQVVyQjtFQUNFLDhCQUFzQjtVQUF0QixzQkFBc0I7O0FBSXhCO0V0SDFMTSw0QmhCdkJjOztBc0lpTnBCO0V0SDFMTSw0QmhCdkJjOztBc0lpTnBCO0V0SDFMTSw0QmhCdkJjOztBc0lpTnBCO0V0SDFMTSw0QmhCdkJjOztBc0lpTnBCO0V0SDFMTSw0QmhCdkJjOztBc0lpTnBCO0V0SDFMTSw0QmhCdkJjOztBc0lpTnBCO0VDeENJLGNDL0owQjs7QUZ1TTlCO0VDcENJLFVBQVU7O0FEd0NkO0V0SGhLTSxxQmhCckRjO0VnQnFFWjtFQUNBLHFCQUE0RDtFQUE1RCwrQ0FBNEQ7RXNIK0lwRTtJdEhoS00scUJoQnJEYztJZ0JxRVo7SUFDQSxxQkFBNEQ7SUFBNUQsK0NBQTREOztBc0htSnBFO0V0SGxNTSw0QndIYndCOztBRitNOUI7RXRIbE1NLDRCd0hid0I7O0FGK005QjtFdEhsTU0seUJ3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sY3dIYndCOztBRitNOUI7RXRIbE1NLGN3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFdEhsTU0sb0J3SGJ3Qjs7QUYrTTlCO0V0SGxNTSxjd0hid0I7O0FGK005QjtFQ3hESSxVQUFVOztBRDREZDtFdEh0TU0scUJ3SGJ3QjtFRm1OOUI7SXRIdE1NLHFCd0hid0I7O0E3Qkk1QjtFM0ZTSSxxQndIYndCOztBN0JVNUI7RTNGR0ksZXdIYndCOztBN0JJNUI7O0UzRlNJLHFCd0hid0I7O0E3QlU1Qjs7RTNGR0ksZXdIYndCOztBN0JVNUI7RTNGR0ksZXdIYndCOztBRHdGM0I7RXZIM0VHLHlCd0hNdUc7RUQrRzNHLG1CQUFtQjtFQUNuQixvQkFBb0I7RUR3RnRCO0l0SDlNTSx3Q0NPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSwwQkNPK0U7RXFIdU1yRjtJdEg5TU0sMEJDTytFO0VxSHVNckY7SXRIOU1NLDBCQ08rRTtFcUh1TXJGO0l0SDlNTSx5QkNPK0U7RXFIdU1yRjtJdEg5TU0sd0NDTytFO0VxSHVNckY7SUNyRkksZUFBZTs7QUR5Rm5CO0V0SGxOTSxpQ0NPK0U7RURQL0UseUJ3SGtCbUQ7RURxV3ZELHdCQUF3QjtFQUN4QixtQkFBbUI7RUR0S3JCO0l0SGxOTSxpQ0NPK0U7RXFIMk1yRjtJQ3lLSSw2QkFBNkI7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Q3RCLDhCQUE4Qjs7QUFFbEM7QWtHbERBO0VBQ0kseUJBQXlCOztBQUc3QjtFQUNJLFlBQVk7RUFDWixXQUF5QjtFQUN6QixrQkFBa0I7O0FBR3RCO0VBQ0ksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxXQUFXO0VBQ1gsbUJBQW1COztBQUd2QjtFQUNJLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG1CQUFrQjs7QUFHdEI7RUFDSSx5QkFBeUI7O0FBRzdCOztFQUVJLFdBQVc7RUFDWCxZQUFZO0VBQ1osWUFBWTs7QUFHaEI7RUFDSSxnQkFBZ0I7RUFDaEIsWUFBWTs7QUFHaEI7RUFDSSxtQkFBbUI7O0FBR3ZCO0VBQ0ksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxXQUFXO0VBQ1gsbUJBQW1COztBQUd2QjtFQUNJLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLGdCQUFnQiIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLmtteC10aGVtZV9fYmFja2dyb3VuZCxcbi5tZGMtdGhlbWUtLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1rbXgtdGhlbWUtYmFja2dyb3VuZCwgI2ZmZmZmZik7IH1cblxuLyogaW5jcmVhc2VzIHRoZSBzcGVjaWZpY2l0eSBvZiB0aGUgY29udGFpbmVyIGJhY2tncm91bmQgY29sb3Igd2l0aG91dCByZXNvcnRpbmcgdG8gaW1wbGVtZW50aW5nICFpbXBvcnRhbnQ6ICovXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7IH1cblxuOnJvb3Qge1xuICAtLWtteC10aGVtZS10ZXh0LWRpc2FibGVkLW9uLWxpZ2h0OiAjOGM5MTk2O1xuICAtLWtteC10ZXh0LWZpZWxkLXRleHQtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtaW5wdXQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1jYXJldC1jb2xvcjogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1kaXZpZGVyLW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWVycm9yLW9uLWxpZ2h0OiAjZTAxZjFmO1xuICAtLWtteC10ZXh0LWZpZWxkLWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC10ZXh0LW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtZGl2aWRlci1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC11bmRlcmxpbmUtaG92ZXItb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LXRoZW1lLXRleHQtaGludC1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtYm9yZGVyLWNvbG9yOiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1kaXNhYmxlZC1jb2xvcjogIzhjOTE5NjtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWxpZ2h0OiByZ2JhKDUsIDUxLCA5NywgMC43KTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcms6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWxpZ2h0LS1hY3RpdmU6ICMwNTMzNjE7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrLS1hY3RpdmU6IHdoaXRlO1xuICAtLWtteC10aGVtZS1iYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAtLWtteC1mb3JtLWNvbXBvbmVudC1ibHVlOiAjMTc3M2NmOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbi5rbXgtZWxldmF0aW9uLTEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVkZmUwO1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5rbXgtZWxldmF0aW9uLTQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDQyLCA1MiwgNjEsIDAuMTYpOyB9XG5cbi5rbXgtZWxldmF0aW9uLTgge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDhweCAxMnB4IDAgcmdiYSg0MiwgNTIsIDYxLCAwLjE2KTsgfVxuXG4ua214LWVsZXZhdGlvbi0xMiB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAxNnB4IDAgcmdiYSg0MiwgNTIsIDYxLCAwLjE2KTsgfVxuXG4ua214LWVsZXZhdGlvbi0xNiB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMTZweCAyMHB4IDAgcmdiYSg0MiwgNTIsIDYxLCAwLjE2KTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbi5tLTAge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4ubS10LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLm0tci0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm0tYi0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm0teHhzIHtcbiAgbWFyZ2luOiAycHggIWltcG9ydGFudDsgfVxuXG4ubS10LXh4cyB7XG4gIG1hcmdpbi10b3A6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXIteHhzIHtcbiAgbWFyZ2luLXJpZ2h0OiAycHggIWltcG9ydGFudDsgfVxuXG4ubS1iLXh4cyB7XG4gIG1hcmdpbi1ib3R0b206IDJweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwteHhzIHtcbiAgbWFyZ2luLWxlZnQ6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXhzIHtcbiAgbWFyZ2luOiA0cHggIWltcG9ydGFudDsgfVxuXG4ubS10LXhzIHtcbiAgbWFyZ2luLXRvcDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci14cyB7XG4gIG1hcmdpbi1yaWdodDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi14cyB7XG4gIG1hcmdpbi1ib3R0b206IDRweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwteHMge1xuICBtYXJnaW4tbGVmdDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tcyB7XG4gIG1hcmdpbjogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC1zIHtcbiAgbWFyZ2luLXRvcDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci1zIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLXMge1xuICBtYXJnaW4tYm90dG9tOiA4cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLXMge1xuICBtYXJnaW4tbGVmdDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbSB7XG4gIG1hcmdpbjogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtbSB7XG4gIG1hcmdpbi10b3A6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLW0ge1xuICBtYXJnaW4tcmlnaHQ6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLW0ge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC1tIHtcbiAgbWFyZ2luLWxlZnQ6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ubS1sIHtcbiAgbWFyZ2luOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC1sIHtcbiAgbWFyZ2luLXRvcDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItbCB7XG4gIG1hcmdpbi1yaWdodDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItbCB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLWwge1xuICBtYXJnaW4tbGVmdDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXhsIHtcbiAgbWFyZ2luOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC14bCB7XG4gIG1hcmdpbi10b3A6IDMycHggIWltcG9ydGFudDsgfVxuXG4ubS1yLXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi14bCB7XG4gIG1hcmdpbi1ib3R0b206IDMycHggIWltcG9ydGFudDsgfVxuXG4ubS1sLXhsIHtcbiAgbWFyZ2luLWxlZnQ6IDMycHggIWltcG9ydGFudDsgfVxuXG4ubS0yeGwge1xuICBtYXJnaW46IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubS10LTJ4bCB7XG4gIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLTJ4bCB7XG4gIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItMnhsIHtcbiAgbWFyZ2luLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtMnhsIHtcbiAgbWFyZ2luLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubS0zeGwge1xuICBtYXJnaW46IDY0cHggIWltcG9ydGFudDsgfVxuXG4ubS10LTN4bCB7XG4gIG1hcmdpbi10b3A6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLTN4bCB7XG4gIG1hcmdpbi1yaWdodDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItM3hsIHtcbiAgbWFyZ2luLWJvdHRvbTogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtM3hsIHtcbiAgbWFyZ2luLWxlZnQ6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ubS00eGwge1xuICBtYXJnaW46IDcycHggIWltcG9ydGFudDsgfVxuXG4ubS10LTR4bCB7XG4gIG1hcmdpbi10b3A6IDcycHggIWltcG9ydGFudDsgfVxuXG4ubS1yLTR4bCB7XG4gIG1hcmdpbi1yaWdodDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItNHhsIHtcbiAgbWFyZ2luLWJvdHRvbTogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtNHhsIHtcbiAgbWFyZ2luLWxlZnQ6IDcycHggIWltcG9ydGFudDsgfVxuXG4ubS01eGwge1xuICBtYXJnaW46IDk2cHggIWltcG9ydGFudDsgfVxuXG4ubS10LTV4bCB7XG4gIG1hcmdpbi10b3A6IDk2cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLTV4bCB7XG4gIG1hcmdpbi1yaWdodDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItNXhsIHtcbiAgbWFyZ2luLWJvdHRvbTogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtNXhsIHtcbiAgbWFyZ2luLWxlZnQ6IDk2cHggIWltcG9ydGFudDsgfVxuXG4ucC0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLnAtci0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5wLWItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnAtbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnAteHhzIHtcbiAgcGFkZGluZzogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC14eHMge1xuICBwYWRkaW5nLXRvcDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci14eHMge1xuICBwYWRkaW5nLXJpZ2h0OiAycHggIWltcG9ydGFudDsgfVxuXG4ucC1iLXh4cyB7XG4gIHBhZGRpbmctYm90dG9tOiAycHggIWltcG9ydGFudDsgfVxuXG4ucC1sLXh4cyB7XG4gIHBhZGRpbmctbGVmdDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAteHMge1xuICBwYWRkaW5nOiA0cHggIWltcG9ydGFudDsgfVxuXG4ucC10LXhzIHtcbiAgcGFkZGluZy10b3A6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXIteHMge1xuICBwYWRkaW5nLXJpZ2h0OiA0cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLXhzIHtcbiAgcGFkZGluZy1ib3R0b206IDRweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwteHMge1xuICBwYWRkaW5nLWxlZnQ6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXMge1xuICBwYWRkaW5nOiA4cHggIWltcG9ydGFudDsgfVxuXG4ucC10LXMge1xuICBwYWRkaW5nLXRvcDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci1zIHtcbiAgcGFkZGluZy1yaWdodDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi1zIHtcbiAgcGFkZGluZy1ib3R0b206IDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtcyB7XG4gIHBhZGRpbmctbGVmdDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbSB7XG4gIHBhZGRpbmc6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ucC10LW0ge1xuICBwYWRkaW5nLXRvcDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItbSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtbSB7XG4gIHBhZGRpbmctbGVmdDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwge1xuICBwYWRkaW5nOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC1sIHtcbiAgcGFkZGluZy10b3A6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLWwge1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi1sIHtcbiAgcGFkZGluZy1ib3R0b206IDI0cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLWwge1xuICBwYWRkaW5nLWxlZnQ6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ucC14bCB7XG4gIHBhZGRpbmc6IDMycHggIWltcG9ydGFudDsgfVxuXG4ucC10LXhsIHtcbiAgcGFkZGluZy10b3A6IDMycHggIWltcG9ydGFudDsgfVxuXG4ucC1yLXhsIHtcbiAgcGFkZGluZy1yaWdodDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLWIteGwge1xuICBwYWRkaW5nLWJvdHRvbTogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwteGwge1xuICBwYWRkaW5nLWxlZnQ6IDMycHggIWltcG9ydGFudDsgfVxuXG4ucC0yeGwge1xuICBwYWRkaW5nOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC0yeGwge1xuICBwYWRkaW5nLXRvcDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItMnhsIHtcbiAgcGFkZGluZy1yaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItMnhsIHtcbiAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLTJ4bCB7XG4gIHBhZGRpbmctbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLTN4bCB7XG4gIHBhZGRpbmc6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ucC10LTN4bCB7XG4gIHBhZGRpbmctdG9wOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci0zeGwge1xuICBwYWRkaW5nLXJpZ2h0OiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi0zeGwge1xuICBwYWRkaW5nLWJvdHRvbTogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtM3hsIHtcbiAgcGFkZGluZy1sZWZ0OiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtNHhsIHtcbiAgcGFkZGluZzogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtNHhsIHtcbiAgcGFkZGluZy10b3A6IDcycHggIWltcG9ydGFudDsgfVxuXG4ucC1yLTR4bCB7XG4gIHBhZGRpbmctcmlnaHQ6IDcycHggIWltcG9ydGFudDsgfVxuXG4ucC1iLTR4bCB7XG4gIHBhZGRpbmctYm90dG9tOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC00eGwge1xuICBwYWRkaW5nLWxlZnQ6IDcycHggIWltcG9ydGFudDsgfVxuXG4ucC01eGwge1xuICBwYWRkaW5nOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC01eGwge1xuICBwYWRkaW5nLXRvcDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItNXhsIHtcbiAgcGFkZGluZy1yaWdodDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItNXhsIHtcbiAgcGFkZGluZy1ib3R0b206IDk2cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLTV4bCB7XG4gIHBhZGRpbmctbGVmdDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi53LTAge1xuICB3aWR0aDogMCAhaW1wb3J0YW50OyB9XG5cbi53LXh4cyB7XG4gIHdpZHRoOiAycHggIWltcG9ydGFudDsgfVxuXG4udy14cyB7XG4gIHdpZHRoOiA0cHggIWltcG9ydGFudDsgfVxuXG4udy1zIHtcbiAgd2lkdGg6IDhweCAhaW1wb3J0YW50OyB9XG5cbi53LW0ge1xuICB3aWR0aDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi53LWwge1xuICB3aWR0aDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi53LXhsIHtcbiAgd2lkdGg6IDMycHggIWltcG9ydGFudDsgfVxuXG4udy0yeGwge1xuICB3aWR0aDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi53LTN4bCB7XG4gIHdpZHRoOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLnctNHhsIHtcbiAgd2lkdGg6IDcycHggIWltcG9ydGFudDsgfVxuXG4udy01eGwge1xuICB3aWR0aDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5oLTAge1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4uaC14eHMge1xuICBoZWlnaHQ6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5oLXhzIHtcbiAgaGVpZ2h0OiA0cHggIWltcG9ydGFudDsgfVxuXG4uaC1zIHtcbiAgaGVpZ2h0OiA4cHggIWltcG9ydGFudDsgfVxuXG4uaC1tIHtcbiAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtbCB7XG4gIGhlaWdodDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5oLXhsIHtcbiAgaGVpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtMnhsIHtcbiAgaGVpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtM3hsIHtcbiAgaGVpZ2h0OiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtNHhsIHtcbiAgaGVpZ2h0OiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtNXhsIHtcbiAgaGVpZ2h0OiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbjpyb290IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS41NjI1ZW07IH1cblxuLmtteC10eXBvZ3JhcGh5IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmOyB9XG5cbi5rbXgtdHlwb2dyYXBoeS0tZGlzcGxheS0xIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg2O1xuICBjb2xvcjogIzA1MzM2MTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzcuNWVtKSB7XG4gICAgLmtteC10eXBvZ3JhcGh5LS1kaXNwbGF5LTEge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7IH0gfVxuXG4ua214LXR5cG9ncmFwaHktLWRpc3BsYXktMiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMTNweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjMDUzMzYxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAua214LXR5cG9ncmFwaHktLWRpc3BsYXktMiB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjI1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfSB9XG5cbi5rbXgtdHlwb2dyYXBoeS0tZGlzcGxheS0zIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4yNXB4O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgY29sb3I6ICMwNTMzNjE7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgIC5rbXgtdHlwb2dyYXBoeS0tZGlzcGxheS0zIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMzhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI0OyB9IH1cblxuLmtteC10eXBvZ3JhcGh5LS1kaXNwbGF5LTQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjM4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI0O1xuICBjb2xvcjogIzA1MzM2MTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzcuNWVtKSB7XG4gICAgLmtteC10eXBvZ3JhcGh5LS1kaXNwbGF5LTQge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMzFweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTgwNjsgfSB9XG5cbi5rbXgtdHlwb2dyYXBoeS0tZGlzcGxheS01IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDMxcHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1ODA2O1xuICBjb2xvcjogIzA1MzM2MTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzcuNWVtKSB7XG4gICAgLmtteC10eXBvZ3JhcGh5LS1kaXNwbGF5LTUge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMzlweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC42M3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjMwNzc7IH0gfVxuXG4ua214LXR5cG9ncmFwaHktLWRpc3BsYXktNiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAzOXB4O1xuICBsZXR0ZXItc3BhY2luZzogLTAuNjNweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjMwNzc7XG4gIGNvbG9yOiAjMDUzMzYxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAua214LXR5cG9ncmFwaHktLWRpc3BsYXktNiB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjc1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNzA4MzsgfSB9XG5cbi5rbXgtdHlwb2dyYXBoeS0taGVhZGxpbmUtMSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwNTMzNjE7IH1cblxuLmtteC10eXBvZ3JhcGh5LS1oZWFkbGluZS0yIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDUzMzYxOyB9XG5cbi5rbXgtdHlwb2dyYXBoeS0taGVhZGxpbmUtMyB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS41NTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwNTMzNjE7IH1cblxuLmtteC10eXBvZ3JhcGh5LS1ib2R5LTEge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGNvbG9yOiAjNmQ3NDdhOyB9XG5cbnAsXG4ua214LXR5cG9ncmFwaHktLWJvZHktMiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS41NjI1O1xuICBjb2xvcjogIzZkNzQ3YTsgfVxuXG4ua214LXR5cG9ncmFwaHktLWJvZHktMyB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS41NTtcbiAgY29sb3I6ICM2ZDc0N2E7IH1cblxuLmtteC10eXBvZ3JhcGh5LS1maW5lLXByaW50IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzO1xuICBjb2xvcjogIzZkNzQ3YTsgfVxuXG4ua214LXR5cG9ncmFwaHktLWVtcGhhc2lzIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDMxcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU0ODM5O1xuICBjb2xvcjogIzE3NzNjZjsgfVxuXG4ua214LXR5cG9ncmFwaHktLWxhYmVsLXNtIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzO1xuICBjb2xvcjogIzZkNzQ3YTsgfVxuXG4ua214LXR5cG9ncmFwaHktLWxhYmVsLWxnIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gIGNvbG9yOiAjNmQ3NDdhOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG5ibG9ja3F1b3RlLFxuZmlndXJlLFxuZmlnY2FwdGlvbiB7XG4gIG1hcmdpbjogMDsgfVxuXG5ibG9ja3F1b3RlIHAge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMzFweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTQ4Mzk7XG4gIGNvbG9yOiAjMTc3M2NmOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNy40OWVtKSB7XG4gICAgYmxvY2txdW90ZSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTsgfSB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMjRweCAwOyB9XG5cbmZpZ2NhcHRpb24ge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGNvbG9yOiAjNmQ3NDdhOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgICAgIGNvbG9yOiAjNmQ3NDdhOyB9IH1cblxub2wsXG51bCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS41NjI1O1xuICBjb2xvcjogIzZkNzQ3YTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7IH1cbiAgb2wgbGksXG4gIHVsIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG4gIG9sIGxpLFxuICB1bCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4vKiBUaGUgQmFzZSBIeXBlcmxpbmsgU3R5bGUgZm9yIENhck1heC5jb21cclxuICpcclxuICogU2ltcGxlIGh5cGVybGlua3MsIHN1Y2ggYXMgdGhvc2UgdXNlZCB3aXRoaW4gcnVubmluZyB0ZXh0LCBzaG91bGQgbm90XHJcbiAqIHJlcXVpcmUgYSBDU1MgY2xhc3MgYXNzaWdubWVudC4gVGhpc1xyXG4gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG5hOm5vdCgubWRjLXRhYik6bm90KC5rbXgtYnV0dG9uKTpub3QoLmtteC1wYWdpbmF0aW9uX19saXN0LWl0ZW0tbGluayk6bm90KC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluayk6bGluayB7XG4gIGNvbG9yOiAjMTc3M2NmOyB9XG5cbmE6bm90KC5tZGMtdGFiKTpub3QoLmtteC1idXR0b24pOm5vdCgua214LXBhZ2luYXRpb25fX2xpc3QtaXRlbS1saW5rKTpub3QoLmtteC1zdG9yZXMtbGlzdC1pdGVtX19saW5rKTp2aXNpdGVkIHtcbiAgY29sb3I6ICMxNzczY2Y7IH1cblxuYTpub3QoLm1kYy10YWIpOm5vdCgua214LWJ1dHRvbik6bm90KC5rbXgtcGFnaW5hdGlvbl9fbGlzdC1pdGVtLWxpbmspOm5vdCgua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xpbmspOmhvdmVyLCBhOm5vdCgubWRjLXRhYik6bm90KC5rbXgtYnV0dG9uKTpub3QoLmtteC1wYWdpbmF0aW9uX19saXN0LWl0ZW0tbGluayk6bm90KC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluayk6dmlzaXRlZDpob3ZlciwgYTpub3QoLm1kYy10YWIpOm5vdCgua214LWJ1dHRvbik6bm90KC5rbXgtcGFnaW5hdGlvbl9fbGlzdC1pdGVtLWxpbmspOm5vdCgua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xpbmspOmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDA0NDg3OyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIFNwZWNpYWwgb3ZlcnJpZGUgY2xhc3MgLSBvbmx5IHRvIGJlIHVzZWQgb24gPGE+IGVsZW1lbnRzOiAqL1xuLmtteC10eXBvZ3JhcGh5LS1saW5rOmxpbmsge1xuICBjb2xvcjogIzE3NzNjZjsgfVxuXG4ua214LXR5cG9ncmFwaHktLWxpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiAjMTc3M2NmOyB9XG5cbi5rbXgtdHlwb2dyYXBoeS0tbGluazpob3ZlciwgLmtteC10eXBvZ3JhcGh5LS1saW5rOnZpc2l0ZWQ6aG92ZXIsIC5rbXgtdHlwb2dyYXBoeS0tbGluazphY3RpdmUge1xuICBjb2xvcjogIzAwNDQ4NzsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xub2wsXG51bCxcbi5rbXgtdHlwb2dyYXBoeS0tb2wsXG4ua214LXR5cG9ncmFwaHktLXVsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gIGNvbG9yOiAjNmQ3NDdhO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZSAqLyB9XG4gIG9sIGxpLFxuICB1bCBsaSxcbiAgLmtteC10eXBvZ3JhcGh5LS1vbCBsaSxcbiAgLmtteC10eXBvZ3JhcGh5LS11bCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDsgfVxuXG4ua214LXR5cG9ncmFwaHktLWxpc3QtdW5zdHlsZWQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgY29sb3I6ICM2ZDc0N2E7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi8gfVxuICAua214LXR5cG9ncmFwaHktLWxpc3QtdW5zdHlsZWQgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuLmtteC10eXBvZ3JhcGh5LS1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ua214LXR5cG9ncmFwaHktLWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmtteC10eXBvZ3JhcGh5LS1mb250LW1haW4ge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7IH1cblxuLmtteC10eXBvZ3JhcGh5LS1mb250LWFsdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjsgfVxuXG4ua214LXR5cG9ncmFwaHktLWZvbnQtbW9ubyB7XG4gIGZvbnQtZmFtaWx5OiBcIkNvdXJpZXIgTmV3XCIsIENvbnNvbGFzLCBDb3VyaWVyLCBtb25vc3BhY2U7IH1cblxuLmtteC10eXBvZ3JhcGh5LS13ZWlnaHQtNDAwIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4ua214LXR5cG9ncmFwaHktLXdlaWdodC02MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5rbXgtdHlwb2dyYXBoeS0td2VpZ2h0LTcwMCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLm5vLXdyYXAsXG4udGV4dC1uby13cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udGV4dC1jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LXN0cmlrZS10aHJvdWdoIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7IH1cblxuOnJvb3Qge1xuICAtLW1kYy10aGVtZS1wcmltYXJ5OiAjMDUzMzYxO1xuICAtLW1kYy10aGVtZS1zZWNvbmRhcnk6ICNmZmQ5MDA7XG4gIC0tbWRjLXRoZW1lLWJhY2tncm91bmQ6ICNmZmY7XG4gIC0tbWRjLXRoZW1lLXN1cmZhY2U6ICNmZmY7XG4gIC0tbWRjLXRoZW1lLW9uLXByaW1hcnk6ICNmZmY7XG4gIC0tbWRjLXRoZW1lLW9uLXNlY29uZGFyeTogIzAwMDtcbiAgLS1tZGMtdGhlbWUtb24tc3VyZmFjZTogIzAwMDtcbiAgLS1tZGMtdGhlbWUtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC0tbWRjLXRoZW1lLXRleHQtc2Vjb25kYXJ5LW9uLWJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG4gIC0tbWRjLXRoZW1lLXRleHQtaGludC1vbi1iYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAtLW1kYy10aGVtZS10ZXh0LWRpc2FibGVkLW9uLWJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gIC0tbWRjLXRoZW1lLXRleHQtaWNvbi1vbi1iYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAtLW1kYy10aGVtZS10ZXh0LXByaW1hcnktb24tbGlnaHQ6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC0tbWRjLXRoZW1lLXRleHQtc2Vjb25kYXJ5LW9uLWxpZ2h0OiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICAtLW1kYy10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gIC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gIC0tbWRjLXRoZW1lLXRleHQtaWNvbi1vbi1saWdodDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbiAgLS1tZGMtdGhlbWUtdGV4dC1wcmltYXJ5LW9uLWRhcms6IHdoaXRlO1xuICAtLW1kYy10aGVtZS10ZXh0LXNlY29uZGFyeS1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0tbWRjLXRoZW1lLXRleHQtaGludC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtLW1kYy10aGVtZS10ZXh0LWljb24tb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi5tZGMtdGhlbWUtLXByaW1hcnkge1xuICBjb2xvcjogIzA1MzM2MSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSkgIWltcG9ydGFudDsgfVxuXG4ubWRjLXRoZW1lLS1zZWNvbmRhcnkge1xuICBjb2xvcjogI2ZmZDkwMCAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjZmZkOTAwKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmKTsgfVxuXG4ubWRjLXRoZW1lLS1zdXJmYWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc3VyZmFjZSwgI2ZmZik7IH1cblxuLm1kYy10aGVtZS0tb24tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1wcmltYXJ5LCAjZmZmKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLW9uLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zZWNvbmRhcnksICMwMDApICFpbXBvcnRhbnQ7IH1cblxuLm1kYy10aGVtZS0tb24tc3VyZmFjZSB7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zdXJmYWNlLCAjMDAwKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NykgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtc2Vjb25kYXJ5LW9uLWJhY2tncm91bmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1zZWNvbmRhcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSkgIWltcG9ydGFudDsgfVxuXG4ubWRjLXRoZW1lLS10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSkgIWltcG9ydGFudDsgfVxuXG4ubWRjLXRoZW1lLS10ZXh0LWRpc2FibGVkLW9uLWJhY2tncm91bmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtaWNvbi1vbi1iYWNrZ3JvdW5kIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCkgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtcHJpbWFyeS1vbi1saWdodCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LXByaW1hcnktb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC44NykpICFpbXBvcnRhbnQ7IH1cblxuLm1kYy10aGVtZS0tdGV4dC1zZWNvbmRhcnktb24tbGlnaHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1zZWNvbmRhcnktb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC41NCkpICFpbXBvcnRhbnQ7IH1cblxuLm1kYy10aGVtZS0tdGV4dC1oaW50LW9uLWxpZ2h0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCkgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtaGludC1vbi1saWdodCwgcmdiYSgwLCAwLCAwLCAwLjM4KSkgIWltcG9ydGFudDsgfVxuXG4ubWRjLXRoZW1lLS10ZXh0LWRpc2FibGVkLW9uLWxpZ2h0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCkgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpICFpbXBvcnRhbnQ7IH1cblxuLm1kYy10aGVtZS0tdGV4dC1pY29uLW9uLWxpZ2h0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCkgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtaWNvbi1vbi1saWdodCwgcmdiYSgwLCAwLCAwLCAwLjM4KSkgIWltcG9ydGFudDsgfVxuXG4ubWRjLXRoZW1lLS10ZXh0LXByaW1hcnktb24tZGFyayB7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1wcmltYXJ5LW9uLWRhcmssIHdoaXRlKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtc2Vjb25kYXJ5LW9uLWRhcmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LXNlY29uZGFyeS1vbi1kYXJrLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykpICFpbXBvcnRhbnQ7IH1cblxuLm1kYy10aGVtZS0tdGV4dC1oaW50LW9uLWRhcmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LWhpbnQtb24tZGFyaywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtZGlzYWJsZWQtb24tZGFyayB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tZGFyaywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXRleHQtaWNvbi1vbi1kYXJrIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1pY29uLW9uLWRhcmssIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSkgIWltcG9ydGFudDsgfVxuXG4ubWRjLXRoZW1lLS1wcmltYXJ5LWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MSAhaW1wb3J0YW50O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdGhlbWUtLXNlY29uZGFyeS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDAgIWltcG9ydGFudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjZmZkOTAwKSAhaW1wb3J0YW50OyB9XG5cbi5tZGMtdHlwb2dyYXBoeSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cblxuLm1kYy10eXBvZ3JhcGh5LS1oZWFkbGluZTEge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDZyZW07XG4gIGxpbmUtaGVpZ2h0OiA2cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDE1NjNlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgfVxuXG4ubWRjLXR5cG9ncmFwaHktLWhlYWRsaW5lMiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMy43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMDgzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbi5tZGMtdHlwb2dyYXBoeS0taGVhZGxpbmUzIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMy4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7IH1cblxuLm1kYy10eXBvZ3JhcGh5LS1oZWFkbGluZTQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDIuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMDczNWVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbi5tZGMtdHlwb2dyYXBoeS0taGVhZGxpbmU1IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbi5tZGMtdHlwb2dyYXBoeS0taGVhZGxpbmU2IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNWVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbi5tZGMtdHlwb2dyYXBoeS0tc3VidGl0bGUxIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgfVxuXG4ubWRjLXR5cG9ncmFwaHktLXN1YnRpdGxlMiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA3MTRlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgfVxuXG4ubWRjLXR5cG9ncmFwaHktLWJvZHkxIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzEyNWVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbi5tZGMtdHlwb2dyYXBoeS0tYm9keTIge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE3ODZlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgfVxuXG4ubWRjLXR5cG9ncmFwaHktLWNhcHRpb24ge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbi5tZGMtdHlwb2dyYXBoeS0tYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4OTI5ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ubWRjLXR5cG9ncmFwaHktLW92ZXJsaW5lIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTY2NjdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbi5rbXgtYnJlYWRjcnVtYi13cmFwcGVyIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICM4YzkxOTY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGhlaWdodDogMThweDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCovIH1cbiAgLmtteC1icmVhZGNydW1iLXdyYXBwZXIgLnN2Zy1pY29uIHtcbiAgICB3aWR0aDogOHB4O1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqLyB9XG4gICAgLmtteC1icmVhZGNydW1iLXdyYXBwZXIgLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBoZWlnaHQ6IDlweDsgfVxuICAua214LWJyZWFkY3J1bWItd3JhcHBlciAua214LWJyZWFkY3J1bWIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmtteC1icmVhZGNydW1iLXdyYXBwZXIgLmtteC1icmVhZGNydW1iLWxpc3QtaXRlbSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSovIH1cbiAgICAgIC5rbXgtYnJlYWRjcnVtYi13cmFwcGVyIC5rbXgtYnJlYWRjcnVtYi1saXN0LWl0ZW0gYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgM3B4OyB9XG4gICAgICAgIC5rbXgtYnJlYWRjcnVtYi13cmFwcGVyIC5rbXgtYnJlYWRjcnVtYi1saXN0LWl0ZW0gYTpob3ZlciBzdmcsIC5rbXgtYnJlYWRjcnVtYi13cmFwcGVyIC5rbXgtYnJlYWRjcnVtYi1saXN0LWl0ZW0gYTphY3RpdmUgc3ZnIHtcbiAgICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cbiAgICAua214LWJyZWFkY3J1bWItd3JhcHBlciAua214LWJyZWFkY3J1bWItaG9tZSB7XG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSovIH1cbiAgICAgIC5rbXgtYnJlYWRjcnVtYi13cmFwcGVyIC5rbXgtYnJlYWRjcnVtYi1ob21lIGEge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAua214LWJyZWFkY3J1bWItd3JhcHBlciAua214LWJyZWFkY3J1bWItaG9tZSBzdmcge1xuICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDE2cHg7IH1cbiAgICAua214LWJyZWFkY3J1bWItd3JhcHBlciAua214LWJyZWFkY3J1bWItc2VwYXJhdG9yIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLmtteC1icmVhZGNydW1iLXdyYXBwZXIgLmtteC1icmVhZGNydW1iIFtpdGVtcHJvcD0nbmFtZSddIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmtteC1icmVhZGNydW1iLXdyYXBwZXIgW2FyaWEtY3VycmVudD0ncGFnZSddIHtcbiAgICBjb2xvcjogIzhjOTE5NiAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxuLm1kYy10aGVtZS0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmZmZmKTsgfVxuXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuXG46cm9vdCB7XG4gIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICM4YzkxOTY7XG4gIC0ta214LXRleHQtZmllbGQtdGV4dC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC1pbnB1dC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWRpdmlkZXItb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICNlMDFmMWY7XG4gIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLXRleHQtb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLXVuZGVybGluZS1ob3Zlci1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1ib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiAjOGM5MTk2O1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6IHJnYmEoNSwgNTEsIDk3LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQtLWFjdGl2ZTogIzA1MzM2MTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogd2hpdGU7XG4gIC0ta214LXRoZW1lLWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC0ta214LWZvcm0tY29tcG9uZW50LWJsdWU6ICMxNzczY2Y7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZCxcbi5tZGMtdGhlbWUtLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1rbXgtdGhlbWUtYmFja2dyb3VuZCwgI2ZmZmZmZik7IH1cblxuLyogaW5jcmVhc2VzIHRoZSBzcGVjaWZpY2l0eSBvZiB0aGUgY29udGFpbmVyIGJhY2tncm91bmQgY29sb3Igd2l0aG91dCByZXNvcnRpbmcgdG8gaW1wbGVtZW50aW5nICFpbXBvcnRhbnQ6ICovXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7IH1cblxuOnJvb3Qge1xuICAtLWtteC10aGVtZS10ZXh0LWRpc2FibGVkLW9uLWxpZ2h0OiAjOGM5MTk2O1xuICAtLWtteC10ZXh0LWZpZWxkLXRleHQtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtaW5wdXQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1jYXJldC1jb2xvcjogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1kaXZpZGVyLW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWVycm9yLW9uLWxpZ2h0OiAjZTAxZjFmO1xuICAtLWtteC10ZXh0LWZpZWxkLWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC10ZXh0LW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtZGl2aWRlci1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC11bmRlcmxpbmUtaG92ZXItb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LXRoZW1lLXRleHQtaGludC1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtYm9yZGVyLWNvbG9yOiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1kaXNhYmxlZC1jb2xvcjogIzhjOTE5NjtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWxpZ2h0OiByZ2JhKDUsIDUxLCA5NywgMC43KTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcms6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWxpZ2h0LS1hY3RpdmU6ICMwNTMzNjE7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrLS1hY3RpdmU6IHdoaXRlO1xuICAtLWtteC10aGVtZS1iYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAtLWtteC1mb3JtLWNvbXBvbmVudC1ibHVlOiAjMTc3M2NmOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4ua214LWJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wODkyOWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBwYWRkaW5nOiAwIDhweCAwIDhweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogNjRweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgcGFkZGluZzogMCAxNnB4OyB9XG4gIC5rbXgtYnV0dG9uOjpiZWZvcmUsIC5rbXgtYnV0dG9uOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLmtteC1idXR0b246OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5rbXgtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLmtteC1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgLmtteC1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLmtteC1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAyMjVtcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBmb3J3YXJkcywgNzVtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7IH1cbiAgLmtteC1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDE1MG1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5rbXgtYnV0dG9uOjpiZWZvcmUsIC5rbXgtYnV0dG9uOjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDEwMCUpO1xuICAgIHdpZHRoOiAyMDAlO1xuICAgIGhlaWdodDogMjAwJTsgfVxuICAua214LWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5rbXgtYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDsgfVxuICAua214LWJ1dHRvbjphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLmtteC1idXR0b246aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAua214LWJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5rbXgtYnV0dG9uOmJlZm9yZSwgLmtteC1idXR0b246YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAua214LWJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZS1jb2xvcjogIzE3NzNjZjtcbiAgICBvdXRsaW5lLXN0eWxlOiBhdXRvO1xuICAgIG91dGxpbmUtd2lkdGg6IGluaXRpYWw7IH1cbiAgLmtteC1idXR0b24gLnN2Zy1pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDFlbTtcbiAgICBtaW4td2lkdGg6IDFlbTtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAgIC5rbXgtYnV0dG9uIC5zdmctaWNvbiBzdmcge1xuICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5rbXgtYnV0dG9uIC5zdmctaWNvbiB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbjogMCA4cHggMCAwOyB9XG4gICAgLmtteC1idXR0b24gLnN2Zy1pY29uLmljb24tYWZ0ZXIge1xuICAgICAgbWFyZ2luOiAwIDAgMCA4cHg7IH1cbiAgLmtteC1idXR0b24gLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmtteC1idXR0b24tLXByaW1hcnkge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgICAua214LWJ1dHRvbi0tcHJpbWFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkOTAwOyB9XG4gICAgLmtteC1idXR0b24tLXByaW1hcnk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LWJ1dHRvbi0tcHJpbWFyeTpob3ZlciwgLmtteC1idXR0b24tLXByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZWMzZjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgICAua214LWJ1dHRvbi0tcHJpbWFyeTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzAwMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgLmtteC1idXR0b24tLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBwYWRkaW5nOiAwIDE1cHggMCAxNXB4O1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMG1zIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgLmtteC1idXR0b24tLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmtteC1idXR0b24tLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjb2xvcjogIzA1MzM2MTsgfVxuICAgIC5rbXgtYnV0dG9uLS1zZWNvbmRhcnk6ZGlzYWJsZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XG4gICAgLmtteC1idXR0b24tLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LWJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLCAua214LWJ1dHRvbi0tc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMG1zIGxpbmVhcjsgfVxuICAgICAgLmtteC1idXR0b24tLXNlY29uZGFyeTpob3Zlcjpub3QoOmRpc2FibGVkKSwgLmtteC1idXR0b24tLXNlY29uZGFyeTpmb2N1czpub3QoOmRpc2FibGVkKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE3NzNjZjsgfVxuICAgIC5rbXgtYnV0dG9uLS1zZWNvbmRhcnk6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWRmZTA7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMjBtcyBsaW5lYXI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgICAua214LWJ1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZTpub3QoOmRpc2FibGVkKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzA1MzM2MTsgfVxuICAua214LWJ1dHRvbi0tdGVydGlhcnkge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDIwbXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgICAua214LWJ1dHRvbi0tdGVydGlhcnk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAua214LWJ1dHRvbi0tdGVydGlhcnk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LWJ1dHRvbi0tdGVydGlhcnk6aG92ZXIsIC5rbXgtYnV0dG9uLS10ZXJ0aWFyeTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzE3NzNjZjtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5OmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVkZmUwO1xuICAgICAgY29sb3I6ICMwNTMzNjE7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGNvbG9yOiAjMDUzMzYxOyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOmhvdmVyLCAua214LWJ1dHRvbi0tdGVydGlhcnktd2hpdGU6Zm9jdXMge1xuICAgICAgY29sb3I6ICMxNzczY2Y7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjsgfVxuICAgIC5rbXgtYnV0dG9uLS10ZXJ0aWFyeS13aGl0ZTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGZlMDtcbiAgICAgIGNvbG9yOiAjMDUzMzYxO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMG1zIGxpbmVhcjtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMiwgMjIzLCAyMjQsIDAuOCk7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjsgfVxuXG4ua214LWJ1dHRvbi0tcmFpc2VkLFxuLmtteC1idXR0b24tLXVuZWxldmF0ZWQge1xuICBwYWRkaW5nOiAwIDE2cHg7IH1cblxuLmtteC1idXR0b24tLXJhaXNlZCB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAua214LWJ1dHRvbi0tcmFpc2VkOmhvdmVyLCAua214LWJ1dHRvbi0tcmFpc2VkOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDRweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAua214LWJ1dHRvbi0tcmFpc2VkOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG4gIC5rbXgtYnV0dG9uLS1yYWlzZWQ6ZGlzYWJsZWQge1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuXG4ua214LWJ1dHRvbi0tdW5lbGV2YXRlZDpkaXNhYmxlZCwgLmtteC1idXR0b24tLXVuZWxldmF0ZWRbZGlzYWJsZWRdLFxuLmtteC1idXR0b24tLXJhaXNlZDpkaXNhYmxlZCxcbi5rbXgtYnV0dG9uLS1yYWlzZWRbZGlzYWJsZWRdLFxuLmtteC1idXR0b246ZGlzYWJsZWQsXG4ua214LWJ1dHRvbltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYWNjO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjOGM5MTk2OyB9XG5cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4ua214LWljb24tYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4OTI5ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIHBhZGRpbmc6IDAgOHB4IDAgOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWluLXdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nOiAwIDE2cHg7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5rbXgtaWNvbi1idXR0b246OmJlZm9yZSwgLmtteC1pY29uLWJ1dHRvbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5rbXgtaWNvbi1idXR0b246OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5rbXgtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAua214LWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5rbXgtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLmtteC1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDIyNW1zIG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIGZvcndhcmRzLCA3NW1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiBmb3J3YXJkczsgfVxuICAua214LWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAxNTBtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAua214LWljb24tYnV0dG9uOjpiZWZvcmUsIC5rbXgtaWNvbi1idXR0b246OmFmdGVyIHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMTAwJSk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTAwJSk7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgaGVpZ2h0OiAyMDAlOyB9XG4gIC5rbXgtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTsgfVxuICAua214LWljb24tYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDsgfVxuICAua214LWljb24tYnV0dG9uOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAua214LWljb24tYnV0dG9uOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmtteC1pY29uLWJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5rbXgtaWNvbi1idXR0b246YmVmb3JlLCAua214LWljb24tYnV0dG9uOmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLmtteC1pY29uLWJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZS1jb2xvcjogIzE3NzNjZjtcbiAgICBvdXRsaW5lLXN0eWxlOiBhdXRvO1xuICAgIG91dGxpbmUtd2lkdGg6IGluaXRpYWw7IH1cbiAgLmtteC1pY29uLWJ1dHRvbiAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLWhlaWdodDogMWVtO1xuICAgIG1pbi13aWR0aDogMWVtO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbiAuc3ZnLWljb24gc3ZnIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAua214LWljb24tYnV0dG9uIC5zdmctaWNvbiB7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBtaW4taGVpZ2h0OiAyNHB4O1xuICAgIG1pbi13aWR0aDogMjRweDtcbiAgICB3aWR0aDogMjRweDsgfVxuICAua214LWljb24tYnV0dG9uIC5zdmctaWNvbi13cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5rbXgtaWNvbi1idXR0b24tLXByaW1hcnkge1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMG1zIGxpbmVhcjsgfVxuICAgIC5rbXgtaWNvbi1idXR0b24tLXByaW1hcnk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDsgfVxuICAgIC5rbXgtaWNvbi1idXR0b24tLXByaW1hcnk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LWljb24tYnV0dG9uLS1wcmltYXJ5OmJlZm9yZSwgLmtteC1pY29uLWJ1dHRvbi0tcHJpbWFyeTphZnRlciB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAua214LWljb24tYnV0dG9uLS1wcmltYXJ5OmhvdmVyLCAua214LWljb24tYnV0dG9uLS1wcmltYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbi0tcHJpbWFyeTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzAwMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgLmtteC1pY29uLWJ1dHRvbi0tc2Vjb25kYXJ5IHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIHBhZGRpbmc6IDAgMTVweCAwIDE1cHg7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwbXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5rbXgtaWNvbi1idXR0b24tLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbi0tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGNvbG9yOiAjMDUzMzYxOyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbi0tc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTsgfVxuICAgIC5rbXgtaWNvbi1idXR0b24tLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LWljb24tYnV0dG9uLS1zZWNvbmRhcnk6YmVmb3JlLCAua214LWljb24tYnV0dG9uLS1zZWNvbmRhcnk6YWZ0ZXIge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLCAua214LWljb24tYnV0dG9uLS1zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgICAua214LWljb24tYnV0dG9uLS1zZWNvbmRhcnk6aG92ZXI6bm90KDpkaXNhYmxlZCksIC5rbXgtaWNvbi1idXR0b24tLXNlY29uZGFyeTpmb2N1czpub3QoOmRpc2FibGVkKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE3NzNjZjsgfVxuICAgIC5rbXgtaWNvbi1idXR0b24tLXNlY29uZGFyeTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGZlMDtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMG1zIGxpbmVhcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgICAgIC5rbXgtaWNvbi1idXR0b24tLXNlY29uZGFyeTphY3RpdmU6bm90KDpkaXNhYmxlZCkge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LWljb24tYnV0dG9uLS1zZWNvbmRhcnk6ZGlzYWJsZWQge1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gIC5rbXgtaWNvbi1idXR0b24tLXRlcnRpYXJ5IHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbi0tdGVydGlhcnk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAua214LWljb24tYnV0dG9uLS10ZXJ0aWFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjb2xvcjogIzA1MzM2MTsgfVxuICAgIC5rbXgtaWNvbi1idXR0b24tLXRlcnRpYXJ5OmJlZm9yZSwgLmtteC1pY29uLWJ1dHRvbi0tdGVydGlhcnk6YWZ0ZXIge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgLmtteC1pY29uLWJ1dHRvbi0tdGVydGlhcnk6aG92ZXIsIC5rbXgtaWNvbi1idXR0b24tLXRlcnRpYXJ5OmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMTc3M2NmO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjBtcyBsaW5lYXI7IH1cbiAgICAua214LWljb24tYnV0dG9uLS10ZXJ0aWFyeTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGZlMDtcbiAgICAgIGNvbG9yOiAjMDUzMzYxO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMG1zIGxpbmVhcjtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDIwbXMgbGluZWFyOyB9XG4gIC5rbXgtaWNvbi1idXR0b24tLXJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgLm1kYy10b29sYmFyIC5rbXgtaWNvbi1idXR0b24ubWRjLXRvb2xiYXJfX21lbnUtaWNvbiwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtaWNvbi1idXR0b24ubWRjLXRvb2xiYXJfX21lbnUtaWNvbiwgLmtteC10b29sYmFyIC5rbXgtaWNvbi1idXR0b24ubWRjLXRvb2xiYXJfX21lbnUtaWNvbiwgLm1kYy10b29sYmFyIC5rbXgtaWNvbi1idXR0b24ua214LXRvb2xiYXJfX21lbnUtaWNvbiwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtaWNvbi1idXR0b24ua214LXRvb2xiYXJfX21lbnUtaWNvbiwgLmtteC10b29sYmFyIC5rbXgtaWNvbi1idXR0b24ua214LXRvb2xiYXJfX21lbnUtaWNvbiB7XG4gICAgcGFkZGluZzogMDsgfVxuXG4ubWRjLWNhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zdXJmYWNlLCAjZmZmKTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwcHggM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDJweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tZGMtY2FyZC0tb3V0bGluZWQge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7IH1cblxuLm1kYy1jYXJkX19tZWRpYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIC5tZGMtY2FyZF9fbWVkaWE6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjsgfVxuXG4ubWRjLWNhcmRfX21lZGlhOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7IH1cblxuLm1kYy1jYXJkX19tZWRpYTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGluaGVyaXQ7IH1cblxuLm1kYy1jYXJkX19tZWRpYS0tc3F1YXJlOjpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAxMDAlOyB9XG5cbi5tZGMtY2FyZF9fbWVkaWEtLTE2LTk6OmJlZm9yZSB7XG4gIG1hcmdpbi10b3A6IDU2LjI1JTsgfVxuXG4ubWRjLWNhcmRfX21lZGlhLWNvbnRlbnQsIC5rbXgtY2FyZF9fdGl0bGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmJlZm9yZSwgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDIyNW1zIG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIGZvcndhcmRzLCA3NW1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiBmb3J3YXJkczsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAxNTBtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOjpiZWZvcmUsIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmFmdGVyIHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMTAwJSk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTAwJSk7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgaGVpZ2h0OiAyMDAlOyB9XG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOjpiZWZvcmUsIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDQ7IH1cbiAgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgb3BhY2l0eTogMC4xMjsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjsgfVxuICAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgICBvcGFjaXR5OiAwLjE2OyB9XG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gICAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMTY7IH1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0OyB9XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0OyB9XG5cbi5tZGMtY2FyZF9fYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi1oZWlnaHQ6IDUycHg7XG4gIHBhZGRpbmc6IDhweDsgfVxuXG4ubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5tZGMtY2FyZF9fYWN0aW9uLWJ1dHRvbnMsXG4ubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLm1kYy1jYXJkX19hY3Rpb24taWNvbnMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcbiAgZmxleC1ncm93OiAxO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5tZGMtY2FyZF9fYWN0aW9uLWJ1dHRvbnMgKyAubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyArIC5tZGMtY2FyZF9fYWN0aW9uLWljb25zLCAubWRjLWNhcmRfX2FjdGlvbi1idXR0b25zICsgLm1kYy1jYXJkX19hY3Rpb24taWNvbnNbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1yaWdodDogMTZweDsgfVxuXG4ubWRjLWNhcmRfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAubWRjLWNhcmRfX2FjdGlvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG4ubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgcGFkZGluZzogMCA4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uLCAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uOmxhc3QtY2hpbGQsIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b246bGFzdC1jaGlsZFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b24ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbiwgLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b25bZGlyPVwicnRsXCJdIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubWRjLWNhcmRfX2FjdGlvbi0taWNvbiB7XG4gIG1hcmdpbjogLTZweCAwO1xuICBwYWRkaW5nOiAxMnB4OyB9XG5cbi5tZGMtY2FyZF9fYWN0aW9uLS1pY29uOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cblxuLmtteC1jYXJkX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjsgfVxuXG4ubWRjLWNhcmRfX2FjdGlvbnMgLmtteC1jYXJkX19hY3Rpb24ge1xuICBwYWRkaW5nOiAwIDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cblxuQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQsIDApKSBzY2FsZSgxKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4ge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dCB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBvcGFjaXR5OiB2YXIoLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHksIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLm1kYy1yaXBwbGUtc3VyZmFjZS0tdGVzdC1lZGdlLXZhci1idWcge1xuICAtLW1kYy1yaXBwbGUtc3VyZmFjZS10ZXN0LWVkZ2UtdmFyOiAxcHggc29saWQgIzAwMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5tZGMtcmlwcGxlLXN1cmZhY2UtLXRlc3QtZWRnZS12YXItYnVnOjpiZWZvcmUge1xuICAgIGJvcmRlcjogdmFyKC0tbWRjLXJpcHBsZS1zdXJmYWNlLXRlc3QtZWRnZS12YXIpOyB9XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LXVuY2hlY2tlZC1jaGVja2VkLWNoZWNrbWFyay1wYXRoIHtcbiAgMCUsXG4gIDUwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDI5Ljc4MzM0OyB9XG4gIDUwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7IH1cbiAgMTAwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsge1xuICAwJSxcbiAgNjguMiUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOyB9XG4gIDY4LjIlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMCwgMSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1jaGVja2VkLXVuY2hlY2tlZC1jaGVja21hcmstcGF0aCB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yOS43ODMzNDsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1jaGVja21hcmsge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hlY2tlZC1jaGVja21hcmsge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNCwgMCwgMCwgMSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtZGMtYW5pbWF0aW9uLWRlY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLW1peGVkbWFyayB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE0LCAwLCAwLCAxKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzMTVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLXVuY2hlY2tlZC1taXhlZG1hcmsge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMzIuOCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ubWRjLWNoZWNrYm94LCAua214LWNoZWNrYm94LCAua214LWNoZWNrYm94LS1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDAgMThweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIHBhZGRpbmc6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5OyB9XG4gIC5tZGMtY2hlY2tib3g6OmJlZm9yZSwgLmtteC1jaGVja2JveDo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlLCAubWRjLWNoZWNrYm94OjphZnRlciwgLmtteC1jaGVja2JveDo6YWZ0ZXIsIC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1kYy1jaGVja2JveDo6YmVmb3JlLCAua214LWNoZWNrYm94OjpiZWZvcmUsIC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXI7XG4gICAgei1pbmRleDogMTsgfVxuICAubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LWNoZWNrYm94OjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LWNoZWNrYm94OjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkLmtteC1jaGVja2JveDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApOyB9XG4gIC5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbi5rbXgtY2hlY2tib3g6OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDIyNW1zIG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIGZvcndhcmRzLCA3NW1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiBmb3J3YXJkczsgfVxuICAubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uLmtteC1jaGVja2JveDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbi5rbXgtY2hlY2tib3gtLWRpc2FibGVkOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAxNTBtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAubWRjLWNoZWNrYm94OjpiZWZvcmUsIC5rbXgtY2hlY2tib3g6OmJlZm9yZSwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmJlZm9yZSwgLm1kYy1jaGVja2JveDo6YWZ0ZXIsIC5rbXgtY2hlY2tib3g6OmFmdGVyLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7IH1cbiAgICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICAubWRjLWNoZWNrYm94OjpiZWZvcmUsIC5rbXgtY2hlY2tib3g6OmJlZm9yZSwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmJlZm9yZSwgLm1kYy1jaGVja2JveDo6YWZ0ZXIsIC5rbXgtY2hlY2tib3g6OmFmdGVyLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9IH1cbiAgLm1kYy1jaGVja2JveDpob3Zlcjo6YmVmb3JlLCAua214LWNoZWNrYm94OmhvdmVyOjpiZWZvcmUsIC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDg7IH1cbiAgLm1kYy1jaGVja2JveDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LWNoZWNrYm94OjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMjQ7IH1cbiAgLm1kYy1jaGVja2JveDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1jaGVja2JveDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyOyB9XG4gIC5tZGMtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAua214LWNoZWNrYm94Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMzI7IH1cbiAgLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtY2hlY2tib3gsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveC0tZGlzYWJsZWQge1xuICAgIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjMyOyB9XG4gIC5tZGMtY2hlY2tib3g6OmJlZm9yZSwgLmtteC1jaGVja2JveDo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlLCAubWRjLWNoZWNrYm94OjphZnRlciwgLmtteC1jaGVja2JveDo6YWZ0ZXIsIC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDUwJSk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gNTAlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOjpiZWZvcmUsIC5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCBjYWxjKDUwJSAtIDUwJSkpO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIGNhbGMoNTAlIC0gNTAlKSk7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cblxuLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG5cbi5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7IH1cbiAgQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjZmZkOTAwKTsgfSB9XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6bm90KDpjaGVja2VkKTpub3QoOmluZGV0ZXJtaW5hdGUpIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBib3JkZXItY29sb3I6ICNmZmQ5MDA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjZmZkOTAwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjZmZkOTAwKTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLWluLWJhY2tncm91bmQtMCB7XG4gIDAlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgNTAlIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmQ5MDA7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLW91dC1iYWNrZ3JvdW5kLTAge1xuICAwJSwgODAlIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmQ5MDA7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7IH1cbiAgMTAwJSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cblxuLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZSAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBtZGMtY2hlY2tib3gtZmFkZS1pbi1iYWNrZ3JvdW5kLTA7IH1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBtZGMtY2hlY2tib3gtZmFkZS1vdXQtYmFja2dyb3VuZC0wOyB9XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCk6bm90KDppbmRldGVybWluYXRlKSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpkaXNhYmxlZDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICBtYXJnaW46IDAgMXB4OyB9IH1cblxuLm1kYy1jaGVja2JveC0tZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDExcHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTFweDtcbiAgYm90dG9tOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDQ1JTtcbiAgaGVpZ2h0OiA0NSU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgYm9yZGVyLWNvbG9yIDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3I7IH1cbiAgLm1kYy1jaGVja2JveFtkaXI9XCJydGxcIl0gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLmtteC1jaGVja2JveFtkaXI9XCJydGxcIl0gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLmtteC1jaGVja2JveC0tZGlzYWJsZWRbZGlyPVwicnRsXCJdIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4gIFtkaXI9XCJydGxcIl0gLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuICBbZGlyPVwicnRsXCJdIC5rbXgtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbiAgW2Rpcj1cInJ0bFwiXSAua214LWNoZWNrYm94LS1kaXNhYmxlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDExcHg7IH1cblxuLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5tZGMtY2hlY2tib3gtLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gIHRyYW5zaXRpb246IHN0cm9rZS1kYXNob2Zmc2V0IDE4MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgc3Ryb2tlLXdpZHRoOiAzLjEycHg7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAyOS43ODMzNDtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMjkuNzgzMzQ7IH1cblxuLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSksIHRyYW5zZm9ybSA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubWRjLWNoZWNrYm94LS11cGdyYWRlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuLm1kYy1jaGVja2JveC0tdXBncmFkZWQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLFxuLm1kYy1jaGVja2JveC0tdXBncmFkZWQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgsXG4ubWRjLWNoZWNrYm94LS11cGdyYWRlZCAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtY2hlY2tlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAubWRjLWNoZWNrYm94LS1hbmltLXVuY2hlY2tlZC1pbmRldGVybWluYXRlIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsIC5tZGMtY2hlY2tib3gtLWFuaW0tY2hlY2tlZC11bmNoZWNrZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxODBtcztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOyB9XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tdW5jaGVja2VkLWNoZWNrZWQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgge1xuICBhbmltYXRpb246IDE4MG1zIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWNoZWNrZWQtY2hlY2ttYXJrLXBhdGg7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZSAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBhbmltYXRpb246IDkwbXMgbGluZWFyIDBzIG1kYy1jaGVja2JveC11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcms7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gIGFuaW1hdGlvbjogOTBtcyBsaW5lYXIgMHMgbWRjLWNoZWNrYm94LWNoZWNrZWQtdW5jaGVja2VkLWNoZWNrbWFyay1wYXRoO1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tY2hlY2tlZC1pbmRldGVybWluYXRlIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIGFuaW1hdGlvbjogOTBtcyBsaW5lYXIgMHMgbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1jaGVja21hcms7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLWluZGV0ZXJtaW5hdGUgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgYW5pbWF0aW9uOiA5MG1zIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtY2hlY2tlZC1pbmRldGVybWluYXRlLW1peGVkbWFyaztcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWluZGV0ZXJtaW5hdGUtY2hlY2tlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICBhbmltYXRpb246IDUwMG1zIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLWNoZWNrbWFyaztcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWluZGV0ZXJtaW5hdGUtY2hlY2tlZCAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBhbmltYXRpb246IDUwMG1zIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLW1peGVkbWFyaztcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWluZGV0ZXJtaW5hdGUtdW5jaGVja2VkIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIGFuaW1hdGlvbjogMzAwbXMgbGluZWFyIDBzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLXVuY2hlY2tlZC1taXhlZG1hcms7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgYmFja2dyb3VuZC1jb2xvciA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTsgfVxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCxcbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwOyB9XG5cbi5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAsIDApO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSksIHRyYW5zZm9ybSA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtOyB9XG5cbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTsgfVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpmb2N1cyB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMi43NSwgMi43NSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgODBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIHRyYW5zZm9ybSA4MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgb3BhY2l0eTogMC4xMjsgfVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogaW5oZXJpdDsgfVxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTgwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCB0cmFuc2Zvcm0gMTgwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpLCB0cmFuc2Zvcm0gOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmtteC1jaGVja2JveDo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlLCAua214LWNoZWNrYm94OjphZnRlciwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzNjZjsgfVxuXG4ua214LWNoZWNrYm94OmhvdmVyOjpiZWZvcmUsIC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0OyB9XG5cbi5rbXgtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjsgfVxuXG4ua214LWNoZWNrYm94Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyOyB9XG5cbi5rbXgtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjE2OyB9XG5cbi5rbXgtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZCwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LWNoZWNrYm94LS1kaXNhYmxlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjE2OyB9XG5cbi5rbXgtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3M2NmOyB9XG5cbi5rbXgtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpub3QoOmNoZWNrZWQpOm5vdCg6aW5kZXRlcm1pbmF0ZSkgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAua214LWNoZWNrYm94LS1kaXNhYmxlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCk6bm90KDppbmRldGVybWluYXRlKSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLmtteC1jaGVja2JveCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAua214LWNoZWNrYm94LS1kaXNhYmxlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuLmtteC1jaGVja2JveCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuLmtteC1jaGVja2JveC0tZGlzYWJsZWQgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGJvcmRlci1jb2xvcjogIzE3NzNjZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzNjZjsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLWluLWJhY2tncm91bmQtMSB7XG4gIDAlIHtcbiAgICBib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICA1MCUge1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzNjZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3M2NmOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtZmFkZS1vdXQtYmFja2dyb3VuZC0xIHtcbiAgMCUsXG4gIDgwJSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3M2NmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzczY2Y7IH1cbiAgMTAwJSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNmQ3NDdhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH0gfVxuXG4ua214LWNoZWNrYm94Lm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtY2hlY2tlZC5rbXgtY2hlY2tib3gtLWRpc2FibGVkIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAua214LWNoZWNrYm94Lm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZSAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZS5rbXgtY2hlY2tib3gtLWRpc2FibGVkIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYW5pbWF0aW9uLW5hbWU6IG1kYy1jaGVja2JveC1mYWRlLWluLWJhY2tncm91bmQtMTsgfVxuXG4ua214LWNoZWNrYm94Lm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZC5rbXgtY2hlY2tib3gtLWRpc2FibGVkIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAua214LWNoZWNrYm94Lm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZC5rbXgtY2hlY2tib3gtLWRpc2FibGVkIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYW5pbWF0aW9uLW5hbWU6IG1kYy1jaGVja2JveC1mYWRlLW91dC1iYWNrZ3JvdW5kLTE7IH1cblxuLmtteC1jaGVja2JveDpob3Zlcjo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wODsgfVxuXG4ua214LWNoZWNrYm94Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAua214LWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMjQ7IH1cblxuLmtteC1jaGVja2JveDo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlLCAua214LWNoZWNrYm94OjphZnRlciwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzNjZjsgfVxuXG4ua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YmVmb3JlLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJhZmIzOyB9XG5cbi5rbXgtY2hlY2tib3gtLWludmFsaWQgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjZTAxZjFmOyB9XG5cbi5rbXgtZm9ybS1maWVsZC0taW52YWxpZCArIC5rbXgtY2hlY2tib3gtaGVscGVyLXRleHQge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI2UwMWYxZjtcbiAgcGFkZGluZy1sZWZ0OiAxMXB4OyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbi5rbXgtY2hlY2tib3g6bm90KC5rbXgtY2hlY2tib3gtLWRpc2FibGVkKSwgLmtteC1jaGVja2JveC0tZGlzYWJsZWQ6bm90KC5rbXgtY2hlY2tib3gtLWRpc2FibGVkKSB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZSAqLyB9XG4gIC5rbXgtY2hlY2tib3g6bm90KC5rbXgtY2hlY2tib3gtLWRpc2FibGVkKSArIGxhYmVsLCAua214LWNoZWNrYm94LS1kaXNhYmxlZDpub3QoLmtteC1jaGVja2JveC0tZGlzYWJsZWQpICsgbGFiZWwsXG4gIC5rbXgtY2hlY2tib3g6bm90KC5rbXgtY2hlY2tib3gtLWRpc2FibGVkKSArIC5rbXgtY2hlY2tib3gtbGFiZWwsXG4gIC5rbXgtY2hlY2tib3gtLWRpc2FibGVkOm5vdCgua214LWNoZWNrYm94LS1kaXNhYmxlZCkgKyAua214LWNoZWNrYm94LWxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS41NjI1O1xuICAgIGNvbG9yOiAjNmQ3NDdhOyB9XG5cbi5rbXgtY2hlY2tib3gtLWRpc2FibGVkIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovIH1cbiAgLmtteC1jaGVja2JveC0tZGlzYWJsZWQgKyBsYWJlbCxcbiAgLmtteC1jaGVja2JveC0tZGlzYWJsZWQgKyAua214LWNoZWNrYm94LWxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS41NjI1O1xuICAgIGNvbG9yOiAjYWJhZmIzOyB9XG5cbi8qXHJcbiAqIE5vdGU6IHRoZSB2YWxpZGF0aW9uIHN0eWxpbmcgZm9yIHRleHQtZmllbGQtaGVscGVyXHJcbiAqIGlzIGxvY2F0ZWQgaW4gLi9fdGV4dC1maWVsZC12YWxpZGF0aW9uLnNjc3NcclxuICpcclxuICogVGhlIGRpc2FibGVkIHN0eWxpbmcgZm9yIHRleHQtZmllbGQtaGVscGVyXHJcbiAqIGlzIGxvY2F0ZWQgaW4gLi9fdGV4dC1maWVsZC1kaXNhYmxlZC5zY3NzXHJcbiAqL1xuLmtteC1jaGVja2JveC1oZWxwZXItdGV4dCB7XG4gIGNvbG9yOiAjNmQ3NDdhO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTY2Njc7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIG1hcmdpbi1sZWZ0OiAzZW07IH1cblxuLypcclxuXHRJbXByb3ZlZCBzY3JlZW4gcmVhZGVyIG9ubHkgQ1NTIGNsYXNzXHJcblx0QGF1dGhvciBHYcOrbCBQb3VwYXJkXHJcblx0XHRAbm90ZSBCYXNlZCBvbiBZYWhvbyEncyB0ZWNobmlxdWVcclxuXHRcdEBhdXRob3IgVGhpZXJyeSBLb2JsZW50elxyXG5cdFx0QHNlZSBodHRwczovL2RldmVsb3Blci55YWhvby5jb20vYmxvZ3MveWRuL2NsaXAtaGlkZGVuLWNvbnRlbnQtYmV0dGVyLWFjY2Vzc2liaWxpdHktNTM0NTYuaHRtbFxyXG5cdCogMS5cclxuXHRcdEBub3RlIGBjbGlwYCBpcyBkZXByZWNhdGVkIGJ1dCB3b3JrcyBldmVyeXdoZXJlXHJcblx0XHRAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9jbGlwXHJcblx0KiAyLlxyXG5cdFx0QG5vdGUgYGNsaXAtcGF0aGAgaXMgdGhlIGZ1dHVyZS1wcm9vZiB2ZXJzaW9uLCBidXQgbm90IHZlcnkgd2VsbCBzdXBwb3J0ZWQgeWV0XHJcblx0XHRAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9jbGlwLXBhdGhcclxuXHRcdEBzZWUgaHR0cDovL2Nhbml1c2UuY29tLyNzZWFyY2g9Y2xpcC1wYXRoXHJcblx0XHRAYXV0aG9yIFl2YWluIExpZWNodGlcclxuXHRcdEBzZWUgaHR0cHM6Ly90d2l0dGVyLmNvbS9yeXVyYW43OC9zdGF0dXMvNzc4OTQzMzg5ODE5NjA0OTkyXHJcblx0KiAzLlxyXG5cdFx0QG5vdGUgcHJldmVudGluZyB0ZXh0IHRvIGJlIGNvbmRlbnNlZFxyXG5cdFx0YXV0aG9yIEouIFJlbsOpZSBCZWFjaFxyXG5cdFx0QHNlZSBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXHJcblx0XHRAbm90ZSBEcnVwYWwgOCBnb2VzIHdpdGggd29yZC13cmFwOiBub3JtYWwgaW5zdGVhZFxyXG5cdFx0QHNlZSBodHRwczovL3d3dy5kcnVwYWwub3JnL25vZGUvMjA0NTE1MVxyXG5cdFx0QHNlZSBodHRwOi8vY2dpdC5kcnVwYWxjb2RlLm9yZy9kcnVwYWwvY29tbWl0Lz9pZD01Yjg0N2VhXHJcblx0KiA0LlxyXG5cdFx0QG5vdGUgIWltcG9ydGFudCBpcyBpbXBvcnRhbnRcclxuXHRcdEBub3RlIE9idmlvdXNseSB5b3Ugd2FubmEgaGlkZSBzb21ldGhpbmdcclxuXHRcdEBhdXRob3IgSGFycnkgUm9iZXJ0c1xyXG5cdFx0QHNlZSBodHRwOi8vY3Nzd2l6YXJkcnkuY29tLzIwMTYvMDUvdGhlLWltcG9ydGFuY2Utb2YtaW1wb3J0YW50L1xyXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KSAhaW1wb3J0YW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICAvKiAyICovXG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIC8qIDMgKi8gfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuLypcclxuXHRVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAudmlzdWFsbHktaGlkZGVuIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxyXG5cdEBub3RlIFVzZWZ1bCBmb3Igc2tpcCBsaW5rc1xyXG5cdEBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxyXG5cdEBub3RlIEJhc2VkIG9uIGEgSFRNTDUgQm9pbGVycGxhdGUgdGVjaG5pcXVlLCBpbmNsdWRlZCBpbiBCb290c3RyYXBcclxuXHRAbm90ZSBGaXhlZCBhIGJ1ZyB3aXRoIHBvc2l0aW9uOiBzdGF0aWMgb24gaU9TIDEwLjAuMiArIFZvaWNlT3ZlclxyXG5cdFx0QGF1dGhvciBTeWx2YWluIFBpZ2VhcmRcclxuXHRcdEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMDczMlxyXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpmb2N1cyxcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOmFjdGl2ZSB7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBub25lICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbi5rbXgtcHJvZ3Jlc3MtY2lyY3VsYXItaW5kZXRlcm1pbmF0ZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjMTc3M2NmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi8gfVxuICAua214LXByb2dyZXNzLWNpcmN1bGFyLWluZGV0ZXJtaW5hdGUgc3ZnIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgIHN0cm9rZS13aWR0aDogODsgfVxuICAua214LXByb2dyZXNzLWNpcmN1bGFyLWluZGV0ZXJtaW5hdGUtbGFyZ2Uge1xuICAgIGhlaWdodDogMTI4cHg7IH1cbiAgICAua214LXByb2dyZXNzLWNpcmN1bGFyLWluZGV0ZXJtaW5hdGUtbGFyZ2Ugc3ZnIHtcbiAgICAgIGhlaWdodDogMTI4cHg7XG4gICAgICBzdHJva2Utd2lkdGg6IDY7XG4gICAgICB3aWR0aDogMTI4cHg7IH1cbiAgLmtteC1wcm9ncmVzcy1jaXJjdWxhci1pbmRldGVybWluYXRlLW1lZGl1bSB7XG4gICAgaGVpZ2h0OiA2NnB4OyB9XG4gICAgLmtteC1wcm9ncmVzcy1jaXJjdWxhci1pbmRldGVybWluYXRlLW1lZGl1bSBzdmcge1xuICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgd2lkdGg6IDY0cHg7IH1cbiAgLmtteC1wcm9ncmVzcy1jaXJjdWxhci1pbmRldGVybWluYXRlLXNtYWxsIHtcbiAgICBoZWlnaHQ6IDM0cHg7IH1cbiAgICAua214LXByb2dyZXNzLWNpcmN1bGFyLWluZGV0ZXJtaW5hdGUtc21hbGwgc3ZnIHtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIHdpZHRoOiAzMnB4OyB9XG4gIC5rbXgtcHJvZ3Jlc3MtY2lyY3VsYXItaW5kZXRlcm1pbmF0ZS14LXNtYWxsIHtcbiAgICBoZWlnaHQ6IDE4cHg7IH1cbiAgICAua214LXByb2dyZXNzLWNpcmN1bGFyLWluZGV0ZXJtaW5hdGUteC1zbWFsbCBzdmcge1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IDE2cHg7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xuLmtteC1zZWFyY2gtZm9ybV9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5rbXgtc2VhcmNoLWZvcm1fX2NvbnRhaW5lcjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDQyLCA1MiwgNjEsIDAuMTYpOyB9XG4gIC5rbXgtc2VhcmNoLWZvcm1fX2NvbnRhaW5lci0tZm9jdXNlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDQyLCA1MiwgNjEsIDAuMTYpOyB9XG4gICAgLmtteC1zZWFyY2gtZm9ybV9fY29udGFpbmVyLS1mb2N1c2VkIC5rbXgtc2VhcmNoLWZvcm1fX3N1Ym1pdC1idXR0b24gLnN2Zy1pY29uIHtcbiAgICAgIGNvbG9yOiAjMDUzMzYxOyB9XG5cbi5rbXgtc2VhcmNoLWZvcm1fX3NlYXJjaC1pbnB1dCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgY29sb3I6ICM2ZDc0N2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxcHg7XG4gIGNvbG9yOiAjMDUzMzYxO1xuICBmbGV4LWdyb3c6IDE7XG4gIGhlaWdodDogNDBweDtcbiAgbWluLXdpZHRoOiAwO1xuICBvcmRlcjogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMCAwIDAgOHB4O1xuICB3aWR0aDogMTAwJTtcbiAgLyoqXHJcbiAgICAgICAgICogRm9yIDo6cGxhY2Vob2xkZXIgc3R5bGluZyxcclxuICAgICAgICAgKiBGaXJlZm94IG5lZWRzIG9wYWNpdHkgc2V0IGV4cGxpY2l0bHkgdG8gMVxyXG4gICAgICAgICAqIGluIG9yZGVyIHRvIG92ZXJyaWRlIGRlZmF1bHQgYnJvd3NlciBzdHlsZXNcclxuICAgICAgICAgKi9cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gIC8qIGNsZWFycyB0aGUgJ1gnIGZyb20gSW50ZXJuZXQgRXhwbG9yZXIgKi9cbiAgLyogY2xlYXJzIHRoZSAnWCcgZnJvbSBDaHJvbWUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi8gfVxuICAua214LXNlYXJjaC1mb3JtX19zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzZkNzQ3YTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5rbXgtc2VhcmNoLWZvcm1fX3NlYXJjaC1pbnB1dDpmb2N1czo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjYWJhZmIzO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmtteC1zZWFyY2gtZm9ybV9fc2VhcmNoLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM2ZDc0N2EgIWltcG9ydGFudDsgfVxuICAua214LXNlYXJjaC1mb3JtX19zZWFyY2gtaW5wdXQ6Zm9jdXM6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2FiYWZiMyAhaW1wb3J0YW50OyB9XG4gIC5rbXgtc2VhcmNoLWZvcm1fX3NlYXJjaC1pbnB1dDo6LW1zLWNsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDsgfVxuICAua214LXNlYXJjaC1mb3JtX19zZWFyY2gtaW5wdXQ6Oi1tcy1yZXZlYWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwOyB9XG4gIC5rbXgtc2VhcmNoLWZvcm1fX3NlYXJjaC1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiwgLmtteC1zZWFyY2gtZm9ybV9fc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCAua214LXNlYXJjaC1mb3JtX19zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtYnV0dG9uLCAua214LXNlYXJjaC1mb3JtX19zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5rbXgtc2VhcmNoLWZvcm1fX2NsZWFyLWJ1dHRvbiwgLmtteC1zZWFyY2gtZm9ybV9fc3VibWl0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbGV4LXNocmluazogMDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDsgfVxuICAua214LXNlYXJjaC1mb3JtX19jbGVhci1idXR0b24gLnN2Zy1pY29uLXdyYXBwZXIsIC5rbXgtc2VhcmNoLWZvcm1fX3N1Ym1pdC1idXR0b24gLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmtteC1zZWFyY2gtZm9ybV9fY2xlYXItYnV0dG9uIC5zdmctaWNvbiwgLmtteC1zZWFyY2gtZm9ybV9fc3VibWl0LWJ1dHRvbiAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLWhlaWdodDogMWVtO1xuICAgIG1pbi13aWR0aDogMWVtO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgLmtteC1zZWFyY2gtZm9ybV9fY2xlYXItYnV0dG9uIC5zdmctaWNvbiBzdmcsIC5rbXgtc2VhcmNoLWZvcm1fX3N1Ym1pdC1idXR0b24gLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmtteC1zZWFyY2gtZm9ybV9fY2xlYXItYnV0dG9uIC5zdmctaWNvbiwgLmtteC1zZWFyY2gtZm9ybV9fc3VibWl0LWJ1dHRvbiAuc3ZnLWljb24ge1xuICAgIGNvbG9yOiAjNmQ3NDdhO1xuICAgIGhlaWdodDogMjRweDtcbiAgICB3aWR0aDogMjRweDsgfVxuXG4ua214LXNlYXJjaC1mb3JtX19jbGVhci1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xuICBvcmRlcjogMTsgfVxuICAua214LXNlYXJjaC1mb3JtX19jbGVhci1idXR0b24udmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmtteC1zZWFyY2gtZm9ybV9fc3VibWl0LWJ1dHRvbiB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxcHg7XG4gIG9yZGVyOiAyOyB9XG5cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4ubWRjLWRpYWxvZywgLmtteC1kaWFsb2cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogNTsgfVxuXG4ubWRjLWRpYWxvZ19fYmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LXByaW1hcnktb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xOyB9XG5cbi5tZGMtZGlhbG9nX19zdXJmYWNlIHtcbiAgYm94LXNoYWRvdzogMHB4IDExcHggMTVweCAtN3B4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDI0cHggMzhweCAzcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDlweCA0NnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgbWluLXdpZHRoOiA2NDBweDtcbiAgbWF4LXdpZHRoOiA4NjVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MHB4KSBzY2FsZSgwLjgpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLm1kYy1kaWFsb2dbZGlyPVwicnRsXCJdIC5tZGMtZGlhbG9nX19zdXJmYWNlLCAua214LWRpYWxvZ1tkaXI9XCJydGxcIl0gLm1kYy1kaWFsb2dfX3N1cmZhY2UsXG4gIFtkaXI9XCJydGxcIl0gLm1kYy1kaWFsb2cgLm1kYy1kaWFsb2dfX3N1cmZhY2UsXG4gIFtkaXI9XCJydGxcIl0gLmtteC1kaWFsb2cgLm1kYy1kaWFsb2dfX3N1cmZhY2Uge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5tZGMtZGlhbG9nX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAyNHB4IDI0cHggMDsgfVxuICAubWRjLWRpYWxvZ1tkaXI9XCJydGxcIl0gLm1kYy1kaWFsb2dfX2hlYWRlciwgLmtteC1kaWFsb2dbZGlyPVwicnRsXCJdIC5tZGMtZGlhbG9nX19oZWFkZXIsXG4gIFtkaXI9XCJydGxcIl0gLm1kYy1kaWFsb2cgLm1kYy1kaWFsb2dfX2hlYWRlcixcbiAgW2Rpcj1cInJ0bFwiXSAua214LWRpYWxvZyAubWRjLWRpYWxvZ19faGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubWRjLWRpYWxvZ19faGVhZGVyX19lbXB0eSB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm1kYy1kaWFsb2dfX2hlYWRlcl9fdGl0bGUge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTI1ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogMDsgfVxuXG4ubWRjLWRpYWxvZ19fYm9keSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1zZWNvbmRhcnktb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzMTI1ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmc6IDAgMjRweCAyNHB4OyB9XG5cbi5tZGMtZGlhbG9nX19ib2R5LS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogMTk1cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG5cbi5tZGMtZGlhbG9nX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IDhweDsgfVxuXG4ubWRjLWRpYWxvZ19fZm9vdGVyX19idXR0b24ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogOHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1kaWFsb2dfX2Zvb3Rlcl9fYnV0dG9uLCAubWRjLWRpYWxvZ19fZm9vdGVyX19idXR0b25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5tZGMtZGlhbG9nX19mb290ZXJfX2J1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1kYy1kaWFsb2dfX2Zvb3Rlcl9fYnV0dG9uOmxhc3QtY2hpbGQsIC5tZGMtZGlhbG9nX19mb290ZXJfX2J1dHRvbjpsYXN0LWNoaWxkW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ubWRjLWRpYWxvZ19fYWN0aW9uOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6ICNmZmQ5MDA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAubWRjLWRpYWxvZywgLmtteC1kaWFsb2cge1xuICAgIG1pbi13aWR0aDogMjgwcHg7IH1cbiAgLm1kYy1kaWFsb2dfX3N1cmZhY2Uge1xuICAgIG1pbi13aWR0aDogMjgwcHg7IH1cbiAgLm1kYy1kaWFsb2dfX2JvZHkge1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4OyB9IH1cblxuLm1kYy1kaWFsb2ctLWFuaW1hdGluZyB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLm1kYy1kaWFsb2ctLWFuaW1hdGluZyAubWRjLWRpYWxvZ19fYmFja2Ryb3Age1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpOyB9XG4gIC5tZGMtZGlhbG9nLS1hbmltYXRpbmcgLm1kYy1kaWFsb2dfX3N1cmZhY2Uge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCB0cmFuc2Zvcm0gMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpOyB9XG5cbi5tZGMtZGlhbG9nLS1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAubWRjLWRpYWxvZy0tb3BlbiAubWRjLWRpYWxvZ19fYmFja2Ryb3Age1xuICAgIG9wYWNpdHk6IC4zOyB9XG4gIC5tZGMtZGlhbG9nLS1vcGVuIC5tZGMtZGlhbG9nX19zdXJmYWNlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLWRpYWxvZy1zY3JvbGwtbG9jayB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmtteC1kaWFsb2cge1xuICB6LWluZGV4OiA3MDA7IH1cbiAgLmtteC1kaWFsb2dfX2JhY2tkcm9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmEzNDNkOyB9XG4gIC5rbXgtZGlhbG9nX19zdXJmYWNlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMTZweCAyMHB4IDAgcmdiYSg0MiwgNTIsIDYxLCAwLjE2KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBtYXgtd2lkdGg6IDU2OHB4OyB9XG4gIC5rbXgtZGlhbG9nX19oZWFkZXIge1xuICAgIHBhZGRpbmc6IDE2cHggMTZweCAwOyB9XG4gICAgLmtteC1kaWFsb2dfX2hlYWRlcl9fdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMDUzMzYxO1xuICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtOyB9XG4gIC5rbXgtZGlhbG9nX19ib2R5IHtcbiAgICBjb2xvcjogIzU0NWI2MztcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBwYWRkaW5nOiAwIDE2cHggMTZweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtOyB9XG4gICAgLmtteC1kaWFsb2dfX2JvZHktLXNjcm9sbGFibGUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2M4Y2FjYztcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNjOGNhY2M7XG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqLyB9XG4gICAgICAua214LWRpYWxvZ19fYm9keS0tc2Nyb2xsYWJsZSBmb3JtIC5tZGMtbGlzdC1pdGVtIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG4gIC5rbXgtZGlhbG9nLS1vcGVuIC5tZGMtZGlhbG9nX19iYWNrZHJvcCB7XG4gICAgb3BhY2l0eTogMC41OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAua214LWRpYWxvZ19fc3VyZmFjZSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm94LXNoYWRvdzogMCAxNnB4IDIwcHggMCByZ2JhKDQyLCA1MiwgNjEsIDAuMTYpOyB9XG4gICAgLmtteC1kaWFsb2dfX2hlYWRlciB7XG4gICAgICBwYWRkaW5nOiAyNHB4IDI0cHggMDsgfVxuICAgIC5rbXgtZGlhbG9nX19ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDAgMjRweCAyNHB4OyB9XG4gICAgICAua214LWRpYWxvZ19fYm9keS0tc2Nyb2xsYWJsZSBmb3JtIHtcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovIH1cbiAgICAgICAgLmtteC1kaWFsb2dfX2JvZHktLXNjcm9sbGFibGUgZm9ybSAubWRjLWxpc3QsIC5rbXgtZGlhbG9nX19ib2R5LS1zY3JvbGxhYmxlIGZvcm0gLmtteC1saXN0IHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgICAgICAua214LWRpYWxvZ19fYm9keS0tc2Nyb2xsYWJsZSBmb3JtIC5tZGMtbGlzdCAua214LWxpc3QtaXRlbSwgLmtteC1kaWFsb2dfX2JvZHktLXNjcm9sbGFibGUgZm9ybSAua214LWxpc3QgLmtteC1saXN0LWl0ZW0ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cHg7IH0gfVxuXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxuLm1kYy10aGVtZS0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmZmZmKTsgfVxuXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuXG46cm9vdCB7XG4gIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICM4YzkxOTY7XG4gIC0ta214LXRleHQtZmllbGQtdGV4dC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC1pbnB1dC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWRpdmlkZXItb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICNlMDFmMWY7XG4gIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLXRleHQtb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLXVuZGVybGluZS1ob3Zlci1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1ib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiAjOGM5MTk2O1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6IHJnYmEoNSwgNTEsIDk3LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQtLWFjdGl2ZTogIzA1MzM2MTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogd2hpdGU7XG4gIC0ta214LXRoZW1lLWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC0ta214LWZvcm0tY29tcG9uZW50LWJsdWU6ICMxNzczY2Y7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xuLm1kYy1kcmF3ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMjU2cHg7XG4gIG1heC13aWR0aDogMjU2cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDY7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1kcmF3ZXJfX3RpdGxlIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLWRyYXdlciAubWRjLWxpc3QtZ3JvdXBfX3N1YmhlYWRlciB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAubWRjLWRyYXdlciAubWRjLWRyYXdlcl9fc3VidGl0bGUge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW0ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpOyB9XG4gIC5tZGMtZHJhd2VyIC5tZGMtbGlzdC1pdGVtLS1hY3RpdmF0ZWQgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAgIGNvbG9yOiAjMDUzMzYxOyB9XG4gIC5tZGMtZHJhd2VyIC5tZGMtbGlzdC1pdGVtLS1hY3RpdmF0ZWQge1xuICAgIGNvbG9yOiByZ2JhKDUsIDUxLCA5NywgMC44Nyk7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtZHJhd2VyLCAubWRjLWRyYXdlcltkaXI9XCJydGxcIl0ge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW0ge1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDA3MTRlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gICAgaGVpZ2h0OiBjYWxjKDQ4cHggLSAyICogNHB4KTtcbiAgICBtYXJnaW46IDhweCA4cHg7XG4gICAgcGFkZGluZzogMCA4cHg7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICBtYXJnaW4tdG9wOiAycHg7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW06bnRoLWxhc3QtY2hpbGQoMSkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWdyb3VwX19zdWJoZWFkZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMTc4NmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTZweDsgfVxuICAgIC5tZGMtZHJhd2VyIC5tZGMtbGlzdC1ncm91cF9fc3ViaGVhZGVyOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWRpdmlkZXIge1xuICAgIG1hcmdpbjogM3B4IDAgNHB4IDA7IH1cbiAgLm1kYy1kcmF3ZXIgLm1kYy1saXN0LWl0ZW1fX3RleHQsXG4gIC5tZGMtZHJhd2VyIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4ubWRjLWRyYXdlci0tb3BlbiB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuXG4ubWRjLWRyYXdlci0tYW5pbWF0ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLWRyYXdlci0tYW5pbWF0ZSwgLm1kYy1kcmF3ZXItLWFuaW1hdGVbZGlyPVwicnRsXCJdIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLm1kYy1kcmF3ZXItLW9wZW5pbmcge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1kcmF3ZXItLW9wZW5pbmcsIC5tZGMtZHJhd2VyLS1vcGVuaW5nW2Rpcj1cInJ0bFwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5tZGMtZHJhd2VyLS1jbG9zaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLWRyYXdlci0tY2xvc2luZywgLm1kYy1kcmF3ZXItLWNsb3NpbmdbZGlyPVwicnRsXCJdIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLm1kYy1kcmF3ZXJfX2hlYWRlciB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4taGVpZ2h0OiA2NHB4O1xuICBwYWRkaW5nOiAwIDE2cHggNHB4OyB9XG5cbi5tZGMtZHJhd2VyX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxMjVlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IC0yMHB4OyB9XG4gIC5tZGMtZHJhd2VyX190aXRsZTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmVydGljYWwtYWxpZ246IDA7IH1cbiAgLm1kYy1kcmF3ZXJfX3RpdGxlOjphZnRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMjBweDsgfVxuXG4ubWRjLWRyYXdlcl9fc3VidGl0bGUge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE3ODZlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1kYy1kcmF3ZXJfX3N1YnRpdGxlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogMDsgfVxuXG4ubWRjLWRyYXdlcl9fY29udGVudCB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ubWRjLWRyYXdlci0tZGlzbWlzc2libGUge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1kcmF3ZXItLWRpc21pc3NpYmxlLCAubWRjLWRyYXdlci0tZGlzbWlzc2libGVbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDA7IH1cbiAgLm1kYy1kcmF3ZXItLWRpc21pc3NpYmxlLm1kYy1kcmF3ZXItLW9wZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuLm1kYy1kcmF3ZXItYXBwLWNvbnRlbnQge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1kcmF3ZXItYXBwLWNvbnRlbnQsIC5tZGMtZHJhd2VyLWFwcC1jb250ZW50W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLm1kYy1kcmF3ZXItLW9wZW4gKyAubWRjLWRyYXdlci1hcHAtY29udGVudCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAyNTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLWRyYXdlci0tb3BlbiArIC5tZGMtZHJhd2VyLWFwcC1jb250ZW50LCAubWRjLWRyYXdlci0tb3BlbiArIC5tZGMtZHJhd2VyLWFwcC1jb250ZW50W2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1yaWdodDogMjU2cHg7IH1cbiAgLm1kYy1kcmF3ZXItLWNsb3NpbmcgKyAubWRjLWRyYXdlci1hcHAtY29udGVudCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtZHJhd2VyLS1jbG9zaW5nICsgLm1kYy1kcmF3ZXItYXBwLWNvbnRlbnQsIC5tZGMtZHJhd2VyLS1jbG9zaW5nICsgLm1kYy1kcmF3ZXItYXBwLWNvbnRlbnRbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5tZGMtZHJhd2VyLS1tb2RhbCB7XG4gIGJveC1zaGFkb3c6IDBweCA4cHggMTBweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDE2cHggMjRweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDZweCAzMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAubWRjLWRyYXdlci0tbW9kYWwgKyAubWRjLWRyYXdlci1zY3JpbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMyKTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtZHJhd2VyLS1tb2RhbCwgLm1kYy1kcmF3ZXItLW1vZGFsW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiAwOyB9XG4gIC5tZGMtZHJhd2VyLS1tb2RhbC5tZGMtZHJhd2VyLS1vcGVuIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5tZGMtZHJhd2VyLXNjcmltIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICB6LWluZGV4OiA1OyB9XG4gIC5tZGMtZHJhd2VyLS1vcGVuICsgLm1kYy1kcmF3ZXItc2NyaW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tZGMtZHJhd2VyLS1hbmltYXRlICsgLm1kYy1kcmF3ZXItc2NyaW0ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm1kYy1kcmF3ZXItLW9wZW5pbmcgKyAubWRjLWRyYXdlci1zY3JpbSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubWRjLWRyYXdlci0tY2xvc2luZyArIC5tZGMtZHJhd2VyLXNjcmltIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbiAgICBvcGFjaXR5OiAwOyB9XG5cbi5rbXgtZHJhd2VyIHtcbiAgei1pbmRleDogNzUwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgLmtteC1kcmF3ZXIge1xuICAgICAgei1pbmRleDogMTU7IH0gfVxuXG4ua214LWRyYXdlci1zY3JpbSB7XG4gIHotaW5kZXg6IDc0OTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNTYuMjVlbSkge1xuICAgIC5rbXgtZHJhd2VyLXNjcmltIHtcbiAgICAgIHotaW5kZXg6IDA7IH0gfVxuXG4ua214LWZhYiB7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBib3gtc2hhZG93OiAwcHggM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDZweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDE4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogNTZweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIG9wYWNpdHkgMTVtcyBsaW5lYXIgMzBtcywgdHJhbnNmb3JtIDI3MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDUzMzYxO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyO1xuICB6LWluZGV4OiA1OyB9XG4gIC5rbXgtZmFiOjpiZWZvcmUsIC5rbXgtZmFiOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLmtteC1mYWI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5rbXgtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLmtteC1mYWIubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgLmtteC1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLmtteC1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAyMjVtcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBmb3J3YXJkcywgNzVtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7IH1cbiAgLmtteC1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDE1MG1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5rbXgtZmFiOjpiZWZvcmUsIC5rbXgtZmFiOjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDEwMCUpO1xuICAgIHdpZHRoOiAyMDAlO1xuICAgIGhlaWdodDogMjAwJTsgfVxuICAua214LWZhYi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5rbXgtZmFiOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDsgfVxuICAua214LWZhYjpob3ZlciwgLmtteC1mYWI6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDBweCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggOHB4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAzcHggMTRweCAycHggcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAua214LWZhYjphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDBweCA3cHggOHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTJweCAxN3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNXB4IDIycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLmtteC1mYWI6YWN0aXZlLCAua214LWZhYjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAua214LWZhYjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5rbXgtZmFiID4gc3ZnIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAua214LWZhYiAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLWhlaWdodDogMWVtO1xuICAgIG1pbi13aWR0aDogMWVtO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgLmtteC1mYWIgLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmtteC1mYWIgLnN2Zy1pY29uIHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgd2lkdGg6IDI0cHg7IH1cbiAgLmtteC1mYWIgLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmtteC1mYWI6YmVmb3JlLCAua214LWZhYjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5rbXgtZmFiOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGZlMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4ubWRjLWZvcm0tZmllbGQsIC5rbXgtZm9ybS1maWVsZCwgLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTc4NmVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1kYy1mb3JtLWZpZWxkID4gbGFiZWwsIC5rbXgtZm9ybS1maWVsZCA+IGxhYmVsLCAua214LWZvcm0tZmllbGQtLXN0YWNrZWQgPiBsYWJlbCwgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24gPiBsYWJlbCB7XG4gICAgb3JkZXI6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmtteC1mb3JtLWZpZWxkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24gPiBsYWJlbCwgLm1kYy1mb3JtLWZpZWxkW2Rpcj1cInJ0bFwiXSA+IGxhYmVsLCAua214LWZvcm0tZmllbGRbZGlyPVwicnRsXCJdID4gbGFiZWwsIC5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZFtkaXI9XCJydGxcIl0gPiBsYWJlbCwgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd25bZGlyPVwicnRsXCJdID4gbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6IDRweDsgfVxuXG4ubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsLCAua214LWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsIHtcbiAgb3JkZXI6IC0xO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogNHB4OyB9XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkLS1hbGlnbi1lbmQgPiBsYWJlbCwgW2Rpcj1cInJ0bFwiXSAua214LWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsLCAubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZFtkaXI9XCJydGxcIl0gPiBsYWJlbCwgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1lbmRbZGlyPVwicnRsXCJdID4gbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogNHB4OyB9XG5cbi5rbXgtZm9ybS1maWVsZCwgLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgd2lkdGg6IGF1dG87IH1cbiAgLmtteC1mb3JtLWZpZWxkLS1pbnZhbGlkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb2xvcjogI2UwMWYxZjsgfVxuICAubWRjLXRoZW1lLS1kYXJrIC5rbXgtZm9ybS1maWVsZCwgLm1kYy10aGVtZS0tZGFyayAua214LWZvcm0tZmllbGQtLXN0YWNrZWQsIC5tZGMtdGhlbWUtLWRhcmsgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24ge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiB2YXIoLS1rbXgtaW5wdXQtbGFiZWwtcHJpbWFyeS1vbi1kYXJrLCAjZmZmZmZmKTsgfVxuXG4ua214LWZvcm0tZmllbGQtLXN0YWNrZWQua214LWZvcm0tZmllbGQtLXN0YWNrZWQge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovIH1cbiAgLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkIGxhYmVsLFxuICAua214LWZvcm0tZmllbGQtLXN0YWNrZWQua214LWZvcm0tZmllbGQtLXN0YWNrZWQgW2NsYXNzJD0nLWxhYmVsJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biB7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG5cbi5rbXgtZm9ybS1ncm91cC0taW52YWxpZCAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNlMDFmMWY7XG4gIG1hcmdpbi10b3A6IDAuNzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07IH1cblxuLmtteC1mb3JtLWdyb3VwLS12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzZkNzQ3YTtcbiAgY29sb3I6IHZhcigtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQsICM2ZDc0N2EpOyB9XG5cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4ubWRjLWZvcm0tZmllbGQsIC5rbXgtZm9ybS1maWVsZCwgLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTc4NmVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1kYy1mb3JtLWZpZWxkID4gbGFiZWwsIC5rbXgtZm9ybS1maWVsZCA+IGxhYmVsLCAua214LWZvcm0tZmllbGQtLXN0YWNrZWQgPiBsYWJlbCwgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24gPiBsYWJlbCB7XG4gICAgb3JkZXI6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmtteC1mb3JtLWZpZWxkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24gPiBsYWJlbCwgLm1kYy1mb3JtLWZpZWxkW2Rpcj1cInJ0bFwiXSA+IGxhYmVsLCAua214LWZvcm0tZmllbGRbZGlyPVwicnRsXCJdID4gbGFiZWwsIC5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZFtkaXI9XCJydGxcIl0gPiBsYWJlbCwgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd25bZGlyPVwicnRsXCJdID4gbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6IDRweDsgfVxuXG4ubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsLCAua214LWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsIHtcbiAgb3JkZXI6IC0xO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogNHB4OyB9XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkLS1hbGlnbi1lbmQgPiBsYWJlbCwgW2Rpcj1cInJ0bFwiXSAua214LWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsLCAubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZFtkaXI9XCJydGxcIl0gPiBsYWJlbCwgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1lbmRbZGlyPVwicnRsXCJdID4gbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogNHB4OyB9XG5cbi8qICFJTVBPUlRBTlQ6IExFR09TIHJlY29tbWVuZHMgdGhlIHVzZSBvZiB0aGUgZmllbGRzZXQgZWxlbWVudFxyXG4gKiB3aGVuIGdyb3VwaW5nIHJlbGF0ZWQgZm9ybSBjb21wb25lbnRzLlxyXG4gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xubGVnZW5kIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gIGNvbG9yOiAjMmEzNDNkO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgcGFkZGluZzogMC41ZW0gMCAwIDAuNWVtOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuZmllbGRzZXQsXG4ua214LWZpZWxkc2V0IHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy10b3A6IDAuMDFlbTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbmJvZHk6bm90KDotbW96LWhhbmRsZXItYmxvY2tlZCkgZmllbGRzZXQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5cbi8qXHJcbiAqIElNUE9SVEFOVDogQSBkZXNpZ24tZGVjaXNpb24gaW4gc29tZSBicm93c2VycyB3aWxsIG5vdCBhbGxvdyBhXHJcbiAqIGZpZWxkc2V0IHRvIGJlIGNhc3QgYXMgYSBmbGV4Ym94IGNvbnRhaW5lci5cclxuICpcclxuICogTEVHT1MgcmVjb21tZW5kcyBhZGRpbmcgYSBhbiBpbW1lZGlhdGUgY2hpbGQgY29udGFpbmVyIG9mIHRoZSBmaWVsZHNldCB3aXRoIGRpc3BsYXk6ZmxleCBhc3NpZ25lZC5cclxuICogaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0NzU5MFxyXG4gKi9cbi5rbXgtZmxleC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5rbXgtZmxleC13cmFwcGVyLS1ob3Jpem9udGFsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ua214LWZpZWxkc2V0LS1pbnZhbGlkIC5rbXgtZmllbGRzZXQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNlMDFmMWY7IH1cblxuLmtteC1maWVsZHNldC1oZWxwZXItdGV4dCB7XG4gIGNvbG9yOiAjNmQ3NDdhO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTY2Njc7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCA4cHg7IH1cblxuOnJvb3Qge1xuICAtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tZGVza3RvcDogMjRweDtcbiAgLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLWRlc2t0b3A6IDI0cHg7XG4gIC0tbWRjLWxheW91dC1ncmlkLWNvbHVtbi13aWR0aC1kZXNrdG9wOiA3MnB4O1xuICAtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tdGFibGV0OiAyNHB4O1xuICAtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0OiAyNHB4O1xuICAtLW1kYy1sYXlvdXQtZ3JpZC1jb2x1bW4td2lkdGgtdGFibGV0OiA3MnB4O1xuICAtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tcGhvbmU6IDE2cHg7XG4gIC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZTogMTZweDtcbiAgLS1tZGMtbGF5b3V0LWdyaWQtY29sdW1uLXdpZHRoLXBob25lOiA3MnB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xuICAubWRjLWxheW91dC1ncmlkIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgcGFkZGluZzogdmFyKC0tbWRjLWxheW91dC1ncmlkLW1hcmdpbi1kZXNrdG9wLCAyNHB4KTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gIC5tZGMtbGF5b3V0LWdyaWQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtbWFyZ2luLXRhYmxldCwgMjRweCk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm1kYy1sYXlvdXQtZ3JpZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAxNnB4O1xuICAgIHBhZGRpbmc6IHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tcGhvbmUsIDE2cHgpOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5tZGMtbGF5b3V0LWdyaWRfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgbWFyZ2luOiAtMTJweDtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSAvIDIgKiAtMSk7IH1cbiAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2lubmVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBncmlkLWdhcDogMjRweDtcbiAgICAgICAgZ3JpZC1nYXA6IHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItZGVza3RvcCwgMjRweCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCBtaW5tYXgoMCwgMWZyKSk7IH0gfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gIC5tZGMtbGF5b3V0LWdyaWRfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgbWFyZ2luOiAtMTJweDtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci10YWJsZXQsIDI0cHgpIC8gMiAqIC0xKTsgfVxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGdyaWQtZ2FwOiAyNHB4O1xuICAgICAgICBncmlkLWdhcDogdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci10YWJsZXQsIDI0cHgpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCBtaW5tYXgoMCwgMWZyKSk7IH0gfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAubWRjLWxheW91dC1ncmlkX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIG1hcmdpbjogLThweDtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkgLyAyICogLTEpOyB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAubWRjLWxheW91dC1ncmlkX19pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZ3JpZC1nYXA6IDE2cHg7XG4gICAgICAgIGdyaWQtZ2FwOiB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpOyB9IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMjRweCk7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDEycHg7XG4gICAgbWFyZ2luOiBjYWxjKHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItZGVza3RvcCwgMjRweCkgLyAyKTsgfVxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNDsgfSB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xLWRlc2t0b3Age1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyNHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMS1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0yLFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMi1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTIsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMi1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0zLFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMy1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTMsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMy1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMzsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi00LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNC1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTQsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNC1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNDsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi01LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNS1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTUsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNS1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNTsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi02LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNi1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTYsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNi1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNjsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi03LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNy1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTcsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNy1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNzsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi04LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOC1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTgsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOC1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gODsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi05LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOS1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1kZXNrdG9wLCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTksXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOS1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gOTsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMCxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEwLWRlc2t0b3Age1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMjRweCk7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLWRlc2t0b3AsIDI0cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTAsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTAtZGVza3RvcCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDEwOyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTExLFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTEtZGVza3RvcCB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyNHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItZGVza3RvcCwgMjRweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMSxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMS1kZXNrdG9wIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTE7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTIsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMi1kZXNrdG9wIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyNHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLWRlc2t0b3AsIDI0cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTIsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTItZGVza3RvcCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDEyOyB9IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAubWRjLWxheW91dC1ncmlkX19jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyNHB4KTtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXRhYmxldCwgMjRweCkpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luOiAxMnB4O1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXRhYmxldCwgMjRweCkgLyAyKTsgfVxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNDsgfSB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xLXRhYmxldCB7XG4gICAgICB3aWR0aDogY2FsYygxMi41JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTIuNSUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXRhYmxldCwgMjRweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xLFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEtdGFibGV0IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0yLFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMi10YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMjRweCk7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXRhYmxldCwgMjRweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0yLFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTItdGFibGV0IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0zLFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMy10YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoMzcuNSUgLSAyNHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDM3LjUlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci10YWJsZXQsIDI0cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMyxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0zLXRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDM7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNCxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTQtdGFibGV0IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci10YWJsZXQsIDI0cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNCxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi00LXRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDQ7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNSxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTUtdGFibGV0IHtcbiAgICAgIHdpZHRoOiBjYWxjKDYyLjUlIC0gMjRweCk7XG4gICAgICB3aWR0aDogY2FsYyg2Mi41JSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTUsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNS10YWJsZXQge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiA1OyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTYsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi02LXRhYmxldCB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyNHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTYsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNi10YWJsZXQge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiA2OyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTcsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi03LXRhYmxldCB7XG4gICAgICB3aWR0aDogY2FsYyg4Ny41JSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoODcuNSUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXRhYmxldCwgMjRweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi03LFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTctdGFibGV0IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNzsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi04LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOC10YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTgsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOC10YWJsZXQge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiA4OyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTksXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi05LXRhYmxldCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjRweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci10YWJsZXQsIDI0cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOSxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi05LXRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDg7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTAsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMC10YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEwLFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEwLXRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDg7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTEsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMS10YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTExLFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTExLXRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDg7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTIsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMi10YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEyLFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEyLXRhYmxldCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDg7IH0gfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAubWRjLWxheW91dC1ncmlkX19jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItcGhvbmUsIDE2cHgpKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogOHB4O1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KSAvIDIpOyB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiA0OyB9IH1cbiAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwge1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMSxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEtcGhvbmUge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTEsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMS1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDE7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMixcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTItcGhvbmUge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTIsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMi1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDI7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMyxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTMtcGhvbmUge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTMsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMy1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDM7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNCxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTQtcGhvbmUge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItcGhvbmUsIDE2cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNCxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi00LXBob25lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNDsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi01LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNS1waG9uZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi01LFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTUtcGhvbmUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiA0OyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTYsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi02LXBob25lIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTYsXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNi1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDQ7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNyxcbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTctcGhvbmUge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItcGhvbmUsIDE2cHgpKTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tNyxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi03LXBob25lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gNDsgfSB9XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi04LFxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOC1waG9uZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi04LFxuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTgtcGhvbmUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiA0OyB9IH1cbiAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTksXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi05LXBob25lIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLXBob25lLCAxNnB4KSk7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLTksXG4gICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tOS1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDQ7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTAsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMC1waG9uZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMCxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMC1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDQ7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTEsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMS1waG9uZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMSxcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMS1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDQ7IH0gfVxuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tMTIsXG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMi1waG9uZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkpOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMixcbiAgICAgICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tc3Bhbi0xMi1waG9uZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDQ7IH0gfSB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4ubWRjLWxheW91dC1ncmlkX19jZWxsLS1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4ubWRjLWxheW91dC1ncmlkX19jZWxsLS1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLW9yZGVyLTcge1xuICBvcmRlcjogNzsgfVxuXG4ubWRjLWxheW91dC1ncmlkX19jZWxsLS1vcmRlci04IHtcbiAgb3JkZXI6IDg7IH1cblxuLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tb3JkZXItOSB7XG4gIG9yZGVyOiA5OyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLW9yZGVyLTEwIHtcbiAgb3JkZXI6IDEwOyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLW9yZGVyLTExIHtcbiAgb3JkZXI6IDExOyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLW9yZGVyLTEyIHtcbiAgb3JkZXI6IDEyOyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLWFsaWduLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tYWxpZ24tdG9wIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0YXJ0OyB9IH1cblxuLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLWFsaWduLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLWFsaWduLWJvdHRvbSB7XG4gICAgICBhbGlnbi1zZWxmOiBlbmQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgLm1kYy1sYXlvdXQtZ3JpZC0tZml4ZWQtY29sdW1uLXdpZHRoIHtcbiAgICB3aWR0aDogMTE3NnB4O1xuICAgIHdpZHRoOiBjYWxjKCB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtY29sdW1uLXdpZHRoLWRlc2t0b3AsIDcycHgpICogMTIgKyB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLWRlc2t0b3AsIDI0cHgpICogMTEgKyB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtbWFyZ2luLWRlc2t0b3AsIDI0cHgpICogMik7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAubWRjLWxheW91dC1ncmlkLS1maXhlZC1jb2x1bW4td2lkdGgge1xuICAgIHdpZHRoOiA3OTJweDtcbiAgICB3aWR0aDogY2FsYyggdmFyKC0tbWRjLWxheW91dC1ncmlkLWNvbHVtbi13aWR0aC10YWJsZXQsIDcycHgpICogOCArIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItdGFibGV0LCAyNHB4KSAqIDcgKyB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtbWFyZ2luLXRhYmxldCwgMjRweCkgKiAyKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAubWRjLWxheW91dC1ncmlkLS1maXhlZC1jb2x1bW4td2lkdGgge1xuICAgIHdpZHRoOiAzNjhweDtcbiAgICB3aWR0aDogY2FsYyggdmFyKC0tbWRjLWxheW91dC1ncmlkLWNvbHVtbi13aWR0aC1waG9uZSwgNzJweCkgKiA0ICsgdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci1waG9uZSwgMTZweCkgKiAzICsgdmFyKC0tbWRjLWxheW91dC1ncmlkLW1hcmdpbi1waG9uZSwgMTZweCkgKiAyKTsgfSB9XG5cbi5tZGMtbGF5b3V0LWdyaWQtLWFsaWduLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5tZGMtbGF5b3V0LWdyaWQtLWFsaWduLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4vKiAtLSBzY3JlZW4gc2l6ZXMgcmVmZXJlbmNlOiAtLVxyXG4kc2NyZWVuLXNpemVzOlxyXG4gICAgc21hbGw6IDMwMHB4LFxyXG4gICAgbWVkaXVtOiA2MDBweCxcclxuICAgIGxhcmdlOiA5MDBweCxcclxuICAgIHhsYXJnZTogMTIwMHB4LFxyXG4gICAgeHhsYXJnZTogMjEwMHB4LFxyXG4qL1xuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5rbXgtbGF5b3V0LWdyaWQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtbWFyZ2luLWRlc2t0b3AsIDI0cHgpOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLmtteC1sYXlvdXQtZ3JpZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAyNHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tdGFibGV0LCAyNHB4KTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAua214LWxheW91dC1ncmlkIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgcGFkZGluZzogdmFyKC0tbWRjLWxheW91dC1ncmlkLW1hcmdpbi1waG9uZSwgMTZweCk7IH0gfVxuXG4ua214LWxheW91dC1ncmlkLm1heC13aWR0aC0teGwge1xuICBtYXgtd2lkdGg6IDEyMDBweDsgfVxuXG4ua214LWxheW91dC1ncmlkLm1heC13aWR0aC0tbGcge1xuICBtYXgtd2lkdGg6IDkwMHB4OyB9XG5cbi5rbXgtbGF5b3V0LWdyaWQubWF4LXdpZHRoLS1tZCB7XG4gIG1heC13aWR0aDogNjAwcHg7IH1cblxuLmtteC1sYXlvdXQtZ3JpZC5tYXgtd2lkdGgtLXNtIHtcbiAgbWF4LXdpZHRoOiAzMDBweDsgfVxuXG4ua214LWxheW91dC1ncmlkLmtteC1sYXlvdXQtZ3JpZC0tYWxpZ24tbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmtteC1sYXlvdXQtZ3JpZC5rbXgtbGF5b3V0LWdyaWQtLWFsaWduLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ubWRjLWxheW91dC1ncmlkX19jZWxsLS1qdXN0aWZ5LXN0YXJ0IHtcbiAganVzdGlmeS1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLWp1c3RpZnktc3RhcnQge1xuICAgICAganVzdGlmeS1zZWxmOiBzdGFydDsgfSB9XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLWp1c3RpZnktY2VudGVyIHtcbiAganVzdGlmeS1zZWxmOiBjZW50ZXI7IH1cblxuLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbC0tanVzdGlmeS1lbmQge1xuICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kOyB9XG4gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLWp1c3RpZnktZW5kIHtcbiAgICAgIGp1c3RpZnktc2VsZjogZW5kOyB9IH1cblxuLyogTk9URTogSWNvbiBUb2dnbGUgZG9lcyBub3QgaGF2ZSBhIFwicHVzaGVkL2FjdGl2ZVwiIHN0YXRlICovXG4ua214LWljb24tdG9nZ2xlLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5rbXgtaWNvbi10b2dnbGUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDBweDsgfVxuICAgIC5rbXgtaWNvbi10b2dnbGUtd3JhcHBlciAua214LWljb24tdG9nZ2xlOmhvdmVyIH4gLnN2Zy1pY29uLXdyYXBwZXIgPiAuc3ZnLWljb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMywgMTE1LCAyMDcsIDAuMDgpOyB9XG4gICAgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5rbXgtaWNvbi10b2dnbGU6Zm9jdXMgfiAuc3ZnLWljb24td3JhcHBlciA+IC5zdmctaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzLCAxMTUsIDIwNywgMC4yNCk7IH1cbiAgICAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLmtteC1pY29uLXRvZ2dsZTpkaXNhYmxlZCB7XG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgICAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLmtteC1pY29uLXRvZ2dsZTpkaXNhYmxlZDpob3ZlciB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5rbXgtaWNvbi10b2dnbGUtd3JhcHBlciAua214LWljb24tdG9nZ2xlOmRpc2FibGVkIH4gLnN2Zy1pY29uLXdyYXBwZXIgPiAuc3ZnLWljb24gc3ZnIHtcbiAgICAgICAgZmlsbDogI2FiYWZiMzsgfVxuICAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5zdmctaWNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4taGVpZ2h0OiAxZW07XG4gICAgbWluLXdpZHRoOiAxZW07XG4gICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgICAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5zdmctaWNvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgICAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiAjMDUzMzYxO1xuICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgd2lkdGg6IDI0cHg7IH1cblxuLm1kYy10aGVtZS0tZGFyayAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLmtteC1pY29uLXRvZ2dsZTpob3ZlciB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTsgfVxuXG4ubWRjLXRoZW1lLS1kYXJrIC5rbXgtaWNvbi10b2dnbGUtd3JhcHBlciAua214LWljb24tdG9nZ2xlOmZvY3VzIH4gLnN2Zy1pY29uLXdyYXBwZXIgPiAuc3ZnLWljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjQpOyB9XG5cbi5tZGMtdGhlbWUtLWRhcmsgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5rbXgtaWNvbi10b2dnbGU6ZGlzYWJsZWQge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgLm1kYy10aGVtZS0tZGFyayAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLmtteC1pY29uLXRvZ2dsZTpkaXNhYmxlZDpmb2N1cyB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uLFxuICAubWRjLXRoZW1lLS1kYXJrIC5rbXgtaWNvbi10b2dnbGUtd3JhcHBlciAua214LWljb24tdG9nZ2xlOmRpc2FibGVkOmhvdmVyIH4gLnN2Zy1pY29uLXdyYXBwZXIgPiAuc3ZnLWljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5tZGMtdGhlbWUtLWRhcmsgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5rbXgtaWNvbi10b2dnbGU6ZGlzYWJsZWQgfiAuc3ZnLWljb24td3JhcHBlciA+IC5zdmctaWNvbiBzdmcge1xuICAgIGZpbGw6ICNhYmFmYjM7IH1cblxuLm1kYy10aGVtZS0tZGFyayAua214LWljb24tdG9nZ2xlLXdyYXBwZXIgLnN2Zy1pY29uIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gIC5tZGMtdGhlbWUtLWRhcmsgLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIC5zdmctaWNvbiBzdmcge1xuICAgIGZpbGw6ICNmZmZmZmY7IH1cblxuQGtleWZyYW1lcyBwcmltYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAyMCUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICA1OS4xNSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODMuNjcxNDIlKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwLjYxMTA2JSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHByaW1hcnktaW5kZXRlcm1pbmF0ZS1zY2FsZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjA4KTsgfVxuICAzNi42NSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMzNDczLCAwLjEyNDgyLCAwLjc4NTg0LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjA4KTsgfVxuICA2OS4xNSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjA2LCAwLjExLCAwLjYsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNjYxNDgpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuMDgpOyB9IH1cblxuQGtleWZyYW1lcyBzZWNvbmRhcnktaW5kZXRlcm1pbmF0ZS10cmFuc2xhdGUge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTUsIDAsIDAuNTE1MDYsIDAuNDA5NjkpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAyNSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMxMDMzLCAwLjI4NDA2LCAwLjgsIDAuNzMzNzEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzNy42NTE5MSUpOyB9XG4gIDQ4LjM1JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMC42MjcwNCwgMC42LCAwLjkwMjAzKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODQuMzg2MTclKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTYwLjI3Nzc4JSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNlY29uZGFyeS1pbmRldGVybWluYXRlLXNjYWxlIHtcbiAgMCUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIwNTAzLCAwLjA1NzA1LCAwLjU3NjYxLCAwLjQ1Mzk3KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjA4KTsgfVxuICAxOS4xNSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE1MjMxLCAwLjE5NjQzLCAwLjY0ODM3LCAxLjAwNDMyKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjQ1NzEpOyB9XG4gIDQ0LjE1JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjU3NzYsIC0wLjAwMzE2LCAwLjIxMTc2LCAxLjM4MTc5KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcyNzk2KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjA4KTsgfSB9XG5cbkBrZXlmcmFtZXMgYnVmZmVyaW5nIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHByaW1hcnktaW5kZXRlcm1pbmF0ZS10cmFuc2xhdGUtcmV2ZXJzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgMjAlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgNTkuMTUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC04My42NzE0MiUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwLjYxMTA2JSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNlY29uZGFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZS1yZXZlcnNlIHtcbiAgMCUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE1LCAwLCAwLjUxNTA2LCAwLjQwOTY5KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgMjUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMTAzMywgMC4yODQwNiwgMC44LCAwLjczMzcxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM3LjY1MTkxJSk7IH1cbiAgNDguMzUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLjYyNzA0LCAwLjYsIDAuOTAyMDMpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtODQuMzg2MTclKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2MC4yNzc3OCUpOyB9IH1cblxuQGtleWZyYW1lcyBidWZmZXJpbmctcmV2ZXJzZSB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7IH0gfVxuXG4ubWRjLWxpbmVhci1wcm9ncmVzcywgLmtteC1saW5lYXItcHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtbGluZWFyLXByb2dyZXNzX19iYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTsgfVxuICAubWRjLWxpbmVhci1wcm9ncmVzc19fYmFyLWlubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBhbmltYXRpb246IG5vbmU7IH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2J1ZmZlcmluZy1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFuaW1hdGlvbjogYnVmZmVyaW5nIDI1MG1zIGluZmluaXRlIGxpbmVhcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDRweDsgfVxuICAubWRjLWxpbmVhci1wcm9ncmVzc19fYnVmZmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTsgfVxuICAubWRjLWxpbmVhci1wcm9ncmVzc19fcHJpbWFyeS1iYXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOyB9XG4gIC5tZGMtbGluZWFyLXByb2dyZXNzX19zZWNvbmRhcnktYmFyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2JhciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAubWRjLWxpbmVhci1wcm9ncmVzcy0taW5kZXRlcm1pbmF0ZSAubWRjLWxpbmVhci1wcm9ncmVzc19fcHJpbWFyeS1iYXIge1xuICAgIGxlZnQ6IC0xNDUuMTY2NjExJTtcbiAgICBhbmltYXRpb246IHByaW1hcnktaW5kZXRlcm1pbmF0ZS10cmFuc2xhdGUgMnMgaW5maW5pdGUgbGluZWFyOyB9XG4gICAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX3ByaW1hcnktYmFyID4gLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2Jhci1pbm5lciB7XG4gICAgICBhbmltYXRpb246IHByaW1hcnktaW5kZXRlcm1pbmF0ZS1zY2FsZSAycyBpbmZpbml0ZSBsaW5lYXI7IH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX3NlY29uZGFyeS1iYXIge1xuICAgIGxlZnQ6IC01NC44ODg4OTElO1xuICAgIGFuaW1hdGlvbjogc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX3NlY29uZGFyeS1iYXIgPiAubWRjLWxpbmVhci1wcm9ncmVzc19fYmFyLWlubmVyIHtcbiAgICAgIGFuaW1hdGlvbjogc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtc2NhbGUgMnMgaW5maW5pdGUgbGluZWFyOyB9XG4gIC5tZGMtbGluZWFyLXByb2dyZXNzLS1yZXZlcnNlZCAubWRjLWxpbmVhci1wcm9ncmVzc19fYmFyLFxuICAubWRjLWxpbmVhci1wcm9ncmVzcy0tcmV2ZXJzZWQgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2J1ZmZlciB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0OyB9XG4gIC5tZGMtbGluZWFyLXByb2dyZXNzLS1yZXZlcnNlZCAubWRjLWxpbmVhci1wcm9ncmVzc19fcHJpbWFyeS1iYXIge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBwcmltYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlLXJldmVyc2U7IH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLXJldmVyc2VkIC5tZGMtbGluZWFyLXByb2dyZXNzX19zZWNvbmRhcnktYmFyIHtcbiAgICBhbmltYXRpb24tbmFtZTogc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlLXJldmVyc2U7IH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLXJldmVyc2VkIC5tZGMtbGluZWFyLXByb2dyZXNzX19idWZmZXJpbmctZG90cyB7XG4gICAgYW5pbWF0aW9uOiBidWZmZXJpbmctcmV2ZXJzZSAyNTBtcyBpbmZpbml0ZSBsaW5lYXI7IH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3MtLWNsb3NlZCB7XG4gICAgb3BhY2l0eTogMDsgfVxuXG4ubWRjLWxpbmVhci1wcm9ncmVzc19fYmFyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cblxuLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2J1ZmZlcmluZy1kb3RzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIHg9JzBweCcgeT0nMHB4JyBlbmFibGUtYmFja2dyb3VuZD0nbmV3IDAgMCA1IDInIHhtbDpzcGFjZT0ncHJlc2VydmUnIHZpZXdCb3g9JzAgMCA1IDInIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUgc2xpY2UnJTNFJTNDY2lyY2xlIGN4PScxJyBjeT0nMScgcj0nMScgZmlsbD0nJTIzZTZlNmU2Jy8lM0UlM0Mvc3ZnJTNFXCIpOyB9XG5cbi5tZGMtbGluZWFyLXByb2dyZXNzX19idWZmZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG5cbi5tZGMtbGluZWFyLXByb2dyZXNzLS1pbmRldGVybWluYXRlLm1kYy1saW5lYXItcHJvZ3Jlc3MtLXJldmVyc2VkIC5tZGMtbGluZWFyLXByb2dyZXNzX19wcmltYXJ5LWJhciB7XG4gIHJpZ2h0OiAtMTQ1LjE2NjYxMSU7XG4gIGxlZnQ6IGF1dG87IH1cblxuLm1kYy1saW5lYXItcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUubWRjLWxpbmVhci1wcm9ncmVzcy0tcmV2ZXJzZWQgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX3NlY29uZGFyeS1iYXIge1xuICByaWdodDogLTU0Ljg4ODg5MSU7XG4gIGxlZnQ6IGF1dG87IH1cblxuLm1kYy1saW5lYXItcHJvZ3Jlc3MsIC5rbXgtbGluZWFyLXByb2dyZXNzIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovIH1cbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2Jhci1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzNjZiAhaW1wb3J0YW50OyB9XG4gIC5tZGMtbGluZWFyLXByb2dyZXNzX19idWZmZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMGYyZmYgIWltcG9ydGFudDsgfVxuXG4ua214LWxpbmVhci1wcm9ncmVzcyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4ubWRjLWxpc3QsIC5rbXgtbGlzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAwOTM3ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDhweCAwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4ubWRjLWxpc3QtaXRlbV9fc2Vjb25kYXJ5LXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtc2Vjb25kYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XG5cbi5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxuXG4ubWRjLWxpc3QtaXRlbV9fbWV0YSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XG5cbi5tZGMtbGlzdC0tZGVuc2Uge1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICBmb250LXNpemU6IC44MTJyZW07IH1cblxuLm1kYy1saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAwIDE2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm1kYy1saXN0LWl0ZW06Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkLFxuLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZCB7XG4gIGNvbG9yOiAjMDUzMzYxO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljLFxuICAubWRjLWxpc3QtaXRlbS0tYWN0aXZhdGVkIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgICBjb2xvcjogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuXG4ubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cblxuLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMzJweDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG4gIC5tZGMtbGlzdC1pdGVtW2Rpcj1cInJ0bFwiXSAubWRjLWxpc3QtaXRlbV9fZ3JhcGhpYyxcbiAgW2Rpcj1cInJ0bFwiXSAubWRjLWxpc3QtaXRlbSAubWRjLWxpc3QtaXRlbV9fZ3JhcGhpYyB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLm1kYy1saXN0LWl0ZW1fX21ldGEge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWRjLWxpc3QtaXRlbVtkaXI9XCJydGxcIl0gLm1kYy1saXN0LWl0ZW1fX21ldGEsXG4gIFtkaXI9XCJydGxcIl0gLm1kYy1saXN0LWl0ZW0gLm1kYy1saXN0LWl0ZW1fX21ldGEge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5tZGMtbGlzdC1pdGVtX190ZXh0IHtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm1kYy1saXN0LWl0ZW1fX3ByaW1hcnktdGV4dCB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogLTIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tZGMtbGlzdC1pdGVtX19wcmltYXJ5LXRleHQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMzJweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHZlcnRpY2FsLWFsaWduOiAwOyB9XG4gIC5tZGMtbGlzdC1pdGVtX19wcmltYXJ5LXRleHQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmVydGljYWwtYWxpZ246IC0yMHB4OyB9XG4gIC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX3ByaW1hcnktdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IC0yMHB4OyB9XG4gICAgLm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0OjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7IH1cbiAgICAubWRjLWxpc3QtLWRlbnNlIC5tZGMtbGlzdC1pdGVtX19wcmltYXJ5LXRleHQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAtMjBweDsgfVxuXG4ubWRjLWxpc3QtaXRlbV9fc2Vjb25kYXJ5LXRleHQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE3ODZlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAubWRjLWxpc3QtaXRlbV9fc2Vjb25kYXJ5LXRleHQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHZlcnRpY2FsLWFsaWduOiAwOyB9XG4gIC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX3NlY29uZGFyeS10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiBpbmhlcml0OyB9XG4gICAgLm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbV9fc2Vjb25kYXJ5LXRleHQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDsgfVxuXG4ubWRjLWxpc3QtLWRlbnNlIC5tZGMtbGlzdC1pdGVtIHtcbiAgaGVpZ2h0OiA0MHB4OyB9XG5cbi5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMzZweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDsgfVxuICAubWRjLWxpc3QtaXRlbVtkaXI9XCJydGxcIl0gLm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbV9fZ3JhcGhpYyxcbiAgW2Rpcj1cInJ0bFwiXSAubWRjLWxpc3QtaXRlbSAubWRjLWxpc3QtLWRlbnNlIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLWxlZnQ6IDM2cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ubWRjLWxpc3QtLWF2YXRhci1saXN0IC5tZGMtbGlzdC1pdGVtIHtcbiAgaGVpZ2h0OiA1NnB4OyB9XG5cbi5tZGMtbGlzdC0tYXZhdGFyLWxpc3QgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMTZweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5tZGMtbGlzdC1pdGVtW2Rpcj1cInJ0bFwiXSAubWRjLWxpc3QtLWF2YXRhci1saXN0IC5tZGMtbGlzdC1pdGVtX19ncmFwaGljLFxuICBbZGlyPVwicnRsXCJdIC5tZGMtbGlzdC1pdGVtIC5tZGMtbGlzdC0tYXZhdGFyLWxpc3QgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5tZGMtbGlzdC0tdHdvLWxpbmUgLm1kYy1saXN0LWl0ZW1fX3RleHQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5tZGMtbGlzdC0tdHdvLWxpbmUgLm1kYy1saXN0LWl0ZW0ge1xuICBoZWlnaHQ6IDcycHg7IH1cblxuLm1kYy1saXN0LS10d28tbGluZS5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW0ge1xuICBoZWlnaHQ6IDYwcHg7IH1cblxuLm1kYy1saXN0LS1hdmF0YXItbGlzdC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW0ge1xuICBoZWlnaHQ6IDYwcHg7IH1cblxuLm1kYy1saXN0LS1hdmF0YXItbGlzdC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDsgfVxuICAubWRjLWxpc3QtaXRlbVtkaXI9XCJydGxcIl0gLm1kYy1saXN0LS1hdmF0YXItbGlzdC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMsXG4gIFtkaXI9XCJydGxcIl0gLm1kYy1saXN0LWl0ZW0gLm1kYy1saXN0LS1hdmF0YXItbGlzdC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbjpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0ge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtOjpiZWZvcmUsIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW06OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXI7XG4gICAgei1pbmRleDogMTsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZDo6YWZ0ZXIge1xuICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApOyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAyMjVtcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBmb3J3YXJkcywgNzVtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbTo6YmVmb3JlLCA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtOjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDEwMCUpO1xuICAgIHdpZHRoOiAyMDAlO1xuICAgIGhlaWdodDogMjAwJTsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbTo6YmVmb3JlLCA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjA0OyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW06bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMTI7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgb3BhY2l0eTogMC4xNjsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAgIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjE2OyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZDo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjEyOyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZDo6YmVmb3JlLCA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLS1hY3RpdmF0ZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG4gICAgQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgICAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS0tYWN0aXZhdGVkOjpiZWZvcmUsIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZDo6YWZ0ZXIge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfSB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZDpob3Zlcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjE2OyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgICBvcGFjaXR5OiAwLjI0OyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS0tYWN0aXZhdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgICBvcGFjaXR5OiAwLjI4OyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZC5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4yODsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjA4OyB9XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjpiZWZvcmUsIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuICAgIEBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgICAgIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjpiZWZvcmUsIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjphZnRlciB7XG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpOyB9IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6aG92ZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4xMjsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gOm5vdCgubWRjLWxpc3QtaXRlbS0tZGlzYWJsZWQpLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMjsgfVxuICA6bm90KC5tZGMtbGlzdC0tbm9uLWludGVyYWN0aXZlKSA+IDpub3QoLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkKS5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMjQ7IH1cbiAgOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gICAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMjQ7IH1cblxuYS5tZGMtbGlzdC1pdGVtIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubWRjLWxpc3QtZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7IH1cblxuLm1kYy1saXN0LWRpdmlkZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG5cbi5tZGMtbGlzdC1kaXZpZGVyLS1wYWRkZWQge1xuICBtYXJnaW46IDAgMTZweDsgfVxuXG4ubWRjLWxpc3QtZGl2aWRlci0taW5zZXQge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiA3MnB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDcycHgpOyB9XG4gIC5tZGMtbGlzdC1ncm91cFtkaXI9XCJydGxcIl0gLm1kYy1saXN0LWRpdmlkZXItLWluc2V0LFxuICBbZGlyPVwicnRsXCJdIC5tZGMtbGlzdC1ncm91cCAubWRjLWxpc3QtZGl2aWRlci0taW5zZXQge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiA3MnB4OyB9XG5cbi5tZGMtbGlzdC1kaXZpZGVyLS1pbnNldC5tZGMtbGlzdC1kaXZpZGVyLS1wYWRkZWQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNzJweCAtIDE2cHgpOyB9XG5cbi5tZGMtbGlzdC1ncm91cCAubWRjLWxpc3QsIC5tZGMtbGlzdC1ncm91cCAua214LWxpc3Qge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5tZGMtbGlzdC1ncm91cF9fc3ViaGVhZGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgbWFyZ2luOiAwLjc1cmVtIDE2cHg7IH1cblxuLm1kYy1saXN0LWdyb3VwX19zdWJoZWFkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxuXG4ua214LWxpc3Qge1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTZweDsgfVxuICAua214LWxpc3QgLm1kYy1saXN0LWl0ZW0ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgICAua214LWxpc3QgLm1kYy1saXN0LWl0ZW1fX21ldGEge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XG4gICAgICAua214LWxpc3QgLm1kYy1saXN0LWl0ZW1fX21ldGEua214LWljb24tYnV0dG9uLS10ZXJ0aWFyeTpub3QoOmRpc2FibGVkKSB7XG4gICAgICAgIGNvbG9yOiAjMDUzMzYxOyB9XG4gICAgLmtteC1saXN0IC5tZGMtbGlzdC1pdGVtIC5rbXgtbGlzdC1pdGVtX19lbmQtYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgZmxleC1zaHJpbms6IDA7IH1cbiAgICAua214LWxpc3QgLm1kYy1saXN0LWl0ZW0gLm1kYy1saXN0LWl0ZW1fX3ByaW1hcnktdGV4dDo6YmVmb3JlLFxuICAgIC5rbXgtbGlzdCAubWRjLWxpc3QtaXRlbSAubWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0OjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDI0cHg7IH1cbiAgLmtteC1saXN0Lm1kYy1saXN0LS1kZW5zZSwgLmtteC1saXN0LmtteC1saXN0LS1kZW5zZSB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLmtteC1saXN0Lm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbSwgLmtteC1saXN0LmtteC1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgLmtteC1saXN0Lm1kYy1saXN0LS1hdmF0YXItbGlzdCAua214LWxpc3QtaXRlbV9fZ3JhcGhpYyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXgtd2lkdGg6IDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9XG4gIC5rbXgtbGlzdC5tZGMtbGlzdC0tdHdvLWxpbmUgLm1kYy1saXN0LWl0ZW0sIC5rbXgtbGlzdC5tZGMtbGlzdC0tdGhyZWUtbGluZSAubWRjLWxpc3QtaXRlbSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmtteC1saXN0Lm1kYy1saXN0LS10d28tbGluZSAubWRjLWxpc3QtaXRlbSAubWRjLWxpc3QtaXRlbV9fdGV4dCwgLmtteC1saXN0Lm1kYy1saXN0LS10aHJlZS1saW5lIC5tZGMtbGlzdC1pdGVtIC5tZGMtbGlzdC1pdGVtX190ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDhweDsgfVxuICAua214LWxpc3QubWRjLWxpc3QtLXR3by1saW5lIC5tZGMtbGlzdC1pdGVtX190ZXh0LCAua214LWxpc3QubWRjLWxpc3QtLXRocmVlLWxpbmUgLm1kYy1saXN0LWl0ZW1fX3RleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAua214LWxpc3QubWRjLWxpc3QtLXR3by1saW5lLm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbV9fdGV4dCwgLmtteC1saXN0Lm1kYy1saXN0LS10aHJlZS1saW5lLm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbV9fdGV4dCB7XG4gICAgcGFkZGluZzogNHB4OyB9XG4gIC5rbXgtbGlzdC5tZGMtbGlzdC0tdHdvLWxpbmUgLm1kYy1saXN0LWl0ZW1fX3NlY29uZGFyeS10ZXh0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjk7XG4gICAgbWF4LWhlaWdodDogMzZweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgLmtteC1saXN0Lm1kYy1saXN0LS10aHJlZS1saW5lIC5tZGMtbGlzdC1pdGVtX19zZWNvbmRhcnktdGV4dCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI5O1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4ubWRjLW1lbnUge1xuICBtaW4td2lkdGg6IDExMnB4O1xuICBtYXgtd2lkdGg6IDMzNnB4OyB9XG4gIC5tZGMtbWVudSAubWRjLWxpc3QtaXRlbV9fbWV0YSB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XG4gIC5tZGMtbWVudSAubWRjLWxpc3QtaXRlbV9fZ3JhcGhpYyB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XG4gIC5tZGMtbWVudSAubWRjLWxpc3QtZGl2aWRlciB7XG4gICAgbWFyZ2luOiA4cHggMDsgfVxuICAubWRjLW1lbnUgLm1kYy1saXN0LWl0ZW0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAubWRjLW1lbnUgLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6IGF1dG87IH1cblxuLm1kYy1tZW51X19zZWxlY3Rpb24tZ3JvdXAge1xuICBwYWRkaW5nOiAwO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cbiAgLm1kYy1tZW51X19zZWxlY3Rpb24tZ3JvdXAgLm1kYy1saXN0LWl0ZW0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtbWVudV9fc2VsZWN0aW9uLWdyb3VwIC5tZGMtbGlzdC1pdGVtLCAubWRjLW1lbnVfX3NlbGVjdGlvbi1ncm91cCAubWRjLWxpc3QtaXRlbVtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1yaWdodDogNTZweDsgfVxuXG4ubWRjLW1lbnVfX3NlbGVjdGlvbi1ncm91cC1pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLW1lbnVfX3NlbGVjdGlvbi1ncm91cC1pY29uLCAubWRjLW1lbnVfX3NlbGVjdGlvbi1ncm91cC1pY29uW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiAxNnB4OyB9XG5cbi5tZGMtbWVudS1pdGVtLS1zZWxlY3RlZCAubWRjLW1lbnVfX3NlbGVjdGlvbi1ncm91cC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lOyB9XG5cbi5tZGMtc2ltcGxlLW1lbnUtLW9wZW4tZnJvbS10b3AtcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbi5tZGMtcmFkaW8sIC5rbXgtcmFkaW8sIC5rbXgtcmFkaW8tLWRpc2FibGVkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGJvcmRlci1jb2xvciwgY29sb3I7IH1cbiAgLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCkgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSwgLmtteC1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCkgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSwgLmtteC1yYWRpby0tZGlzYWJsZWQgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpub3QoOmNoZWNrZWQpICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxuICAubWRjLXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLCAua214LXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLCAua214LXJhZGlvLS1kaXNhYmxlZCAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZkOTAwO1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9XG4gIC5tZGMtcmFkaW8gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlLCAua214LXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSwgLmtteC1yYWRpby0tZGlzYWJsZWQgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmQ5MDA7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7IH1cbiAgLm1kYy1yYWRpbyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUsIC5rbXgtcmFkaW8gLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlLCAua214LXJhZGlvLS1kaXNhYmxlZCAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7IH1cbiAgICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICAubWRjLXJhZGlvIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSwgLmtteC1yYWRpbyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUsIC5rbXgtcmFkaW8tLWRpc2FibGVkIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7IH0gfVxuICAubWRjLXJhZGlvOjpiZWZvcmUsIC5rbXgtcmFkaW86OmJlZm9yZSwgLmtteC1yYWRpby0tZGlzYWJsZWQ6OmJlZm9yZSwgLm1kYy1yYWRpbzo6YWZ0ZXIsIC5rbXgtcmFkaW86OmFmdGVyLCAua214LXJhZGlvLS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5tZGMtcmFkaW86OmJlZm9yZSwgLmtteC1yYWRpbzo6YmVmb3JlLCAua214LXJhZGlvLS1kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1yYWRpbzo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtcmFkaW8tLWRpc2FibGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1yYWRpbzo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1yYWRpby0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZC5rbXgtcmFkaW86OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkLmtteC1yYWRpby0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTsgfVxuICAubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb24ua214LXJhZGlvOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbi5rbXgtcmFkaW8tLWRpc2FibGVkOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAyMjVtcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBmb3J3YXJkcywgNzVtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7IH1cbiAgLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbi5rbXgtcmFkaW86OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb24ua214LXJhZGlvLS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy1yYWRpbzo6YmVmb3JlLCAua214LXJhZGlvOjpiZWZvcmUsIC5rbXgtcmFkaW8tLWRpc2FibGVkOjpiZWZvcmUsIC5tZGMtcmFkaW86OmFmdGVyLCAua214LXJhZGlvOjphZnRlciwgLmtteC1yYWRpby0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gNTAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSA1MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXJhZGlvOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1yYWRpby0tZGlzYWJsZWQ6OmJlZm9yZSwgLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXJhZGlvOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXJhZGlvLS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIGNhbGMoNTAlIC0gNTAlKSk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgY2FsYyg1MCUgLSA1MCUpKTtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXJhZGlvOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXJhZGlvLS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTsgfVxuICAubWRjLXJhZGlvOjpiZWZvcmUsIC5rbXgtcmFkaW86OmJlZm9yZSwgLmtteC1yYWRpby0tZGlzYWJsZWQ6OmJlZm9yZSwgLm1kYy1yYWRpbzo6YWZ0ZXIsIC5rbXgtcmFkaW86OmFmdGVyLCAua214LXJhZGlvLS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7IH1cbiAgICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICAubWRjLXJhZGlvOjpiZWZvcmUsIC5rbXgtcmFkaW86OmJlZm9yZSwgLmtteC1yYWRpby0tZGlzYWJsZWQ6OmJlZm9yZSwgLm1kYy1yYWRpbzo6YWZ0ZXIsIC5rbXgtcmFkaW86OmFmdGVyLCAua214LXJhZGlvLS1kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9IH1cbiAgLm1kYy1yYWRpbzpob3Zlcjo6YmVmb3JlLCAua214LXJhZGlvOmhvdmVyOjpiZWZvcmUsIC5rbXgtcmFkaW8tLWRpc2FibGVkOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDg7IH1cbiAgLm1kYy1yYWRpbzpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtcmFkaW86bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAua214LXJhZGlvLS1kaXNhYmxlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LXJhZGlvOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LXJhZGlvLS1kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMjQ7IH1cbiAgLm1kYy1yYWRpbzpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1yYWRpbzpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1yYWRpby0tZGlzYWJsZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyOyB9XG4gIC5tZGMtcmFkaW86bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAua214LXJhZGlvOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC1yYWRpby0tZGlzYWJsZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMzI7IH1cbiAgLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtcmFkaW8sIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC1yYWRpby0tZGlzYWJsZWQge1xuICAgIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjMyOyB9XG4gIC5tZGMtcmFkaW9fX2JhY2tncm91bmQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSksIHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpLCBib3JkZXItY29sb3IgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG4gICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBpbmhlcml0O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkLmtteC1yYWRpbyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LXJhZGlvLS1kaXNhYmxlZCAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7IH1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQsXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgdHJhbnNmb3JtIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTsgfVxuICAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUsXG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7IH1cbiAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlLFxuICAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBib3JkZXItY29sb3IgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpOyB9XG5cbi5tZGMtcmFkaW8tLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIGJvcmRlci1jb2xvciAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7IH1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kLFxuW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuICAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLFxuICBbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUsXG4gIFthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDIsIDIpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgdHJhbnNmb3JtIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgb3BhY2l0eTogMC4xMjsgfVxuXG4ua214LXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6bm90KDpjaGVja2VkKSArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLCAua214LXJhZGlvLS1kaXNhYmxlZCAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCkgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogIzZkNzQ3YTsgfVxuXG4ua214LXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLCAua214LXJhZGlvLS1kaXNhYmxlZCAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogIzE3NzNjZjsgfVxuXG4ua214LXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSwgLmtteC1yYWRpby0tZGlzYWJsZWQgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTc3M2NmOyB9XG5cbi5rbXgtcmFkaW8gLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlLCAua214LXJhZGlvLS1kaXNhYmxlZCAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3M2NmOyB9XG5cbi5rbXgtcmFkaW86OmJlZm9yZSwgLmtteC1yYWRpby0tZGlzYWJsZWQ6OmJlZm9yZSwgLmtteC1yYWRpbzo6YWZ0ZXIsIC5rbXgtcmFkaW8tLWRpc2FibGVkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzczY2Y7IH1cblxuLmtteC1yYWRpby0tZGlzYWJsZWQ6OmJlZm9yZSwgLmtteC1yYWRpby0tZGlzYWJsZWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiYWZiMzsgfVxuXG4ua214LXJhZGlvLS1pbnZhbGlkIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI2UwMWYxZjsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4ua214LXJhZGlvOm5vdCgua214LXJhZGlvLS1kaXNhYmxlZCksIC5rbXgtcmFkaW8tLWRpc2FibGVkOm5vdCgua214LXJhZGlvLS1kaXNhYmxlZCkge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi8gfVxuICAua214LXJhZGlvOm5vdCgua214LXJhZGlvLS1kaXNhYmxlZCkgKyBsYWJlbCwgLmtteC1yYWRpby0tZGlzYWJsZWQ6bm90KC5rbXgtcmFkaW8tLWRpc2FibGVkKSArIGxhYmVsLFxuICAua214LXJhZGlvOm5vdCgua214LXJhZGlvLS1kaXNhYmxlZCkgKyAua214LXJhZGlvLWxhYmVsLFxuICAua214LXJhZGlvLS1kaXNhYmxlZDpub3QoLmtteC1yYWRpby0tZGlzYWJsZWQpICsgLmtteC1yYWRpby1sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgICBjb2xvcjogIzZkNzQ3YTsgfVxuXG4ua214LXJhZGlvLS1kaXNhYmxlZCB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZSAqLyB9XG4gIC5rbXgtcmFkaW8tLWRpc2FibGVkICsgbGFiZWwsXG4gIC5rbXgtcmFkaW8tLWRpc2FibGVkICsgLmtteC1yYWRpby1sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgICBjb2xvcjogI2FiYWZiMzsgfVxuXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxuLm1kYy10aGVtZS0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmZmZmKTsgfVxuXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuXG46cm9vdCB7XG4gIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICM4YzkxOTY7XG4gIC0ta214LXRleHQtZmllbGQtdGV4dC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC1pbnB1dC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWRpdmlkZXItb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICNlMDFmMWY7XG4gIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLXRleHQtb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLXVuZGVybGluZS1ob3Zlci1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1ib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiAjOGM5MTk2O1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6IHJnYmEoNSwgNTEsIDk3LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQtLWFjdGl2ZTogIzA1MzM2MTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogd2hpdGU7XG4gIC0ta214LXRoZW1lLWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC0ta214LWZvcm0tY29tcG9uZW50LWJsdWU6ICMxNzczY2Y7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xuLm1kYy10b29sYmFyLCAua214LXNlY29uZGFyeS1oZWFkZXIsIC5rbXgtdG9vbGJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpO1xuICBjb2xvcjogd2hpdGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTsgfVxuICAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy10b29sYmFyX19pY29uLCAua214LXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uLCAubWRjLXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uLCAua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC10b29sYmFyX19pY29uLCAua214LXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOjpiZWZvcmUsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOjpiZWZvcmUsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOjphZnRlciwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5rbXgtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gICAgLm1kYy10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjpob3Zlcjo6YmVmb3JlLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy10b29sYmFyX19pY29uOmhvdmVyOjpiZWZvcmUsIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246aG92ZXI6OmJlZm9yZSwgLm1kYy10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpob3Zlcjo6YmVmb3JlLCAua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC10b29sYmFyX19pY29uOmhvdmVyOjpiZWZvcmUsIC5rbXgtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246aG92ZXI6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjA4OyB9XG4gICAgLm1kYy10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAua214LXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAua214LXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLm1kYy10b29sYmFyIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC10b29sYmFyIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgICAgb3BhY2l0eTogMC4yNDsgfVxuICAgIC5tZGMtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsIC5tZGMtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsIC5rbXgtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7IH1cbiAgICAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIsIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAubWRjLXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIsIC5rbXgtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgICBvcGFjaXR5OiAwLjMyOyB9XG4gICAgLm1kYy10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQsIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZCwgLm1kYy10b29sYmFyIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19pY29uLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX2ljb24sIC5rbXgtdG9vbGJhciAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9faWNvbiB7XG4gICAgICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4zMjsgfVxuICAubWRjLXRvb2xiYXJfX3JvdywgLmtteC10b29sYmFyX19yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNjRweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAubWRjLXRvb2xiYXJfX3JvdywgLmtteC10b29sYmFyX19yb3cge1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgIC5tZGMtdG9vbGJhcl9fcm93LCAua214LXRvb2xiYXJfX3JvdyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDU2cHg7IH0gfVxuICAubWRjLXRvb2xiYXJfX3NlY3Rpb24sIC5rbXgtdG9vbGJhcl9fc2VjdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleDogMTtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbiwgLmtteC10b29sYmFyX19zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgICAubWRjLXRvb2xiYXJfX3NlY3Rpb24sIC5rbXgtdG9vbGJhcl9fc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwOyB9IH1cbiAgICAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0IHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBvcmRlcjogLTE7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1zdGFydCwgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1zdGFydFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgICAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0IHtcbiAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tc3RhcnQsIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tc3RhcnRbZGlyPVwicnRsXCJdIHtcbiAgICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgICAgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1zdGFydCB7XG4gICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0LCAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0W2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7IH0gfVxuICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1lbmQsIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kIHtcbiAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kLCAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLWVuZFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgICAgICAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLWVuZCB7XG4gICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLWVuZCwgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1lbmRbZGlyPVwicnRsXCJdIHtcbiAgICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICAgICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIC5tZGMtdG9vbGJhcl9fdGl0bGUsIC5rbXgtdG9vbGJhcl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxMjVlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMjRweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX3RpdGxlLCBbZGlyPVwicnRsXCJdIC5rbXgtdG9vbGJhcl9fdGl0bGUsIC5tZGMtdG9vbGJhcl9fdGl0bGVbZGlyPVwicnRsXCJdLCAua214LXRvb2xiYXJfX3RpdGxlW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxuICAubWRjLXRvb2xiYXJfX2ljb24sIC5rbXgtdG9vbGJhcl9faWNvbiwgLm1kYy10b29sYmFyX19tZW51LWljb24sIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uIHtcbiAgICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAgIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiA0OHB4O1xuICAgIGhlaWdodDogNDhweDtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLm1kYy10b29sYmFyX19pY29uOjpiZWZvcmUsIC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXJfX2ljb246OmFmdGVyLCAua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbjo6YmVmb3JlLCAua214LXRvb2xiYXJfX21lbnUtaWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbjo6YWZ0ZXIsIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgLm1kYy10b29sYmFyX19pY29uOjpiZWZvcmUsIC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbjo6YmVmb3JlLCAua214LXRvb2xiYXJfX21lbnUtaWNvbjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXI7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbi5rbXgtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb24ua214LXRvb2xiYXJfX21lbnUtaWNvbjo6YWZ0ZXIge1xuICAgICAgYW5pbWF0aW9uOiAyMjVtcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBmb3J3YXJkcywgNzVtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb24ua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbi5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciB7XG4gICAgICBhbmltYXRpb246IDE1MG1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC10b29sYmFyX19pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5rbXgtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUsIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciwgLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSA1MCUpO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSA1MCUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCBjYWxjKDUwJSAtIDUwJSkpO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCBjYWxjKDUwJSAtIDUwJSkpO1xuICAgICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG5cbi5tZGMtdG9vbGJhcl9fbWVudS1pY29uICsgLm1kYy10b29sYmFyX190aXRsZSwgLmtteC10b29sYmFyX19tZW51LWljb24gKyAubWRjLXRvb2xiYXJfX3RpdGxlLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbiArIC5rbXgtdG9vbGJhcl9fdGl0bGUsIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uICsgLmtteC10b29sYmFyX190aXRsZSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX21lbnUtaWNvbiArIC5tZGMtdG9vbGJhcl9fdGl0bGUsIFtkaXI9XCJydGxcIl0gLmtteC10b29sYmFyX19tZW51LWljb24gKyAubWRjLXRvb2xiYXJfX3RpdGxlLCBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uICsgLmtteC10b29sYmFyX190aXRsZSwgW2Rpcj1cInJ0bFwiXSAua214LXRvb2xiYXJfX21lbnUtaWNvbiArIC5rbXgtdG9vbGJhcl9fdGl0bGUsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uICsgLm1kYy10b29sYmFyX190aXRsZVtkaXI9XCJydGxcIl0sIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uICsgLm1kYy10b29sYmFyX190aXRsZVtkaXI9XCJydGxcIl0sIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uICsgLmtteC10b29sYmFyX190aXRsZVtkaXI9XCJydGxcIl0sIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uICsgLmtteC10b29sYmFyX190aXRsZVtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5tZGMtdG9vbGJhcl9fdGl0bGUsIC5rbXgtdG9vbGJhcl9fdGl0bGUge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX3RpdGxlLCBbZGlyPVwicnRsXCJdIC5rbXgtdG9vbGJhcl9fdGl0bGUsIC5tZGMtdG9vbGJhcl9fdGl0bGVbZGlyPVwicnRsXCJdLCAua214LXRvb2xiYXJfX3RpdGxlW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDsgfSB9XG5cbi5tZGMtdG9vbGJhci0tZml4ZWQsIC5rbXgtdG9vbGJhci0tZml4ZWQge1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDRweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDQ7IH1cblxuLm1kYy10b29sYmFyLS1mbGV4aWJsZSB7XG4gIC0tbWRjLXRvb2xiYXItcmF0aW8tdG8tZXh0ZW5kLWZsZXhpYmxlOiA0OyB9XG4gIC5tZGMtdG9vbGJhci0tZmxleGlibGUgLm1kYy10b29sYmFyX19yb3c6Zmlyc3QtY2hpbGQsIC5tZGMtdG9vbGJhci0tZmxleGlibGUgLmtteC10b29sYmFyX19yb3c6Zmlyc3QtY2hpbGQge1xuICAgIGhlaWdodDogMjU2cHg7XG4gICAgaGVpZ2h0OiBjYWxjKDY0cHggKiB2YXIoLS1tZGMtdG9vbGJhci1yYXRpby10by1leHRlbmQtZmxleGlibGUsIDQpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgICAgLm1kYy10b29sYmFyLS1mbGV4aWJsZSAubWRjLXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZCwgLm1kYy10b29sYmFyLS1mbGV4aWJsZSAua214LXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGhlaWdodDogMjI0cHg7XG4gICAgICAgIGhlaWdodDogY2FsYyg1NnB4ICogdmFyKC0tbWRjLXRvb2xiYXItcmF0aW8tdG8tZXh0ZW5kLWZsZXhpYmxlLCA0KSk7IH0gfVxuICAgIC5tZGMtdG9vbGJhci0tZmxleGlibGUgLm1kYy10b29sYmFyX19yb3c6Zmlyc3QtY2hpbGQ6OmFmdGVyLCAubWRjLXRvb2xiYXItLWZsZXhpYmxlIC5rbXgtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5tZGMtdG9vbGJhci0tZmxleGlibGUtZGVmYXVsdC1iZWhhdmlvciAubWRjLXRvb2xiYXJfX3RpdGxlLCAubWRjLXRvb2xiYXItLWZsZXhpYmxlLWRlZmF1bHQtYmVoYXZpb3IgLmtteC10b29sYmFyX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNWVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9XG4gIC5tZGMtdG9vbGJhci0tZmxleGlibGUtZGVmYXVsdC1iZWhhdmlvciAubWRjLXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZDo6YWZ0ZXIsIC5tZGMtdG9vbGJhci0tZmxleGlibGUtZGVmYXVsdC1iZWhhdmlvciAua214LXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLm1kYy10b29sYmFyLS1mbGV4aWJsZS1kZWZhdWx0LWJlaGF2aW9yLm1kYy10b29sYmFyLS1mbGV4aWJsZS1zcGFjZS1taW5pbWl6ZWQgLm1kYy10b29sYmFyX19yb3c6Zmlyc3QtY2hpbGQ6OmFmdGVyLCAubWRjLXRvb2xiYXItLWZsZXhpYmxlLWRlZmF1bHQtYmVoYXZpb3IubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCAua214LXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm1kYy10b29sYmFyLS1mbGV4aWJsZS1kZWZhdWx0LWJlaGF2aW9yLm1kYy10b29sYmFyLS1mbGV4aWJsZS1zcGFjZS1taW5pbWl6ZWQgLm1kYy10b29sYmFyX190aXRsZSwgLm1kYy10b29sYmFyLS1mbGV4aWJsZS1kZWZhdWx0LWJlaGF2aW9yLm1kYy10b29sYmFyLS1mbGV4aWJsZS1zcGFjZS1taW5pbWl6ZWQgLmtteC10b29sYmFyX190aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ubWRjLXRvb2xiYXItLXdhdGVyZmFsbC5tZGMtdG9vbGJhci0tZml4ZWQsIC5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLmtteC10b29sYmFyLS1maXhlZCB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyODBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICB3aWxsLWNoYW5nZTogYm94LXNoYWRvdzsgfVxuICAubWRjLXRvb2xiYXItLXdhdGVyZmFsbC5tZGMtdG9vbGJhci0tZml4ZWQubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCwgLm1kYy10b29sYmFyLS13YXRlcmZhbGwubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZC5rbXgtdG9vbGJhci0tZml4ZWQge1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggNHB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG4gIC5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLm1kYy10b29sYmFyLS1maXhlZC5tZGMtdG9vbGJhci0tZml4ZWQtbGFzdHJvdy1vbmx5Lm1kYy10b29sYmFyLS1mbGV4aWJsZS1zcGFjZS1taW5pbWl6ZWQsIC5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLm1kYy10b29sYmFyLS1maXhlZC1sYXN0cm93LW9ubHkubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZC5rbXgtdG9vbGJhci0tZml4ZWQge1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAubWRjLXRvb2xiYXItLXdhdGVyZmFsbC5tZGMtdG9vbGJhci0tZml4ZWQubWRjLXRvb2xiYXItLWZpeGVkLWxhc3Ryb3ctb25seS5tZGMtdG9vbGJhci0tZml4ZWQtYXQtbGFzdC1yb3csIC5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLm1kYy10b29sYmFyLS1maXhlZC1sYXN0cm93LW9ubHkubWRjLXRvb2xiYXItLWZpeGVkLWF0LWxhc3Qtcm93LmtteC10b29sYmFyLS1maXhlZCB7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA0cHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cblxuLm1kYy10b29sYmFyLWZpeGVkLWFkanVzdCwgLmtteC10b29sYmFyLWZpeGVkLWFkanVzdCB7XG4gIHBhZGRpbmctdG9wOiA2NHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtaGVpZ2h0OiA1OTlweCkge1xuICAgIC5tZGMtdG9vbGJhci1maXhlZC1hZGp1c3QsIC5rbXgtdG9vbGJhci1maXhlZC1hZGp1c3Qge1xuICAgICAgcGFkZGluZy10b3A6IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAubWRjLXRvb2xiYXItZml4ZWQtYWRqdXN0LCAua214LXRvb2xiYXItZml4ZWQtYWRqdXN0IHtcbiAgICAgIHBhZGRpbmctdG9wOiA1NnB4OyB9IH1cblxuLm1kYy10b29sYmFyX19zZWN0aW9uLS1zaHJpbmstdG8tZml0IHtcbiAgZmxleDogbm9uZTsgfVxuXG4ua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDQyLCA1MiwgNjEsIDAuMTYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciB7XG4gICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICBtaW4taGVpZ2h0OiA1NnB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMCAyNHB4OyB9IH1cbiAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1kb3VibGUge1xuICAgIGhlaWdodDogODBweDtcbiAgICBtaW4taGVpZ2h0OiA4MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1kb3VibGUge1xuICAgICAgICBoZWlnaHQ6IDg4cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDg4cHg7IH0gfVxuICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXJfX2NvbnRlbnQtLWRvdWJsZS1vbi1tb2JpbGUge1xuICAgIGhlaWdodDogODBweDtcbiAgICBtaW4taGVpZ2h0OiA4MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1kb3VibGUtb24tbW9iaWxlIHtcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1NnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzcuNDllbSkge1xuICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1kb3VibGUtb24tbW9iaWxlIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGl0bGUge1xuICAgICAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzcuNWVtKSB7XG4gICAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXJfX2NvbnRlbnQtLWRvdWJsZS1vbi1tb2JpbGUgLmtteC1zZWNvbmRhcnktaGVhZGVyX190aXRsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGl0bGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNy40OWVtKSB7XG4gICAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWNvbmRhcnktaGVhZGVyX190aXRsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzcuNDllbSkge1xuICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGl0bGUtLW11bHRpIHtcbiAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGl0bGUtLW11bHRpIHtcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1NnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGFicyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGFicyB7XG4gICAgICAgIGZsZXg6IDE7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXNlY29uZGFyeS1oZWFkZXJfX3RhYnMgLm1kYy10YWItYmFyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgbWluLWhlaWdodDogNDhweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXNlY29uZGFyeS1oZWFkZXJfX2NvbnRlbnQge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1NnB4OyB9IH1cbiAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1kb3VibGUge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXNlY29uZGFyeS1oZWFkZXJfX2NvbnRlbnQtLWRvdWJsZSAua214LXNlY29uZGFyeS1oZWFkZXJfX3RpdGxlLS1tdWx0aSB7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7IH1cbiAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1jZW50ZXJlZCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICBoZWlnaHQ6IDQ4cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fY29udGVudC0tY2VudGVyZWQge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgIGhlaWdodDogNTZweDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA1NnB4OyB9IH1cbiAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWNvbmRhcnktaGVhZGVyX19jb250ZW50LS1uby13cmFwIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXNlY29uZGFyeS1oZWFkZXJfX3RhYnMge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXNlY29uZGFyeS1oZWFkZXJfX3RhYnMge1xuICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDU2cHg7IH0gfVxuICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1idXR0b24tLXRlcnRpYXJ5LFxuICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1pY29uLWJ1dHRvbi0tdGVydGlhcnkge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtYnV0dG9uLS10ZXJ0aWFyeTpmb2N1cywgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtYnV0dG9uLS10ZXJ0aWFyeTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoOmFjdGl2ZSksXG4gICAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtaWNvbi1idXR0b24tLXRlcnRpYXJ5OmZvY3VzLFxuICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LWljb24tYnV0dG9uLS10ZXJ0aWFyeTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoOmFjdGl2ZSkge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LWJ1dHRvbi0tdGVydGlhcnk6YWN0aXZlLFxuICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LWljb24tYnV0dG9uLS10ZXJ0aWFyeTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjIsIDIyMywgMjI0LCAwLjcpO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmtteC1zZWNvbmRhcnktaGVhZGVyLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtc2VhcmNoLWZvcm0ge1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlci5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXNlYXJjaC1mb3JtOm5vdCg6b25seS1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzcuNWVtKSB7XG4gICAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWFyY2gtZm9ybSB7XG4gICAgICAgIG1heC13aWR0aDogNTY4cHg7XG4gICAgICAgIHdpZHRoOiA1NjhweDsgfVxuICAgICAgICAua214LXNlY29uZGFyeS1oZWFkZXIua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC1zZWFyY2gtZm9ybTpub3QoOm9ubHktY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7IH0gfVxuXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxuLm1kYy10aGVtZS0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmZmZmKTsgfVxuXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuXG46cm9vdCB7XG4gIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICM4YzkxOTY7XG4gIC0ta214LXRleHQtZmllbGQtdGV4dC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC1pbnB1dC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWRpdmlkZXItb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICNlMDFmMWY7XG4gIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLXRleHQtb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLXVuZGVybGluZS1ob3Zlci1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1ib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiAjOGM5MTk2O1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6IHJnYmEoNSwgNTEsIDk3LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQtLWFjdGl2ZTogIzA1MzM2MTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogd2hpdGU7XG4gIC0ta214LXRoZW1lLWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC0ta214LWZvcm0tY29tcG9uZW50LWJsdWU6ICMxNzczY2Y7IH1cblxuQGtleWZyYW1lcyBtZGMtc2VsZWN0LWZsb2F0LW5hdGl2ZS1jb250cm9sIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4ubWRjLWxpbmUtcmlwcGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxODBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLCBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDI7IH1cblxuLm1kYy1saW5lLXJpcHBsZS0tYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLm1kYy1saW5lLXJpcHBsZS0tZGVhY3RpdmF0aW5nIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZSxcbi5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLW5vdGNoZWQtb3V0bGluZSwgLm1kYy1ub3RjaGVkLW91dGxpbmVbZGlyPVwicnRsXCJdIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWRjLW5vdGNoZWQtb3V0bGluZSBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIGJvcmRlci1jb2xvciAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gIHN0cm9rZS13aWR0aDogMXB4O1xuICB0cmFuc2l0aW9uOiBzdHJva2UgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSwgc3Ryb2tlLXdpZHRoIDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIGZpbGw6IHRyYW5zcGFyZW50OyB9XG5cbi5tZGMtbm90Y2hlZC1vdXRsaW5lLS1ub3RjaGVkIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZS0tbm90Y2hlZCB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDhweDtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLCBjb2xvciAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBsaW5lLWhlaWdodDogMS4xNXJlbTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogdGV4dDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGF1dG87XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDsgfVxuXG4ubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGN1cnNvcjogYXV0bzsgfVxuXG4ubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSkgc2NhbGUoMC43NSk7IH1cblxuLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS1zdGFuZGFyZCAyNTBtcyAxOyB9XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXN0YW5kYXJkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEwMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEwMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTAwJSkgc2NhbGUoMC43NSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTAwJSkgc2NhbGUoMC43NSk7IH0gfVxuXG4ubWRjLXNlbGVjdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMzAlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwb3BhY2l0eSUzRCUyMjAuNTQlMjIlMjBwb2ludHMlM0QlMjI3JTIwMTAlMjAxMiUyMDE1JTIwMTclMjAxMCUyMiUzRSUzQyUyRnBvbHlnb24lM0UlMEElM0MlMkZzdmclM0VcIik7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogNTJweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgOHB4IGJvdHRvbSAxMnB4OyB9XG4gIC5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpOyB9XG4gIC5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpOyB9XG4gIC5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpmb2N1cyB+IC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgfiAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG4gIC5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LCAubWRjLXNlbGVjdFtkaXI9XCJydGxcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgOHB4IGJvdHRvbSAxMnB4OyB9XG4gIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMjZweDtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMDkzN2VtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCwgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOjotbXMtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Oi1tcy12YWx1ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoXCJcIikge1xuICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIHRleHQtaW5kZW50OiAtMnB4OyB9IH1cbiAgICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wgPiBvcHRpb24ge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLm1kYy1zZWxlY3QgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLm1kYy1zZWxlY3QgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmZvY3VzIH4gLm1kYy1saW5lLXJpcHBsZTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMik7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXNlbGVjdC0tYm94IHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGhlaWdodDogNTZweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtc2VsZWN0LS1ib3g6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7IH1cbiAgLm1kYy1zZWxlY3QtLWJveDo6YmVmb3JlLCAubWRjLXNlbGVjdC0tYm94OjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1kYy1zZWxlY3QtLWJveDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy1zZWxlY3QtLWJveC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtc2VsZWN0LS1ib3gubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgLm1kYy1zZWxlY3QtLWJveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTsgfVxuICAubWRjLXNlbGVjdC0tYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMjI1bXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gZm9yd2FyZHMsIDc1bXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIGZvcndhcmRzOyB9XG4gIC5tZGMtc2VsZWN0LS1ib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDE1MG1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtc2VsZWN0LS1ib3g6OmJlZm9yZSwgLm1kYy1zZWxlY3QtLWJveDo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDIwMCU7IH1cbiAgLm1kYy1zZWxlY3QtLWJveC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5tZGMtc2VsZWN0LS1ib3g6OmJlZm9yZSwgLm1kYy1zZWxlY3QtLWJveDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy1zZWxlY3QtLWJveDpob3Zlcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjA0OyB9XG4gIC5tZGMtc2VsZWN0LS1ib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXNlbGVjdC0tYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMTI7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0tYm94LCAubWRjLXNlbGVjdC0tYm94W2Rpcj1cInJ0bFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxMHB4IGNlbnRlcjsgfVxuICAubWRjLXNlbGVjdC0tYm94IC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMjZweDtcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS1ib3ggLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLCAubWRjLXNlbGVjdC0tYm94IC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuICAubWRjLXNlbGVjdC0tYm94IC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxNnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogaW5pdGlhbDtcbiAgICBib3R0b206IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS1ib3ggLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy1zZWxlY3QtLWJveCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcmlnaHQ6IDE2cHg7IH1cbiAgICAubWRjLXNlbGVjdC0tYm94IC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAlKSBzY2FsZSgwLjc1LCAwLjc1KTsgfVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQge1xuICBoZWlnaHQ6IDU2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7IH1cbiAgLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNCk7IH1cbiAgLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4yNCk7IH1cbiAgLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpmb2N1cyB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2Utd2lkdGg6IDJweDsgfVxuICAubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmZvY3VzIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICAgIHN0cm9rZTogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgc3Ryb2tlOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZCAyNTBtcyAxOyB9XG4gIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLW91dGxpbmVkLCAubWRjLXNlbGVjdC0tb3V0bGluZWRbZGlyPVwicnRsXCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDEwcHggY2VudGVyOyB9XG4gIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDI2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCwgLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuICAubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDE2cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHJpZ2h0OiAxNnB4OyB9XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMyMwMDAlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwb3BhY2l0eSUzRCUyMjAuNTQlMjIlMjBwb2ludHMlM0QlMjI3JTIwMTAlMjAxMiUyMDE1JTIwMTclMjAxMCUyMiUzRSUzQyUyRnBvbHlnb24lM0UlMEElM0MlMkZzdmclM0VcIik7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLm1kYy1zZWxlY3QtLWRpc2FibGVkIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XG4gIC5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLWxpbmUtcmlwcGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTsgfVxuICAubWRjLXNlbGVjdC0tZGlzYWJsZWQubWRjLXNlbGVjdC0tYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG4gIC5tZGMtc2VsZWN0LS1kaXNhYmxlZC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7IH1cbiAgLm1kYy1zZWxlY3QtLWRpc2FibGVkLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNik7IH1cbiAgLm1kYy1zZWxlY3QtLWRpc2FibGVkLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4xNik7IH1cblxuLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBjb21tZW50LWVtcHR5LWxpbmUtYmVmb3JlICovXG4gIC8qIFRoaXMgbWl4aW4gcmVxdWlyZXMgdGhlIGhleCB2YWx1ZSB0byBiZSBwYXNzZWQgd2l0aG91dCB0aGUgbGVhZGluZyBoYXNoOiAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMHB4JTIyJTIwaGVpZ2h0JTNEJTIyNXB4JTIyJTIwdmlld0JveCUzRCUyMjclMjAxMCUyMDEwJTIwNSUyMiUyMHZlcnNpb24lM0QlMjIxLjElMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHhtbG5zJTNBeGxpbmslM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBpZCUzRCUyMlNoYXBlJTIyJTIwc3Ryb2tlJTNEJTIybm9uZSUyMiUyMGZpbGwlM0QlMjIlMjMwNTU5YWQlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwb3BhY2l0eSUzRCUyMjElMjIlMjBwb2ludHMlM0QlMjI3JTIwMTAlMjAxMiUyMDE1JTIwMTclMjAxMCUyMiUzRSUzQyUyRnBvbHlnb24lM0UlMEElM0MlMkZzdmclM0VcIik7XG4gIC8qIE1hdGNoIGhlaWdodCAmIHdpZHRoIG9mIHRleHQtaW5wdXQgKi9cbiAgaGVpZ2h0OiA1NnB4O1xuICB3aWR0aDogMTAwJTtcbiAgLyogYWRqdXN0IHRoZSBwb3NpdGlvbiBvZiB0aGUgdHJpYW5nbGUgc28gaXQgY29ycmVjdGx5IHBvc2l0aW9uZWQgd2l0aCBiYXNlbGluZSAqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDMycHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMzZkNzQ3YSUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBvcGFjaXR5JTNEJTIyMSUyMiUyMHBvaW50cyUzRCUyMjclMjAxMCUyMDEyJTIwMTUlMjAxNyUyMDEwJTIyJTNFJTNDJTJGcG9seWdvbiUzRSUwQSUzQyUyRnN2ZyUzRVwiKTsgfVxuICAua214LXNlbGVjdC5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gICAgY29sb3I6ICM2ZDc0N2E7IH1cbiAgLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM2ZDc0N2E7IH1cbiAgLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM2ZDc0N2E7IH1cbiAgLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSAqLyB9XG4gICAgLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wgPiBvcHRpb246ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICNhYmFmYjM7IH1cbiAgLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XG4gIC5rbXgtc2VsZWN0Lm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmZvY3VzIH4gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMxNzczY2Y7IH1cbiAgLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgfiAubWRjLWxpbmUtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG4gIC5rbXgtc2VsZWN0Lm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgY29sb3I6ICM2ZDc0N2E7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGVmdDogOHB4O1xuICAgIGJvdHRvbTogMTJweDsgfVxuICAgIC5rbXgtc2VsZWN0Lm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgICAgY29sb3I6ICMxNzczY2Y7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjFweCkgc2NhbGUoMC43NSk7IH1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkLFxuLm1kYy1zZWxlY3RbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTBweCUyMiUyMGhlaWdodCUzRCUyMjVweCUyMiUyMHZpZXdCb3glM0QlMjI3JTIwMTAlMjAxMCUyMDUlMjIlMjB2ZXJzaW9uJTNEJTIyMS4xJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB4bWxucyUzQXhsaW5rJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmslMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwaWQlM0QlMjJTaGFwZSUyMiUyMHN0cm9rZSUzRCUyMm5vbmUlMjIlMjBmaWxsJTNEJTIyJTIzYWJhZmIzJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMG9wYWNpdHklM0QlMjIxJTIyJTIwcG9pbnRzJTNEJTIyNyUyMDEwJTIwMTIlMjAxNSUyMDE3JTIwMTAlMjIlM0UlM0MlMkZwb2x5Z29uJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBvcGFjaXR5OiAxO1xuICBoZWlnaHQ6IDU2cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQsXG4gIC5tZGMtc2VsZWN0W2Rpc2FibGVkXSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2FiYWZiMztcbiAgICBjb2xvcjogI2FiYWZiMzsgfVxuICAubWRjLXNlbGVjdC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCxcbiAgLm1kYy1zZWxlY3RbZGlzYWJsZWRdIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGNvbG9yOiAjYWJhZmIzOyB9XG5cbi5rbXgtc2VsZWN0Lm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgKyAua214LXNlbGVjdC1oZWxwZXItdGV4dCB7XG4gIGNvbG9yOiAjNmQ3NDdhO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTY2Njc7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIG1hcmdpbjogM3B4IDAgMDsgfVxuXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxuLm1kYy10aGVtZS0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmZmZmKTsgfVxuXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuXG46cm9vdCB7XG4gIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICM4YzkxOTY7XG4gIC0ta214LXRleHQtZmllbGQtdGV4dC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC1pbnB1dC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWRpdmlkZXItb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICNlMDFmMWY7XG4gIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLXRleHQtb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLXVuZGVybGluZS1ob3Zlci1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1ib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiAjOGM5MTk2O1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6IHJnYmEoNSwgNTEsIDk3LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQtLWFjdGl2ZTogIzA1MzM2MTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogd2hpdGU7XG4gIC0ta214LXRoZW1lLWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC0ta214LWZvcm0tY29tcG9uZW50LWJsdWU6ICMxNzczY2Y7IH1cblxuLm1kYy1zbmFja2JhciwgLmtteC1zbmFja2JhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzIzMjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLm1kYy1zbmFja2JhciwgLmtteC1zbmFja2JhciB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xuICAgIC5tZGMtc25hY2tiYXIsIC5rbXgtc25hY2tiYXIge1xuICAgICAgbWluLXdpZHRoOiAyODhweDtcbiAgICAgIG1heC13aWR0aDogNTY4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLm1kYy1zbmFja2Jhci0tYWxpZ24tc3RhcnQge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAyNHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogaW5pdGlhbDtcbiAgICBib3R0b206IDI0cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMjAwJSk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtc25hY2tiYXItLWFsaWduLXN0YXJ0LCAubWRjLXNuYWNrYmFyLS1hbGlnbi1zdGFydFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHJpZ2h0OiAyNHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5tZGMtc25hY2tiYXItLWFsaWduLXN0YXJ0IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTsgfSB9XG5cbi5tZGMtc25hY2tiYXItLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuICAubWRjLXNuYWNrYmFyLS1hY3RpdmU6bm90KC5tZGMtc25hY2tiYXItLWFsaWduLXN0YXJ0KSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgIC5tZGMtc25hY2tiYXItLWFjdGl2ZTpub3QoLm1kYy1zbmFja2Jhci0tYWxpZ24tc3RhcnQpIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7IH0gfVxuXG4ubWRjLXNuYWNrYmFyX19hY3Rpb24td3JhcHBlciB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXNuYWNrYmFyX19hY3Rpb24td3JhcHBlciwgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLXdyYXBwZXJbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XG5cbi5tZGMtc25hY2tiYXItLWFjdGlvbi1vbi1ib3R0b20ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5tZGMtc25hY2tiYXJfX3RleHQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzMTI1ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuICAubWRjLXNuYWNrYmFyW2Rpcj1cInJ0bFwiXSAubWRjLXNuYWNrYmFyX190ZXh0LCAua214LXNuYWNrYmFyW2Rpcj1cInJ0bFwiXSAubWRjLXNuYWNrYmFyX190ZXh0LFxuICBbZGlyPVwicnRsXCJdIC5tZGMtc25hY2tiYXIgLm1kYy1zbmFja2Jhcl9fdGV4dCxcbiAgW2Rpcj1cInJ0bFwiXSAua214LXNuYWNrYmFyIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xuICAgIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1yaWdodDogMjRweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAubWRjLXNuYWNrYmFyX190ZXh0LCAubWRjLXNuYWNrYmFyX190ZXh0W2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4ubWRjLXNuYWNrYmFyLS1hY3Rpb24tb24tYm90dG9tIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7IH1cblxuLm1kYy1zbmFja2Jhci0tYWN0aW9uLW9uLWJvdHRvbSAubWRjLXNuYWNrYmFyX19hY3Rpb24td3JhcHBlciB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXNuYWNrYmFyLS1hY3Rpb24tb24tYm90dG9tIC5tZGMtc25hY2tiYXJfX2FjdGlvbi13cmFwcGVyLCAubWRjLXNuYWNrYmFyLS1hY3Rpb24tb24tYm90dG9tIC5tZGMtc25hY2tiYXJfX2FjdGlvbi13cmFwcGVyW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLm1kYy1zbmFja2Jhci0tbXVsdGlsaW5lIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICBoZWlnaHQ6IDgwcHg7IH1cblxuLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wODkyOWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZmZkOTAwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjZmZkOTAwKTtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDsgfVxuICAubWRjLXNuYWNrYmFyX19hY3Rpb24tYnV0dG9uOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbjpub3QoW2FyaWEtaGlkZGVuXSkge1xuICAgIHZpc2liaWxpdHk6IGluaGVyaXQ7IH1cblxuLm1kYy1zbmFja2Jhci0tYWN0aXZlIC5tZGMtc25hY2tiYXJfX3RleHQsXG4ubWRjLXNuYWNrYmFyLS1hY3RpdmUgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbjpub3QoW2FyaWEtaGlkZGVuXSkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5tZGMtc25hY2tiYXItLW11bHRpbGluZS5tZGMtc25hY2tiYXItLWFjdGlvbi1vbi1ib3R0b20gLm1kYy1zbmFja2Jhcl9fdGV4dCB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubWRjLXNuYWNrYmFyLCAua214LXNuYWNrYmFyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCA4cHggMTJweCAwIHJnYmEoNDIsIDUyLCA2MSwgMC4xNik7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZDc0N2E7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogOHB4OyB9XG4gIC5tZGMtc25hY2tiYXI6bm90KC5tZGMtc25hY2tiYXItLWFsaWduLXN0YXJ0KSwgLmtteC1zbmFja2Jhcjpub3QoLm1kYy1zbmFja2Jhci0tYWxpZ24tc3RhcnQpIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG4gIC5tZGMtc25hY2tiYXJfX2ljb24gLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm1kYy1zbmFja2Jhcl9faWNvbiAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLWhlaWdodDogMWVtO1xuICAgIG1pbi13aWR0aDogMWVtO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgLm1kYy1zbmFja2Jhcl9faWNvbiAuc3ZnLWljb24gc3ZnIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubWRjLXNuYWNrYmFyX19pY29uIC5zdmctaWNvbiB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgaGVpZ2h0OiAxLjI1ZW07XG4gICAgbWFyZ2luOiAwIDFlbSAwIDA7IH1cbiAgLm1kYy1zbmFja2Jhcl9fdGV4dCB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBtYXgtaGVpZ2h0OiA2NHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtOyB9XG4gIC5tZGMtc25hY2tiYXJfX2FjdGlvbi13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDsgfVxuICAubWRjLXNuYWNrYmFyX19hY3Rpb24tYnV0dG9uIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b24ua214LWJ1dHRvbi0tdGVydGlhcnktd2hpdGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7IH1cbiAgLm1kYy10aGVtZS0tZGFyayAubWRjLXNuYWNrYmFyLCAubWRjLXRoZW1lLS1kYXJrIC5rbXgtc25hY2tiYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDc0N2E7IH1cbiAgICAubWRjLXRoZW1lLS1kYXJrIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubWRjLXRoZW1lLS1kYXJrIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b24ge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIC5tZGMtdGhlbWUtLWRhcmsgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbi5rbXgtYnV0dG9uLS10ZXJ0aWFyeS13aGl0ZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7IH1cbiAgLm1kYy1zbmFja2Jhci0tc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI4ODIwYTsgfVxuICAgIC5tZGMtc25hY2tiYXItLXN1Y2Nlc3MgLm1kYy1zbmFja2Jhcl9fdGV4dCB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5tZGMtc25hY2tiYXItLXN1Y2Nlc3MgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbi5rbXgtYnV0dG9uLS10ZXJ0aWFyeS13aGl0ZSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLm1kYy1zbmFja2Jhci0tc3VjY2VzcyAubWRjLXNuYWNrYmFyX19hY3Rpb24tYnV0dG9uLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOmhvdmVyLCAubWRjLXNuYWNrYmFyLS1zdWNjZXNzIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b24ua214LWJ1dHRvbi0tdGVydGlhcnktd2hpdGU6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLm1kYy1zbmFja2Jhci0tc3VjY2VzcyAubWRjLXNuYWNrYmFyX19hY3Rpb24tYnV0dG9uLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIyLCAyMjMsIDIyNCwgMC43KTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubWRjLXRoZW1lLS1kYXJrIC5tZGMtc25hY2tiYXItLXN1Y2Nlc3Mge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI4ODIwYTsgfVxuICAgICAgLm1kYy10aGVtZS0tZGFyayAubWRjLXNuYWNrYmFyLS1zdWNjZXNzIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLm1kYy10aGVtZS0tZGFyayAubWRjLXNuYWNrYmFyLS1zdWNjZXNzIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b24ua214LWJ1dHRvbi0tdGVydGlhcnktd2hpdGUge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgICAubWRjLXRoZW1lLS1kYXJrIC5tZGMtc25hY2tiYXItLXN1Y2Nlc3MgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbi5rbXgtYnV0dG9uLS10ZXJ0aWFyeS13aGl0ZTpob3ZlciwgLm1kYy10aGVtZS0tZGFyayAubWRjLXNuYWNrYmFyLS1zdWNjZXNzIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b24ua214LWJ1dHRvbi0tdGVydGlhcnktd2hpdGU6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjMTc3M2NmOyB9XG4gICAgICAgIC5tZGMtdGhlbWUtLWRhcmsgLm1kYy1zbmFja2Jhci0tc3VjY2VzcyAubWRjLXNuYWNrYmFyX19hY3Rpb24tYnV0dG9uLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjIsIDIyMywgMjI0LCAwLjcpO1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5tZGMtc25hY2tiYXItLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMDFmMWY7IH1cbiAgICAubWRjLXNuYWNrYmFyLS13YXJuaW5nIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubWRjLXRoZW1lLS1kYXJrIC5tZGMtc25hY2tiYXItLXdhcm5pbmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UwMWYxZjsgfVxuICAgICAgLm1kYy10aGVtZS0tZGFyayAubWRjLXNuYWNrYmFyLS13YXJuaW5nIC5tZGMtc25hY2tiYXJfX3RleHQge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubWRjLXNuYWNrYmFyLS1tdWx0aWxpbmUgLm1kYy1zbmFja2Jhcl9fdGV4dCB7XG4gICAgaGVpZ2h0OiA3MnB4OyB9XG5cbi5rbXgtc25hY2tiYXIge1xuICB6LWluZGV4OiA5OTA7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xuLmtteC1zdG9yZS1saXN0LWljb24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjRweDsgfVxuICAua214LXN0b3JlLWxpc3QtaWNvbiAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLWhlaWdodDogMWVtO1xuICAgIG1pbi13aWR0aDogMWVtO1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgLmtteC1zdG9yZS1saXN0LWljb24gLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmtteC1zdG9yZS1saXN0LWljb24gLnN2Zy1pY29uIHtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7IH1cbiAgLmtteC1zdG9yZS1saXN0LWljb24tLWZhdm9yaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkOTAwOyB9XG4gICAgLmtteC1zdG9yZS1saXN0LWljb24tLWZhdm9yaXRlIC5zdmctaWNvbiB7XG4gICAgICBjb2xvcjogIzA1MzM2MTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4ua214LXN0b3JlLWxpc3QtaWNvbiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyNHB4OyB9XG4gIC5rbXgtc3RvcmUtbGlzdC1pY29uIC5zdmctaWNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4taGVpZ2h0OiAxZW07XG4gICAgbWluLXdpZHRoOiAxZW07XG4gICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgICAua214LXN0b3JlLWxpc3QtaWNvbiAuc3ZnLWljb24gc3ZnIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAua214LXN0b3JlLWxpc3QtaWNvbiAuc3ZnLWljb24ge1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDsgfVxuICAua214LXN0b3JlLWxpc3QtaWNvbi0tZmF2b3JpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7IH1cbiAgICAua214LXN0b3JlLWxpc3QtaWNvbi0tZmF2b3JpdGUgLnN2Zy1pY29uIHtcbiAgICAgIGNvbG9yOiAjMDUzMzYxOyB9XG5cbi5rbXgtc3RvcmVzLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmtteC1zdG9yZXMtbGlzdC1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWRmZTA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIG1pbi13aWR0aDogMzIwcHg7IH1cbiAgLmtteC1zdG9yZXMtbGlzdC1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzLCAxMTUsIDIwNywgMC4wOCk7IH1cbiAgLmtteC1zdG9yZXMtbGlzdC1pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX3lvdXItc3RvcmUtbGFiZWwge1xuICAgIHBhZGRpbmc6IDE2cHggNDhweCAwOyB9XG4gIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluayB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xpbmsgLmtteC1zdG9yZS1saXN0LWljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cbiAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xpbmsgLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19saW5rIC5zdmctaWNvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAyNHB4OyB9XG4gIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9faW5mbyB7XG4gICAgZmxleC1ncm93OiAxOyB9XG4gIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4xM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIGNvbG9yOiAjMDUzMzYxO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbmFtZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7IH0gfVxuICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2FkZHJlc3Mge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gICAgY29sb3I6ICMyYTM0M2Q7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2Rpc3RhbmNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgICBjb2xvcjogIzZkNzQ3YTsgfVxuICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX3RleHQge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gICAgY29sb3I6ICM2ZDc0N2E7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fYXJyb3ctcmlnaHQgLnN2Zy1pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDFlbTtcbiAgICBtaW4td2lkdGg6IDFlbTtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fYXJyb3ctcmlnaHQgLnN2Zy1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19hcnJvdy1yaWdodCAuc3ZnLWljb24ge1xuICAgIGNvbG9yOiAjMDUzMzYxO1xuICAgIGhlaWdodDogMjRweDtcbiAgICB3aWR0aDogMjRweDsgfVxuICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2FjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nOiA0cHggNDhweCAyNHB4OyB9XG4gICAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19hY3Rpb25zIC5rbXgtYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2cHg7IH1cbiAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19waG9uZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgICBjb2xvcjogIzZkNzQ3YTsgfVxuICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NztcbiAgICBjb2xvcjogIzZkNzQ3YTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi10b3A6IDhweDsgfVxuICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGFiZWwgLnN2Zy1pY29uLXdyYXBwZXIge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19sYWJlbCAuc3ZnLWljb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1pbi1oZWlnaHQ6IDFlbTtcbiAgICAgIG1pbi13aWR0aDogMWVtO1xuICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gICAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsIC5zdmctaWNvbiBzdmcge1xuICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19sYWJlbCAuc3ZnLWljb24td3JhcHBlciB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgd2lkdGg6IDI0cHg7IH1cbiAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsIC5zdmctaWNvbiB7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB3aWR0aDogMjRweDsgfVxuICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGFiZWwtLWJ1eWluZy1jZW50ZXIge1xuICAgICAgY29sb3I6ICMyODgyMGE7IH1cbiAgICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGFiZWwtLWJ1eWluZy1jZW50ZXIgLnN2Zy1pY29uIHtcbiAgICAgICAgY29sb3I6ICMyODgyMGE7IH1cbiAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsLS1uZXctY2FyLXNhbGVzLCAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsLS1vcGVuaW5nLXNvb24ge1xuICAgICAgY29sb3I6ICMxNzczY2Y7IH1cbiAgICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGFiZWwtLW5ldy1jYXItc2FsZXMgLnN2Zy1pY29uLCAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsLS1vcGVuaW5nLXNvb24gLnN2Zy1pY29uIHtcbiAgICAgICAgY29sb3I6ICMxNzczY2Y7IH1cbiAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsLS1zdG9yZS13YXJuaW5nIHtcbiAgICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gICAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xhYmVsLS1zdG9yZS13YXJuaW5nIC5zdmctaWNvbiB7XG4gICAgICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gIC5rbXgtc3RvcmVzLWxpc3QtaXRlbS0tcmVnaW9uIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluayB7XG4gICAgcGFkZGluZzogMTZweDsgfVxuICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbS0tcmVnaW9uIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluayAuc3ZnLWljb24td3JhcHBlciB7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmtteC1zdG9yZXMtbGlzdC1pdGVtLS1zdG9yZSAua214LXN0b3Jlcy1saXN0LWl0ZW1fX3lvdXItc3RvcmUtbGFiZWwgKyAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xpbmsge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5rbXgtc3RvcmVzLWxpc3QtaXRlbS0tc3RvcmUgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19saW5rIHtcbiAgICBwYWRkaW5nOiAxNnB4IDE2cHggNHB4IDE2cHg7IH1cblxuLm1kYy1zd2l0Y2gsIC5rbXgtc3dpdGNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RyYWNrLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZkOTAwO1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9XG4gIC5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZkOTAwO1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9XG4gIC5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RyYWNrLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBib3JkZXItY29sb3I6ICMwMDA7IH1cbiAgLm1kYy1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWIsIC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuICAubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YmVmb3JlLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YmVmb3JlLCAubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YWZ0ZXIsIC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTsgfVxuICAubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpob3Zlcjo6YmVmb3JlLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpob3Zlcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjA4OyB9XG4gIC5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgb3BhY2l0eTogMC4yNDsgfVxuICAubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyOyB9XG4gIC5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMzI7IH1cbiAgLm1kYy1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZCwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gICAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMzI7IH1cblxuLm1kYy1zd2l0Y2hfX25hdGl2ZS1jb250cm9sIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDY4cHg7XG4gIGhlaWdodDogNDhweDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1zd2l0Y2hfX25hdGl2ZS1jb250cm9sLCAubWRjLXN3aXRjaF9fbmF0aXZlLWNvbnRyb2xbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDA7IH1cblxuLm1kYy1zd2l0Y2hfX3RyYWNrIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMTRweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA5MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIGJhY2tncm91bmQtY29sb3IgOTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLCBib3JkZXItY29sb3IgOTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBvcGFjaXR5OiAuMzg7IH1cblxuLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5IHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAtMThweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTdweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDkwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSwgYmFja2dyb3VuZC1jb2xvciA5MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIGJvcmRlci1jb2xvciA5MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXksIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheVtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogLTE4cHg7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjpiZWZvcmUsIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTsgfVxuICAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAyMjVtcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBmb3J3YXJkcywgNzVtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAxNTBtcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmJlZm9yZSwgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDUwJSk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gNTAlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSwgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCBjYWxjKDUwJSAtIDUwJSkpO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIGNhbGMoNTAlIC0gNTAlKSk7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YmVmb3JlLCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkOTAwOyB9XG4gICAgQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgICAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjpiZWZvcmUsIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YWZ0ZXIge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICNmZmQ5MDApOyB9IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDg7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMjQ7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjsgfVxuICAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMzI7IH1cbiAgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAgIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjMyOyB9XG5cbi5tZGMtc3dpdGNoX190aHVtYiB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvcmRlcjogMTBweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTsgfVxuXG4ubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdHJhY2sge1xuICBvcGFjaXR5OiAuNTQ7IH1cblxuLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5LCAubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXlbZGlyPVwicnRsXCJdIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpOyB9XG5cbi5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX19uYXRpdmUtY29udHJvbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fbmF0aXZlLWNvbnRyb2wsIC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX19uYXRpdmUtY29udHJvbFtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTsgfVxuXG4ubWRjLXN3aXRjaC0tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAuMzg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5tZGMtc3dpdGNoLS1kaXNhYmxlZCAubWRjLXN3aXRjaF9fdGh1bWIge1xuICAgIGJvcmRlci13aWR0aDogMXB4OyB9XG4gIC5tZGMtc3dpdGNoLS1kaXNhYmxlZCAubWRjLXN3aXRjaF9fbmF0aXZlLWNvbnRyb2wge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuW2NsYXNzXj0na214LXR5cG9ncmFwaHktLWxhYmVsLSddICsgLmtteC1zd2l0Y2gsXG4ua214LXR5cG9ncmFwaHktLWxhYmVsLWxnICsgLmtteC1zd2l0Y2gge1xuICBtYXJnaW4tbGVmdDogMjBweDsgfVxuXG4ua214LXN3aXRjaCArIFtjbGFzc149J2tteC10eXBvZ3JhcGh5LS1sYWJlbC0nXSB7XG4gIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbi5rbXgtZm9ybS1maWVsZCAua214LXR5cG9ncmFwaHktLWxhYmVsLWxnLCAua214LWZvcm0tZmllbGQtLXN0YWNrZWQgLmtteC10eXBvZ3JhcGh5LS1sYWJlbC1sZywgLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24gLmtteC10eXBvZ3JhcGh5LS1sYWJlbC1sZyB7XG4gIG1hcmdpbi10b3A6IDdweDsgfVxuXG4ua214LWZvcm0tZmllbGQgLmtteC10eXBvZ3JhcGh5LS1sYWJlbC1zbSwgLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkIC5rbXgtdHlwb2dyYXBoeS0tbGFiZWwtc20sIC5rbXgtZm9ybS1maWVsZC0tYWxpZ24tcHVzaC1kb3duIC5rbXgtdHlwb2dyYXBoeS0tbGFiZWwtc20ge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RyYWNrLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGNhY2M7XG4gIGJvcmRlci1jb2xvcjogI2M4Y2FjYzsgfVxuXG4ubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYiwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBib3JkZXItY29sb3I6ICNmYWZhZmE7IH1cblxuLm1kYy1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmJlZm9yZSwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmJlZm9yZSwgLm1kYy1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmFmdGVyLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmEzNDNkOyB9XG5cbi5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmhvdmVyOjpiZWZvcmUsIC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0OyB9XG5cbi5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyOyB9XG5cbi5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyOyB9XG5cbi5tZGMtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xNjsgfVxuXG4ubWRjLXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLCAua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMTY7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdHJhY2ssIC5tZGMtc3dpdGNoLS1jaGVja2VkLmtteC1zd2l0Y2ggLm1kYy1zd2l0Y2hfX3RyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzljY2VmNztcbiAgYm9yZGVyLWNvbG9yOiAjOWNjZWY3OyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzczY2Y7XG4gIGJvcmRlci1jb2xvcjogIzE3NzNjZjsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YmVmb3JlLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YmVmb3JlLCAubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YWZ0ZXIsIC5tZGMtc3dpdGNoLS1jaGVja2VkLmtteC1zd2l0Y2ggLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzczY2Y7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6aG92ZXI6OmJlZm9yZSwgLm1kYy1zd2l0Y2gtLWNoZWNrZWQua214LXN3aXRjaCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsIC5tZGMtc3dpdGNoLS1jaGVja2VkLmtteC1zd2l0Y2ggLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjE2OyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQsIC5tZGMtc3dpdGNoLS1jaGVja2VkLmtteC1zd2l0Y2ggLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xNjsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190cmFjaywgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYWNjO1xuICBib3JkZXItY29sb3I6ICNjOGNhY2M7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tZGlzYWJsZWQ6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWIsIC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiYWZiMztcbiAgYm9yZGVyLWNvbG9yOiAjYWJhZmIzOyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjpiZWZvcmUsIC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjpiZWZvcmUsIC5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OjphZnRlciwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiYWZiMzsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpob3Zlcjo6YmVmb3JlLCAubWRjLXN3aXRjaC0tZGlzYWJsZWQua214LXN3aXRjaDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wODsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tZGlzYWJsZWQ6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4yNDsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZDpub3QoLm1kYy1zd2l0Y2gtLWNoZWNrZWQpIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIsIC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMzI7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tZGlzYWJsZWQ6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZCwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLmtteC1zd2l0Y2g6bm90KC5tZGMtc3dpdGNoLS1jaGVja2VkKSAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjMyOyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RyYWNrLCAubWRjLXN3aXRjaC0tZGlzYWJsZWQubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGNhY2M7XG4gIGJvcmRlci1jb2xvcjogI2M4Y2FjYzsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYiwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQua214LXN3aXRjaCAubWRjLXN3aXRjaF9fdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJhZmIzO1xuICBib3JkZXItY29sb3I6ICNhYmFmYjM7IH1cblxuLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tZGlzYWJsZWQubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmJlZm9yZSwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQua214LXN3aXRjaCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmJlZm9yZSwgLm1kYy1zd2l0Y2gubWRjLXN3aXRjaC0tZGlzYWJsZWQubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6OmFmdGVyLCAubWRjLXN3aXRjaC0tZGlzYWJsZWQubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJhZmIzOyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmhvdmVyOjpiZWZvcmUsIC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5tZGMtc3dpdGNoLS1jaGVja2VkLmtteC1zd2l0Y2ggLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA4OyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQua214LXN3aXRjaCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQua214LXN3aXRjaCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjI0OyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyLCAubWRjLXN3aXRjaC0tZGlzYWJsZWQubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyOyB9XG5cbi5tZGMtc3dpdGNoLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLm1kYy1zd2l0Y2gtLWRpc2FibGVkLm1kYy1zd2l0Y2gtLWNoZWNrZWQua214LXN3aXRjaCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXk6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4zMjsgfVxuXG4ubWRjLXN3aXRjaC5tZGMtc3dpdGNoLS1kaXNhYmxlZC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkLCAubWRjLXN3aXRjaC0tZGlzYWJsZWQubWRjLXN3aXRjaC0tY2hlY2tlZC5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheS5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMzI7IH1cblxuLmtteC1zd2l0Y2gubWRjLXN3aXRjaC0tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5rbXgtc3dpdGNoIC5tZGMtc3dpdGNoX190cmFjayB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmtteC1zd2l0Y2ggLm1kYy1zd2l0Y2hfX3RodW1iIHtcbiAgYm94LXNoYWRvdzogMCAycHggMnB4IHJnYmEoNDIsIDUyLCA2MSwgMC4xNik7IH1cblxuLmtteC1zd2l0Y2gubWRjLXN3aXRjaC0tY2hlY2tlZCAubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXksIC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5IHtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDtcbiAgdG9wOiAtMTNweDsgfVxuICAua214LXN3aXRjaC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpob3ZlcjpiZWZvcmUsIC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmhvdmVyOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4wODsgfVxuICAua214LXN3aXRjaC5tZGMtc3dpdGNoLS1jaGVja2VkIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheTpmb2N1czpiZWZvcmUsIC5rbXgtc3dpdGNoOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkgLm1kYy1zd2l0Y2hfX3RodW1iLXVuZGVybGF5OmZvY3VzOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4yNDsgfVxuXG5bY2xhc3NePSdrbXgtZm9ybS1maWVsZCddIC5rbXgtc3dpdGNoIHtcbiAgbWFyZ2luLXRvcDogOHB4OyB9XG5cbltjbGFzc149J2tteC1mb3JtLWZpZWxkJ10gKyAua214LXN3aXRjaCB7XG4gIG1hcmdpbi1sZWZ0OiAxOHB4OyB9XG5cbi5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZCA+IC5rbXgtc3dpdGNoIHtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xuLmtteC10YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IGF1dG87XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi8gfVxuICAua214LXRhYmxlOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLmtteC10YWJsZSBjYXB0aW9uIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS41NTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMDUzMzYxO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmtteC10YWJsZSB0ZCxcbiAgLmtteC10YWJsZSB0aCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gICAgY29sb3I6ICM2ZDc0N2E7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH1cbiAgICAua214LXRhYmxlIHRkOmxhc3QtY2hpbGQsXG4gICAgLmtteC10YWJsZSB0aDpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgLmtteC10YWJsZSB0ZCAuaWNvbi10ZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5rbXgtdGFibGUgdGQ6bGFzdC1jaGlsZCB7XG4gICAgY29sb3I6ICMwNTMzNjE7IH1cbiAgICAua214LXRhYmxlIHRkOmxhc3QtY2hpbGQgc3ZnIHtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgZmlsbDogY3VycmVudENvbG9yOyB9XG4gIC5rbXgtdGFibGUgdGQubm8ge1xuICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gIC5rbXgtdGFibGUgdGQueWVzIHtcbiAgICBjb2xvcjogIzI4ODIwYTsgfVxuICAua214LXRhYmxlIHRoZWFkIHtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgICAua214LXRhYmxlIHRoZWFkIHRyOm5vdCguemVyby1oZWlnaHQpIHtcbiAgICAgIGhlaWdodDogMjhweDsgfVxuICAgIC5rbXgtdGFibGUgdGhlYWQgdGgge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS41NjI1O1xuICAgICAgY29sb3I6ICM2ZDc0N2E7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cbiAgICAgIC5rbXgtdGFibGUgdGhlYWQgdGggLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgICAgIGhlaWdodDogMDsgfVxuICAua214LXRhYmxlIHRib2R5IHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M4Y2FjYztcbiAgICBoZWlnaHQ6IDQ4cHg7IH1cbiAgICAua214LXRhYmxlIHRib2R5IHRyOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAua214LXRhYmxlIHRmb290IHRyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2M4Y2FjYztcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IDQ4cHg7IH1cbiAgLmtteC10YWJsZSB0Zm9vdCB0ZCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAua214LXRhYmxlLS1hbGlnbi1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmtteC10YWJsZS0tZnVsbC13aWR0aCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmtteC10YWJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5rbXgtdGFiX19jb250ZW50LS1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4gKiBUSEUgU09GVFdBUkUuXG4gKi9cbi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4gKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbiAqIFRIRSBTT0ZUV0FSRS5cbiAqL1xuLm1kYy10YWItYmFyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4gKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4gKiB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4gKiBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbiAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuICogVEhFIFNPRlRXQVJFLlxuICovXG4ubWRjLXRhYi1zY3JvbGxlciB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fdGVzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWFyZWEge1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLFxuLm1kYy10YWItc2Nyb2xsZXJfX3Rlc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWFyZWEtLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07IH1cblxuLm1kYy10YWItc2Nyb2xsZXItLWFsaWduLXN0YXJ0IC5tZGMtdGFiLXNjcm9sbGVyX19zY3JvbGwtY29udGVudCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlci0tYWxpZ24tZW5kIC5tZGMtdGFiLXNjcm9sbGVyX19zY3JvbGwtY29udGVudCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLm1kYy10YWItc2Nyb2xsZXItLWFsaWduLWNlbnRlciAubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWNvbnRlbnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ubWRjLXRhYi1zY3JvbGxlci0tYW5pbWF0aW5nIC5tZGMtdGFiLXNjcm9sbGVyX19zY3JvbGwtYXJlYSB7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvOyB9XG5cbi5tZGMtdGFiLXNjcm9sbGVyLS1hbmltYXRpbmcgLm1kYy10YWItc2Nyb2xsZXJfX3Njcm9sbC1jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogMjUwbXMgdHJhbnNmb3JtIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4gKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4gKiB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4gKiBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbiAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuICogVEhFIFNPRlRXQVJFLlxuICovXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4gKiBUSEUgU09GVFdBUkUuXG4gKi9cbi5tZGMtdGFiLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTsgfVxuICAubWRjLXRhYi1pbmRpY2F0b3IgPiAubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQtLXVuZGVybGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpOyB9XG4gIC5tZGMtdGFiLWluZGljYXRvciA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lIHtcbiAgICBoZWlnaHQ6IDJweDsgfVxuICAubWRjLXRhYi1pbmRpY2F0b3IgPiAubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQtLWljb24ge1xuICAgIGNvbG9yOiAjZmZkOTAwO1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgI2ZmZDkwMCk7IH1cbiAgLm1kYy10YWItaW5kaWNhdG9yID4gLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50LS1pY29uIHtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgZm9udC1zaXplOiAzNHB4OyB9XG5cbi5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIG9wYWNpdHk6IDA7IH1cblxuLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50LS11bmRlcmxpbmUge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50LS1pY29uIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4ubWRjLXRhYi1pbmRpY2F0b3ItLWFjdGl2ZSA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLm1kYy10YWItaW5kaWNhdG9yID4gLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogMjUwbXMgdHJhbnNmb3JtIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuLm1kYy10YWItaW5kaWNhdG9yLS1uby10cmFuc2l0aW9uID4gLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ubWRjLXRhYi1pbmRpY2F0b3ItLWZhZGUgPiAubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQge1xuICB0cmFuc2l0aW9uOiAxNTBtcyBvcGFjaXR5IGxpbmVhcjsgfVxuXG4ubWRjLXRhYi1pbmRpY2F0b3ItLWFjdGl2ZS5tZGMtdGFiLWluZGljYXRvci0tZmFkZSA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zOyB9XG5cbi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4gKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbiAqIFRIRSBTT0ZUV0FSRS5cbiAqL1xuLm1kYy10YWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wODkyOWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB6LWluZGV4OiAxOyB9XG4gIC5tZGMtdGFiIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zdXJmYWNlLCAjMDAwKTsgfVxuICAubWRjLXRhYiAubWRjLXRhYl9faWNvbiB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tc3VyZmFjZSwgIzAwMCk7IH1cblxuLm1kYy10YWItLW1pbi13aWR0aCB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5tZGMtdGFiX19yaXBwbGUge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm1kYy10YWJfX3JpcHBsZTo6YmVmb3JlLCAubWRjLXRhYl9fcmlwcGxlOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1kYy10YWJfX3JpcHBsZTo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy10YWJfX3JpcHBsZS5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtdGFiX19yaXBwbGUubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgLm1kYy10YWJfX3JpcHBsZS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTsgfVxuICAubWRjLXRhYl9fcmlwcGxlLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMjI1bXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gZm9yd2FyZHMsIDc1bXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIGZvcndhcmRzOyB9XG4gIC5tZGMtdGFiX19yaXBwbGUubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgICBhbmltYXRpb246IDE1MG1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtdGFiX19yaXBwbGU6OmJlZm9yZSwgLm1kYy10YWJfX3JpcHBsZTo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDIwMCU7IH1cbiAgLm1kYy10YWJfX3JpcHBsZS5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpOyB9XG4gIC5tZGMtdGFiX19yaXBwbGU6OmJlZm9yZSwgLm1kYy10YWJfX3JpcHBsZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7IH1cbiAgICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICAubWRjLXRhYl9fcmlwcGxlOjpiZWZvcmUsIC5tZGMtdGFiX19yaXBwbGU6OmFmdGVyIHtcbiAgICAgICAgLyogQGFsdGVybmF0ZSAqL1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH0gfVxuICAubWRjLXRhYl9fcmlwcGxlOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDQ7IH1cbiAgLm1kYy10YWJfX3JpcHBsZTpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5tZGMtdGFiX19yaXBwbGUubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgb3BhY2l0eTogMC4xMjsgfVxuICAubWRjLXRhYl9fcmlwcGxlOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjsgfVxuICAubWRjLXRhYl9fcmlwcGxlOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgICBvcGFjaXR5OiAwLjE2OyB9XG4gIC5tZGMtdGFiX19yaXBwbGUubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gICAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMTY7IH1cblxuLm1kYy10YWJfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5tZGMtdGFiX190ZXh0LWxhYmVsLFxuLm1kYy10YWJfX2ljb24ge1xuICB0cmFuc2l0aW9uOiAxNTBtcyBjb2xvciBsaW5lYXIsIDE1MG1zIG9wYWNpdHkgbGluZWFyO1xuICB6LWluZGV4OiAyOyB9XG5cbi5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiAwLjY7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5tZGMtdGFiX19pY29uIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgb3BhY2l0eTogMC41NDsgfVxuXG4ubWRjLXRhYi0tc3RhY2tlZCB7XG4gIGhlaWdodDogNzJweDsgfVxuXG4ubWRjLXRhYi0tc3RhY2tlZCAubWRjLXRhYl9fY29udGVudCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4ubWRjLXRhYi0tc3RhY2tlZCAubWRjLXRhYl9faWNvbiB7XG4gIHBhZGRpbmctdG9wOiAxMnB4OyB9XG5cbi5tZGMtdGFiLS1zdGFja2VkIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cblxuLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9fdGV4dC1sYWJlbCB7XG4gIGNvbG9yOiAjMDUzMzYxO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cblxuLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9faWNvbiB7XG4gIGNvbG9yOiAjMDUzMzYxO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cblxuLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9fdGV4dC1sYWJlbCxcbi5tZGMtdGFiLS1hY3RpdmUgLm1kYy10YWJfX2ljb24ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtcztcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRhYjpub3QoLm1kYy10YWItLXN0YWNrZWQpIC5tZGMtdGFiX19pY29uICsgLm1kYy10YWJfX3RleHQtbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRhYjpub3QoLm1kYy10YWItLXN0YWNrZWQpIC5tZGMtdGFiX19pY29uICsgLm1kYy10YWJfX3RleHQtbGFiZWwsIC5tZGMtdGFiOm5vdCgubWRjLXRhYi0tc3RhY2tlZCkgLm1kYy10YWJfX2ljb24gKyAubWRjLXRhYl9fdGV4dC1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDsgfVxuXG4ua214LXRhYi1iYXIgLmtteC10YWIgLm1kYy10YWJfX3RleHQtbGFiZWwge1xuICBjb2xvcjogIzZkNzQ3YTsgfVxuXG4ua214LXRhYi1iYXIgLmtteC10YWIgLm1kYy10YWJfX3RleHQtbGFiZWwge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgY29sb3I6ICM2ZDc0N2E7XG4gIG9wYWNpdHk6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi5rbXgtdGFiLWJhciAua214LXRhYiAubWRjLXRhYl9faWNvbiB7XG4gIGNvbG9yOiAjNmQ3NDdhOyB9XG5cbi5rbXgtdGFiLWJhciAua214LXRhYiAubWRjLXRhYl9faWNvbiB7XG4gIGZpbGw6ICM2ZDc0N2E7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmtteC10YWItYmFyIC5rbXgtdGFiIC5tZGMtdGFiLWluZGljYXRvciA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lIHtcbiAgaGVpZ2h0OiAycHg7IH1cblxuLmtteC10YWItYmFyIC5rbXgtdGFiIC5tZGMtdGFiX19yaXBwbGU6YWZ0ZXIsIC5rbXgtdGFiLWJhciAua214LXRhYiAubWRjLXRhYl9fcmlwcGxlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzczY2Y7IH1cblxuLmtteC10YWItYmFyIC5rbXgtdGFiIC5tZGMtdGFiX19yaXBwbGU6aG92ZXI6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wODsgfVxuXG4ua214LXRhYi1iYXIgLmtteC10YWIgLm1kYy10YWJfX3JpcHBsZS5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yNDsgfVxuXG4ua214LXRhYi1iYXIgLmtteC10YWIubWRjLXRhYi0tYWN0aXZlIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgY29sb3I6ICMwNTMzNjE7IH1cblxuLmtteC10YWItYmFyIC5rbXgtdGFiLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9faWNvbiB7XG4gIGNvbG9yOiAjMDUzMzYxOyB9XG5cbi5rbXgtdGFiLWJhciAua214LXRhYi5tZGMtdGFiLS1hY3RpdmUgLm1kYy10YWJfX2ljb24ge1xuICBmaWxsOiAjMDUzMzYxOyB9XG5cbi5rbXgtdGFiLWJhciAua214LXRhYi5tZGMtdGFiLS1hY3RpdmUgLm1kYy10YWItaW5kaWNhdG9yID4gLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50LS11bmRlcmxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbi5tZGMtdGhlbWUtLWRhcmsgLmtteC10YWItYmFyIC5rbXgtdGFiIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgY29sb3I6ICM5Y2NlZjc7IH1cblxuLm1kYy10aGVtZS0tZGFyayAua214LXRhYi1iYXIgLmtteC10YWIgLm1kYy10YWJfX2ljb24ge1xuICBjb2xvcjogIzljY2VmNzsgfVxuXG4ubWRjLXRoZW1lLS1kYXJrIC5rbXgtdGFiLWJhciAua214LXRhYiAubWRjLXRhYl9faWNvbiB7XG4gIGZpbGw6ICM5Y2NlZjc7IH1cblxuLm1kYy10aGVtZS0tZGFyayAua214LXRhYi1iYXIgLmtteC10YWIgLm1kYy10YWJfX3JpcHBsZTphZnRlciwgLm1kYy10aGVtZS0tZGFyayAua214LXRhYi1iYXIgLmtteC10YWIgLm1kYy10YWJfX3JpcHBsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5tZGMtdGhlbWUtLWRhcmsgLmtteC10YWItYmFyIC5rbXgtdGFiLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9fdGV4dC1sYWJlbCB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5tZGMtdGhlbWUtLWRhcmsgLmtteC10YWItYmFyIC5rbXgtdGFiLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9faWNvbiB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5tZGMtdGhlbWUtLWRhcmsgLmtteC10YWItYmFyIC5rbXgtdGFiLm1kYy10YWItLWFjdGl2ZSAubWRjLXRhYl9faWNvbiB7XG4gIGZpbGw6ICNmZmZmZmY7IH1cblxuLm1kYy10aGVtZS0tZGFyayAua214LXRhYi1iYXIgLmtteC10YWIubWRjLXRhYi0tYWN0aXZlIC5tZGMtdGFiLWluZGljYXRvciA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG4ua214LXRhYi1iYXIgLmtteC10YWI6ZGlzYWJsZWQsXG4ubWRjLXRoZW1lLS1kYXJrIC5rbXgtdGFiLWJhciAua214LXRhYjpkaXNhYmxlZCB7XG4gIGN1cnNvcjogdW5zZXQ7IH1cbiAgLmtteC10YWItYmFyIC5rbXgtdGFiOmRpc2FibGVkIC5tZGMtdGFiX190ZXh0LWxhYmVsLFxuICAubWRjLXRoZW1lLS1kYXJrIC5rbXgtdGFiLWJhciAua214LXRhYjpkaXNhYmxlZCAubWRjLXRhYl9fdGV4dC1sYWJlbCB7XG4gICAgY29sb3I6ICNhYmFmYjM7IH1cbiAgLmtteC10YWItYmFyIC5rbXgtdGFiOmRpc2FibGVkIC5tZGMtdGFiLWluZGljYXRvciA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lLFxuICAubWRjLXRoZW1lLS1kYXJrIC5rbXgtdGFiLWJhciAua214LXRhYjpkaXNhYmxlZCAubWRjLXRhYi1pbmRpY2F0b3IgPiAubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQtLXVuZGVybGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGZlMDsgfVxuICAua214LXRhYi1iYXIgLmtteC10YWI6ZGlzYWJsZWQgLm1kYy10YWJfX3JpcHBsZTphZnRlciwgLmtteC10YWItYmFyIC5rbXgtdGFiOmRpc2FibGVkIC5tZGMtdGFiX19yaXBwbGU6YmVmb3JlLFxuICAubWRjLXRoZW1lLS1kYXJrIC5rbXgtdGFiLWJhciAua214LXRhYjpkaXNhYmxlZCAubWRjLXRhYl9fcmlwcGxlOmFmdGVyLFxuICAubWRjLXRoZW1lLS1kYXJrIC5rbXgtdGFiLWJhciAua214LXRhYjpkaXNhYmxlZCAubWRjLXRhYl9fcmlwcGxlOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmtteC10YWItYmFyIC5rbXgtdGFiLXNjcm9sbGVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICAua214LXRhYi1iYXIgLmtteC10YWItc2Nyb2xsZXJfX2J1dHRvbiB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG4gIC5rbXgtdGFiLWJhciAua214LXRhYi1zY3JvbGxlciAubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWFyZWEge1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG4gIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmVydGljYWwtYWxpZ246IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXRleHQtZmllbGRfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLm1kYy10ZXh0LWZpZWxkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yOyB9XG4gIC5tZGMtdGV4dC1maWVsZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAubWRjLXRleHQtZmllbGQ6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICAubWRjLXRleHQtZmllbGQubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMjI1bXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gZm9yd2FyZHMsIDc1bXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIGZvcndhcmRzOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMTI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDIwMCU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY2FyZXQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNhcmV0LWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40Mik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgYm90dG9tOiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQ4cHgpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1ib3ggMjUwbXMgMTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWJveCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH0gfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMTJweCA2cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aW52YWxpZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwgKyAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICBjdXJzb3I6IGF1dG87IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gICAgc3Ryb2tlOiByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSxcbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgsXG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICAgIHN0cm9rZTogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgc3Ryb2tlOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweCAxNHB4O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcmlnaHQ6IDE2cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gIHN0cm9rZS13aWR0aDogMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4wNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIGhlaWdodDogNDhweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICAgIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggN3B4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJvdHRvbTogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHRvcDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgwLjc1KTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgdHJhbnNsYXRlWCgzMnB4KSBzY2FsZSgwLjc1KTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uIDI1MG1zIDE7IH1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWRbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSB0cmFuc2xhdGVYKC0yMXB4KSBzY2FsZSgwLjkyMyk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTEwJSkgdHJhbnNsYXRlWCgyMXB4KSBzY2FsZSgwLjkyMyk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UgMjUwbXMgMTsgfVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlW2Rpcj1cInJ0bFwiXSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCAyNTBtcyAxOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogNDhweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgYm90dG9tOiAxNnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxMnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogaW5pdGlhbDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDM4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgcGFkZGluZzogMTJweCAxMnB4IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZm9udC1zaXplOiAuODEzcmVtOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgKyAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiKlwiOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjczKTsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzMpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxcHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgdG9wOiAxOHB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcGFkZGluZzogMTJweCA4cHggOHB4IDhweDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBtYXJnaW4tbGVmdDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBtYXJnaW4tbGVmdDogMTZweDsgfVxuXG4ubWRjLWZvcm0tZmllbGQgPiAubWRjLXRleHQtZmllbGQgKyBsYWJlbCwgLmtteC1mb3JtLWZpZWxkID4gLm1kYy10ZXh0LWZpZWxkICsgbGFiZWwsIC5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkICsgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQ6bm90KC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cpIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogIzA1MzM2MTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTsgfVxuICAubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UtcnRsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIC0yMXB4KSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLmtteC10ZXh0LWFyZWEge1xuICBib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogMTAwJTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhOmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkua214LXRleHQtYXJlYTphZnRlciB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhOmhvdmVyLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMxNzczY2Y7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkua214LXRleHQtYXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3M2NmOyB9XG4gICAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkua214LXRleHQtYXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkKSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgICBjb2xvcjogIzE3NzNjZjsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhIC5rbXgtdGV4dC1hcmVhX19pbnB1dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAgIGNvbG9yOiAjMmEzNDNkO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsaW5lLWhlaWdodDogMS41NjI1O1xuICAgIHBhZGRpbmc6IDVweCA4cHggOHB4O1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjNmQ3NDdhO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRvcDogM3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDhweCA4cHggMDsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLmtteC10ZXh0LWFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTI3cHgpIHNjYWxlKDAuNzUpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLmtteC10ZXh0LWFyZWEubWRjLXRleHQtYXJlYS0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWFyZWEtLWRpc2FibGVkKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLmtteC10ZXh0LWFyZWEubWRjLXRleHQtYXJlYS0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWFyZWEtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgICBjb2xvcjogIzE3NzNjZjsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhLm1kYy10ZXh0LWFyZWEtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1hcmVhLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWludmFsaWQge1xuICAgIGJvcmRlci1jb2xvcjogI2UwMWYxZjsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5rbXgtdGV4dC1hcmVhLm1kYy10ZXh0LWFyZWEtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1hcmVhLS1kaXNhYmxlZCk6aG92ZXIsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLmtteC10ZXh0LWFyZWEubWRjLXRleHQtYXJlYS0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWFyZWEtLWRpc2FibGVkKTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZTAxZjFmOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLmtteC10ZXh0LWFyZWEtLXZlcnRpY2FsLWFsaWduIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4OyB9XG5cbi5rbXgtdGV4dC1hcmVhOm5vdCgua214LXRleHQtYXJlYS0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSArIC5rbXgtdGV4dC1hcmVhLWhlbHBlci10ZXh0Lm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgY29sb3I6ICM2ZDc0N2E7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS4xNjY2NztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDhweDsgfVxuXG4ua214LWZvcm0tY29tcG9uZW50LWhlbHBlci1saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5rbXgtZm9ybS1jb21wb25lbnQtaGVscGVyLWxpbmUgLmtteC10ZXh0LWFyZWEtaGVscGVyLXRleHQge1xuICAgIGNvbG9yOiAjNmQ3NDdhO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTY2Njc7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgOHB4OyB9XG4gICAgLmtteC1mb3JtLWNvbXBvbmVudC1oZWxwZXItbGluZSAua214LXRleHQtYXJlYS1oZWxwZXItdGV4dC0taW52YWxpZCB7XG4gICAgICBjb2xvcjogI2UwMWYxZjsgfVxuICAgIC5rbXgtZm9ybS1jb21wb25lbnQtaGVscGVyLWxpbmUgLmtteC10ZXh0LWFyZWEtaGVscGVyLXRleHQ6Zmlyc3QtY2hpbGQge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgICAua214LWZvcm0tY29tcG9uZW50LWhlbHBlci1saW5lIC5rbXgtdGV4dC1hcmVhLWhlbHBlci10ZXh0OmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMTJweDsgfVxuICAgIC5rbXgtZm9ybS1jb21wb25lbnQtaGVscGVyLWxpbmUgLmtteC10ZXh0LWFyZWEtaGVscGVyLXRleHQ6bGFzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG4gIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmVydGljYWwtYWxpZ246IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXRleHQtZmllbGRfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLm1kYy10ZXh0LWZpZWxkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yOyB9XG4gIC5tZGMtdGV4dC1maWVsZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAubWRjLXRleHQtZmllbGQ6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICAubWRjLXRleHQtZmllbGQubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMjI1bXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gZm9yd2FyZHMsIDc1bXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIGZvcndhcmRzOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMTI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDIwMCU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY2FyZXQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNhcmV0LWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40Mik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgYm90dG9tOiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQ4cHgpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1ib3ggMjUwbXMgMTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWJveCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH0gfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMTJweCA2cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aW52YWxpZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwgKyAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICBjdXJzb3I6IGF1dG87IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gICAgc3Ryb2tlOiByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSxcbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgsXG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICAgIHN0cm9rZTogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgc3Ryb2tlOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweCAxNHB4O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcmlnaHQ6IDE2cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gIHN0cm9rZS13aWR0aDogMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4wNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIGhlaWdodDogNDhweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICAgIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggN3B4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJvdHRvbTogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHRvcDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgwLjc1KTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgdHJhbnNsYXRlWCgzMnB4KSBzY2FsZSgwLjc1KTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uIDI1MG1zIDE7IH1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWRbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSB0cmFuc2xhdGVYKC0yMXB4KSBzY2FsZSgwLjkyMyk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTEwJSkgdHJhbnNsYXRlWCgyMXB4KSBzY2FsZSgwLjkyMyk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UgMjUwbXMgMTsgfVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlW2Rpcj1cInJ0bFwiXSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCAyNTBtcyAxOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogNDhweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgYm90dG9tOiAxNnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxMnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogaW5pdGlhbDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDM4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgcGFkZGluZzogMTJweCAxMnB4IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZm9udC1zaXplOiAuODEzcmVtOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgKyAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiKlwiOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjczKTsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzMpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxcHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgdG9wOiAxOHB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcGFkZGluZzogMTJweCA4cHggOHB4IDhweDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBtYXJnaW4tbGVmdDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBtYXJnaW4tbGVmdDogMTZweDsgfVxuXG4ubWRjLWZvcm0tZmllbGQgPiAubWRjLXRleHQtZmllbGQgKyBsYWJlbCwgLmtteC1mb3JtLWZpZWxkID4gLm1kYy10ZXh0LWZpZWxkICsgbGFiZWwsIC5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkICsgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQ6bm90KC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cpIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogIzA1MzM2MTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTsgfVxuICAubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UtcnRsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIC0yMXB4KSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbi5rbXgtdGV4dC1hcmVhLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5rbXgtdGV4dC1hcmVhLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgY29sb3I6ICNhYmFmYjM7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWJhZmIzO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRvcDogM3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDhweCA4cHggMDsgfVxuXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxuLm1kYy10aGVtZS0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAjZmZmZmZmKTsgfVxuXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsua214LXRoZW1lX19iYWNrZ3JvdW5kLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTsgfVxuXG46cm9vdCB7XG4gIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICM4YzkxOTY7XG4gIC0ta214LXRleHQtZmllbGQtdGV4dC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC1pbnB1dC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLWRpdmlkZXItb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICNlMDFmMWY7XG4gIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLXRleHQtb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAjMTc3M2NmO1xuICAtLWtteC10ZXh0LWZpZWxkLXVuZGVybGluZS1ob3Zlci1vbi1saWdodDogIzJhMzQzZDtcbiAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAjNmQ3NDdhO1xuICAtLWtteC1jaGVja2JveC1ib3JkZXItY29sb3I6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWRpc2FibGVkLWNvbG9yOiAjOGM5MTk2O1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6IHJnYmEoNSwgNTEsIDk3LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyazogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQtLWFjdGl2ZTogIzA1MzM2MTtcbiAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogd2hpdGU7XG4gIC0ta214LXRoZW1lLWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC0ta214LWZvcm0tY29tcG9uZW50LWJsdWU6ICMxNzczY2Y7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4ubS0wIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuLm0tdC0wIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi5tLXItMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5tLWItMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ubS1sLTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi5tLXh4cyB7XG4gIG1hcmdpbjogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC14eHMge1xuICBtYXJnaW4tdG9wOiAycHggIWltcG9ydGFudDsgfVxuXG4ubS1yLXh4cyB7XG4gIG1hcmdpbi1yaWdodDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi14eHMge1xuICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDsgfVxuXG4ubS1sLXh4cyB7XG4gIG1hcmdpbi1sZWZ0OiAycHggIWltcG9ydGFudDsgfVxuXG4ubS14cyB7XG4gIG1hcmdpbjogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC14cyB7XG4gIG1hcmdpbi10b3A6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXIteHMge1xuICBtYXJnaW4tcmlnaHQ6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5tLWIteHMge1xuICBtYXJnaW4tYm90dG9tOiA0cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLXhzIHtcbiAgbWFyZ2luLWxlZnQ6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXMge1xuICBtYXJnaW46IDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtcyB7XG4gIG1hcmdpbi10b3A6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItcyB7XG4gIG1hcmdpbi1yaWdodDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi1zIHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC1zIHtcbiAgbWFyZ2luLWxlZnQ6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLW0ge1xuICBtYXJnaW46IDE2cHggIWltcG9ydGFudDsgfVxuXG4ubS10LW0ge1xuICBtYXJnaW4tdG9wOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci1tIHtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi1tIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtbSB7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbCB7XG4gIG1hcmdpbjogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtbCB7XG4gIG1hcmdpbi10b3A6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLWwge1xuICBtYXJnaW4tcmlnaHQ6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLWwge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC1sIHtcbiAgbWFyZ2luLWxlZnQ6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ubS14bCB7XG4gIG1hcmdpbjogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQteGwge1xuICBtYXJnaW4tdG9wOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci14bCB7XG4gIG1hcmdpbi1yaWdodDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLWIteGwge1xuICBtYXJnaW4tYm90dG9tOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC14bCB7XG4gIG1hcmdpbi1sZWZ0OiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tMnhsIHtcbiAgbWFyZ2luOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC0yeGwge1xuICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci0yeGwge1xuICBtYXJnaW4tcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLTJ4bCB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLTJ4bCB7XG4gIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tM3hsIHtcbiAgbWFyZ2luOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC0zeGwge1xuICBtYXJnaW4tdG9wOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci0zeGwge1xuICBtYXJnaW4tcmlnaHQ6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLTN4bCB7XG4gIG1hcmdpbi1ib3R0b206IDY0cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLTN4bCB7XG4gIG1hcmdpbi1sZWZ0OiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tNHhsIHtcbiAgbWFyZ2luOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC00eGwge1xuICBtYXJnaW4tdG9wOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci00eGwge1xuICBtYXJnaW4tcmlnaHQ6IDcycHggIWltcG9ydGFudDsgfVxuXG4ubS1iLTR4bCB7XG4gIG1hcmdpbi1ib3R0b206IDcycHggIWltcG9ydGFudDsgfVxuXG4ubS1sLTR4bCB7XG4gIG1hcmdpbi1sZWZ0OiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tNXhsIHtcbiAgbWFyZ2luOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC01eGwge1xuICBtYXJnaW4tdG9wOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci01eGwge1xuICBtYXJnaW4tcmlnaHQ6IDk2cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLTV4bCB7XG4gIG1hcmdpbi1ib3R0b206IDk2cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLTV4bCB7XG4gIG1hcmdpbi1sZWZ0OiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtMCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4ucC10LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi5wLXItMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucC1iLTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi5wLXh4cyB7XG4gIHBhZGRpbmc6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQteHhzIHtcbiAgcGFkZGluZy10b3A6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXIteHhzIHtcbiAgcGFkZGluZy1yaWdodDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi14eHMge1xuICBwYWRkaW5nLWJvdHRvbTogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC14eHMge1xuICBwYWRkaW5nLWxlZnQ6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXhzIHtcbiAgcGFkZGluZzogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC14cyB7XG4gIHBhZGRpbmctdG9wOiA0cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLXhzIHtcbiAgcGFkZGluZy1yaWdodDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi14cyB7XG4gIHBhZGRpbmctYm90dG9tOiA0cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLXhzIHtcbiAgcGFkZGluZy1sZWZ0OiA0cHggIWltcG9ydGFudDsgfVxuXG4ucC1zIHtcbiAgcGFkZGluZzogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC1zIHtcbiAgcGFkZGluZy10b3A6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItcyB7XG4gIHBhZGRpbmctcmlnaHQ6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItcyB7XG4gIHBhZGRpbmctYm90dG9tOiA4cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLXMge1xuICBwYWRkaW5nLWxlZnQ6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLW0ge1xuICBwYWRkaW5nOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC1tIHtcbiAgcGFkZGluZy10b3A6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLW0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi1tIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLW0ge1xuICBwYWRkaW5nLWxlZnQ6IDE2cHggIWltcG9ydGFudDsgfVxuXG4ucC1sIHtcbiAgcGFkZGluZzogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtbCB7XG4gIHBhZGRpbmctdG9wOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci1sIHtcbiAgcGFkZGluZy1yaWdodDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItbCB7XG4gIHBhZGRpbmctYm90dG9tOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC1sIHtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAteGwge1xuICBwYWRkaW5nOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC14bCB7XG4gIHBhZGRpbmctdG9wOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci14bCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHggIWltcG9ydGFudDsgfVxuXG4ucC1iLXhsIHtcbiAgcGFkZGluZy1ib3R0b206IDMycHggIWltcG9ydGFudDsgfVxuXG4ucC1sLXhsIHtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtMnhsIHtcbiAgcGFkZGluZzogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtMnhsIHtcbiAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLTJ4bCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLTJ4bCB7XG4gIHBhZGRpbmctYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC0yeGwge1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucC0zeGwge1xuICBwYWRkaW5nOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC0zeGwge1xuICBwYWRkaW5nLXRvcDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItM3hsIHtcbiAgcGFkZGluZy1yaWdodDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItM3hsIHtcbiAgcGFkZGluZy1ib3R0b206IDY0cHggIWltcG9ydGFudDsgfVxuXG4ucC1sLTN4bCB7XG4gIHBhZGRpbmctbGVmdDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLTR4bCB7XG4gIHBhZGRpbmc6IDcycHggIWltcG9ydGFudDsgfVxuXG4ucC10LTR4bCB7XG4gIHBhZGRpbmctdG9wOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci00eGwge1xuICBwYWRkaW5nLXJpZ2h0OiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi00eGwge1xuICBwYWRkaW5nLWJvdHRvbTogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtNHhsIHtcbiAgcGFkZGluZy1sZWZ0OiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtNXhsIHtcbiAgcGFkZGluZzogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtNXhsIHtcbiAgcGFkZGluZy10b3A6IDk2cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLTV4bCB7XG4gIHBhZGRpbmctcmlnaHQ6IDk2cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLTV4bCB7XG4gIHBhZGRpbmctYm90dG9tOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC01eGwge1xuICBwYWRkaW5nLWxlZnQ6IDk2cHggIWltcG9ydGFudDsgfVxuXG4udy0wIHtcbiAgd2lkdGg6IDAgIWltcG9ydGFudDsgfVxuXG4udy14eHMge1xuICB3aWR0aDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLncteHMge1xuICB3aWR0aDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnctcyB7XG4gIHdpZHRoOiA4cHggIWltcG9ydGFudDsgfVxuXG4udy1tIHtcbiAgd2lkdGg6IDE2cHggIWltcG9ydGFudDsgfVxuXG4udy1sIHtcbiAgd2lkdGg6IDI0cHggIWltcG9ydGFudDsgfVxuXG4udy14bCB7XG4gIHdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnctMnhsIHtcbiAgd2lkdGg6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4udy0zeGwge1xuICB3aWR0aDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi53LTR4bCB7XG4gIHdpZHRoOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLnctNXhsIHtcbiAgd2lkdGg6IDk2cHggIWltcG9ydGFudDsgfVxuXG4uaC0wIHtcbiAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLmgteHhzIHtcbiAgaGVpZ2h0OiAycHggIWltcG9ydGFudDsgfVxuXG4uaC14cyB7XG4gIGhlaWdodDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtcyB7XG4gIGhlaWdodDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtbSB7XG4gIGhlaWdodDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5oLWwge1xuICBoZWlnaHQ6IDI0cHggIWltcG9ydGFudDsgfVxuXG4uaC14bCB7XG4gIGhlaWdodDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5oLTJ4bCB7XG4gIGhlaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5oLTN4bCB7XG4gIGhlaWdodDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5oLTR4bCB7XG4gIGhlaWdodDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5oLTV4bCB7XG4gIGhlaWdodDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG4gIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmVydGljYWwtYWxpZ246IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXRleHQtZmllbGRfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLm1kYy10ZXh0LWZpZWxkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yOyB9XG4gIC5tZGMtdGV4dC1maWVsZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAubWRjLXRleHQtZmllbGQ6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICAubWRjLXRleHQtZmllbGQubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMjI1bXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gZm9yd2FyZHMsIDc1bXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIGZvcndhcmRzOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMTI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDIwMCU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY2FyZXQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNhcmV0LWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40Mik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgYm90dG9tOiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQ4cHgpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1ib3ggMjUwbXMgMTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWJveCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH0gfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMTJweCA2cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aW52YWxpZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwgKyAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICBjdXJzb3I6IGF1dG87IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gICAgc3Ryb2tlOiByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSxcbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgsXG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICAgIHN0cm9rZTogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgc3Ryb2tlOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweCAxNHB4O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcmlnaHQ6IDE2cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gIHN0cm9rZS13aWR0aDogMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4wNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIGhlaWdodDogNDhweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICAgIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggN3B4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJvdHRvbTogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHRvcDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgwLjc1KTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgdHJhbnNsYXRlWCgzMnB4KSBzY2FsZSgwLjc1KTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uIDI1MG1zIDE7IH1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWRbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSB0cmFuc2xhdGVYKC0yMXB4KSBzY2FsZSgwLjkyMyk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTEwJSkgdHJhbnNsYXRlWCgyMXB4KSBzY2FsZSgwLjkyMyk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UgMjUwbXMgMTsgfVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlW2Rpcj1cInJ0bFwiXSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCAyNTBtcyAxOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogNDhweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgYm90dG9tOiAxNnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxMnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogaW5pdGlhbDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDM4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgcGFkZGluZzogMTJweCAxMnB4IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZm9udC1zaXplOiAuODEzcmVtOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgKyAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiKlwiOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjczKTsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzMpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxcHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgdG9wOiAxOHB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcGFkZGluZzogMTJweCA4cHggOHB4IDhweDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBtYXJnaW4tbGVmdDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBtYXJnaW4tbGVmdDogMTZweDsgfVxuXG4ubWRjLWZvcm0tZmllbGQgPiAubWRjLXRleHQtZmllbGQgKyBsYWJlbCwgLmtteC1mb3JtLWZpZWxkID4gLm1kYy10ZXh0LWZpZWxkICsgbGFiZWwsIC5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkICsgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQ6bm90KC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cpIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogIzA1MzM2MTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTsgfVxuICAubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UtcnRsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIC0yMXB4KSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbi8qXHJcbiAqIE5PVEU6IFRoZSBtZGMgb3V0bGluZWQgdGV4dC1maWVsZCB2YXJpYW50IGlzIG5vdCB1c2VkIGluIExFR09TLFxyXG4gKiB0aGVyZWZvcmUgc2VsZWN0b3JzIGZvciBvdXRsaW5lZCB0ZXh0LWZpZWxkIGFyZSBub3QgaW5jbHVkZWQgaGVyZS5cclxuICpcclxuICogVGV4dC1maWVsZCBzdHlsaW5nIGlzIHdyYXBwZWQgd2l0aCBib3RoIGtteC0qIGFuZCBtZGMtKiBzZWxlY3RvcnNcclxuICogdG8gcHJvdmlkZSBhIGhpZ2hlciBzcGVjaWZpY2l0eSB0aGFuIHRoZSBiYXNlIG1kYy0qIHJ1bGVzOlxyXG4qL1xuLyogU2V0IHRoZSB3aWR0aCBvZiB0ZXh0LWZpZWxkIHRvIDEwMCUgYnkgZGVmYXVsdCAoYWxsb3cgdGhlIGRpc3BsYXkgY29udGV4dCAvIHBhcmVudCBjb250YWluZXIgdG8gZ292ZXJuIGNvbXBvbmVudCB3aWR0aCk6ICovXG4ua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLypcclxuICogTk9URTogVGhlIG1kYyBvdXRsaW5lZCB0ZXh0LWZpZWxkIHZhcmlhbnQgaXMgbm90IHVzZWQgaW4gTEVHT1MsXHJcbiAqIHRoZXJlZm9yZSBzZWxlY3RvcnMgZm9yIG91dGxpbmVkIHRleHQtZmllbGQgYXJlIG5vdCBpbmNsdWRlZCBoZXJlLlxyXG4gKlxyXG4gKiBUZXh0LWZpZWxkIHN0eWxpbmcgaXMgd3JhcHBlZCB3aXRoIGJvdGgga214LSogYW5kIG1kYy0qIHNlbGVjdG9yc1xyXG4gKiB0byBwcm92aWRlIGEgaGlnaGVyIHNwZWNpZmljaXR5IHRoYW4gdGhlIGJhc2UgbWRjLSogcnVsZXM6XHJcbiovXG4ua214LXRleHQtZmllbGQubWRjLXRleHQtZmllbGQgLmtteC10ZXh0LWZpZWxkX19pbnB1dC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoMC43NSk7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBjYXJldC1jb2xvcjogIzE3NzNjZjsgfVxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSwgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSksIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6aG92ZXIsIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6YWZ0ZXIsIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5rbXgtdGV4dC1maWVsZF9faW5wdXQubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjNmQ3NDdhO1xuICAgIGNvbG9yOiAjMmEzNDNkO1xuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgcGFkZGluZzogMjBweCA4cHggOHB4OyB9XG4gICAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAua214LXRleHQtZmllbGRfX2lucHV0Lm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMTc3M2NmOyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLmtteC10ZXh0LWZpZWxkLWljb24ge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdG9wOiAyNXB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovIH1cbiAgICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5rbXgtdGV4dC1maWVsZC1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5pY29uLXJpZ2h0IC5rbXgtdGV4dC1maWVsZC1pY29uIHtcbiAgICByaWdodDogOHB4O1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5pY29uLXJpZ2h0IC5rbXgtdGV4dC1maWVsZF9faW5wdXQubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkuaWNvbi1yaWdodC5tZGMtdGV4dC1maWVsZC0taW52YWxpZCAua214LXRleHQtZmllbGQtaWNvbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBjb2xvcjogI2UwMWYxZjsgfVxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzczY2Y7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBib3R0b206IDEycHg7XG4gICAgY29sb3I6ICM2ZDc0N2E7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGxlZnQ6IDhweDsgfVxuICAgIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0taW52YWxpZCkgLm1kYy1mbG9hdGluZy1sYWJlbC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICAgIGNvbG9yOiAjNmQ3NDdhO1xuICAgICAgbGVmdDogOHB4OyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLmtteC10ZXh0LWZpZWxkX19pbnB1dC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGNvbG9yOiAjNmQ3NDdhOyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1mbG9hdGluZy1sYWJlbC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICBjb2xvcjogIzE3NzNjZjsgfVxuXG4ua214LWZvcm0tY29tcG9uZW50LWhlbHBlci1saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5rbXgtZm9ybS1jb21wb25lbnQtaGVscGVyLWxpbmUgLmtteC10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgICBjb2xvcjogIzZkNzQ3YTtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE2NjY3O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDhweDsgfVxuICAgIC5rbXgtZm9ybS1jb21wb25lbnQtaGVscGVyLWxpbmUgLmtteC10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS1pbnZhbGlkIHtcbiAgICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gICAgLmtteC1mb3JtLWNvbXBvbmVudC1oZWxwZXItbGluZSAua214LXRleHQtZmllbGQtaGVscGVyLXRleHQ6Zmlyc3QtY2hpbGQge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgICAua214LWZvcm0tY29tcG9uZW50LWhlbHBlci1saW5lIC5rbXgtdGV4dC1maWVsZC1oZWxwZXItdGV4dDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IDEycHg7IH1cbiAgICAua214LWZvcm0tY29tcG9uZW50LWhlbHBlci1saW5lIC5rbXgtdGV4dC1maWVsZC1oZWxwZXItdGV4dDpsYXN0LWNoaWxkIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuLm0tMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ubS1yLTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubS1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLm0tbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubS14eHMge1xuICBtYXJnaW46IDJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQteHhzIHtcbiAgbWFyZ2luLXRvcDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci14eHMge1xuICBtYXJnaW4tcmlnaHQ6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5tLWIteHhzIHtcbiAgbWFyZ2luLWJvdHRvbTogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC14eHMge1xuICBtYXJnaW4tbGVmdDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0teHMge1xuICBtYXJnaW46IDRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQteHMge1xuICBtYXJnaW4tdG9wOiA0cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLXhzIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cHggIWltcG9ydGFudDsgfVxuXG4ubS1iLXhzIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC14cyB7XG4gIG1hcmdpbi1sZWZ0OiA0cHggIWltcG9ydGFudDsgfVxuXG4ubS1zIHtcbiAgbWFyZ2luOiA4cHggIWltcG9ydGFudDsgfVxuXG4ubS10LXMge1xuICBtYXJnaW4tdG9wOiA4cHggIWltcG9ydGFudDsgfVxuXG4ubS1yLXMge1xuICBtYXJnaW4tcmlnaHQ6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItcyB7XG4gIG1hcmdpbi1ib3R0b206IDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtcyB7XG4gIG1hcmdpbi1sZWZ0OiA4cHggIWltcG9ydGFudDsgfVxuXG4ubS1tIHtcbiAgbWFyZ2luOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tdC1tIHtcbiAgbWFyZ2luLXRvcDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItbSB7XG4gIG1hcmdpbi1yaWdodDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLWItbSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHggIWltcG9ydGFudDsgfVxuXG4ubS1sLW0ge1xuICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwge1xuICBtYXJnaW46IDI0cHggIWltcG9ydGFudDsgfVxuXG4ubS10LWwge1xuICBtYXJnaW4tdG9wOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tci1sIHtcbiAgbWFyZ2luLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi1sIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwtbCB7XG4gIG1hcmdpbi1sZWZ0OiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0teGwge1xuICBtYXJnaW46IDMycHggIWltcG9ydGFudDsgfVxuXG4ubS10LXhsIHtcbiAgbWFyZ2luLXRvcDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXIteGwge1xuICBtYXJnaW4tcmlnaHQ6IDMycHggIWltcG9ydGFudDsgfVxuXG4ubS1iLXhsIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLWwteGwge1xuICBtYXJnaW4tbGVmdDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLTJ4bCB7XG4gIG1hcmdpbjogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtMnhsIHtcbiAgbWFyZ2luLXRvcDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItMnhsIHtcbiAgbWFyZ2luLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi0yeGwge1xuICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC0yeGwge1xuICBtYXJnaW4tbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5tLTN4bCB7XG4gIG1hcmdpbjogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtM3hsIHtcbiAgbWFyZ2luLXRvcDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItM3hsIHtcbiAgbWFyZ2luLXJpZ2h0OiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi0zeGwge1xuICBtYXJnaW4tYm90dG9tOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC0zeGwge1xuICBtYXJnaW4tbGVmdDogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5tLTR4bCB7XG4gIG1hcmdpbjogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtNHhsIHtcbiAgbWFyZ2luLXRvcDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItNHhsIHtcbiAgbWFyZ2luLXJpZ2h0OiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi00eGwge1xuICBtYXJnaW4tYm90dG9tOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC00eGwge1xuICBtYXJnaW4tbGVmdDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5tLTV4bCB7XG4gIG1hcmdpbjogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLXQtNXhsIHtcbiAgbWFyZ2luLXRvcDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5tLXItNXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tYi01eGwge1xuICBtYXJnaW4tYm90dG9tOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLm0tbC01eGwge1xuICBtYXJnaW4tbGVmdDogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLTAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnAtdC0wIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ucC1yLTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnAtYi0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucC1sLTAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucC14eHMge1xuICBwYWRkaW5nOiAycHggIWltcG9ydGFudDsgfVxuXG4ucC10LXh4cyB7XG4gIHBhZGRpbmctdG9wOiAycHggIWltcG9ydGFudDsgfVxuXG4ucC1yLXh4cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDJweCAhaW1wb3J0YW50OyB9XG5cbi5wLWIteHhzIHtcbiAgcGFkZGluZy1ib3R0b206IDJweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwteHhzIHtcbiAgcGFkZGluZy1sZWZ0OiAycHggIWltcG9ydGFudDsgfVxuXG4ucC14cyB7XG4gIHBhZGRpbmc6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQteHMge1xuICBwYWRkaW5nLXRvcDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci14cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5wLWIteHMge1xuICBwYWRkaW5nLWJvdHRvbTogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC14cyB7XG4gIHBhZGRpbmctbGVmdDogNHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtcyB7XG4gIHBhZGRpbmc6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtcyB7XG4gIHBhZGRpbmctdG9wOiA4cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLXMge1xuICBwYWRkaW5nLXJpZ2h0OiA4cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLXMge1xuICBwYWRkaW5nLWJvdHRvbTogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC1zIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHggIWltcG9ydGFudDsgfVxuXG4ucC1tIHtcbiAgcGFkZGluZzogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtbSB7XG4gIHBhZGRpbmctdG9wOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci1tIHtcbiAgcGFkZGluZy1yaWdodDogMTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItbSB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC1tIHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbCB7XG4gIHBhZGRpbmc6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ucC10LWwge1xuICBwYWRkaW5nLXRvcDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLWwge1xuICBwYWRkaW5nLWJvdHRvbTogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtbCB7XG4gIHBhZGRpbmctbGVmdDogMjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXhsIHtcbiAgcGFkZGluZzogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQteGwge1xuICBwYWRkaW5nLXRvcDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXIteGwge1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi14bCB7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC14bCB7XG4gIHBhZGRpbmctbGVmdDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLTJ4bCB7XG4gIHBhZGRpbmc6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucC10LTJ4bCB7XG4gIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci0yeGwge1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi0yeGwge1xuICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtMnhsIHtcbiAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtM3hsIHtcbiAgcGFkZGluZzogNjRweCAhaW1wb3J0YW50OyB9XG5cbi5wLXQtM3hsIHtcbiAgcGFkZGluZy10b3A6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ucC1yLTN4bCB7XG4gIHBhZGRpbmctcmlnaHQ6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ucC1iLTN4bCB7XG4gIHBhZGRpbmctYm90dG9tOiA2NHB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtbC0zeGwge1xuICBwYWRkaW5nLWxlZnQ6IDY0cHggIWltcG9ydGFudDsgfVxuXG4ucC00eGwge1xuICBwYWRkaW5nOiA3MnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtdC00eGwge1xuICBwYWRkaW5nLXRvcDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLXItNHhsIHtcbiAgcGFkZGluZy1yaWdodDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLWItNHhsIHtcbiAgcGFkZGluZy1ib3R0b206IDcycHggIWltcG9ydGFudDsgfVxuXG4ucC1sLTR4bCB7XG4gIHBhZGRpbmctbGVmdDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi5wLTV4bCB7XG4gIHBhZGRpbmc6IDk2cHggIWltcG9ydGFudDsgfVxuXG4ucC10LTV4bCB7XG4gIHBhZGRpbmctdG9wOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtci01eGwge1xuICBwYWRkaW5nLXJpZ2h0OiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLnAtYi01eGwge1xuICBwYWRkaW5nLWJvdHRvbTogOTZweCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtNXhsIHtcbiAgcGFkZGluZy1sZWZ0OiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLnctMCB7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7IH1cblxuLncteHhzIHtcbiAgd2lkdGg6IDJweCAhaW1wb3J0YW50OyB9XG5cbi53LXhzIHtcbiAgd2lkdGg6IDRweCAhaW1wb3J0YW50OyB9XG5cbi53LXMge1xuICB3aWR0aDogOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnctbSB7XG4gIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7IH1cblxuLnctbCB7XG4gIHdpZHRoOiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLncteGwge1xuICB3aWR0aDogMzJweCAhaW1wb3J0YW50OyB9XG5cbi53LTJ4bCB7XG4gIHdpZHRoOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnctM3hsIHtcbiAgd2lkdGg6IDY0cHggIWltcG9ydGFudDsgfVxuXG4udy00eGwge1xuICB3aWR0aDogNzJweCAhaW1wb3J0YW50OyB9XG5cbi53LTV4bCB7XG4gIHdpZHRoOiA5NnB4ICFpbXBvcnRhbnQ7IH1cblxuLmgtMCB7XG4gIGhlaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5oLXh4cyB7XG4gIGhlaWdodDogMnB4ICFpbXBvcnRhbnQ7IH1cblxuLmgteHMge1xuICBoZWlnaHQ6IDRweCAhaW1wb3J0YW50OyB9XG5cbi5oLXMge1xuICBoZWlnaHQ6IDhweCAhaW1wb3J0YW50OyB9XG5cbi5oLW0ge1xuICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDsgfVxuXG4uaC1sIHtcbiAgaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7IH1cblxuLmgteGwge1xuICBoZWlnaHQ6IDMycHggIWltcG9ydGFudDsgfVxuXG4uaC0yeGwge1xuICBoZWlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4uaC0zeGwge1xuICBoZWlnaHQ6IDY0cHggIWltcG9ydGFudDsgfVxuXG4uaC00eGwge1xuICBoZWlnaHQ6IDcycHggIWltcG9ydGFudDsgfVxuXG4uaC01eGwge1xuICBoZWlnaHQ6IDk2cHggIWltcG9ydGFudDsgfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKS5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQsXG4ubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKS5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDAuNzUpOyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSkua214LXRleHQtZmllbGQtLWRpc2FibGVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSwgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKS5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLCAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZDpob3ZlciwgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKS5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQ6YWZ0ZXIsIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSkua214LXRleHQtZmllbGQtLWRpc2FibGVkOmJlZm9yZSxcbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLFxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSksXG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkubWRjLXRleHQtZmllbGQtLWRpc2FibGVkOmhvdmVyLFxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDphZnRlcixcbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsLFxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBib3R0b206IDEycHg7XG4gICAgY29sb3I6ICNhYmFmYjM7XG4gICAgbGVmdDogOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKS5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuICAgIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtZmxvYXRpbmctbGFiZWwubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgICBjb2xvcjogI2FiYWZiMzsgfVxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCAua214LXRleHQtZmllbGRfX2lucHV0Lm1kYy10ZXh0LWZpZWxkX19pbnB1dCxcbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLmtteC10ZXh0LWZpZWxkX19pbnB1dC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNhYmFmYjM7XG4gICAgY29sb3I6ICNhYmFmYjM7XG4gICAgcGFkZGluZzogMjBweCA4cHggOHB4OyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSkua214LXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbGluZS1yaXBwbGUsXG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhYmFmYjM7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKS5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQgKyAua214LXRleHQtZmllbGQtaGVscGVyLXRleHQubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQsXG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkubWRjLXRleHQtZmllbGQtLWRpc2FibGVkICsgLmtteC10ZXh0LWZpZWxkLWhlbHBlci10ZXh0Lm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgICBjb2xvcjogI2FiYWZiMzsgfVxuXG4vKlxyXG4gKiBOb3RlOiB0aGUgdmFsaWRhdGlvbiBzdHlsaW5nIGZvciB0ZXh0LWZpZWxkLWhlbHBlclxyXG4gKiBpcyBsb2NhdGVkIGluIC4vX3RleHQtZmllbGQtdmFsaWRhdGlvbi5zY3NzXHJcbiAqXHJcbiAqIFRoZSBkaXNhYmxlZCBzdHlsaW5nIGZvciB0ZXh0LWZpZWxkLWhlbHBlclxyXG4gKiBpcyBsb2NhdGVkIGluIC4vX3RleHQtZmllbGQtZGlzYWJsZWQuc2Nzc1xyXG4gKi9cbi5rbXgtdGV4dC1maWVsZC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgKyAua214LXRleHQtZmllbGQtaGVscGVyLXRleHQubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBjb2xvcjogIzZkNzQ3YTtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjE2NjY3O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgOHB4OyB9XG5cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG4gIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdmVydGljYWwtYWxpZ246IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXRleHQtZmllbGRfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLm1kYy10ZXh0LWZpZWxkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yOyB9XG4gIC5tZGMtdGV4dC1maWVsZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAubWRjLXRleHQtZmllbGQ6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICAubWRjLXRleHQtZmllbGQubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMjI1bXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gZm9yd2FyZHMsIDc1bXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIGZvcndhcmRzOyB9XG4gIC5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMDQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICAgIG9wYWNpdHk6IDAuMTI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgICB3aWR0aDogMjAwJTtcbiAgICBoZWlnaHQ6IDIwMCU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY2FyZXQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGNhcmV0LWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40Mik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgYm90dG9tOiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQ4cHgpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1ib3ggMjUwbXMgMTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWJveCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7IH0gfVxuICAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMTJweCA2cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aW52YWxpZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwgKyAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICBjdXJzb3I6IGF1dG87IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI0KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gICAgc3Ryb2tlOiByZ2JhKDAsIDAsIDAsIDAuMjQpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSxcbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgsXG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICAgIHN0cm9rZTogIzA1MzM2MTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgc3Ryb2tlOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweCAxNHB4O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcmlnaHQ6IDE2cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gIHN0cm9rZS13aWR0aDogMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoIHtcbiAgICBzdHJva2U6IHJnYmEoMCwgMCwgMCwgMC4wNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIGhlaWdodDogNDhweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICAgIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggN3B4OyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJvdHRvbTogMTZweDsgfVxuICAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHRvcDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiA0OHB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgwLjc1KTsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgdHJhbnNsYXRlWCgzMnB4KSBzY2FsZSgwLjc1KTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uIDI1MG1zIDE7IH1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWRbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTAlKSB0cmFuc2xhdGVYKC0yMXB4KSBzY2FsZSgwLjkyMyk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTEwJSkgdHJhbnNsYXRlWCgyMXB4KSBzY2FsZSgwLjkyMyk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UgMjUwbXMgMTsgfVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlW2Rpcj1cInJ0bFwiXSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCAyNTBtcyAxOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDEycHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiBpbml0aWFsOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogMTZweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogNDhweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgYm90dG9tOiAxNnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcmlnaHQ6IDEycHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1yaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogMzhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxMnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICByaWdodDogaW5pdGlhbDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDM4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIDI1MG1zIDE7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgcGFkZGluZzogMTJweCAxMnB4IDA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZm9udC1zaXplOiAuODEzcmVtOyB9XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgKyAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiKlwiOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjczKTsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzMpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gICAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEgMjUwbXMgMTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAxcHg7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHJpZ2h0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgdG9wOiAxOHB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcGFkZGluZzogMTJweCA4cHggOHB4IDhweDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cblxuLm1kYy10ZXh0LWZpZWxkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBtYXJnaW4tbGVmdDogMTJweDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBtYXJnaW4tbGVmdDogMTZweDsgfVxuXG4ubWRjLWZvcm0tZmllbGQgPiAubWRjLXRleHQtZmllbGQgKyBsYWJlbCwgLmtteC1mb3JtLWZpZWxkID4gLm1kYy10ZXh0LWZpZWxkICsgbGFiZWwsIC5rbXgtZm9ybS1maWVsZC0tc3RhY2tlZCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsLCAua214LWZvcm0tZmllbGQtLWFsaWduLXB1c2gtZG93biA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSg1LCA1MSwgOTcsIDAuODcpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkICsgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQ6bm90KC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cpIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogIzA1MzM2MTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjMDUzMzYxKTsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwNTMzNjE7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICMwNTMzNjEpOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjYjAwMDIwOyB9XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogI2IwMDAyMDsgfVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19wYXRoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICBzdHJva2U6ICNiMDAwMjA7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTsgfVxuICAubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpOyB9XG4gIC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuICAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC45MjMpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjkyMyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTsgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UtcnRsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMjFweCkpIHRyYW5zbGF0ZVkoLTExMCUpIHNjYWxlKDAuOTIzKTsgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIC0yMXB4KSkgdHJhbnNsYXRlWSgtMTEwJSkgc2NhbGUoMC45MjMpOyB9IH1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjkyMyk7IH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOTIzKTsgfSB9XG5cbi8qXHJcbiAqIE5PVEU6IFRoZSBtZGMgb3V0bGluZWQgdGV4dC1maWVsZCB2YXJpYW50IGlzIG5vdCB1c2VkIGluIExFR09TLFxyXG4gKiB0aGVyZWZvcmUgc2VsZWN0b3JzIGZvciBvdXRsaW5lZCB0ZXh0LWZpZWxkIGFyZSBub3QgaW5jbHVkZWQgaGVyZS5cclxuICpcclxuICogVGV4dC1maWVsZCBzdHlsaW5nIGlzIHdyYXBwZWQgd2l0aCBib3RoIGtteC0qIGFuZCBtZGMtKiBzZWxlY3RvcnNcclxuICogdG8gcHJvdmlkZSBhIGhpZ2hlciBzcGVjaWZpY2l0eSB0aGFuIHRoZSBiYXNlIG1kYy0qIHJ1bGVzOlxyXG4qL1xuLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIC8qXHJcbiAgICAgICAgTURDIGF1dG9tYXRpY2FsbHkgYXBwZW5kcyBhbiBhc3RlcmlzayB0byB0aGUgbGFiZWwgZWxlbWVudCBjaGlsZCBvZiBhIHJlcXVpcmVkIHRleHRmaWVsZC5cclxuICAgICAgICBUaGUgTEVHT1MgVVggc3RyYXRlZ3kgaXMgdG8gbWFyayBpbnB1dHMgYXMgb3B0aW9uYWwsIHJhdGhlciB0aGFuIHJlcXVpcmVkLlxyXG5cclxuICAgICAgICBUaGUgZm9sbG93aW5nIHN1cHByZXNzZXMgdGhlICdyZXF1aXJlZCcgYXN0ZXJpc2sgb24gcmVxdWlyZWQgdGV4dC1maWVsZHM6XHJcbiAgICAqLyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZTAxZjFmO1xuICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gICAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2UwMWYxZjtcbiAgICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpyZXF1aXJlZCArIC5tZGMtZmxvYXRpbmctbGFiZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBib3R0b206IDEycHg7XG4gICAgY29sb3I6ICNlMDFmMWY7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGxlZnQ6IDhweDsgfVxuICAgIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWludmFsaWQgLm1kYy1mbG9hdGluZy1sYWJlbC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICAgIGNvbG9yOiAjZTAxZjFmO1xuICAgICAgbGVmdDogOHB4OyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWludmFsaWQubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1mbG9hdGluZy1sYWJlbC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICBjb2xvcjogI2UwMWYxZjsgfVxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyLFxuICAua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gICAgY29sb3I6ICNlMDFmMWY7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZS5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgICBhbmltYXRpb246IG5vbmU7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGNvbG9yOiAjZTAxZjFmOyB9XG4gIC5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5rbXgtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgY29sb3I6ICNlMDFmMWY7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMDFmMWY7IH1cbiAgLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjZTAxZjFmOyB9XG5cbi8qXHJcbiAqICBSZW1vdmVzIHRoZSBpbnNldCBzaGFkb3cgYW5kIG92ZXJseS1yb3VuZGVkIFVJIG9uIGlPUyB3ZWJraXQ6XHJcbiAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQsXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta214LXRoZW1lLWJhY2tncm91bmQsICNmZmZmZmYpOyB9XG5cbi8qIGluY3JlYXNlcyB0aGUgc3BlY2lmaWNpdHkgb2YgdGhlIGNvbnRhaW5lciBiYWNrZ3JvdW5kIGNvbG9yIHdpdGhvdXQgcmVzb3J0aW5nIHRvIGltcGxlbWVudGluZyAhaW1wb3J0YW50OiAqL1xuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzMzYxOyB9XG5cbjpyb290IHtcbiAgLS1rbXgtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodDogIzhjOTE5NjtcbiAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICMyYTM0M2Q7XG4gIC0ta214LWlucHV0LWxhYmVsLXByaW1hcnktb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LXRleHQtZmllbGQtY2FyZXQtY29sb3I6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtZGl2aWRlci1vbi1saWdodDogIzZkNzQ3YTtcbiAgLS1rbXgtdGV4dC1maWVsZC1lcnJvci1vbi1saWdodDogI2UwMWYxZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1sYWJlbC1wcmltYXJ5LW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogIzE3NzNjZjtcbiAgLS1rbXgtdGV4dC1maWVsZC1mb2N1c2VkLWRpdmlkZXItb24tbGlnaHQ6ICMxNzczY2Y7XG4gIC0ta214LXRleHQtZmllbGQtdW5kZXJsaW5lLWhvdmVyLW9uLWxpZ2h0OiAjMmEzNDNkO1xuICAtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQ6ICM2ZDc0N2E7XG4gIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzZkNzQ3YTtcbiAgLS1rbXgtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6ICM4YzkxOTY7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodDogcmdiYSg1LCA1MSwgOTcsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAjMDUzMzYxO1xuICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tZGFyay0tYWN0aXZlOiB3aGl0ZTtcbiAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogIzE3NzNjZjsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG4ubWRjLXRvb2xiYXIsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciwgLmtteC10b29sYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MzM2MTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzA1MzM2MSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZGMtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb24sIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXRvb2xiYXJfX2ljb24sIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb24sIC5tZGMtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb24sIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXRvb2xiYXJfX2ljb24sIC5rbXgtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb24ge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5tZGMtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAua214LXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAua214LXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246OmFmdGVyLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy10b29sYmFyX19pY29uOjphZnRlciwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5tZGMtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cbiAgICAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOmhvdmVyOjpiZWZvcmUsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXRvb2xiYXJfX2ljb246aG92ZXI6OmJlZm9yZSwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjpob3Zlcjo6YmVmb3JlLCAubWRjLXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOmhvdmVyOjpiZWZvcmUsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAua214LXRvb2xiYXJfX2ljb246aG92ZXI6OmJlZm9yZSwgLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDAuMDg7IH1cbiAgICAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXRvb2xiYXIgLmtteC10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsIC5rbXgtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLCAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAua214LXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLXRvb2xiYXIgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAua214LXRvb2xiYXIgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgICBvcGFjaXR5OiAwLjI0OyB9XG4gICAgLm1kYy10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLm1kYy10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC1zZWNvbmRhcnktaGVhZGVyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciwgLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjsgfVxuICAgIC5tZGMtdG9vbGJhciAubWRjLXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAua214LXNlY29uZGFyeS1oZWFkZXIgLm1kYy10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIsIC5tZGMtdG9vbGJhciAua214LXRvb2xiYXJfX2ljb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyLCAua214LXNlY29uZGFyeS1oZWFkZXIgLmtteC10b29sYmFyX19pY29uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciwgLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgICAgIG9wYWNpdHk6IDAuMzI7IH1cbiAgICAubWRjLXRvb2xiYXIgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQsIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZCwgLmtteC10b29sYmFyIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLCAubWRjLXRvb2xiYXIgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX2ljb24sIC5rbXgtc2Vjb25kYXJ5LWhlYWRlciAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9faWNvbiwgLmtteC10b29sYmFyIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19pY29uIHtcbiAgICAgIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjMyOyB9XG4gIC5tZGMtdG9vbGJhcl9fcm93LCAua214LXRvb2xiYXJfX3JvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA2NHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIC5tZGMtdG9vbGJhcl9fcm93LCAua214LXRvb2xiYXJfX3JvdyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgICAgLm1kYy10b29sYmFyX19yb3csIC5rbXgtdG9vbGJhcl9fcm93IHtcbiAgICAgICAgbWluLWhlaWdodDogNTZweDsgfSB9XG4gIC5tZGMtdG9vbGJhcl9fc2VjdGlvbiwgLmtteC10b29sYmFyX19zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4OiAxO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgLm1kYy10b29sYmFyX19zZWN0aW9uLCAua214LXRvb2xiYXJfX3NlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbiwgLmtteC10b29sYmFyX19zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogNHB4IDA7IH0gfVxuICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tc3RhcnQge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIG9yZGVyOiAtMTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0LCAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0W2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tc3RhcnQge1xuICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1zdGFydCwgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1zdGFydFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgICAgICAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLXN0YXJ0IHtcbiAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tc3RhcnQsIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tc3RhcnRbZGlyPVwicnRsXCJdIHtcbiAgICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDsgfSB9XG4gICAgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1lbmQge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBvcmRlcjogMTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLWVuZCwgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1lbmRbZGlyPVwicnRsXCJdIHtcbiAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1lbmQge1xuICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLm1kYy10b29sYmFyX19zZWN0aW9uLS1hbGlnbi1lbmQsIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgICAgIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kIHtcbiAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fc2VjdGlvbi0tYWxpZ24tZW5kLCAubWRjLXRvb2xiYXJfX3NlY3Rpb24tLWFsaWduLWVuZFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgLm1kYy10b29sYmFyX190aXRsZSwgLmtteC10b29sYmFyX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNWVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fdGl0bGUsIFtkaXI9XCJydGxcIl0gLmtteC10b29sYmFyX190aXRsZSwgLm1kYy10b29sYmFyX190aXRsZVtkaXI9XCJydGxcIl0sIC5rbXgtdG9vbGJhcl9fdGl0bGVbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4OyB9XG4gIC5tZGMtdG9vbGJhcl9faWNvbiwgLmtteC10b29sYmFyX19pY29uLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbiwgLmtteC10b29sYmFyX19tZW51LWljb24ge1xuICAgIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAgIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAgIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gICAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAgIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAgIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC10b29sYmFyX19pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5rbXgtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUsIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciwgLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLmtteC10b29sYmFyX19pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUsIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhcjtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAubWRjLXRvb2xiYXJfX2ljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlLCAubWRjLXJpcHBsZS11cGdyYWRlZC5rbXgtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19tZW51LWljb246OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX21lbnUtaWNvbjo6YWZ0ZXIge1xuICAgICAgdG9wOiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gICAgLm1kYy10b29sYmFyX19pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyLCAubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbi5rbXgtdG9vbGJhcl9fbWVudS1pY29uOjphZnRlciB7XG4gICAgICBhbmltYXRpb246IDIyNW1zIG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIGZvcndhcmRzLCA3NW1zIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiBmb3J3YXJkczsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbi5rbXgtdG9vbGJhcl9faWNvbjo6YWZ0ZXIsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIGFuaW1hdGlvbjogMTUwbXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbjo6YmVmb3JlLCAua214LXRvb2xiYXJfX2ljb246OmJlZm9yZSwgLm1kYy10b29sYmFyX19pY29uOjphZnRlciwgLmtteC10b29sYmFyX19pY29uOjphZnRlciwgLm1kYy10b29sYmFyX19tZW51LWljb246OmJlZm9yZSwgLmtteC10b29sYmFyX19tZW51LWljb246OmJlZm9yZSwgLm1kYy10b29sYmFyX19tZW51LWljb246OmFmdGVyLCAua214LXRvb2xiYXJfX21lbnUtaWNvbjo6YWZ0ZXIge1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDUwJSk7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiBjYWxjKDUwJSAtIDUwJSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19pY29uOjpiZWZvcmUsIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19tZW51LWljb246OmJlZm9yZSwgLm1kYy10b29sYmFyX19tZW51LWljb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIsIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLmtteC10b29sYmFyX19tZW51LWljb246OmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIGNhbGMoNTAlIC0gNTAlKSk7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIGNhbGMoNTAlIC0gNTAlKSk7XG4gICAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTsgfVxuICAgIC5tZGMtdG9vbGJhcl9faWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX2ljb246OmFmdGVyLCAubWRjLXRvb2xiYXJfX21lbnUtaWNvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciwgLm1kYy1yaXBwbGUtdXBncmFkZWQua214LXRvb2xiYXJfX21lbnUtaWNvbjo6YWZ0ZXIge1xuICAgICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7IH1cblxuLm1kYy10b29sYmFyX19tZW51LWljb24gKyAubWRjLXRvb2xiYXJfX3RpdGxlLCAua214LXRvb2xiYXJfX21lbnUtaWNvbiArIC5tZGMtdG9vbGJhcl9fdGl0bGUsIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uICsgLmtteC10b29sYmFyX190aXRsZSwgLmtteC10b29sYmFyX19tZW51LWljb24gKyAua214LXRvb2xiYXJfX3RpdGxlIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uICsgLm1kYy10b29sYmFyX190aXRsZSwgW2Rpcj1cInJ0bFwiXSAua214LXRvb2xiYXJfX21lbnUtaWNvbiArIC5tZGMtdG9vbGJhcl9fdGl0bGUsIFtkaXI9XCJydGxcIl0gLm1kYy10b29sYmFyX19tZW51LWljb24gKyAua214LXRvb2xiYXJfX3RpdGxlLCBbZGlyPVwicnRsXCJdIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uICsgLmtteC10b29sYmFyX190aXRsZSwgLm1kYy10b29sYmFyX19tZW51LWljb24gKyAubWRjLXRvb2xiYXJfX3RpdGxlW2Rpcj1cInJ0bFwiXSwgLmtteC10b29sYmFyX19tZW51LWljb24gKyAubWRjLXRvb2xiYXJfX3RpdGxlW2Rpcj1cInJ0bFwiXSwgLm1kYy10b29sYmFyX19tZW51LWljb24gKyAua214LXRvb2xiYXJfX3RpdGxlW2Rpcj1cInJ0bFwiXSwgLmtteC10b29sYmFyX19tZW51LWljb24gKyAua214LXRvb2xiYXJfX3RpdGxlW2Rpcj1cInJ0bFwiXSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm1kYy10b29sYmFyX190aXRsZSwgLmtteC10b29sYmFyX190aXRsZSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tZGMtdG9vbGJhcl9fdGl0bGUsIFtkaXI9XCJydGxcIl0gLmtteC10b29sYmFyX190aXRsZSwgLm1kYy10b29sYmFyX190aXRsZVtkaXI9XCJydGxcIl0sIC5rbXgtdG9vbGJhcl9fdGl0bGVbZGlyPVwicnRsXCJdIHtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9IH1cblxuLm1kYy10b29sYmFyLS1maXhlZCwgLmtteC10b29sYmFyLS1maXhlZCB7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggNHB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNDsgfVxuXG4ubWRjLXRvb2xiYXItLWZsZXhpYmxlIHtcbiAgLS1tZGMtdG9vbGJhci1yYXRpby10by1leHRlbmQtZmxleGlibGU6IDQ7IH1cbiAgLm1kYy10b29sYmFyLS1mbGV4aWJsZSAubWRjLXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZCwgLm1kYy10b29sYmFyLS1mbGV4aWJsZSAua214LXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZCB7XG4gICAgaGVpZ2h0OiAyNTZweDtcbiAgICBoZWlnaHQ6IGNhbGMoNjRweCAqIHZhcigtLW1kYy10b29sYmFyLXJhdGlvLXRvLWV4dGVuZC1mbGV4aWJsZSwgNCkpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgICAubWRjLXRvb2xiYXItLWZsZXhpYmxlIC5tZGMtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkLCAubWRjLXRvb2xiYXItLWZsZXhpYmxlIC5rbXgtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgaGVpZ2h0OiAyMjRweDtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDU2cHggKiB2YXIoLS1tZGMtdG9vbGJhci1yYXRpby10by1leHRlbmQtZmxleGlibGUsIDQpKTsgfSB9XG4gICAgLm1kYy10b29sYmFyLS1mbGV4aWJsZSAubWRjLXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZDo6YWZ0ZXIsIC5tZGMtdG9vbGJhci0tZmxleGlibGUgLmtteC10b29sYmFyX19yb3c6Zmlyc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1kYy10b29sYmFyLS1mbGV4aWJsZS1kZWZhdWx0LWJlaGF2aW9yIC5tZGMtdG9vbGJhcl9fdGl0bGUsIC5tZGMtdG9vbGJhci0tZmxleGlibGUtZGVmYXVsdC1iZWhhdmlvciAua214LXRvb2xiYXJfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMTI1ZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cbiAgLm1kYy10b29sYmFyLS1mbGV4aWJsZS1kZWZhdWx0LWJlaGF2aW9yIC5tZGMtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkOjphZnRlciwgLm1kYy10b29sYmFyLS1mbGV4aWJsZS1kZWZhdWx0LWJlaGF2aW9yIC5rbXgtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2U7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubWRjLXRvb2xiYXItLWZsZXhpYmxlLWRlZmF1bHQtYmVoYXZpb3IubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCAubWRjLXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZDo6YWZ0ZXIsIC5tZGMtdG9vbGJhci0tZmxleGlibGUtZGVmYXVsdC1iZWhhdmlvci5tZGMtdG9vbGJhci0tZmxleGlibGUtc3BhY2UtbWluaW1pemVkIC5rbXgtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkOjphZnRlciB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAubWRjLXRvb2xiYXItLWZsZXhpYmxlLWRlZmF1bHQtYmVoYXZpb3IubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCAubWRjLXRvb2xiYXJfX3RpdGxlLCAubWRjLXRvb2xiYXItLWZsZXhpYmxlLWRlZmF1bHQtYmVoYXZpb3IubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCAua214LXRvb2xiYXJfX3RpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG5cbi5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLm1kYy10b29sYmFyLS1maXhlZCwgLm1kYy10b29sYmFyLS13YXRlcmZhbGwua214LXRvb2xiYXItLWZpeGVkIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIHdpbGwtY2hhbmdlOiBib3gtc2hhZG93OyB9XG4gIC5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLm1kYy10b29sYmFyLS1maXhlZC5tZGMtdG9vbGJhci0tZmxleGlibGUtc3BhY2UtbWluaW1pemVkLCAubWRjLXRvb2xiYXItLXdhdGVyZmFsbC5tZGMtdG9vbGJhci0tZmxleGlibGUtc3BhY2UtbWluaW1pemVkLmtteC10b29sYmFyLS1maXhlZCB7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA0cHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLm1kYy10b29sYmFyLS13YXRlcmZhbGwubWRjLXRvb2xiYXItLWZpeGVkLm1kYy10b29sYmFyLS1maXhlZC1sYXN0cm93LW9ubHkubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCwgLm1kYy10b29sYmFyLS13YXRlcmZhbGwubWRjLXRvb2xiYXItLWZpeGVkLWxhc3Ryb3ctb25seS5tZGMtdG9vbGJhci0tZmxleGlibGUtc3BhY2UtbWluaW1pemVkLmtteC10b29sYmFyLS1maXhlZCB7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG4gIC5tZGMtdG9vbGJhci0td2F0ZXJmYWxsLm1kYy10b29sYmFyLS1maXhlZC5tZGMtdG9vbGJhci0tZml4ZWQtbGFzdHJvdy1vbmx5Lm1kYy10b29sYmFyLS1maXhlZC1hdC1sYXN0LXJvdywgLm1kYy10b29sYmFyLS13YXRlcmZhbGwubWRjLXRvb2xiYXItLWZpeGVkLWxhc3Ryb3ctb25seS5tZGMtdG9vbGJhci0tZml4ZWQtYXQtbGFzdC1yb3cua214LXRvb2xiYXItLWZpeGVkIHtcbiAgICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDRweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuXG4ubWRjLXRvb2xiYXItZml4ZWQtYWRqdXN0LCAua214LXRvb2xiYXItZml4ZWQtYWRqdXN0IHtcbiAgcGFkZGluZy10b3A6IDY0cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC1oZWlnaHQ6IDU5OXB4KSB7XG4gICAgLm1kYy10b29sYmFyLWZpeGVkLWFkanVzdCwgLmtteC10b29sYmFyLWZpeGVkLWFkanVzdCB7XG4gICAgICBwYWRkaW5nLXRvcDogNDhweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5tZGMtdG9vbGJhci1maXhlZC1hZGp1c3QsIC5rbXgtdG9vbGJhci1maXhlZC1hZGp1c3Qge1xuICAgICAgcGFkZGluZy10b3A6IDU2cHg7IH0gfVxuXG4ubWRjLXRvb2xiYXJfX3NlY3Rpb24tLXNocmluay10by1maXQge1xuICBmbGV4OiBub25lOyB9XG5cbi5rbXgtdG9vbGJhcl9fc2VjdGlvbiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmtteC10b29sYmFyX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJUcmVidWNoZXQgTVNcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5rbXgtdG9vbGJhci0tZml4ZWQtYm90dG9tIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7IH1cblxuLmtteC10b29sYmFyX19pY29uLS1wcmltYXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBtYXJnaW46IDAgOHB4O1xuICBtaW4td2lkdGg6IDQ4cHg7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmtteC10b29sYmFyX19pY29uLS1wcmltYXJ5Omxhc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZzogMDsgfVxuXG4ua214LXRvb2xiYXJfX2xvZ28ge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIHBhZGRpbmc6IDAgMTBweDsgfVxuICAua214LXRvb2xiYXJfX2xvZ28gLmtteC1pY29uIHtcbiAgICB3aWR0aDogMi41ZW07IH1cblxuLmtteC10b29sYmFyX19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlRyZWJ1Y2hldCBNU1wiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1yaWdodDogMjRweDsgfVxuICAua214LXRvb2xiYXJfX2xpbmsgLmtteC1pY29uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luOiAwIDRweDsgfVxuXG4ua214LXRvb2xiYXIua214LXRvb2xiYXItLWJyYW5kZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1saWdodCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cbiAgLmtteC10b29sYmFyLmtteC10b29sYmFyLS1icmFuZGVkIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uLFxuICAua214LXRvb2xiYXIua214LXRvb2xiYXItLWJyYW5kZWQgLmtteC10b29sYmFyX19pY29uOm5vdCgua214LXRvb2xiYXJfX2ljb24tLXByaW1hcnkpIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LXByaW1hcnktb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xuICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAua214LXRvb2xiYXIua214LXRvb2xiYXItLWJyYW5kZWQgLmtteC10b29sYmFyX19tZW51LWljb246ZGlzYWJsZWQsXG4gIC5rbXgtdG9vbGJhci5rbXgtdG9vbGJhci0tYnJhbmRlZCAua214LXRvb2xiYXJfX2ljb246ZGlzYWJsZWQge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XG5cbi5rbXgtdG9vbGJhci5rbXgtdG9vbGJhci0tY2VudGVyZWQgLmtteC10b29sYmFyX19yb3cge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA5MDBweDsgfVxuXG4ua214LXRvb2xiYXItLWZpeGVkLmtteC10b29sYmFyLS1maXhlZC0tc2Vjb25kYXJ5Om5vdCgua214LXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCkge1xuICB0b3A6IDU2cHg7IH1cblxuLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9fbWVudS1pY29uOmRpc2FibGVkLFxuLmtteC10b29sYmFyIC5rbXgtdG9vbGJhcl9faWNvbjpkaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cblxuLmtteC1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGluaXRpYWw7XG4gIGhlaWdodDogMWVtO1xuICB3aWR0aDogMWVtO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgLmtteC1pY29uIHN2ZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cblxuLypcclxuXHRJbXByb3ZlZCBzY3JlZW4gcmVhZGVyIG9ubHkgQ1NTIGNsYXNzXHJcblx0QGF1dGhvciBHYcOrbCBQb3VwYXJkXHJcblx0XHRAbm90ZSBCYXNlZCBvbiBZYWhvbyEncyB0ZWNobmlxdWVcclxuXHRcdEBhdXRob3IgVGhpZXJyeSBLb2JsZW50elxyXG5cdFx0QHNlZSBodHRwczovL2RldmVsb3Blci55YWhvby5jb20vYmxvZ3MveWRuL2NsaXAtaGlkZGVuLWNvbnRlbnQtYmV0dGVyLWFjY2Vzc2liaWxpdHktNTM0NTYuaHRtbFxyXG5cdCogMS5cclxuXHRcdEBub3RlIGBjbGlwYCBpcyBkZXByZWNhdGVkIGJ1dCB3b3JrcyBldmVyeXdoZXJlXHJcblx0XHRAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9jbGlwXHJcblx0KiAyLlxyXG5cdFx0QG5vdGUgYGNsaXAtcGF0aGAgaXMgdGhlIGZ1dHVyZS1wcm9vZiB2ZXJzaW9uLCBidXQgbm90IHZlcnkgd2VsbCBzdXBwb3J0ZWQgeWV0XHJcblx0XHRAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9jbGlwLXBhdGhcclxuXHRcdEBzZWUgaHR0cDovL2Nhbml1c2UuY29tLyNzZWFyY2g9Y2xpcC1wYXRoXHJcblx0XHRAYXV0aG9yIFl2YWluIExpZWNodGlcclxuXHRcdEBzZWUgaHR0cHM6Ly90d2l0dGVyLmNvbS9yeXVyYW43OC9zdGF0dXMvNzc4OTQzMzg5ODE5NjA0OTkyXHJcblx0KiAzLlxyXG5cdFx0QG5vdGUgcHJldmVudGluZyB0ZXh0IHRvIGJlIGNvbmRlbnNlZFxyXG5cdFx0YXV0aG9yIEouIFJlbsOpZSBCZWFjaFxyXG5cdFx0QHNlZSBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXHJcblx0XHRAbm90ZSBEcnVwYWwgOCBnb2VzIHdpdGggd29yZC13cmFwOiBub3JtYWwgaW5zdGVhZFxyXG5cdFx0QHNlZSBodHRwczovL3d3dy5kcnVwYWwub3JnL25vZGUvMjA0NTE1MVxyXG5cdFx0QHNlZSBodHRwOi8vY2dpdC5kcnVwYWxjb2RlLm9yZy9kcnVwYWwvY29tbWl0Lz9pZD01Yjg0N2VhXHJcblx0KiA0LlxyXG5cdFx0QG5vdGUgIWltcG9ydGFudCBpcyBpbXBvcnRhbnRcclxuXHRcdEBub3RlIE9idmlvdXNseSB5b3Ugd2FubmEgaGlkZSBzb21ldGhpbmdcclxuXHRcdEBhdXRob3IgSGFycnkgUm9iZXJ0c1xyXG5cdFx0QHNlZSBodHRwOi8vY3Nzd2l6YXJkcnkuY29tLzIwMTYvMDUvdGhlLWltcG9ydGFuY2Utb2YtaW1wb3J0YW50L1xyXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KSAhaW1wb3J0YW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICAvKiAyICovXG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIC8qIDMgKi8gfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuLypcclxuXHRVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAudmlzdWFsbHktaGlkZGVuIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxyXG5cdEBub3RlIFVzZWZ1bCBmb3Igc2tpcCBsaW5rc1xyXG5cdEBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxyXG5cdEBub3RlIEJhc2VkIG9uIGEgSFRNTDUgQm9pbGVycGxhdGUgdGVjaG5pcXVlLCBpbmNsdWRlZCBpbiBCb290c3RyYXBcclxuXHRAbm90ZSBGaXhlZCBhIGJ1ZyB3aXRoIHBvc2l0aW9uOiBzdGF0aWMgb24gaU9TIDEwLjAuMiArIFZvaWNlT3ZlclxyXG5cdFx0QGF1dGhvciBTeWx2YWluIFBpZ2VhcmRcclxuXHRcdEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMDczMlxyXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpmb2N1cyxcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOmFjdGl2ZSB7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBub25lICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbi5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0OyB9XG5cbi5wYWdlLWZvb3Rlci0tbGVnYWwtLWNvcHlyaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgY29sb3I6IGdyYXk7XG4gIG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG4uZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5tZGMtY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiA4MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDsgfVxuXG4ubWRjLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0OyB9XG5cbmh0bWwsXG5ib2R5IHtcbiAgbWFyZ2luOiAwcHg7XG4gIHBhZGRpbmc6IDBweDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBwYWRkaW5nOiAwcHg7IH1cblxuI2JvZHkge1xuICBwYWRkaW5nLWJvdHRvbTogMHB4OyB9XG5cbiNmb290ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNlNGU0ZTQ7IH1cblxuI2NvbnRhaW5lciB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuIiwiQGltcG9ydCAnLi9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICcuL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuXHJcbiRrbXgtdGhlbWUtcHJpbWFyeToga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuJG1kYy10aGVtZS1wcmltYXJ5OiAka214LXRoZW1lLXByaW1hcnk7XHJcblxyXG4ka214LXRoZW1lLXNlY29uZGFyeToga214LWNvbG9yKCd5ZWxsb3cnLCA2MDApO1xyXG4kbWRjLXRoZW1lLXNlY29uZGFyeTogJGtteC10aGVtZS1zZWNvbmRhcnk7XHJcblxyXG4ua214LXRoZW1lX19iYWNrZ3JvdW5kLFxyXG4ubWRjLXRoZW1lLS1iYWNrZ3JvdW5kIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtteC10aGVtZS1iYWNrZ3JvdW5kLCAkd2hpdGUpO1xyXG59XHJcblxyXG4vKiBpbmNyZWFzZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBjb250YWluZXIgYmFja2dyb3VuZCBjb2xvciB3aXRob3V0IHJlc29ydGluZyB0byBpbXBsZW1lbnRpbmcgIWltcG9ydGFudDogKi9cclxuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZGFyay5rbXgtdGhlbWVfX2JhY2tncm91bmQtLWRhcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtteC10aGVtZS1wcmltYXJ5O1xyXG59XHJcblxyXG4kbWRjLXR5cG9ncmFwaHktZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LWFsdDtcclxuXHJcbjpyb290IHtcclxuICAgIC0ta214LXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQ6ICN7a214LWNvbG9yKCdzbGF0ZScsIDUwMCl9O1xyXG4gICAgLS1rbXgtdGV4dC1maWVsZC10ZXh0LXByaW1hcnktb24tbGlnaHQ6ICN7a214LWNvbG9yKCdzbGF0ZScsIDkwMCl9O1xyXG4gICAgLS1rbXgtaW5wdXQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogI3trbXgtY29sb3IoJ3NsYXRlJywgNjAwKX07XHJcbiAgICAtLWtteC10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yOiAje2tteC1jb2xvcignYmx1ZScsIDYwMCl9O1xyXG4gICAgLS1rbXgtdGV4dC1maWVsZC1kaXZpZGVyLW9uLWxpZ2h0OiAje2tteC1jb2xvcignc2xhdGUnLCA2MDApfTtcclxuICAgIC0ta214LXRleHQtZmllbGQtZXJyb3Itb24tbGlnaHQ6ICN7a214LWNvbG9yKCdyZWQnLCA2MDApfTtcclxuICAgIC0ta214LXRleHQtZmllbGQtbGFiZWwtcHJpbWFyeS1vbi1saWdodDogI3trbXgtY29sb3IoJ3NsYXRlJywgOTAwKX07XHJcbiAgICAtLWtteC10ZXh0LWZpZWxkLWZvY3VzZWQtdGV4dC1vbi1saWdodDogI3trbXgtY29sb3IoJ2JsdWUnLCA2MDApfTtcclxuICAgIC0ta214LXRleHQtZmllbGQtZm9jdXNlZC1kaXZpZGVyLW9uLWxpZ2h0OiAje2tteC1jb2xvcignYmx1ZScsIDYwMCl9O1xyXG4gICAgLS1rbXgtdGV4dC1maWVsZC11bmRlcmxpbmUtaG92ZXItb24tbGlnaHQ6ICN7a214LWNvbG9yKCdzbGF0ZScsIDkwMCl9O1xyXG4gICAgLS1rbXgtdGhlbWUtdGV4dC1oaW50LW9uLWxpZ2h0OiAje2tteC1jb2xvcignc2xhdGUnLCA2MDApfTtcclxuICAgIC0ta214LWNoZWNrYm94LWJvcmRlci1jb2xvcjogI3trbXgtY29sb3IoJ3NsYXRlJywgNjAwKX07XHJcbiAgICAtLWtteC1jaGVja2JveC1kaXNhYmxlZC1jb2xvcjogI3trbXgtY29sb3IoJ3NsYXRlJywgNTAwKX07XHJcbiAgICAtLWtteC10aGVtZS10YWItbGFiZWwtb24tbGlnaHQ6ICN7a214LWNvbG9yKCdibHVlJywgOTAwLCAwLjcpfTtcclxuICAgIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1kYXJrOiAje3JnYmEoJHdoaXRlLCAwLjcpfTtcclxuICAgIC0ta214LXRoZW1lLXRhYi1sYWJlbC1vbi1saWdodC0tYWN0aXZlOiAje2tteC1jb2xvcignYmx1ZScsIDkwMCwgMSl9O1xyXG4gICAgLS1rbXgtdGhlbWUtdGFiLWxhYmVsLW9uLWRhcmstLWFjdGl2ZTogI3tyZ2JhKCR3aGl0ZSwgMSl9O1xyXG4gICAgLS1rbXgtdGhlbWUtYmFja2dyb3VuZDogI3skd2hpdGV9O1xyXG4gICAgLS1rbXgtZm9ybS1jb21wb25lbnQtYmx1ZTogI3trbXgtY29sb3IoJ2JsdWUnLCA2MDApfTtcclxufVxyXG4iLCIka214LWNvbG9yczogKFxyXG4gICAgJ2JsdWUnOiAoXHJcbiAgICAgICAgNTA6ICNmMmZhZmYsXHJcbiAgICAgICAgMTAwOiAjZTBmMmZmLFxyXG4gICAgICAgIDIwMDogI2MyZTNmYyxcclxuICAgICAgICAzMDA6ICM5Y2NlZjcsXHJcbiAgICAgICAgNDAwOiAjNmViM2YwLFxyXG4gICAgICAgIDUwMDogIzQwOTRlMyxcclxuICAgICAgICA2MDA6ICMxNzczY2YsXHJcbiAgICAgICAgNzAwOiAjMDU1OWFkLFxyXG4gICAgICAgIDgwMDogIzAwNDQ4NyxcclxuICAgICAgICA5MDA6ICMwNTMzNjEsXHJcbiAgICAgICAgMTAwMDogIzBkMjg0MixcclxuICAgICksXHJcbiAgICAnZ3JlZW4nOiAoXHJcbiAgICAgICAgNTA6ICNmNWZhZjIsXHJcbiAgICAgICAgMTAwOiAjZGRmN2QwLFxyXG4gICAgICAgIDIwMDogI2FkZjA4ZCxcclxuICAgICAgICAzMDA6ICM4MWUwNTgsXHJcbiAgICAgICAgNDAwOiAjNTVjNDI5LFxyXG4gICAgICAgIDUwMDogIzNhYTYxMixcclxuICAgICAgICA2MDA6ICMyODgyMGEsXHJcbiAgICAgICAgNzAwOiAjMjA2NjA5LFxyXG4gICAgICAgIDgwMDogIzFiNGYwOSxcclxuICAgICAgICA5MDA6ICMxNzNiMGIsXHJcbiAgICAgICAgMTAwMDogIzE1MmIwZCxcclxuICAgICksXHJcbiAgICAncmFzcGJlcnJ5JzogKFxyXG4gICAgICAgIDUwOiAjZmZmN2ZjLFxyXG4gICAgICAgIDEwMDogI2ZmZWJmNyxcclxuICAgICAgICAyMDA6ICNmZmQ0ZWMsXHJcbiAgICAgICAgMzAwOiAjZmZiM2RkLFxyXG4gICAgICAgIDQwMDogI2ZjODZjNSxcclxuICAgICAgICA1MDA6ICNmNTUxYTYsXHJcbiAgICAgICAgNjAwOiAjZGIxODdhLFxyXG4gICAgICAgIDcwMDogI2IwMDQ1YSxcclxuICAgICAgICA4MDA6ICM4NzA1NDYsXHJcbiAgICAgICAgOTAwOiAjNjMwYjM3LFxyXG4gICAgICAgIDEwMDA6ICM0NzEzMmQsXHJcbiAgICApLFxyXG4gICAgJ3JlZCc6IChcclxuICAgICAgICA1MDogI2ZmZjdmOCxcclxuICAgICAgICAxMDA6ICNmZmVkZWYsXHJcbiAgICAgICAgMjAwOiAjZmZkNmQ5LFxyXG4gICAgICAgIDMwMDogI2ZjYjZiOSxcclxuICAgICAgICA0MDA6ICNmYThlOTIsXHJcbiAgICAgICAgNTAwOiAjZjI1ZTYxLFxyXG4gICAgICAgIDYwMDogI2UwMWYxZixcclxuICAgICAgICA3MDA6ICNiODA2MDYsXHJcbiAgICAgICAgODAwOiAjOGMwNDA0LFxyXG4gICAgICAgIDkwMDogIzZiMGEwYSxcclxuICAgICAgICAxMDAwOiAjNGExMzEzLFxyXG4gICAgKSxcclxuICAgICdzbGF0ZSc6IChcclxuICAgICAgICA1MDogI2ZhZmFmYSxcclxuICAgICAgICAxMDA6ICNmMGYxZjIsXHJcbiAgICAgICAgMjAwOiAjZGVkZmUwLFxyXG4gICAgICAgIDMwMDogI2M4Y2FjYyxcclxuICAgICAgICA0MDA6ICNhYmFmYjMsXHJcbiAgICAgICAgNTAwOiAjOGM5MTk2LFxyXG4gICAgICAgIDYwMDogIzZkNzQ3YSxcclxuICAgICAgICA3MDA6ICM1NDViNjMsXHJcbiAgICAgICAgODAwOiAjM2U0NjRmLFxyXG4gICAgICAgIDkwMDogIzJhMzQzZCxcclxuICAgICAgICAxMDAwOiAjMWMyNzMzLFxyXG4gICAgKSxcclxuICAgICd5ZWxsb3cnOiAoXHJcbiAgICAgICAgNTA6ICNmZmZkZTUsXHJcbiAgICAgICAgMTAwOiAjZmZmOWMwLFxyXG4gICAgICAgIDIwMDogI2ZmZjU5NSxcclxuICAgICAgICAzMDA6ICNmZWYxNjcsXHJcbiAgICAgICAgNDAwOiAjZmNlYzNmLFxyXG4gICAgICAgIDUwMDogI2ZhZTcwMCxcclxuICAgICAgICA2MDA6ICNmZmQ5MDAsXHJcbiAgICAgICAgNzAwOiAjZmZjMDAwLFxyXG4gICAgICAgIDgwMDogI2ZmYTcwMCxcclxuICAgICAgICA5MDA6ICNmZTdhMDAsXHJcbiAgICAgICAgMTAwMDogI2YwNTEwNyxcclxuICAgICksXHJcbik7XHJcblxyXG4ka214LXJlZmluZW1lbnQtY29sb3JzOiAoXHJcbiAgICAnYmx1ZSc6IGtteC1jb2xvcignYmx1ZScsIDcwMCksXHJcbiAgICAnYnJvd24nOiAjYjI3MDAwLFxyXG4gICAgJ2dvbGQnOiBrbXgtY29sb3IoJ3llbGxvdycsIDcwMCksXHJcbiAgICAnZ3JheSc6IGtteC1jb2xvcignc2xhdGUnLCA1MDApLFxyXG4gICAgJ2dyZWVuJzoga214LWNvbG9yKCdncmVlbicsIDYwMCksXHJcbiAgICAnb3JhbmdlJzoga214LWNvbG9yKCd5ZWxsb3cnLCA5MDApLFxyXG4gICAgJ3B1cnBsZSc6ICM2YTI5ZTgsXHJcbiAgICAncmVkJzoga214LWNvbG9yKCdyZWQnLCA3MDApLFxyXG4gICAgJ3NpbHZlcic6IGtteC1jb2xvcignc2xhdGUnLCAyMDApLFxyXG4gICAgJ3Rhbic6ICNlNWQ4YjQsXHJcbiAgICAneWVsbG93Jzoga214LWNvbG9yKCd5ZWxsb3cnLCA0MDApLFxyXG4pO1xyXG5cclxuJHdoaXRlOiAjZmZmZmZmO1xyXG4kYmxhY2s6ICMwMDAwMDA7XHJcbiIsIi8vIExheW91dCBWYXJpYWJsZXNcclxuXHJcbiRtcS1yZXNwb25zaXZlOiB0cnVlO1xyXG5cclxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAqL1xyXG4kc2NyZWVuLXNpemVzOiAoXHJcbiAgICBzbWFsbDogMzAwcHgsXHJcbiAgICBtZWRpdW06IDYwMHB4LFxyXG4gICAgbGFyZ2U6IDkwMHB4LFxyXG4gICAgeGxhcmdlOiAxMjAwcHgsXHJcbiAgICB4eGxhcmdlOiAyMTAwcHgsXHJcbik7XHJcblxyXG4vLyBMRUdPUyBvdmVycmlkZXMgdG8gdGhlIGRlZmF1bHQgTUNXIGJyZWFrcG9pbnRzOlxyXG4kbWRjLWxheW91dC1ncmlkLWJyZWFrcG9pbnRzOiAoXHJcbiAgICBkZXNrdG9wOiBtYXAtZ2V0KCRzY3JlZW4tc2l6ZXMsIGxhcmdlKSxcclxuICAgIHRhYmxldDogbWFwLWdldCgkc2NyZWVuLXNpemVzLCBtZWRpdW0pLFxyXG4gICAgcGhvbmU6IDAsXHJcbik7XHJcblxyXG4vLyBMRUdPUyBvdmVycmlkZXMgdG8gdGhlIGRlZmF1bHQgTUNXIG1hcmdpbnM6XHJcbiRtZGMtbGF5b3V0LWdyaWQtZGVmYXVsdC1tYXJnaW46IChcclxuICAgIGRlc2t0b3A6IDI0cHgsXHJcbiAgICB0YWJsZXQ6IDI0cHgsXHJcbiAgICBwaG9uZTogMTZweCxcclxuKTtcclxuXHJcbi8vIExFR09TIG92ZXJyaWRlcyB0byB0aGUgZGVmYXVsdCBNQ1cgZ3V0dGVyczpcclxuJG1kYy1sYXlvdXQtZ3JpZC1kZWZhdWx0LWd1dHRlcjogKFxyXG4gICAgZGVza3RvcDogMjRweCxcclxuICAgIHRhYmxldDogMjRweCxcclxuICAgIHBob25lOiAxNnB4LFxyXG4pO1xyXG5cclxuLy8gQ29udmVydCBzY3JlZW4gc2l6ZXMgdG8gYnJlYWtwb2ludHNcclxuJG1xLWJyZWFrcG9pbnRzOiAkc2NyZWVuLXNpemVzO1xyXG5cclxuQGVhY2ggJGtleSwgJHZhbHVlIGluICRzY3JlZW4tc2l6ZXMge1xyXG4gICAgJG1xLWJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJG1xLWJyZWFrcG9pbnRzLCAoI3ska2V5fTogJHZhbHVlKSk7XHJcbn1cclxuXHJcbiRkaXNwbGF5LXR5cGVzOiAoXHJcbiAgICBpbmxpbmU6ICdpbmxpbmUnLFxyXG4gICAgaW5saW5lLWJsb2NrOiAnaW5saW5lLWJsb2NrJyxcclxuICAgIGJsb2NrOiAnYmxvY2snLFxyXG4gICAgdGFibGU6ICd0YWJsZScsXHJcbiAgICB0YWJsZS1yb3c6ICd0YWJsZS1yb3cnLFxyXG4gICAgdGFibGUtY2VsbDogJ3RhYmxlLWNlbGwnLFxyXG4gICAgZmxleDogJ2ZsZXgnLFxyXG4gICAgaW5saW5lLWZsZXg6ICdpbmxpbmUtZmxleCcsXHJcbikgIWRlZmF1bHQ7XHJcbiIsIkBpbXBvcnQgJy4vbWl4aW5zJztcclxuQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5cclxuQGVhY2ggJGxldmVsIGluICRrbXgtZWxldmF0aW9uLWxldmVscyB7XHJcbiAgICAuI3skZWxldmF0aW9uLW5hbWVzcGFjZX0tI3skbGV2ZWx9IHtcclxuICAgICAgICBAaW5jbHVkZSBrbXgtZWxldmF0aW9uKCRsZXZlbCk7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICcuLy4uL2NvbG9ycy9pbmRleCc7XHJcblxyXG5AbWl4aW4ga214LWVsZXZhdGlvbigkbGV2ZWw6IDQpIHtcclxuICAgIEBpZiBpbmRleCgka214LWVsZXZhdGlvbi1sZXZlbHMsICRsZXZlbCkgIT0gbnVsbCB7XHJcbiAgICAgICAgQGlmICRsZXZlbCA9PSAxIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQga214LWNvbG9yKCdzbGF0ZScsIDIwMCk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgI3skbGV2ZWx9cHggI3skbGV2ZWwgKyA0fXB4IDAga214LWNvbG9yKCdzbGF0ZScsIDkwMCwgMC4xNik7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgQGVycm9yICdUaGUgYXJndW1lbnQgJGxldmVsOiBgI3skbGV2ZWx9YCBkb2VzIG5vdCBleGlzdCBpbiB0aGUgJGtteC1lbGV2YXRpb24tbGV2ZWxzIGxpc3QuJztcclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcblxyXG5AZnVuY3Rpb24ga214LWNvbG9yKCRjb2xvciwgJHNoYWRlLCAkb3BhY2l0eTogMSkge1xyXG4gICAgQGlmIG1hcC1oYXMta2V5KCRrbXgtY29sb3JzLCAkY29sb3IpIHtcclxuICAgICAgICAkY29sb3ItbWFwOiBtYXAtZ2V0KCRrbXgtY29sb3JzLCAkY29sb3IpO1xyXG5cclxuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGNvbG9yLW1hcCwgJHNoYWRlKSB7XHJcbiAgICAgICAgICAgICRjb2xvcjogbWFwLWdldCgkY29sb3ItbWFwLCAkc2hhZGUpO1xyXG5cclxuICAgICAgICAgICAgQGlmICgkb3BhY2l0eSA8IDEpIHtcclxuICAgICAgICAgICAgICAgIEByZXR1cm4gdHJhbnNwYXJlbnRpemUoJGNvbG9yLCAoMSAtICRvcGFjaXR5KSk7XHJcbiAgICAgICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgQHJldHVybiAkY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBlcnJvciAnVGhlIGFyZ3VtZW50ICRzaGFkZTogYCN7JHNoYWRlfWAgZG9lcyBub3QgZXhpc3QgaW4gdGhlIGAjeyRjb2xvcn1gIGNvbG9yIG1hcC4nO1xyXG4gICAgICAgIEByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBAZXJyb3IgJ1RoZSBhcmd1bWVudCAkY29sb3I6IGAjeyRjb2xvcn1gIGRvZXMgbm90IGV4aXN0IGluIHRoZSAka214LWNvbG9ycyBtYXAuJztcclxuICAgIEByZXR1cm4gbnVsbDtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGtteC1yZWZpbmVtZW50LWNvbG9yKCRjb2xvcikge1xyXG4gICAgQGlmIG1hcC1oYXMta2V5KCRrbXgtcmVmaW5lbWVudC1jb2xvcnMsICRjb2xvcikge1xyXG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgka214LXJlZmluZW1lbnQtY29sb3JzLCAkY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIEBlcnJvciAnVGhlIGFyZ3VtZW50ICRjb2xvcjogYCN7JGNvbG9yfWAgZG9lcyBub3QgZXhpc3QgaW4gdGhlICRrbXgtcmVmaW5lbWVudC1jb2xvcnMgbWFwLic7XHJcbiAgICBAcmV0dXJuIG51bGw7XHJcbn1cclxuIiwiLy8gIFNJWklORyBBTkQgU1BBQ0lORyBVVElMSVRJRVNcclxuLy9cclxuLy8gIE5vdGU6IHRoZXNlIGhlbHBlciB1dGlsaXR5IGNsYXNzZXMgYXJlIG1lYW50IHRvIG92ZXJyaWRlIGluaGVyaXRlZCBzdHlsaW5nLFxyXG4vLyAgdGhlcmZvcmUgdGhlICFpbXBvcnRhbnQgcnVsZSBpcyBhc3NpZ25lZCB0byBlYWNoIGNsYXNzLlxyXG5cclxuLy8gIGdlbmVyYXRlIHNwYWNpbmcgaGVscGVyIGNsYXNzZXMgd2hpY2ggY2FuIGJlIHVzZWQgaW4gbWFya3VwIHRvIGFwcGx5IHBhZGRpbmcgYW5kL29yIG1hcmdpbiB2YWx1ZXMgdG8gZWFjaCBzaWRlIChvciB0byBhbGwgc2lkZXMpIG9mIGEgY29udGFpbmVyOlxyXG4vLyAgZS5nLiAubS0wIGZvciAnbWFyZ2luOjAgIWltcG9ydGFudCcgKGFzc2lnbiBhIG1hcmdpbiBvZiB6ZXJvKVxyXG4vLyAgZS5nLiAucC1sLXh4bCBmb3IgJ3BhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50JyAoYXNzaWduIHBhZGRpbmctbGVmdCBvZiBzaXplIHh4bClcclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xyXG5AZWFjaCAkcHJvcC1hYmJyLCAkcHJvcC12YWx1ZSBpbiAka214LXNwYWNpbmctcHJvcGVydGllcyB7XHJcbiAgICBAZWFjaCAkaW50ZXJ2YWwtYWJiciwgJGludGVydmFsLXZhbHVlIGluICRrbXgtc3BhY2luZy1pbnRlcnZhbHMge1xyXG4gICAgICAgIC4jeyRwcm9wLWFiYnJ9LSN7JGludGVydmFsLWFiYnJ9IHtcclxuICAgICAgICAgICAgI3skcHJvcC12YWx1ZX06ICN7JGludGVydmFsLXZhbHVlfSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAZWFjaCAkc2lkZS1hYmJyLCAkc2lkZS12YWx1ZSBpbiAka214LXNwYWNpbmctc2lkZXMge1xyXG4gICAgICAgICAgICAuI3skcHJvcC1hYmJyfS0jeyRzaWRlLWFiYnJ9LSN7JGludGVydmFsLWFiYnJ9IHtcclxuICAgICAgICAgICAgICAgICN7JHByb3AtdmFsdWV9LSN7JHNpZGUtdmFsdWV9OiAjeyRpbnRlcnZhbC12YWx1ZX0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gIGdlbmVyYXRlIHNwYWNpbmcgaGVscGVyIGNsYXNzZXMgd2hpY2ggYXBwbHkgYSB3aWR0aCBvciBoZWlnaHQgdmFsdWUgdG8gYSBjb250YWluZXI6XHJcbi8vICBlLmcuIC53LXMgZm9yIGZvciAnd2lkdGg6IC41cmVtICFpbXBvcnRhbnQnIChhc3NpZ24gYSB3aWR0aCBvZiBvbmUtaGFsZi1yZW0pXHJcbi8vICBlLmcuIC5oLXh4bCBmb3IgJ2hlaWdodDogM3JlbSAhaW1wb3J0YW50JyAoYXNzaWduIGEgaGVpZ2h0IG9mIDNyZW0pXHJcbkBlYWNoICRhYmJyZXZpYXRpb24sICRwcm9wZXJ0eSBpbiAka214LXNpemluZy1wcm9wZXJ0aWVzIHtcclxuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAka214LXNwYWNpbmctaW50ZXJ2YWxzIHtcclxuICAgICAgICAuI3skYWJicmV2aWF0aW9ufS0jeyRrZXl9IHtcclxuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuIiwiQGltcG9ydCAnLi9taXhpbnMnO1xyXG5AaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35zYXNzLW1xL21xJztcclxuXHJcbjpyb290IHtcclxuICAgIGZvbnQtc2l6ZTogJGtteC1iYXNlLWZvbnQtc2l6ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAka214LWJhc2UtbGluZS1oZWlnaHQ7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0ge1xyXG4gICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LW1haW47XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWRpc3BsYXktMSB7XHJcbiAgICBAaW5jbHVkZSB0eXBlLWRpc3BsYXktMSgpO1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1kaXNwbGF5LTIge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1kaXNwbGF5LTIoKTtcclxufVxyXG5cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tZGlzcGxheS0zIHtcclxuICAgIEBpbmNsdWRlIHR5cGUtZGlzcGxheS0zKCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWRpc3BsYXktNCB7XHJcbiAgICBAaW5jbHVkZSB0eXBlLWRpc3BsYXktNCgpO1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1kaXNwbGF5LTUge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1kaXNwbGF5LTUoKTtcclxufVxyXG5cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tZGlzcGxheS02IHtcclxuICAgIEBpbmNsdWRlIHR5cGUtZGlzcGxheS02KCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWhlYWRsaW5lLTEge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1oZWFkbGluZS0xKCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWhlYWRsaW5lLTIge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1oZWFkbGluZS0yKCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWhlYWRsaW5lLTMge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1oZWFkbGluZS0zKCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWJvZHktMSB7XHJcbiAgICBAaW5jbHVkZSB0eXBlLWJvZHktMSgpO1xyXG59XHJcblxyXG5wLFxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1ib2R5LTIge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1ib2R5LTIoKTtcclxufVxyXG5cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tYm9keS0zIHtcclxuICAgIEBpbmNsdWRlIHR5cGUtYm9keS0zKCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWZpbmUtcHJpbnQge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1maW5lLXByaW50KCk7XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLWVtcGhhc2lzIHtcclxuICAgIEBpbmNsdWRlIHR5cGUtZW1waGFzaXMoKTtcclxufVxyXG5cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tbGFiZWwtc20ge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1sYWJlbC1zbSgpO1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1sYWJlbC1sZyB7XHJcbiAgICBAaW5jbHVkZSB0eXBlLWxhYmVsLWxnKCk7XHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbmJsb2NrcXVvdGUsXHJcbmZpZ3VyZSxcclxuZmlnY2FwdGlvbiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbmJsb2NrcXVvdGUge1xyXG4gICAgcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1lbXBoYXNpcygpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogc2l6ZSgnbCcpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5maWd1cmUge1xyXG4gICAgbWFyZ2luOiBzaXplKCdsJykgMDtcclxufVxyXG5cclxuZmlnY2FwdGlvbiB7XHJcbiAgICBAaW5jbHVkZSB0eXBlLWJvZHktMSgpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICBAaW5jbHVkZSB0eXBlLWJvZHktMigpO1xyXG4gICAgfVxyXG59XHJcblxyXG5vbCxcclxudWwge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1saXN0KCk7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xyXG4gICAgbGkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNpemUoJ20nKTtcclxuICAgIH1cclxufVxyXG4vKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiIsIiR0eXBvZ3JhcGh5LW5hbWVzcGFjZTogJ2tteC10eXBvZ3JhcGh5JztcclxuJGtteC1iYXNlLWZvbnQtc2l6ZTogMTZweDtcclxuJGtteC1iYXNlLWxpbmUtaGVpZ2h0OiAxLjU2MjVlbTtcclxuJGtteC10eXBvZ3JhcGh5LWZvbnQtbWFpbjogJ01vbnRzZXJyYXQnLCAnVHJlYnVjaGV0IE1TJywgJ0hlbHZldGljYScsIHNhbnMtc2VyaWY7XHJcbiRrbXgtdHlwb2dyYXBoeS1mb250LWFsdDogJ0xhdG8nLCAnVmVyZGFuYScsICdBcmlhbCcsIHNhbnMtc2VyaWY7XHJcbiRrbXgtdHlwb2dyYXBoeS1mb250LW1vbm86ICdDb3VyaWVyIE5ldycsIENvbnNvbGFzLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcbiRrbXgtbGFiZWwtbGV0dGVyc3BhY2luZzogMC4wNWVtO1xyXG5cclxuJGtteC10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlczogKFxyXG4gICAgcmVndWxhcjogNDAwLFxyXG4gICAgYm9sZDogNzAwLFxyXG4pO1xyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJy4vLi4vc3BhY2luZy9mdW5jdGlvbnMnO1xyXG5AaW1wb3J0ICcuLy4uL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJy4uL2xheW91dC92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+c2Fzcy1tcS9tcSc7XHJcblxyXG4vLyBTZWUgZG9jcy9MRUdPU19Db25zdW1lcnMvVGhlbWUvVHlwb2dyYXBoeV9HdWlkZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGZpbGVcclxuXHJcbkBtaXhpbiBmb250LXdlaWdodCgkd2VpZ2h0OiAncmVndWxhcicpIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBfZm9udC13ZWlnaHQoJHdlaWdodCk7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LW1haW4oKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LXdlaWdodCgnYm9sZCcpO1xyXG4gICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LW1haW47XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LW1haW4tMSgpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtbWFpbigpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcclxuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogKDE2IC8gMTQpO1xyXG59XHJcblxyXG5AbWl4aW4gZm9udC1tYWluLTIoKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LW1haW4oKTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLShyZW0tY2FsYygwLjEyNXB4KSk7XHJcbiAgICBsaW5lLWhlaWdodDogKDIwIC8gMTYpO1xyXG59XHJcblxyXG5AbWl4aW4gZm9udC1tYWluLTMoKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LW1haW4oKTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjBweCk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLShyZW0tY2FsYygwLjI1cHgpKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAoMjUgLyAyMCk7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LW1haW4tNCgpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtbWFpbigpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNXB4KTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtKHJlbS1jYWxjKDAuMzc1cHgpKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAoMzEgLyAyNSk7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LW1haW4tNSgpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtbWFpbigpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMXB4KTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtKHJlbS1jYWxjKDAuNXB4KSk7XHJcbiAgICBsaW5lLWhlaWdodDogKDM5IC8gMzEpO1xyXG59XHJcblxyXG5AbWl4aW4gZm9udC1tYWluLTYoKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LW1haW4oKTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzlweCk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLShyZW0tY2FsYygwLjYyNXB4KSk7XHJcbiAgICBsaW5lLWhlaWdodDogKDQ4IC8gMzkpO1xyXG59XHJcblxyXG5AbWl4aW4gZm9udC1tYWluLTcoKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LW1haW4oKTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDhweCk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLShyZW0tY2FsYygwLjc1cHgpKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAoNjEgLyA0OCk7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LWFsdCgpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCdyZWd1bGFyJyk7XHJcbiAgICBmb250LWZhbWlseTogJGtteC10eXBvZ3JhcGh5LWZvbnQtYWx0O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxufVxyXG5cclxuQG1peGluIGZvbnQtYWx0LTEoKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LWFsdCgpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMnB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAoMTYgLyAxMik7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LWFsdC0yKCkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1hbHQoKTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XHJcbiAgICBsaW5lLWhlaWdodDogKDIwIC8gMTQpO1xyXG59XHJcblxyXG5AbWl4aW4gZm9udC1hbHQtMygpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0KCk7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6ICgyNSAvIDE2KTtcclxufVxyXG5cclxuQG1peGluIGZvbnQtYWx0LTQoKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LWFsdCgpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAoMzEgLyAyMCk7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LWFsdC01KCkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1hbHQoKTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjVweCk7XHJcbiAgICBsaW5lLWhlaWdodDogKDM5IC8gMjUpO1xyXG59XHJcblxyXG5AbWl4aW4gZm9udC1hbHQtNigpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0KCk7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMxcHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6ICg0OCAvIDMxKTtcclxufVxyXG5cclxuQG1peGluIHR5cGUtZGlzcGxheS0xKCRjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKSkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1tYWluLTEoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1lZGl1bSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtbWFpbi0yKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWRpc3BsYXktMigkY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDkwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtbWFpbi0yKCk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250LW1haW4tMygpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gdHlwZS1kaXNwbGF5LTMoJGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LW1haW4tMygpO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1tYWluLTQoKTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHR5cGUtZGlzcGxheS00KCRjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKSkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1tYWluLTQoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1lZGl1bSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtbWFpbi01KCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWRpc3BsYXktNSgkY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDkwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtbWFpbi01KCk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250LW1haW4tNigpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gdHlwZS1kaXNwbGF5LTYoJGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LW1haW4tNigpO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1tYWluLTcoKTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHR5cGUtYm9keS0xKCRjb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDYwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTIoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWJvZHktMigkY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA2MDApKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LWFsdC0zKCk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG59XHJcblxyXG5AbWl4aW4gdHlwZS1ib2R5LTMoJGNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgNjAwKSkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1hbHQtNCgpO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxufVxyXG5cclxuQG1peGluIHR5cGUtZW1waGFzaXMoJGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LWFsdC02KCk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG59XHJcblxyXG5AbWl4aW4gdHlwZS1maW5lLXByaW50KCRjb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDYwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTEoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWhlYWRsaW5lLTEoJGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApKSB7XHJcbiAgICBAaW5jbHVkZSBmb250LWFsdC0yKCk7XHJcbiAgICBAaW5jbHVkZSBmb250LXdlaWdodCgnYm9sZCcpO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxufVxyXG5cclxuQG1peGluIHR5cGUtaGVhZGxpbmUtMigkY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDkwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTMoKTtcclxuICAgIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCdib2xkJyk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG59XHJcblxyXG5AbWl4aW4gdHlwZS1oZWFkbGluZS0zKCRjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKSkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1hbHQtNCgpO1xyXG4gICAgQGluY2x1ZGUgZm9udC13ZWlnaHQoJ2JvbGQnKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWxhYmVsLXNtKCRjb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDYwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTEoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWxhYmVsLWxnKCRjb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDYwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTMoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWJ1dHRvbi1sYWJlbCgkY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDkwMCkpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTIoKTtcclxuICAgIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCdib2xkJyk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuNXB4KTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbkBtaXhpbiB0eXBlLWlucHV0LXRleHQoJGNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgNjAwKSkge1xyXG4gICAgQGluY2x1ZGUgZm9udC1hbHQtMygpO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxufVxyXG5cclxuQG1peGluIHR5cGUtbGlzdCgkY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA2MDApLCAkaXNVbnN0eWxlZDogZmFsc2UpIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtYWx0LTMoKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiBzaXplKCd4bCcpO1xyXG4gICAgcGFkZGluZy1yaWdodDogc2l6ZSgnbScpO1xyXG5cclxuICAgIEBpZiAoJGlzVW5zdHlsZWQpIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogc2l6ZSgnbCcpO1xyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJy4vdHlwb2dyYXBoeS92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICcuL3NwYWNpbmcvZnVuY3Rpb25zJztcclxuXHJcbi8vIFJlbSBDYWxjdWxhdGlvbnNcclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xyXG4gICAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiByZW0tY2FsYygkcmF3KSB7XHJcbiAgICBAcmV0dXJuIHJvdW5kLWRlY2ltYWwoKHN0cmlwLXVuaXQoJHJhdykgLyBzdHJpcC11bml0KCRrbXgtYmFzZS1mb250LXNpemUpKSAqIHNpemUoJ20nKSwgMik7XHJcbn1cclxuXHJcbi8vIFJvdW5kIERlY2ltYWwgUG9pbnRcclxuQGZ1bmN0aW9uIHJvdW5kLWRlY2ltYWwoJG51bSwgJGRpZ2l0cykge1xyXG4gICAgJHNxdWFyZTogMTtcclxuXHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRkaWdpdHMge1xyXG4gICAgICAgICRzcXVhcmU6ICRzcXVhcmUgKiAxMDtcclxuICAgIH1cclxuICAgIEByZXR1cm4gcm91bmQoJG51bSAqICRzcXVhcmUpIC8gJHNxdWFyZTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBhbmQgJG1lZGlhLXR5cGUgIT0gJ3ByaW50J1xuICAgICAgICApIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcbiAgICBAZWxzZSB7XG4gICAgICAgIEBpZiAkbWluLXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRhbmQgICAgICAgICAgICB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgI3skYW5kfSc7IH1cblxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcbiAgICAgICAgQGlmICgkbWVkaWEtdHlwZSA9PSAnYWxsJyBhbmQgJG1lZGlhLXF1ZXJ5ICE9ICcnKSB7XG4gICAgICAgICAgICAkbWVkaWEtdHlwZTogJyc7XG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gUXVpY2sgc29ydFxuLy8vXG4vLy8gQGF1dGhvciBTYW0gUmljaGFyZHNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzb3J0XG4vLy8gQHJldHVybnMge0xpc3R9IFNvcnRlZCBMaXN0XG5AZnVuY3Rpb24gX21xLXF1aWNrLXNvcnQoJGxpc3QpIHtcbiAgICAkbGVzczogICgpO1xuICAgICRlcXVhbDogKCk7XG4gICAgJGxhcmdlOiAoKTtcblxuICAgIEBpZiBsZW5ndGgoJGxpc3QpID4gMSB7XG4gICAgICAgICRzZWVkOiBudGgoJGxpc3QsIGNlaWwobGVuZ3RoKCRsaXN0KSAvIDIpKTtcblxuICAgICAgICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XG4gICAgICAgICAgICBAaWYgKCRpdGVtID09ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGVxdWFsOiBhcHBlbmQoJGVxdWFsLCAkaXRlbSk7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA8ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGxlc3M6IGFwcGVuZCgkbGVzcywgJGl0ZW0pO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPiAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRsYXJnZTogYXBwZW5kKCRsYXJnZSwgJGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQHJldHVybiBqb2luKGpvaW4oX21xLXF1aWNrLXNvcnQoJGxlc3MpLCAkZXF1YWwpLCBfbXEtcXVpY2stc29ydCgkbGFyZ2UpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gU29ydCBhIG1hcCBieSB2YWx1ZXMgKHdvcmtzIHdpdGggbnVtYmVycyBvbmx5KVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtNYXB9IE1hcCBzb3J0ZWQgYnkgdmFsdWVcbkBmdW5jdGlvbiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1hcCkge1xuICAgICRtYXAtc29ydGVkOiAoKTtcbiAgICAkbWFwLWtleXM6IG1hcC1rZXlzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzLXNvcnRlZDogX21xLXF1aWNrLXNvcnQoJG1hcC12YWx1ZXMpO1xuXG4gICAgLy8gUmVvcmRlciBrZXkvdmFsdWUgcGFpcnMgYmFzZWQgb24ga2V5IHZhbHVlc1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkbWFwLXZhbHVlcy1zb3J0ZWQge1xuICAgICAgICAkaW5kZXg6IGluZGV4KCRtYXAtdmFsdWVzLCAkdmFsdWUpO1xuICAgICAgICAka2V5OiBudGgoJG1hcC1rZXlzLCAkaW5kZXgpO1xuICAgICAgICAkbWFwLXNvcnRlZDogbWFwLW1lcmdlKCRtYXAtc29ydGVkLCAoJGtleTogJHZhbHVlKSk7XG5cbiAgICAgICAgLy8gVW5zZXQgdGhlIHZhbHVlIGluICRtYXAtdmFsdWVzIHRvIHByZXZlbnQgdGhlIGxvb3BcbiAgICAgICAgLy8gZnJvbSBmaW5kaW5nIHRoZSBzYW1lIGluZGV4IHR3aWNlXG4gICAgICAgICRtYXAtdmFsdWVzOiBzZXQtbnRoKCRtYXAtdmFsdWVzLCAkaW5kZXgsIDApO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG1hcC1zb3J0ZWQ7XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbiAgICAkbXEtYnJlYWtwb2ludHM6IF9tcS1tYXAtc29ydC1ieS12YWx1ZSgkbXEtYnJlYWtwb2ludHMpICFnbG9iYWw7XG59XG5cbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gQnJlYWtwb2ludCBuYW1lcyBhbmQgc2l6ZXNcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zaG93LWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgZ2xvYmFsIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG4vLy9cbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBjdXN0b20gc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cygoTCwgWEwpLCAoUzogMzAwcHgsIEw6IDgwMHB4LCBYTDogMTIwMHB4KSk7XG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGOEUzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xuICAgIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG4iLCJAaW1wb3J0ICcuLi90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcblxyXG4ka214LXNwYWNpbmctdW5pdDogJGtteC1iYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuXHJcbiRrbXgtc3BhY2luZy1pbnRlcnZhbHM6IChcclxuICAgICcwJzogMCxcclxuICAgICd4eHMnOiAka214LXNwYWNpbmctdW5pdCAqIDAuMTI1LFxyXG4gICAgJ3hzJzogJGtteC1zcGFjaW5nLXVuaXQgKiAwLjI1LFxyXG4gICAgJ3MnOiAka214LXNwYWNpbmctdW5pdCAqIDAuNSxcclxuICAgICdtJzogJGtteC1zcGFjaW5nLXVuaXQgKiAxLFxyXG4gICAgJ2wnOiAka214LXNwYWNpbmctdW5pdCAqIDEuNSxcclxuICAgICd4bCc6ICRrbXgtc3BhY2luZy11bml0ICogMixcclxuICAgICcyeGwnOiAka214LXNwYWNpbmctdW5pdCAqIDMsXHJcbiAgICAnM3hsJzogJGtteC1zcGFjaW5nLXVuaXQgKiA0LFxyXG4gICAgJzR4bCc6ICRrbXgtc3BhY2luZy11bml0ICogNC41LFxyXG4gICAgJzV4bCc6ICRrbXgtc3BhY2luZy11bml0ICogNixcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRrbXgtc3BhY2luZy1wcm9wZXJ0aWVzOiAoXHJcbiAgICAnbSc6ICdtYXJnaW4nLFxyXG4gICAgJ3AnOiAncGFkZGluZycsXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4ka214LXNwYWNpbmctc2lkZXM6IChcclxuICAgICd0JzogJ3RvcCcsXHJcbiAgICAncic6ICdyaWdodCcsXHJcbiAgICAnYic6ICdib3R0b20nLFxyXG4gICAgJ2wnOiAnbGVmdCcsXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4ka214LXNpemluZy1wcm9wZXJ0aWVzOiAoXHJcbiAgICAndyc6ICd3aWR0aCcsXHJcbiAgICAnaCc6ICdoZWlnaHQnLFxyXG4pICFkZWZhdWx0O1xyXG4iLCIvKiBUaGUgQmFzZSBIeXBlcmxpbmsgU3R5bGUgZm9yIENhck1heC5jb21cclxuICpcclxuICogU2ltcGxlIGh5cGVybGlua3MsIHN1Y2ggYXMgdGhvc2UgdXNlZCB3aXRoaW4gcnVubmluZyB0ZXh0LCBzaG91bGQgbm90XHJcbiAqIHJlcXVpcmUgYSBDU1MgY2xhc3MgYXNzaWdubWVudC4gVGhpc1xyXG4gKi9cclxuXHJcbkBtaXhpbiBrbXgtdGV4dC1oeXBlcmxpbmstY29yZSgpIHtcclxuICAgICY6bGluayB7XHJcbiAgICAgICAgY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDYwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjp2aXNpdGVkIHtcclxuICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgNjAwKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjp2aXNpdGVkOmhvdmVyLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA4MDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG5hOm5vdCgubWRjLXRhYik6bm90KC5rbXgtYnV0dG9uKTpub3QoLmtteC1wYWdpbmF0aW9uX19saXN0LWl0ZW0tbGluayk6bm90KC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluaykge1xyXG4gICAgQGluY2x1ZGUga214LXRleHQtaHlwZXJsaW5rLWNvcmUoKTtcclxufVxyXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcblxyXG4vKiBTcGVjaWFsIG92ZXJyaWRlIGNsYXNzIC0gb25seSB0byBiZSB1c2VkIG9uIDxhPiBlbGVtZW50czogKi9cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tbGluayB7XHJcbiAgICBAaW5jbHVkZSBrbXgtdGV4dC1oeXBlcmxpbmstY29yZSgpO1xyXG59XHJcbiIsIkBpbXBvcnQgJy4vbWl4aW5zJztcclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbm9sLFxyXG51bCxcclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tb2wsXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLXVsIHtcclxuICAgIEBpbmNsdWRlIHR5cGUtbGlzdCgpO1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1saXN0LXVuc3R5bGVkIHtcclxuICAgIEBpbmNsdWRlIHR5cGUtbGlzdCgkaXNVbnN0eWxlZDogdHJ1ZSk7XHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuIiwiLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tYWxpZ24tbGVmdCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1hbGlnbi1yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0tZm9udC1tYWluIHtcclxuICAgIGZvbnQtZmFtaWx5OiAka214LXR5cG9ncmFwaHktZm9udC1tYWluO1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1mb250LWFsdCB7XHJcbiAgICBmb250LWZhbWlseTogJGtteC10eXBvZ3JhcGh5LWZvbnQtYWx0O1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS1mb250LW1vbm8ge1xyXG4gICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LW1vbm87XHJcbn1cclxuXHJcbi4jeyR0eXBvZ3JhcGh5LW5hbWVzcGFjZX0tLXdlaWdodC00MDAge1xyXG4gICAgQGluY2x1ZGUgZm9udC13ZWlnaHQoJ3JlZ3VsYXInKTtcclxufVxyXG5cclxuLiN7JHR5cG9ncmFwaHktbmFtZXNwYWNlfS0td2VpZ2h0LTYwMCB7XHJcbiAgICBAaW5jbHVkZSBmb250LXdlaWdodCgnYm9sZCcpO1xyXG59XHJcblxyXG4uI3skdHlwb2dyYXBoeS1uYW1lc3BhY2V9LS13ZWlnaHQtNzAwIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCdib2xkJyk7XHJcbn1cclxuXHJcbi5uby13cmFwLFxyXG4udGV4dC1uby13cmFwIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi50ZXh0LWNlbnRlcmVkIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRleHQtYWxpZ24tbGVmdCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4udGV4dC1hbGlnbi1yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLnRleHQtc3RyaWtlLXRocm91Z2gge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcblxuOnJvb3Qge1xuICBAZWFjaCAkc3R5bGUgaW4gbWFwLWtleXMoJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMpIHtcbiAgICAtLW1kYy10aGVtZS0jeyRzdHlsZX06ICN7bWFwLWdldCgkbWRjLXRoZW1lLXByb3BlcnR5LXZhbHVlcywgJHN0eWxlKX07XG4gIH1cbn1cblxuQGVhY2ggJHN0eWxlIGluIG1hcC1rZXlzKCRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzKSB7XG4gIEBpZiAkc3R5bGUgIT0gXCJiYWNrZ3JvdW5kXCIgYW5kICRzdHlsZSAhPSBcInN1cmZhY2VcIiB7XG4gICAgLm1kYy10aGVtZS0tI3skc3R5bGV9IHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkc3R5bGUsIHRydWUpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLm1kYy10aGVtZS0tI3skc3R5bGV9IHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRzdHlsZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIENTUyBydWxlcyBmb3IgdXNpbmcgcHJpbWFyeSBhbmQgc2Vjb25kYXJ5IChwbHVzIGxpZ2h0L2RhcmsgdmFyaWFudHMpIGFzIGJhY2tncm91bmQgY29sb3JzLlxuQGVhY2ggJHN0eWxlIGluIChcInByaW1hcnlcIiwgXCJzZWNvbmRhcnlcIikge1xuICAubWRjLXRoZW1lLS0jeyRzdHlsZX0tYmcge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRzdHlsZSwgdHJ1ZSk7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vIEFwcGxpZXMgdGhlIGNvcnJlY3QgdGhlbWUgY29sb3Igc3R5bGUgdG8gdGhlIHNwZWNpZmllZCBwcm9wZXJ0eS5cbi8vICRwcm9wZXJ0eSBpcyB0eXBpY2FsbHkgY29sb3Igb3IgYmFja2dyb3VuZC1jb2xvciwgYnV0IGNhbiBiZSBhbnkgQ1NTIHByb3BlcnR5IHRoYXQgYWNjZXB0cyBjb2xvciB2YWx1ZXMuXG4vLyAkc3R5bGUgc2hvdWxkIGJlIG9uZSBvZiB0aGUgbWFwIGtleXMgaW4gJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMgKF92YXJpYWJsZXMuc2NzcyksIG9yIGEgY29sb3IgdmFsdWUuXG4vLyAkZWRnZU9wdE91dCBjb250cm9scyB3aGV0aGVyIHRvIGZlYXR1cmUtZGV0ZWN0IGFyb3VuZCBFZGdlIHRvIGF2b2lkIGVtaXR0aW5nIENTUyB2YXJpYWJsZXMgZm9yIGl0LFxuLy8gaW50ZW5kZWQgZm9yIHVzZSBpbiBjYXNlcyB3aGVyZSBpbnRlcmFjdGlvbnMgd2l0aCBwc2V1ZG8tZWxlbWVudCBzdHlsZXMgY2F1c2UgcHJvYmxlbXMgZHVlIHRvIEVkZ2UgYnVncy5cbkBtaXhpbiBtZGMtdGhlbWUtcHJvcCgkcHJvcGVydHksICRzdHlsZSwgJGltcG9ydGFudDogZmFsc2UsICRlZGdlT3B0T3V0OiBmYWxzZSkge1xuICBAaWYgbWRjLXRoZW1lLWlzLXZhbGlkLXRoZW1lLXByb3AtdmFsdWVfKCRzdHlsZSkge1xuICAgIEBpZiAkaW1wb3J0YW50IHtcbiAgICAgICN7JHByb3BlcnR5fTogJHN0eWxlICFpbXBvcnRhbnQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICRzdHlsZTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpZiBub3QgbWFwLWhhcy1rZXkoJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMsICRzdHlsZSkge1xuICAgICAgQGVycm9yIFwiSW52YWxpZCBzdHlsZTogJyN7JHN0eWxlfScuIENob29zZSBvbmUgb2Y6ICN7bWFwLWtleXMoJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMpfVwiO1xuICAgIH1cblxuICAgICR2YWx1ZTogbWFwLWdldCgkbWRjLXRoZW1lLXByb3BlcnR5LXZhbHVlcywgJHN0eWxlKTtcblxuICAgIEBpZiAkaW1wb3J0YW50IHtcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlICFpbXBvcnRhbnQ7XG5cbiAgICAgIEBpZiAkZWRnZU9wdE91dCB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIG1heC1uZXN0aW5nLWRlcHRoXG4gICAgICAgIEBhdC1yb290IHtcbiAgICAgICAgICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOmF1dG8pIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3Mvc2VsZWN0b3Itbm8tcmVkdW5kYW50LW5lc3Rpbmctc2VsZWN0b3JcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWRjLXRoZW1lLSN7JHN0eWxlfSwgJHZhbHVlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgbWF4LW5lc3RpbmctZGVwdGhcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWRjLXRoZW1lLSN7JHN0eWxlfSwgJHZhbHVlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG5cbiAgICAgIEBpZiAkZWRnZU9wdE91dCB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIG1heC1uZXN0aW5nLWRlcHRoXG4gICAgICAgIEBhdC1yb290IHtcbiAgICAgICAgICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOmF1dG8pIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3Mvc2VsZWN0b3Itbm8tcmVkdW5kYW50LW5lc3Rpbmctc2VsZWN0b3JcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWRjLXRoZW1lLSN7JHN0eWxlfSwgJHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgc2Nzcy9zZWxlY3Rvci1uby1yZWR1bmRhbnQtbmVzdGluZy1zZWxlY3RvclxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIG1heC1uZXN0aW5nLWRlcHRoXG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLyogQGFsdGVybmF0ZSAqL1xuICAgICAgICAjeyRwcm9wZXJ0eX06IHZhcigtLW1kYy10aGVtZS0jeyRzdHlsZX0sICR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuXG4vL1xuLy8gTWFpbiB0aGVtZSBjb2xvcnMgZm9yIHlvdXIgYnJhbmQuXG4vL1xuLy8gSWYgeW91J3JlIGEgdXNlciBjdXN0b21pemluZyB5b3VyIGNvbG9yIHNjaGVtZSBpbiBTQVNTLCB0aGVzZSBhcmUgcHJvYmFibHkgdGhlIG9ubHkgdmFyaWFibGVzIHlvdSBuZWVkIHRvIGNoYW5nZS5cbi8vXG5cbiRtZGMtdGhlbWUtcHJpbWFyeTogIzYyMDBlZSAhZGVmYXVsdDsgLy8gYmFzZWxpbmUgcHVycGxlLCA1MDAgdG9uZVxuJG1kYy10aGVtZS1vbi1wcmltYXJ5OiBpZihtZGMtdGhlbWUtY29udHJhc3QtdG9uZSgkbWRjLXRoZW1lLXByaW1hcnkpID09IFwiZGFya1wiLCAjMDAwLCAjZmZmKSAhZGVmYXVsdDtcblxuLy8gVGhlICRtZGMtdGhlbWUtYWNjZW50IHZhcmlhYmxlIGlzIERFUFJFQ0FURUQgLSBpdCBleGlzdHMgcHVyZWx5IGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LlxuLy8gVGhlICRtZGMtdGhlbWUtc2Vjb25kYXJ5KiB2YXJpYWJsZXMgc2hvdWxkIGJlIHVzZWQgZm9yIGFsbCBuZXcgcHJvamVjdHMuXG4kbWRjLXRoZW1lLWFjY2VudDogIzAxODc4NiAhZGVmYXVsdDsgLy8gYmFzZWxpbmUgdGVhbCwgNjAwIHRvbmVcbiRtZGMtdGhlbWUtc2Vjb25kYXJ5OiAkbWRjLXRoZW1lLWFjY2VudCAhZGVmYXVsdDtcbiRtZGMtdGhlbWUtb24tc2Vjb25kYXJ5OiBpZihtZGMtdGhlbWUtY29udHJhc3QtdG9uZSgkbWRjLXRoZW1lLXNlY29uZGFyeSkgPT0gXCJkYXJrXCIsICMwMDAsICNmZmYpICFkZWZhdWx0O1xuJG1kYy10aGVtZS1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0OyAvLyBXaGl0ZVxuXG4kbWRjLXRoZW1lLXN1cmZhY2U6ICNmZmYgIWRlZmF1bHQ7XG4kbWRjLXRoZW1lLW9uLXN1cmZhY2U6IGlmKG1kYy10aGVtZS1jb250cmFzdC10b25lKCRtZGMtdGhlbWUtc3VyZmFjZSkgPT0gXCJkYXJrXCIsICMwMDAsICNmZmYpICFkZWZhdWx0O1xuXG4vL1xuLy8gVGV4dCBjb2xvcnMgYWNjb3JkaW5nIHRvIGxpZ2h0IHZzIGRhcmsgYW5kIHRleHQgdHlwZS5cbi8vXG5cbiRtZGMtdGhlbWUtdGV4dC1jb2xvcnM6IChcbiAgZGFyazogKFxuICAgIHByaW1hcnk6IHJnYmEoYmxhY2ssIC44NyksXG4gICAgc2Vjb25kYXJ5OiByZ2JhKGJsYWNrLCAuNTQpLFxuICAgIGhpbnQ6IHJnYmEoYmxhY2ssIC4zOCksXG4gICAgZGlzYWJsZWQ6IHJnYmEoYmxhY2ssIC4zOCksXG4gICAgaWNvbjogcmdiYShibGFjaywgLjM4KVxuICApLFxuICBsaWdodDogKFxuICAgIHByaW1hcnk6IHdoaXRlLFxuICAgIHNlY29uZGFyeTogcmdiYSh3aGl0ZSwgLjcpLFxuICAgIGhpbnQ6IHJnYmEod2hpdGUsIC41KSxcbiAgICBkaXNhYmxlZDogcmdiYSh3aGl0ZSwgLjUpLFxuICAgIGljb246IHJnYmEod2hpdGUsIC41KVxuICApXG4pICFkZWZhdWx0O1xuXG4kbWRjLXRoZW1lLXRleHQtZW1waGFzaXM6IChcbiAgaGlnaDogLjg3LFxuICBtZWRpdW06IC42LFxuICBkaXNhYmxlZDogLjM4LFxuKTtcblxuQGZ1bmN0aW9uIG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKCR0ZXh0LXN0eWxlLCAkZmlsbC1jb2xvcikge1xuICAkY29udHJhc3QtdG9uZTogbWRjLXRoZW1lLWNvbnRyYXN0LXRvbmUoJGZpbGwtY29sb3IpO1xuXG4gIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRtZGMtdGhlbWUtdGV4dC1jb2xvcnMsICRjb250cmFzdC10b25lKSwgJHRleHQtc3R5bGUpO1xufVxuXG4vL1xuLy8gUHJpbWFyeSB0ZXh0IGNvbG9ycyBmb3IgZWFjaCBvZiB0aGUgdGhlbWUgY29sb3JzLlxuLy9cblxuJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXM6IChcbiAgLy8gUHJpbWFyeVxuICBwcmltYXJ5OiAkbWRjLXRoZW1lLXByaW1hcnksXG4gIC8vIFNlY29uZGFyeVxuICBzZWNvbmRhcnk6ICRtZGMtdGhlbWUtc2Vjb25kYXJ5LFxuICAvLyBCYWNrZ3JvdW5kXG4gIGJhY2tncm91bmQ6ICRtZGMtdGhlbWUtYmFja2dyb3VuZCxcbiAgLy8gU3VyZmFjZVxuICBzdXJmYWNlOiAkbWRjLXRoZW1lLXN1cmZhY2UsXG4gIG9uLXByaW1hcnk6ICRtZGMtdGhlbWUtb24tcHJpbWFyeSxcbiAgb24tc2Vjb25kYXJ5OiAkbWRjLXRoZW1lLW9uLXNlY29uZGFyeSxcbiAgb24tc3VyZmFjZTogJG1kYy10aGVtZS1vbi1zdXJmYWNlLFxuICAvLyBUZXh0LXByaW1hcnkgb24gXCJiYWNrZ3JvdW5kXCIgYmFja2dyb3VuZFxuICB0ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8ocHJpbWFyeSwgJG1kYy10aGVtZS1iYWNrZ3JvdW5kKSxcbiAgdGV4dC1zZWNvbmRhcnktb24tYmFja2dyb3VuZDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oc2Vjb25kYXJ5LCAkbWRjLXRoZW1lLWJhY2tncm91bmQpLFxuICB0ZXh0LWhpbnQtb24tYmFja2dyb3VuZDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oaGludCwgJG1kYy10aGVtZS1iYWNrZ3JvdW5kKSxcbiAgdGV4dC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kOiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXyhkaXNhYmxlZCwgJG1kYy10aGVtZS1iYWNrZ3JvdW5kKSxcbiAgdGV4dC1pY29uLW9uLWJhY2tncm91bmQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGljb24sICRtZGMtdGhlbWUtYmFja2dyb3VuZCksXG4gIC8vIFRleHQtcHJpbWFyeSBvbiBcImxpZ2h0XCIgYmFja2dyb3VuZFxuICB0ZXh0LXByaW1hcnktb24tbGlnaHQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKHByaW1hcnksIGxpZ2h0KSxcbiAgdGV4dC1zZWNvbmRhcnktb24tbGlnaHQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKHNlY29uZGFyeSwgbGlnaHQpLFxuICB0ZXh0LWhpbnQtb24tbGlnaHQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGhpbnQsIGxpZ2h0KSxcbiAgdGV4dC1kaXNhYmxlZC1vbi1saWdodDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oZGlzYWJsZWQsIGxpZ2h0KSxcbiAgdGV4dC1pY29uLW9uLWxpZ2h0OiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXyhpY29uLCBsaWdodCksXG4gIC8vIFRleHQtcHJpbWFyeSBvbiBcImRhcmtcIiBiYWNrZ3JvdW5kXG4gIHRleHQtcHJpbWFyeS1vbi1kYXJrOiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXyhwcmltYXJ5LCBkYXJrKSxcbiAgdGV4dC1zZWNvbmRhcnktb24tZGFyazogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oc2Vjb25kYXJ5LCBkYXJrKSxcbiAgdGV4dC1oaW50LW9uLWRhcms6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGhpbnQsIGRhcmspLFxuICB0ZXh0LWRpc2FibGVkLW9uLWRhcms6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGRpc2FibGVkLCBkYXJrKSxcbiAgdGV4dC1pY29uLW9uLWRhcms6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGljb24sIGRhcmspXG4pO1xuXG4vLyBJZiBgJHN0eWxlYCBpcyBhIGNvbG9yIChhIGxpdGVyYWwgY29sb3IgdmFsdWUsIGBjdXJyZW50Q29sb3JgLCBvciBhIENTUyBjdXN0b20gcHJvcGVydHkpLCBpdCBpcyByZXR1cm5lZCB2ZXJiYXRpbS5cbi8vIE90aGVyd2lzZSwgYCRzdHlsZWAgaXMgdHJlYXRlZCBhcyBhIHRoZW1lIHByb3BlcnR5IG5hbWUsIGFuZCB0aGUgY29ycmVzcG9uZGluZyB2YWx1ZSBmcm9tXG4vLyBgJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXNgIGlzIHJldHVybmVkLiBJZiB0aGlzIGFsc28gZmFpbHMsIGFuIGVycm9yIGlzIHRocm93bi5cbi8vXG4vLyBUaGlzIGlzIG1haW5seSB1c2VmdWwgaW4gc2l0dWF0aW9ucyB3aGVyZSBgbWRjLXRoZW1lLXByb3BgIGNhbm5vdCBiZSB1c2VkIGRpcmVjdGx5IChlLmcuLCBgYm94LXNoYWRvd2ApLlxuLy9cbi8vIEV4YW1wbGVzOlxuLy9cbi8vIDEuIG1kYy10aGVtZS1wcm9wLXZhbHVlKHByaW1hcnkpID0+IFwiIzYyMDBlZVwiXG4vLyAyLiBtZGMtdGhlbWUtcHJvcC12YWx1ZShibHVlKSAgICA9PiBcImJsdWVcIlxuLy9cbi8vIE5PVEU6IFRoaXMgZnVuY3Rpb24gbXVzdCBiZSBkZWZpbmVkIGluIF92YXJpYWJsZXMuc2NzcyBpbnN0ZWFkIG9mIF9mdW5jdGlvbnMuc2NzcyB0byBhdm9pZCBjaXJjdWxhciBpbXBvcnRzLlxuQGZ1bmN0aW9uIG1kYy10aGVtZS1wcm9wLXZhbHVlKCRzdHlsZSkge1xuICBAaWYgbWRjLXRoZW1lLWlzLXZhbGlkLXRoZW1lLXByb3AtdmFsdWVfKCRzdHlsZSkge1xuICAgIEByZXR1cm4gJHN0eWxlO1xuICB9XG5cbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWRjLXRoZW1lLXByb3BlcnR5LXZhbHVlcywgJHN0eWxlKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCB0aGVtZSBwcm9wZXJ0eTogJyN7JHN0eWxlfScuIENob29zZSBvbmUgb2Y6ICN7bWFwLWtleXMoJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMpfVwiO1xuICB9XG5cbiAgQHJldHVybiBtYXAtZ2V0KCRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzLCAkc3R5bGUpO1xufVxuXG4vLyBOT1RFOiBUaGlzIGZ1bmN0aW9uIG11c3QgYmUgZGVmaW5lZCBpbiBfdmFyaWFibGVzLnNjc3MgaW5zdGVhZCBvZiBfZnVuY3Rpb25zLnNjc3MgdG8gYXZvaWQgY2lyY3VsYXIgaW1wb3J0cy5cbkBmdW5jdGlvbiBtZGMtdGhlbWUtYWNjZXNzaWJsZS1pbmstY29sb3IoJGZpbGwtY29sb3IsICR0ZXh0LXN0eWxlOiBwcmltYXJ5KSB7XG4gICRmaWxsLWNvbG9yLXZhbHVlOiBtZGMtdGhlbWUtcHJvcC12YWx1ZSgkZmlsbC1jb2xvcik7XG4gICRjb2xvci1tYXAtZm9yLXRvbmU6IG1hcC1nZXQoJG1kYy10aGVtZS10ZXh0LWNvbG9ycywgbWRjLXRoZW1lLWNvbnRyYXN0LXRvbmUoJGZpbGwtY29sb3ItdmFsdWUpKTtcblxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRjb2xvci1tYXAtZm9yLXRvbmUsICR0ZXh0LXN0eWxlKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCAkdGV4dC1zdHlsZTogJyN7JHRleHQtc3R5bGV9Jy4gQ2hvb3NlIG9uZSBvZjogI3ttYXAta2V5cygkY29sb3ItbWFwLWZvci10b25lKX1cIjtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3ItbWFwLWZvci10b25lLCAkdGV4dC1zdHlsZSk7XG59XG5cbi8vIE5PVEU6IFRoaXMgZnVuY3Rpb24gaXMgZGVwZW5kZWQgdXBvbiBieSBtZGMtdGhlbWUtcHJvcC12YWx1ZSAoYWJvdmUpIGFuZCB0aHVzIG11c3QgYmUgZGVmaW5lZCBpbiB0aGlzIGZpbGUuXG5AZnVuY3Rpb24gbWRjLXRoZW1lLWlzLXZhbGlkLXRoZW1lLXByb3AtdmFsdWVfKCRzdHlsZSkge1xuICBAcmV0dXJuIHR5cGUtb2YoJHN0eWxlKSA9PSBcImNvbG9yXCIgb3IgJHN0eWxlID09IFwiY3VycmVudENvbG9yXCIgb3Igc3RyX3NsaWNlKCRzdHlsZSwgMSwgNCkgPT0gXCJ2YXIoXCI7XG59XG5cbkBmdW5jdGlvbiBtZGMtdGhlbWUtdGV4dC1lbXBoYXNpcygkZW1waGFzaXMpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRtZGMtdGhlbWUtdGV4dC1lbXBoYXNpcywgJGVtcGhhc2lzKTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcblxuLm1kYy10eXBvZ3JhcGh5IHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHktYmFzZTtcbn1cblxuQGVhY2ggJHN0eWxlIGluIG1hcC1rZXlzKCRtZGMtdHlwb2dyYXBoeS1zdHlsZXMpIHtcbiAgLm1kYy10eXBvZ3JhcGh5LS0jeyRzdHlsZX0ge1xuICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KCRzdHlsZSk7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbkBtaXhpbiBtZGMtdHlwb2dyYXBoeS1iYXNlIHtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtZGMtdHlwb2dyYXBoeS1iYXNlIHtcbiAgICAjeyRrZXl9OiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG1kYy10eXBvZ3JhcGh5KCRzdHlsZSkge1xuICAkc3R5bGUtcHJvcHM6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LXN0eWxlcywgJHN0eWxlKTtcblxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZGMtdHlwb2dyYXBoeS1zdHlsZXMsICRzdHlsZSkge1xuICAgIEBlcnJvciBcIkludmFsaWQgc3R5bGUgc3BlY2lmaWVkISAjeyRzdHlsZX0gZG9lc24ndCBleGlzdC4gQ2hvb3NlIG9uZSBvZiAje21hcC1rZXlzKCRtZGMtdHlwb2dyYXBoeS1zdHlsZXMpfVwiO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRzdHlsZS1wcm9wcyB7XG4gICAgI3ska2V5fTogJHZhbHVlO1xuICB9XG59XG5cbi8vIEVsZW1lbnQgbXVzdCBiZSBgZGlzcGxheTogYmxvY2tgIG9yIGBkaXNwbGF5OiBpbmxpbmUtYmxvY2tgIGZvciB0aGlzIHRvIHdvcmsuXG5AbWl4aW4gbWRjLXR5cG9ncmFwaHktb3ZlcmZsb3ctZWxsaXBzaXMge1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuQG1peGluIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLXRvcCgkZGlzdGFuY2UpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS1zdHJ1dF8oJGRpc3RhbmNlKTtcblxuICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS1ib3R0b20oJGRpc3RhbmNlKSB7XG4gIG1hcmdpbi1ib3R0b206IC0xICogJGRpc3RhbmNlO1xuXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS1zdHJ1dF8oJGRpc3RhbmNlKTtcblxuICAgIHZlcnRpY2FsLWFsaWduOiAtMSAqICRkaXN0YW5jZTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtc3RydXRfKCRkaXN0YW5jZSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6ICRkaXN0YW5jZTtcbiAgY29udGVudDogXCJcIjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4vZnVuY3Rpb25zXCI7XG5cbiRtZGMtdHlwb2dyYXBoeS1mb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kbWRjLXR5cG9ncmFwaHktYmFzZTogKFxuICBmb250LWZhbWlseTogJG1kYy10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LFxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlLFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCxcbik7XG5cbiRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXM6IChcbiAgdGhpbjogMTAwLFxuICBsaWdodDogMzAwLFxuICByZWd1bGFyOiA0MDAsXG4gIG1lZGl1bTogNTAwLFxuICBib2xkOiA3MDAsXG4gIGJsYWNrOiA5MDBcbikgIWRlZmF1bHQ7XG5cbiRtZGMtdHlwb2dyYXBoeS1zdHlsZXM6IG1kYy10eXBvZ3JhcGh5LXNldC1zdHlsZXNfKFxuICAkbWRjLXR5cG9ncmFwaHktYmFzZSxcbiAgKFxuICAgIGhlYWRsaW5lMTogKFxuICAgICAgZm9udC1zaXplOiA2cmVtLCAvLyA5NnNwXG4gICAgICBsaW5lLWhlaWdodDogNnJlbSxcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIGxpZ2h0KSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC0xLjUsIDYpLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGhlYWRsaW5lMjogKFxuICAgICAgZm9udC1zaXplOiAzLjc1cmVtLCAvLyA2MHNwXG4gICAgICBsaW5lLWhlaWdodDogMy43NXJlbSxcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIGxpZ2h0KSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC0uNSwgMy43NSksXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQsXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdFxuICAgICksXG4gICAgaGVhZGxpbmUzOiAoXG4gICAgICBmb250LXNpemU6IDNyZW0sIC8vIDQ4cHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbSwgLy8gNTBweFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGhlYWRsaW5lNDogKFxuICAgICAgZm9udC1zaXplOiAyLjEyNXJlbSwgLy8gMzRzcFxuICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbSwgLy8gNDBzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXyguMjUsIDIuMTI1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBoZWFkbGluZTU6IChcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtLCAvLyAyNHNwXG4gICAgICBsaW5lLWhlaWdodDogMnJlbSwgLy8gMzJzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGhlYWRsaW5lNjogKFxuICAgICAgZm9udC1zaXplOiAxLjI1cmVtLCAvLyAyMHNwXG4gICAgICBsaW5lLWhlaWdodDogMnJlbSwgLy8gMzJzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgbWVkaXVtKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC4yNSwgMS4yNSksXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQsXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdFxuICAgICksXG4gICAgc3VidGl0bGUxOiAoXG4gICAgICBmb250LXNpemU6IDFyZW0sIC8vIDE2c3BcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtLCAvLyAyOHNwXG4gICAgICBmb250LXdlaWdodDogbWFwLWdldCgkbWRjLXR5cG9ncmFwaHktZm9udC13ZWlnaHQtdmFsdWVzLCByZWd1bGFyKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC4xNSwgMSksXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQsXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdFxuICAgICksXG4gICAgc3VidGl0bGUyOiAoXG4gICAgICBmb250LXNpemU6IC44NzVyZW0sIC8vIDE0c3BcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbSwgLy8gMjJzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgbWVkaXVtKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC4xLCAuODc1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBib2R5MTogKFxuICAgICAgZm9udC1zaXplOiAxcmVtLCAvLyAxNnNwXG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtLCAvLyAyNHNwXG4gICAgICBmb250LXdlaWdodDogbWFwLWdldCgkbWRjLXR5cG9ncmFwaHktZm9udC13ZWlnaHQtdmFsdWVzLCByZWd1bGFyKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC41LCAxKSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBib2R5MjogKFxuICAgICAgZm9udC1zaXplOiAuODc1cmVtLCAvLyAxNHNwXG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbSwgLy8gMjBzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXyguMjUsIC44NzUpLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGNhcHRpb246IChcbiAgICAgIGZvbnQtc2l6ZTogLjc1cmVtLCAvLyAxMnNwXG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbSwgLy8gMjBzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXyguNCwgLjc1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBidXR0b246IChcbiAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbSwgLy8gMTRzcFxuICAgICAgbGluZS1oZWlnaHQ6IDIuMjVyZW0sIC8vIDM2c3BcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIG1lZGl1bSksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXygxLjI1LCAuODc1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2VcbiAgICApLFxuICAgIG92ZXJsaW5lOiAoXG4gICAgICBmb250LXNpemU6IC43NXJlbSwgLy8gMTJzcFxuICAgICAgbGluZS1oZWlnaHQ6IDJyZW0sIC8vIDMyc3BcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIG1lZGl1bSksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXygyLCAuNzUpLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lLFxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxuICAgICksXG4gIClcbikgIWRlZmF1bHQ7XG4iLCJcbi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGZ1bmN0aW9uIG1kYy10eXBvZ3JhcGh5LWdldC1nbG9iYWwtdmFyaWFibGVfKCRzdHlsZSkge1xuICBAaWYgJHN0eWxlID09IFwiaGVhZGxpbmUxXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1oZWFkbGluZTE7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiaGVhZGxpbmUyXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1oZWFkbGluZTI7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiaGVhZGxpbmUzXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1oZWFkbGluZTM7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiaGVhZGxpbmU0XCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1oZWFkbGluZTQ7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiaGVhZGxpbmU1XCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1oZWFkbGluZTU7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiaGVhZGxpbmU2XCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1oZWFkbGluZTY7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwic3VidGl0bGUxXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1zdWJ0aXRsZTE7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwic3VidGl0bGUyXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1zdWJ0aXRsZTI7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiYm9keTFcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWJvZHkxO1xuICB9IEBlbHNlIGlmICRzdHlsZSA9PSBcImJvZHkyXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1ib2R5MjtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJjYXB0aW9uXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1jYXB0aW9uO1xuICB9IEBlbHNlIGlmICRzdHlsZSA9PSBcImJ1dHRvblwiIHtcbiAgICBAcmV0dXJuICRtZGMtdHlwb2dyYXBoeS1zdHlsZXMtYnV0dG9uO1xuICB9IEBlbHNlIGlmICRzdHlsZSA9PSBcIm92ZXJsaW5lXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1vdmVybGluZTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxufVxuXG5AZnVuY3Rpb24gbWRjLXR5cG9ncmFwaHktc2V0LXN0eWxlc18oJGJhc2Utc3R5bGVzLCAkc2NhbGUtc3R5bGVzKSB7XG4gIEBlYWNoICRzdHlsZSwgJHN0eWxlLXByb3BzIGluICRzY2FsZS1zdHlsZXMge1xuXG4gICAgLy8gTWVyZ2UgYmFzZSBwcm9wZXJ0aWVzIGZvciBhbGwgc3R5bGVzLlxuICAgICRzdHlsZS1wcm9wczogbWFwLW1lcmdlKCRiYXNlLXN0eWxlcywgJHN0eWxlLXByb3BzKTtcblxuICAgIC8vIE1lcmdlIGdsb2JhbCBvdmVycmlkZXMgb250byBlYWNoIHN0eWxlLlxuICAgIEBpZiBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKHVucXVvdGUoXCJtZGMtdHlwb2dyYXBoeS1zdHlsZXMtI3skc3R5bGV9XCIpKSB7XG4gICAgICAkc3R5bGUtcHJvcHM6IG1hcC1tZXJnZSgkc3R5bGUtcHJvcHMsIG1kYy10eXBvZ3JhcGh5LWdldC1nbG9iYWwtdmFyaWFibGVfKCN7JHN0eWxlfSkpO1xuICAgIH1cblxuICAgIC8vIE92ZXJyaWRlIG9yaWdpbmFsIHN0eWxlcyB3aXRoIG5ldyBzdHlsZXMuXG4gICAgJHNjYWxlLXN0eWxlczogbWFwLW1lcmdlKCRzY2FsZS1zdHlsZXMsICgjeyRzdHlsZX06ICRzdHlsZS1wcm9wcykpO1xuICB9XG5cbiAgQHJldHVybiAkc2NhbGUtc3R5bGVzO1xufVxuXG5AZnVuY3Rpb24gbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXygkdHJhY2tpbmcsICRmb250LXNpemUpIHtcbiAgQHJldHVybiAkdHJhY2tpbmcgLyAoJGZvbnQtc2l6ZSAqIDE2KSAqIDFlbTtcbn1cbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5cclxuJGtteC1icmVhZGNydW1iLWRlZmF1bHQtY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA1MDApICFkZWZhdWx0O1xyXG5cclxuLmtteC1icmVhZGNydW1iLXdyYXBwZXIge1xyXG4gICAgQGluY2x1ZGUgZm9udC13ZWlnaHQoJ3JlZ3VsYXInKTtcclxuXHJcbiAgICBjb2xvcjogJGtteC1icmVhZGNydW1iLWRlZmF1bHQtY29sb3I7XHJcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gQHRvZG86IGV4cGxvcmUgaG93IGtteC1icmVhZGNydW1iLXdyYXBwZXIgY29udGFpbmVyIGNhbiBiZSBzZXQgdG8gaW5saW5lIG9yIGlubGluZS1ibG9jayB3aXRob3V0IGludHJvZHVjaW5nIGEgbGF5b3V0IHNoaWZ0LlxyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDE4KTtcclxuICAgIGZvbnQtZmFtaWx5OiAka214LXR5cG9ncmFwaHktZm9udC1hbHQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBzaXplKCdzJyk7XHJcblxyXG4gICAgLnN2Zy1pY29uIHtcclxuICAgICAgICB3aWR0aDogc2l6ZSgncycpO1xyXG5cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg5KTsgLy8gU3BlY2lmaWMgdmFsdWUgY2FsbGVkIG91dCBpbiBkZXNpZ24gY29tcHMuIEludGVuZGVkIHRvIGJlIG91dHNpZGUgb2YgdGhlIG11bHRpcGxlLW9mLTggcnVsZS5cclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG4gICAgfVxyXG5cclxuICAgIC5rbXgtYnJlYWRjcnVtYiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gICAgICAgICYtbGlzdC1pdGVtIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDMpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtaG9tZSB7XHJcbiAgICAgICAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHNpemUoJ20nKTtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHNpemUoJ20nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtc2VwYXJhdG9yIHtcclxuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBbaXRlbXByb3A9J25hbWUnXSB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xyXG4gICAgW2FyaWEtY3VycmVudD0ncGFnZSddIHtcclxuICAgICAgICBjb2xvcjogJGtteC1icmVhZGNydW1iLWRlZmF1bHQtY29sb3IgIWltcG9ydGFudDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCovXHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLXJpcHBsZS1zdXJmYWNlKCkge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG5cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRtZGMtc3RhdGVzLXdhc2gtZHVyYXRpb24gbGluZWFyO1xuICAgIHotaW5kZXg6IDE7IC8vIEVuc3VyZSB0aGF0IHRoZSByaXBwbGUgd2FzaCBmb3IgaG92ZXIvZm9jdXMgc3RhdGVzIGlzIGRpc3BsYXllZCBvbiB0b3Agb2YgcG9zaXRpb25lZCBjaGlsZCBlbGVtZW50c1xuICB9XG5cbiAgLy8gQ29tbW9uIHN0eWxlcyBmb3IgdXBncmFkZWQgc3VyZmFjZXMgKHNvbWUgb2YgdGhlc2UgZGVwZW5kIG9uIGN1c3RvbSBwcm9wZXJ0aWVzIHNldCB2aWEgSlMgb3Igb3RoZXIgbWl4aW5zKVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHRvcDogMDtcblxuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG5cbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOlxuICAgICAgJG1kYy1yaXBwbGUtdHJhbnNsYXRlLWR1cmF0aW9uIG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIGZvcndhcmRzLFxuICAgICAgJG1kYy1yaXBwbGUtZmFkZS1pbi1kdXJhdGlvbiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gZm9yd2FyZHM7XG4gIH1cblxuICAmLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiAkbWRjLXJpcHBsZS1mYWRlLW91dC1kdXJhdGlvbiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0O1xuICAgIC8vIFJldGFpbiB0cmFuc2Zvcm0gZnJvbSBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBhY3RpdmF0aW9uXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc3RhdGVzLWJhc2UtY29sb3IoJGNvbG9yKSB7XG4gIC8vIE9wYWNpdHkgc3R5bGVzIGFyZSBoZXJlIChyYXRoZXIgdGhhbiBpbiBtZGMtcmlwcGxlLXN1cmZhY2UpIHRvIGVuc3VyZSB0aGF0IG9wYWNpdHkgaXMgcmUtaW5pdGlhbGl6ZWQgZm9yXG4gIC8vIGNhc2VzIHdoZXJlIHRoaXMgbWl4aW4gaXMgdXNlZCB0byBvdmVycmlkZSBhbm90aGVyIGluaGVyaXRlZCB1c2Ugb2YgaXRzZWxmLFxuICAvLyB3aXRob3V0IG5lZWRpbmcgdG8gcmUtaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2UuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvciwgJGVkZ2VPcHRPdXQ6IHRydWUpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc3RhdGVzLWhvdmVyLW9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgLy8gQmFja2dyb3VuZCB3YXNoIHN0eWxlcywgZm9yIGJvdGggQ1NTLW9ubHkgYW5kIHVwZ3JhZGVkIHN0YXRlZnVsIHN1cmZhY2VzXG4gICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zdGF0ZXMtZm9jdXMtb3BhY2l0eSgkb3BhY2l0eSwgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQ6IGZhbHNlKSB7XG4gIC8vIEZvY3VzIG92ZXJyaWRlcyBob3ZlciBieSByZXVzaW5nIHRoZSA6OmJlZm9yZSBwc2V1ZG8tZWxlbWVudC5cbiAgLy8gOmZvY3VzLXdpdGhpbiBnZW5lcmFsbHkgd29ya3Mgb24gbm9uLU1TIGJyb3dzZXJzIGFuZCBtYXRjaGVzIHdoZW4gYSAqY2hpbGQqIG9mIHRoZSBlbGVtZW50IGhhcyBmb2N1cy5cbiAgLy8gSXQgaXMgdXNlZnVsIGZvciBjYXNlcyB3aGVyZSBhIGNvbXBvbmVudCBoYXMgYSBmb2N1c2FibGUgZWxlbWVudCB3aXRoaW4gdGhlIHJvb3Qgbm9kZSwgZS5nLiB0ZXh0IGZpZWxkLFxuICAvLyBidXQgdW5kZXNpcmFibGUgaW4gZ2VuZXJhbCBpbiBjYXNlIG9mIG5lc3RlZCBzdGF0ZWZ1bCBjb21wb25lbnRzLlxuICAvLyBXZSB1c2UgYSBtb2RpZmllciBjbGFzcyBmb3IgSlMtZW5hYmxlZCBzdXJmYWNlcyB0byBzdXBwb3J0IGFsbCB1c2UgY2FzZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAkY3NzT25seUZvY3VzU2VsZWN0b3I6IGlmKFxuICAgICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50LFxuICAgIFwiJjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsICY6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1cy13aXRoaW46OmJlZm9yZVwiLFxuICAgIFwiJjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmVcIlxuICApO1xuXG4gICN7JGNzc09ubHlGb2N1c1NlbGVjdG9yfSxcbiAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSB7XG4gICAgLy8gTm90ZSB0aGF0IHRoaXMgZHVyYXRpb24gaXMgb25seSBlZmZlY3RpdmUgb24gZm9jdXMsIG5vdCBibHVyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXN0YXRlcy1wcmVzcy1vcGFjaXR5KCRvcGFjaXR5KSB7XG4gIC8vIFN0eWxlcyBmb3Igbm9uLXVwZ3JhZGVkIChDU1Mtb25seSkgc3RhdGVmdWwgc3VyZmFjZXNcblxuICAmOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCkge1xuICAgIC8vIEFwcGx5IHByZXNzIGFkZGl0aXZlbHkgYnkgdXNpbmcgdGhlIDo6YWZ0ZXIgcHNldWRvLWVsZW1lbnRcbiAgICAmOjphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRtZGMtcmlwcGxlLWZhZGUtb3V0LWR1cmF0aW9uIGxpbmVhcjtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJG1kYy1yaXBwbGUtZmFkZS1pbi1kdXJhdGlvbjtcbiAgICAgIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gICAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6ICN7JG9wYWNpdHl9O1xuICB9XG59XG5cbi8vIFNpbXBsZSBtaXhpbiBmb3IgYmFzZSBzdGF0ZXMgd2hpY2ggYXV0b21hdGljYWxseSBzZWxlY3RzIG9wYWNpdHkgdmFsdWVzIGJhc2VkIG9uIHdoZXRoZXIgdGhlIGluayBjb2xvciBpc1xuLy8gbGlnaHQgb3IgZGFyay5cbkBtaXhpbiBtZGMtc3RhdGVzKCRjb2xvcjogYmxhY2ssICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWludGVyYWN0aW9uc18oJGNvbG9yLCAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudCk7XG59XG5cbi8vIFNpbXBsZSBtaXhpbiBmb3IgYWN0aXZhdGVkIHN0YXRlcyB3aGljaCBhdXRvbWF0aWNhbGx5IHNlbGVjdHMgb3BhY2l0eSB2YWx1ZXMgYmFzZWQgb24gd2hldGhlciB0aGUgaW5rIGNvbG9yIGlzXG4vLyBsaWdodCBvciBkYXJrLlxuQG1peGluIG1kYy1zdGF0ZXMtYWN0aXZhdGVkKCRjb2xvciwgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQ6IGZhbHNlKSB7XG4gICRhY3RpdmF0ZWQtb3BhY2l0eTogbWRjLXN0YXRlcy1vcGFjaXR5KCRjb2xvciwgYWN0aXZhdGVkKTtcblxuICAmLS1hY3RpdmF0ZWQge1xuICAgIC8vIFN0eWxlbGludCBzZWVtcyB0byB0aGluayB0aGF0ICcmJyBxdWFsaWZpZXMgYXMgYSB0eXBlIHNlbGVjdG9yIGhlcmU/XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6ICRhY3RpdmF0ZWQtb3BhY2l0eTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWludGVyYWN0aW9uc18oJGNvbG9yLCAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudCwgJGFjdGl2YXRlZC1vcGFjaXR5KTtcbiAgfVxufVxuXG4vLyBTaW1wbGUgbWl4aW4gZm9yIHNlbGVjdGVkIHN0YXRlcyB3aGljaCBhdXRvbWF0aWNhbGx5IHNlbGVjdHMgb3BhY2l0eSB2YWx1ZXMgYmFzZWQgb24gd2hldGhlciB0aGUgaW5rIGNvbG9yIGlzXG4vLyBsaWdodCBvciBkYXJrLlxuQG1peGluIG1kYy1zdGF0ZXMtc2VsZWN0ZWQoJGNvbG9yLCAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudDogZmFsc2UpIHtcbiAgJHNlbGVjdGVkLW9wYWNpdHk6IG1kYy1zdGF0ZXMtb3BhY2l0eSgkY29sb3IsIHNlbGVjdGVkKTtcblxuICAmLS1zZWxlY3RlZCB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6ICRzZWxlY3RlZC1vcGFjaXR5O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaW50ZXJhY3Rpb25zXygkY29sb3IsICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50LCAkc2VsZWN0ZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1yaXBwbGUtcmFkaXVzLWJvdW5kZWQoJHJhZGl1czogMTAwJSkge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gI3skcmFkaXVzfSk7XG5cbiAgICAvKiBAbm9mbGlwICovXG4gICAgbGVmdDogY2FsYyg1MCUgLSAjeyRyYWRpdXN9KTtcbiAgICB3aWR0aDogJHJhZGl1cyAqIDI7XG4gICAgaGVpZ2h0OiAkcmFkaXVzICogMjtcbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsICRyYWRpdXMpO1xuICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXJpcHBsZS1yYWRpdXMtdW5ib3VuZGVkKCRyYWRpdXM6IDEwMCUpIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDUwJSAtICN7JHJhZGl1cyAvIDJ9KTtcblxuICAgIC8qIEBub2ZsaXAgKi9cbiAgICBsZWZ0OiBjYWxjKDUwJSAtICN7JHJhZGl1cyAvIDJ9KTtcbiAgICB3aWR0aDogJHJhZGl1cztcbiAgICBoZWlnaHQ6ICRyYWRpdXM7XG4gIH1cblxuICAmLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSxcbiAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gICAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgY2FsYyg1MCUgLSAjeyRyYWRpdXMgLyAyfSkpO1xuXG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgY2FsYyg1MCUgLSAjeyRyYWRpdXMgLyAyfSkpO1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsICRyYWRpdXMpO1xuICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAkcmFkaXVzKTtcbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsICRyYWRpdXMpO1xuICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXN0YXRlcy1pbnRlcmFjdGlvbnNfKCRjb2xvciwgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQsICRvcGFjaXR5LW1vZGlmaWVyOiAwKSB7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtYmFzZS1jb2xvcigkY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWhvdmVyLW9wYWNpdHkobWRjLXN0YXRlcy1vcGFjaXR5KCRjb2xvciwgaG92ZXIpICsgJG9wYWNpdHktbW9kaWZpZXIpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHkoXG4gICAgbWRjLXN0YXRlcy1vcGFjaXR5KCRjb2xvciwgZm9jdXMpICsgJG9wYWNpdHktbW9kaWZpZXIsXG4gICAgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnRcbiAgKTtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1wcmVzcy1vcGFjaXR5KG1kYy1zdGF0ZXMtb3BhY2l0eSgkY29sb3IsIHByZXNzKSArICRvcGFjaXR5LW1vZGlmaWVyKTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNiBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9lbGV2YXRpb24vbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1idXR0b24tZmlsbGVkLWFjY2Vzc2libGUoJGNvbnRhaW5lci1maWxsLWNvbG9yKSB7XG4gICRmaWxsLXRvbmU6IG1kYy10aGVtZS10b25lKCRjb250YWluZXItZmlsbC1jb2xvcik7XG5cbiAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1jb250YWluZXItZmlsbC1jb2xvcigkY29udGFpbmVyLWZpbGwtY29sb3IpO1xuXG4gIEBpZiAoJGZpbGwtdG9uZSA9PSBcImRhcmtcIikge1xuICAgIEBpbmNsdWRlIG1kYy1idXR0b24taW5rLWNvbG9yKHRleHQtcHJpbWFyeS1vbi1kYXJrKTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKHRleHQtcHJpbWFyeS1vbi1kYXJrKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWxpZ2h0KTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKHRleHQtcHJpbWFyeS1vbi1saWdodCk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24tY29udGFpbmVyLWZpbGwtY29sb3IoJGNvbG9yKSB7XG4gIC8vIDpub3QoOmRpc2FibGVkKSBpcyB1c2VkIHRvIHN1cHBvcnQgbGluayBzdHlsZWQgYXMgYnV0dG9uXG4gIC8vIGFzIGxpbmsgZG9lcyBub3Qgc3VwcG9ydCA6ZW5hYmxlZCBzdHlsZVxuICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IsICRlZGdlT3B0T3V0OiB0cnVlKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24taWNvbi1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoOmRpc2FibGVkKSAubWRjLWJ1dHRvbl9faWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24taW5rLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1jb3JuZXItcmFkaXVzKCRjb3JuZXItcmFkaXVzKSB7XG4gIGJvcmRlci1yYWRpdXM6ICRjb3JuZXItcmFkaXVzO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1ob3Jpem9udGFsLXBhZGRpbmcoJHBhZGRpbmcpIHtcbiAgLy8gJHBhZGRpbmcgc2hvdWxkIGJlIGEgc2luZ2xlIHZhbHVlOyBlbmZvcmNlIGl0IGJ5IHNwZWNpZnlpbmcgYWxsIDQgc2lkZXMgaW4gdGhlIG91dHB1dFxuICBwYWRkaW5nOiAwICRwYWRkaW5nIDAgJHBhZGRpbmc7XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uLW91dGxpbmUtd2lkdGgoJG91dGxpbmUtd2lkdGgsICRwYWRkaW5nOiAkbWRjLWJ1dHRvbi1jb250YWluZWQtaG9yaXpvbnRhbC1wYWRkaW5nKSB7XG4gIC8vIE5vdGU6IEFkanVzdCBwYWRkaW5nIHRvIG1haW50YWluIGNvbnNpc3RlbnQgd2lkdGggd2l0aCBub24tb3V0bGluZWQgYnV0dG9uc1xuICAkcGFkZGluZy12YWx1ZTogbWF4KCRwYWRkaW5nIC0gJG91dGxpbmUtd2lkdGgsIDApO1xuXG4gIEBpbmNsdWRlIG1kYy1idXR0b24taG9yaXpvbnRhbC1wYWRkaW5nKCRwYWRkaW5nLXZhbHVlKTtcblxuICBib3JkZXItd2lkdGg6ICRvdXRsaW5lLXdpZHRoO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1iYXNlXygpIHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoYnV0dG9uKTtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkO1xuICBAaW5jbHVkZSBtZGMtYnV0dG9uLWhvcml6b250YWwtcGFkZGluZygkbWRjLWJ1dHRvbi1ob3Jpem9udGFsLXBhZGRpbmcpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4td2lkdGg6IDY0cHg7XG4gIGhlaWdodDogJG1kYy1idXR0b24taGVpZ2h0O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG5cbiAgLyogQGFsdGVybmF0ZSAqL1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gICY6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgdHJhbnNwYXJlbnQpO1xuXG4gICAgY29sb3I6ICRtZGMtYnV0dG9uLWRpc2FibGVkLWluay1jb2xvcjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b25fX2ljb25fIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgcmlnaHQsIDhweCk7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uX19pY29uLXN2Z18ge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uX19pY29uLWNvbnRhaW5lZF8ge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShtYXJnaW4sIC00cHgsIDhweCk7XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uLS1vdXRsaW5lZF8oKSB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWRjLWJ1dHRvbi1kaXNhYmxlZC1pbmstY29sb3I7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24tLWZpbGxlZF8oKSB7XG4gIEBpbmNsdWRlIG1kYy1idXR0b24taG9yaXpvbnRhbC1wYWRkaW5nKCRtZGMtYnV0dG9uLWNvbnRhaW5lZC1ob3Jpem9udGFsLXBhZGRpbmcpO1xuXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4xMik7XG4gICAgY29sb3I6ICRtZGMtYnV0dG9uLWRpc2FibGVkLWluay1jb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi0tcmFpc2VkXygpIHtcbiAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbigyKTtcblxuICB0cmFuc2l0aW9uOiBtZGMtZWxldmF0aW9uLXRyYW5zaXRpb24tdmFsdWUoKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDQpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oOCk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDApO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uLS1kZW5zZV8oKSB7XG4gIGhlaWdodDogJG1kYy1kZW5zZS1idXR0b24taGVpZ2h0O1xuICBmb250LXNpemU6IC44MTI1cmVtOyAvLyAxM3NwXG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtYnV0dG9uLWhlaWdodDogMzZweDtcbiRtZGMtYnV0dG9uLWhvcml6b250YWwtcGFkZGluZzogOHB4O1xuJG1kYy1idXR0b24tY29udGFpbmVkLWhvcml6b250YWwtcGFkZGluZzogMTZweDtcbiRtZGMtZGVuc2UtYnV0dG9uLWhlaWdodDogMzJweDtcblxuJG1kYy1idXR0b24tZGlzYWJsZWQtaW5rLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMzcpO1xuIiwiQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcblxyXG4kYnV0dG9uLW5hbWVzcGFjZTogJ2tteC1idXR0b24nO1xyXG4kYnV0dG9uLWJvcmRlci1yYWRpdXM6IDJweDtcclxuJGJ1dHRvbi10cmFuc2l0aW9uLXRpbWluZ3M6IDIwbXMgbGluZWFyO1xyXG5cclxuJGtteC1idXR0b24tcHJpbWFyeS1maWxsLW9uLWxpZ2h0OiBrbXgtY29sb3IoJ3llbGxvdycsIDYwMCk7XHJcbiRrbXgtYnV0dG9uLXByaW1hcnktaW5rLW9uLWxpZ2h0OiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApO1xyXG4ka214LWJ1dHRvbi1wcmltYXJ5LWZpbGwtb24tZGFyazoga214LWNvbG9yKCd5ZWxsb3cnLCA2MDApO1xyXG4ka214LWJ1dHRvbi1wcmltYXJ5LWluay1vbi1kYXJrOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApO1xyXG4ka214LWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjoga214LWNvbG9yKCd5ZWxsb3cnLCA3MDApO1xyXG4ka214LWJ1dHRvbi1wcmltYXJ5LWhvdmVyLWZpbGwtb24tbGlnaHQ6IGtteC1jb2xvcigneWVsbG93JywgNDAwKTtcclxuXHJcbiRrbXgtYnV0dG9uLXNlY29uZGFyeS1maWxsLW9uLWxpZ2h0OiAkd2hpdGU7XHJcbiRrbXgtYnV0dG9uLXNlY29uZGFyeS1pbmstb24tbGlnaHQ6IGtteC1jb2xvcignYmx1ZScsIDkwMCk7XHJcbiRrbXgtYnV0dG9uLXNlY29uZGFyeS1maWxsLW9uLWRhcms6ICR3aGl0ZTtcclxuJGtteC1idXR0b24tc2Vjb25kYXJ5LWluay1vbi1kYXJrOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApO1xyXG5cclxuJGtteC1idXR0b24tdGVydGlhcnktZmlsbC1vbi1saWdodDogdHJhbnNwYXJlbnQ7XHJcbiRrbXgtYnV0dG9uLXRlcnRpYXJ5LWluay1vbi1saWdodDoga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuJGtteC1idXR0b24tdGVydGlhcnktZmlsbC1vbi1kYXJrOiB0cmFuc3BhcmVudDtcclxuJGtteC1idXR0b24tdGVydGlhcnktaW5rLW9uLWRhcms6IGtteC1jb2xvcignYmx1ZScsIDkwMCk7XHJcbiIsIi8vIEJ1dHRvbiBtaXhpbnNcclxuQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXV0aWxpdGllcy9zcmMvc3ZnL21peGlucyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvYnV0dG9uL21peGlucyc7XHJcblxyXG5AbWl4aW4ga214LWJ1dHRvbi1iYXNlIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCdib2xkJyk7XHJcblxyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZvbnQtZmFtaWx5OiAka214LXR5cG9ncmFwaHktZm9udC1tYWluO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6ICRrbXgtbGFiZWwtbGV0dGVyc3BhY2luZztcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XHJcbiAgICBwYWRkaW5nOiAwIHNpemUoJ20nKTtcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lLWNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApO1xyXG4gICAgICAgIG91dGxpbmUtc3R5bGU6IGF1dG87XHJcbiAgICAgICAgb3V0bGluZS13aWR0aDogaW5pdGlhbDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gUHJpdmF0ZSBtaXhpbnMgLSBuYW1lcyBlbmQgd2l0aCBfXHJcbkBtaXhpbiBrbXgtYnV0dG9uLWRpc2FibGVkLXByb3BlcnRpZXNfIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCAzMDApO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA1MDApO1xyXG59XHJcblxyXG5AbWl4aW4ga214LWJ1dHRvbi1pbnRlcmFjdGlvbi1wcm9wZXJ0aWVzXygkYmctY29sb3ItaG92ZXIsICRiZy1jb2xvci1hY3RpdmUpIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3ItaG92ZXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkYnV0dG9uLXRyYW5zaXRpb24tdGltaW5ncztcclxuICAgIH1cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3ItYWN0aXZlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGJ1dHRvbi10cmFuc2l0aW9uLXRpbWluZ3M7XHJcbiAgICB9XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRidXR0b24tdHJhbnNpdGlvbi10aW1pbmdzOyAvLyAnaG92ZXItb2ZmJyB0cmFuc2l0aW9uXHJcbn1cclxuXHJcbi8vIGtteC1idXR0b24tc3ZnIG1peGluIGlzIHVzZWQgZm9yIHRoZSBJQ09OICYgTEFCRUwgYnV0dG9uIHZhcmlhbnRzLlxyXG5AbWl4aW4ga214LWJ1dHRvbi1zdmcge1xyXG4gICAgQGluY2x1ZGUga214LXN2Zy1pY29uO1xyXG5cclxuICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgLy8gVGhlIGhlaWdodCAmIHdpZHRoIGJlbG93IGFyZSBvdXQtb2YtYmFuZCB3aXRoIHRoZSA4cHggZ3JpZCBydWxlc1xyXG4gICAgICAgIC8vIGluIG9yZGVyIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBNYXRlcmlhbCBpY29ucycgYnVpbHQtaW4gJ3BhZGRpbmcnLFxyXG4gICAgICAgIC8vIGFuZCB0byByZWZsZWN0IHRob3NlIGljb25zIHVzYWdlcyBpbiB0aGUgU2tldGNoIFVJIGtpdDpcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIG1hcmdpbjogMCBzaXplKCdzJykgMCAwO1xyXG5cclxuICAgICAgICAmLmljb24tYWZ0ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIHNpemUoJ3MnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGtteC1pbmMtYnV0dG9uLXN2ZyBtaXhpbiBpcyB1c2VkIGZvciB0aGUgSUNPTi1PTkxZIGJ1dHRvbiB2YXJpYW50cy5cclxuQG1peGluIGtteC1pY29uLWJ1dHRvbi1zdmcoJGljb24tc3F1YXJlOiBzaXplKCdsJykpIHtcclxuICAgIEBpbmNsdWRlIGtteC1zdmctaWNvbjtcclxuXHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgd2lkdGg6IHNpemUoJ3hsJyk7XHJcbiAgICBoZWlnaHQ6IHNpemUoJ3hsJyk7XHJcblxyXG4gICAgLnN2Zy1pY29uIHtcclxuICAgICAgICBoZWlnaHQ6ICRpY29uLXNxdWFyZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWluLWhlaWdodDogc2l6ZSgnbCcpO1xyXG4gICAgICAgIG1pbi13aWR0aDogc2l6ZSgnbCcpO1xyXG4gICAgICAgIHdpZHRoOiAkaWNvbi1zcXVhcmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBrbXgtYnV0dG9uLXByaW1hcnkoKSB7XHJcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvbnRhaW5lci1maWxsLWNvbG9yKCRrbXgtYnV0dG9uLXByaW1hcnktZmlsbC1vbi1saWdodCk7XHJcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWluay1jb2xvcigka214LWJ1dHRvbi1wcmltYXJ5LWluay1vbi1saWdodCk7XHJcblxyXG4gICAgLy8gTk9URTpcclxuICAgIC8vIEtNWCBVSSBjb21wcyBzaG93IGEgc2VyaWVzIG9mIGJ1dHRvbiBzdGF0ZXMgd2hpY2ggY2Fubm90IGJlIHJlYWxpemVkIGJ5IHVzaW5nXHJcbiAgICAvLyB0aGUgTUNXIGZyYW1ld29yayBzdGF0ZSBzdHJhdGVneSAod2hpY2ggcmVsaWVzIG9uIG9wYWNpdHkgb24gZ2VuZXJhdGVkIGNvbnRlbnQgZWxlbWVudHMuKVxyXG4gICAgLy8gVGhlIGZvbGxvd2luZyA1IHN0ZXBzIHJlcHJlc2VudHMgYSBkZXBhcnR1cmUgZnJvbSB0aGUgTUNXIGZyYW1ld29yaydzIGNhcGFiaWxpdGllcyxcclxuICAgIC8vIHNvIHRoYXQgd2UgbWF0Y2ggdGhlIENhck1heCBVSSBpbnRlbnQ6XHJcblxyXG4gICAgLy8gWzFdIFN1cHByZXNzIHRoZSBpbmNsdXNpb24gb2YgdGhlIHN0YXRlcyBmcm9tIHRoZSBNQ1cgbWRjLXN0YXRlcyBtaXhpblxyXG4gICAgLy8gKGl0J3Mgb25seSBrZXB0IGhlcmUgZm9yIGZ1dHVyZSByZWZlcmVuY2UpOlxyXG4gICAgLy8gQGluY2x1ZGUgbWRjLXN0YXRlcygka214LWJ1dHRvbi1zZWNvbmRhcnktaW5rLW9uLWxpZ2h0KTtcclxuXHJcbiAgICAvLyBbMl0gSGlkZSB0aGVzZSBlbGVtZW50czpcclxuICAgIC8vICY6YmVmb3JlLFxyXG4gICAgLy8gJjphZnRlciB7XHJcbiAgICAvLyAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIFszXSBNYW51YWxseSBhc3NpZ24gaG92ZXIgYW5kIGZvY3VzIHN0YXRlcyB3aXRoIGNlcnRhaW4gcHJvcGVydHkgdmFsdWVzOlxyXG4gICAgLy8gJjpob3ZlcixcclxuICAgIC8vICY6Zm9jdXMge1xyXG4gICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcigneWVsbG93JywgNjAwKTtcclxuICAgIC8vICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIFs0XSBNYW51YWxseSBhc3NpZ24gdGhlIGFjdGl2ZSAtLSBvciBcInByZXNzZWRcIiAtLSBzdGF0ZSB3aXRoIGNlcnRhaW4gcHJvcGVydHkgdmFsdWVzOlxyXG4gICAgLy8gJjphY3RpdmUge1xyXG4gICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICRrbXgtYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yO1xyXG4gICAgLy8gICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gWzVdIEFzc2lnbiBhIGRlZmF1bHQgdHJhbnNpdGlvbiB0byB0aGUgcm9vdCBlbGVtZW50OlxyXG4gICAgLy8gdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMG1zIGxpbmVhcjsgICAvLyAnaG92ZXItb2ZmJyB0cmFuc2l0aW9uXHJcblxyXG4gICAgLy8gdGhpcyBtaXhpbiBkb2VzIHRoZSB3b3JrIG9mIGJvdGggWzNdLCBbNF0gJiBbNV06XHJcbiAgICBAaW5jbHVkZSBrbXgtYnV0dG9uLWludGVyYWN0aW9uLXByb3BlcnRpZXNfKFxyXG4gICAgICAgICRiZy1jb2xvci1ob3ZlcjogJGtteC1idXR0b24tcHJpbWFyeS1ob3Zlci1maWxsLW9uLWxpZ2h0LFxyXG4gICAgICAgICRiZy1jb2xvci1hY3RpdmU6ICRrbXgtYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yXHJcbiAgICApO1xyXG59XHJcblxyXG5AbWl4aW4ga214LWJ1dHRvbi1zZWNvbmRhcnkoKSB7XHJcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvbnRhaW5lci1maWxsLWNvbG9yKCRrbXgtYnV0dG9uLXNlY29uZGFyeS1maWxsLW9uLWxpZ2h0KTtcclxuICAgIEBpbmNsdWRlIG1kYy1idXR0b24taW5rLWNvbG9yKCRrbXgtYnV0dG9uLXNlY29uZGFyeS1pbmstb24tbGlnaHQpO1xyXG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi0tb3V0bGluZWRfO1xyXG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1vdXRsaW5lLXdpZHRoKDFweCk7XHJcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLW91dGxpbmUtY29sb3IoJGtteC1idXR0b24tc2Vjb25kYXJ5LWluay1vbi1saWdodCk7XHJcblxyXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRidXR0b24tdHJhbnNpdGlvbi10aW1pbmdzOyAvLyAnaG92ZXItb2ZmJyB0cmFuc2l0aW9uXHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRidXR0b24tdHJhbnNpdGlvbi10aW1pbmdzOyAvLyAnaG92ZXItb2ZmJyB0cmFuc2l0aW9uXHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIEBpbmNsdWRlIG1kYy1idXR0b24tb3V0bGluZS1jb2xvcihrbXgtY29sb3IoJ2JsdWUnLCA2MDApKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGJ1dHRvbi10cmFuc2l0aW9uLXRpbWluZ3M7XHJcbiAgICB9XHJcblxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1kYy1idXR0b24tb3V0bGluZS1jb2xvcigka214LWJ1dHRvbi1zZWNvbmRhcnktaW5rLW9uLWxpZ2h0KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgMjAwKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGJ1dHRvbi10cmFuc2l0aW9uLXRpbWluZ3M7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkYnV0dG9uLXRyYW5zaXRpb24tdGltaW5ncztcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGtteC1idXR0b24tdGVydGlhcnkoKSB7XHJcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvbnRhaW5lci1maWxsLWNvbG9yKCRrbXgtYnV0dG9uLXRlcnRpYXJ5LWZpbGwtb24tbGlnaHQpO1xyXG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1pbmstY29sb3IoJGtteC1idXR0b24tdGVydGlhcnktaW5rLW9uLWxpZ2h0KTtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkYnV0dG9uLXRyYW5zaXRpb24tdGltaW5nczsgLy8gJ2hvdmVyLW9mZicgdHJhbnNpdGlvblxyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkYnV0dG9uLXRyYW5zaXRpb24tdGltaW5nczsgLy8gJ2hvdmVyLW9mZicgdHJhbnNpdGlvblxyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgNjAwKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAkYnV0dG9uLXRyYW5zaXRpb24tdGltaW5ncztcclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDIwMCk7XHJcbiAgICAgICAgY29sb3I6ICRrbXgtYnV0dG9uLXRlcnRpYXJ5LWluay1vbi1saWdodDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRidXR0b24tdHJhbnNpdGlvbi10aW1pbmdzO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yICRidXR0b24tdHJhbnNpdGlvbi10aW1pbmdzO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIGtteC1zdmctYmFzZSBtaXhpbiBpcyBuZWNlc3NhcnkgZm9yIGNlcnRhaW4gZWxlbWVudHMgdG8gd29yayB3aXRoIGZsZXhib3guXHJcbi8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzIzktc29tZS1odG1sLWVsZW1lbnRzLWNhbnQtYmUtZmxleC1jb250YWluZXJzXHJcbkBtaXhpbiBrbXgtc3ZnLWJhc2Uge1xyXG4gICAgLnN2Zy1pY29uLXdyYXBwZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBrbXgtc3ZnLWljb24ge1xyXG4gICAgLnN2Zy1pY29uIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDFlbTtcclxuICAgICAgICBtaW4td2lkdGg6IDFlbTtcclxuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcclxuXHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICcuL21peGlucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9rbXgtdGhlbWUnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy11dGlsaXRpZXMvc3JjL3N2Zy9taXhpbnMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL2J1dHRvbi9taXhpbnMnO1xyXG5cclxuLiN7JGJ1dHRvbi1uYW1lc3BhY2V9IHtcclxuICAgIEBpbmNsdWRlIG1kYy1idXR0b24tYmFzZV87XHJcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvcm5lci1yYWRpdXMoJGJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIEBpbmNsdWRlIGtteC1idXR0b24tYmFzZTtcclxuICAgIEBpbmNsdWRlIGtteC1idXR0b24tc3ZnO1xyXG4gICAgQGluY2x1ZGUga214LXN2Zy1iYXNlO1xyXG5cclxuICAgICYtLXByaW1hcnkge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1idXR0b24tcHJpbWFyeTtcclxuICAgIH1cclxuXHJcbiAgICAmLS1zZWNvbmRhcnkge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1idXR0b24tc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG5cclxuICAgICYtLXRlcnRpYXJ5IHtcclxuICAgICAgICBAaW5jbHVkZSBrbXgtYnV0dG9uLXRlcnRpYXJ5O1xyXG4gICAgfVxyXG5cclxuICAgICYtLXRlcnRpYXJ5LXdoaXRlIHtcclxuICAgICAgICBAaW5jbHVkZSBrbXgtYnV0dG9uLXRlcnRpYXJ5O1xyXG4gICAgICAgIEBpbmNsdWRlIG1kYy1idXR0b24tY29udGFpbmVyLWZpbGwtY29sb3IoJGtteC1idXR0b24tdGVydGlhcnktZmlsbC1vbi1saWdodCk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1pbmstY29sb3IoJHdoaXRlKTtcclxuXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgMjAwLCAwLjgpO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5rbXgtYnV0dG9uLS1yYWlzZWQsXHJcbi5rbXgtYnV0dG9uLS11bmVsZXZhdGVkIHtcclxuICAgIHBhZGRpbmc6IDAgc2l6ZSgnbScpO1xyXG59XHJcblxyXG4ua214LWJ1dHRvbi0tcmFpc2VkIHtcclxuICAgIEBpbmNsdWRlIG1kYy1idXR0b24tLXJhaXNlZF87XHJcbn1cclxuXHJcbi5rbXgtYnV0dG9uLS11bmVsZXZhdGVkLFxyXG4ua214LWJ1dHRvbi0tcmFpc2VkLFxyXG4ua214LWJ1dHRvbiB7XHJcbiAgICAmOmRpc2FibGVkLFxyXG4gICAgJltkaXNhYmxlZF0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1idXR0b24tZGlzYWJsZWQtcHJvcGVydGllc187XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vIEFwcGxpZXMgdGhlIGNvcnJlY3QgQ1NTIHJ1bGVzIHRvIGFuIGVsZW1lbnQgdG8gZ2l2ZSBpdCB0aGUgZWxldmF0aW9uIHNwZWNpZmllZCBieSAkei12YWx1ZS5cbi8vIFRoZSAkei12YWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMjQuXG4vLyBJZiAkY29sb3IgaGFzIGFuIGFscGhhIGNoYW5uZWwsIGl0IHdpbGwgYmUgaWdub3JlZCBhbmQgb3ZlcnJpZGRlbi4gVG8gaW5jcmVhc2UgdGhlIG9wYWNpdHkgb2YgdGhlIHNoYWRvdywgdXNlXG4vLyAkb3BhY2l0eS1ib29zdC5cbkBtaXhpbiBtZGMtZWxldmF0aW9uKCR6LXZhbHVlLCAkY29sb3I6ICRtZGMtZWxldmF0aW9uLWJhc2VsaW5lLWNvbG9yLCAkb3BhY2l0eS1ib29zdDogMCkge1xuICBAaWYgdHlwZS1vZigkei12YWx1ZSkgIT0gbnVtYmVyIG9yIG5vdCB1bml0bGVzcygkei12YWx1ZSkge1xuICAgIEBlcnJvciBcIiR6LXZhbHVlIG11c3QgYmUgYSB1bml0bGVzcyBudW1iZXIsIGJ1dCByZWNlaXZlZCAnI3skei12YWx1ZX0nXCI7XG4gIH1cblxuICBAaWYgJHotdmFsdWUgPCAwIG9yICR6LXZhbHVlID4gMjQge1xuICAgIEBlcnJvciBcIiR6LXZhbHVlIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAyNCwgYnV0IHJlY2VpdmVkICcjeyR6LXZhbHVlfSdcIjtcbiAgfVxuXG4gICRjb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKTtcblxuICAkdW1icmEtei12YWx1ZTogbWFwLWdldCgkbWRjLWVsZXZhdGlvbi11bWJyYS1tYXAsICR6LXZhbHVlKTtcbiAgJHBlbnVtYnJhLXotdmFsdWU6IG1hcC1nZXQoJG1kYy1lbGV2YXRpb24tcGVudW1icmEtbWFwLCAkei12YWx1ZSk7XG4gICRhbWJpZW50LXotdmFsdWU6IG1hcC1nZXQoJG1kYy1lbGV2YXRpb24tYW1iaWVudC1tYXAsICR6LXZhbHVlKTtcblxuICAkdW1icmEtY29sb3I6IHJnYmEoJGNvbG9yLCAkbWRjLWVsZXZhdGlvbi11bWJyYS1vcGFjaXR5ICsgJG9wYWNpdHktYm9vc3QpO1xuICAkcGVudW1icmEtY29sb3I6IHJnYmEoJGNvbG9yLCAkbWRjLWVsZXZhdGlvbi1wZW51bWJyYS1vcGFjaXR5ICsgJG9wYWNpdHktYm9vc3QpO1xuICAkYW1iaWVudC1jb2xvcjogcmdiYSgkY29sb3IsICRtZGMtZWxldmF0aW9uLWFtYmllbnQtb3BhY2l0eSArICRvcGFjaXR5LWJvb3N0KTtcblxuICBib3gtc2hhZG93OlxuICAgICN7XCIjeyR1bWJyYS16LXZhbHVlfSAjeyR1bWJyYS1jb2xvcn1cIn0sXG4gICAgI3tcIiN7JHBlbnVtYnJhLXotdmFsdWV9ICN7JHBlbnVtYnJhLWNvbG9yfVwifSxcbiAgICAjeyRhbWJpZW50LXotdmFsdWV9ICRhbWJpZW50LWNvbG9yO1xufVxuXG4vLyBSZXR1cm5zIGEgc3RyaW5nIHRoYXQgY2FuIGJlIHVzZWQgYXMgdGhlIHZhbHVlIGZvciBhIGB0cmFuc2l0aW9uYCBwcm9wZXJ0eSBmb3IgZWxldmF0aW9uLlxuLy8gQ2FsbGluZyB0aGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGlzIHVzZWZ1bCBpbiBzaXR1YXRpb25zIHdoZXJlIGEgY29tcG9uZW50IG5lZWRzIHRvIHRyYW5zaXRpb25cbi8vIG1vcmUgdGhhbiBvbmUgcHJvcGVydHkuXG4vL1xuLy8gYGBgc2Nzc1xuLy8gLmZvbyB7XG4vLyAgIHRyYW5zaXRpb246IG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi12YWx1ZSgpLCBvcGFjaXR5IDEwMG1zIGVhc2U7XG4vLyAgIHdpbGwtY2hhbmdlOiAkbWRjLWVsZXZhdGlvbi1wcm9wZXJ0eSwgb3BhY2l0eTtcbi8vIH1cbi8vIGBgYFxuQGZ1bmN0aW9uIG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi12YWx1ZShcbiAgJGR1cmF0aW9uOiAkbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLWR1cmF0aW9uLFxuICAkZWFzaW5nOiAkbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikge1xuICBAcmV0dXJuICN7JG1kYy1lbGV2YXRpb24tcHJvcGVydHl9ICN7JGR1cmF0aW9ufSAjeyRlYXNpbmd9O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcblxuJG1kYy1lbGV2YXRpb24tYmFzZWxpbmUtY29sb3I6IGJsYWNrO1xuJG1kYy1lbGV2YXRpb24tdW1icmEtb3BhY2l0eTogLjI7XG4kbWRjLWVsZXZhdGlvbi1wZW51bWJyYS1vcGFjaXR5OiAuMTQ7XG4kbWRjLWVsZXZhdGlvbi1hbWJpZW50LW9wYWNpdHk6IC4xMjtcblxuJG1kYy1lbGV2YXRpb24tdW1icmEtbWFwOiAoXG4gIDA6IFwiMHB4IDBweCAwcHggMHB4XCIsXG4gIDE6IFwiMHB4IDJweCAxcHggLTFweFwiLFxuICAyOiBcIjBweCAzcHggMXB4IC0ycHhcIixcbiAgMzogXCIwcHggM3B4IDNweCAtMnB4XCIsXG4gIDQ6IFwiMHB4IDJweCA0cHggLTFweFwiLFxuICA1OiBcIjBweCAzcHggNXB4IC0xcHhcIixcbiAgNjogXCIwcHggM3B4IDVweCAtMXB4XCIsXG4gIDc6IFwiMHB4IDRweCA1cHggLTJweFwiLFxuICA4OiBcIjBweCA1cHggNXB4IC0zcHhcIixcbiAgOTogXCIwcHggNXB4IDZweCAtM3B4XCIsXG4gIDEwOiBcIjBweCA2cHggNnB4IC0zcHhcIixcbiAgMTE6IFwiMHB4IDZweCA3cHggLTRweFwiLFxuICAxMjogXCIwcHggN3B4IDhweCAtNHB4XCIsXG4gIDEzOiBcIjBweCA3cHggOHB4IC00cHhcIixcbiAgMTQ6IFwiMHB4IDdweCA5cHggLTRweFwiLFxuICAxNTogXCIwcHggOHB4IDlweCAtNXB4XCIsXG4gIDE2OiBcIjBweCA4cHggMTBweCAtNXB4XCIsXG4gIDE3OiBcIjBweCA4cHggMTFweCAtNXB4XCIsXG4gIDE4OiBcIjBweCA5cHggMTFweCAtNXB4XCIsXG4gIDE5OiBcIjBweCA5cHggMTJweCAtNnB4XCIsXG4gIDIwOiBcIjBweCAxMHB4IDEzcHggLTZweFwiLFxuICAyMTogXCIwcHggMTBweCAxM3B4IC02cHhcIixcbiAgMjI6IFwiMHB4IDEwcHggMTRweCAtNnB4XCIsXG4gIDIzOiBcIjBweCAxMXB4IDE0cHggLTdweFwiLFxuICAyNDogXCIwcHggMTFweCAxNXB4IC03cHhcIlxuKTtcblxuJG1kYy1lbGV2YXRpb24tcGVudW1icmEtbWFwOiAoXG4gIDA6IFwiMHB4IDBweCAwcHggMHB4XCIsXG4gIDE6IFwiMHB4IDFweCAxcHggMHB4XCIsXG4gIDI6IFwiMHB4IDJweCAycHggMHB4XCIsXG4gIDM6IFwiMHB4IDNweCA0cHggMHB4XCIsXG4gIDQ6IFwiMHB4IDRweCA1cHggMHB4XCIsXG4gIDU6IFwiMHB4IDVweCA4cHggMHB4XCIsXG4gIDY6IFwiMHB4IDZweCAxMHB4IDBweFwiLFxuICA3OiBcIjBweCA3cHggMTBweCAxcHhcIixcbiAgODogXCIwcHggOHB4IDEwcHggMXB4XCIsXG4gIDk6IFwiMHB4IDlweCAxMnB4IDFweFwiLFxuICAxMDogXCIwcHggMTBweCAxNHB4IDFweFwiLFxuICAxMTogXCIwcHggMTFweCAxNXB4IDFweFwiLFxuICAxMjogXCIwcHggMTJweCAxN3B4IDJweFwiLFxuICAxMzogXCIwcHggMTNweCAxOXB4IDJweFwiLFxuICAxNDogXCIwcHggMTRweCAyMXB4IDJweFwiLFxuICAxNTogXCIwcHggMTVweCAyMnB4IDJweFwiLFxuICAxNjogXCIwcHggMTZweCAyNHB4IDJweFwiLFxuICAxNzogXCIwcHggMTdweCAyNnB4IDJweFwiLFxuICAxODogXCIwcHggMThweCAyOHB4IDJweFwiLFxuICAxOTogXCIwcHggMTlweCAyOXB4IDJweFwiLFxuICAyMDogXCIwcHggMjBweCAzMXB4IDNweFwiLFxuICAyMTogXCIwcHggMjFweCAzM3B4IDNweFwiLFxuICAyMjogXCIwcHggMjJweCAzNXB4IDNweFwiLFxuICAyMzogXCIwcHggMjNweCAzNnB4IDNweFwiLFxuICAyNDogXCIwcHggMjRweCAzOHB4IDNweFwiXG4pO1xuXG4kbWRjLWVsZXZhdGlvbi1hbWJpZW50LW1hcDogKFxuICAwOiBcIjBweCAwcHggMHB4IDBweFwiLFxuICAxOiBcIjBweCAxcHggM3B4IDBweFwiLFxuICAyOiBcIjBweCAxcHggNXB4IDBweFwiLFxuICAzOiBcIjBweCAxcHggOHB4IDBweFwiLFxuICA0OiBcIjBweCAxcHggMTBweCAwcHhcIixcbiAgNTogXCIwcHggMXB4IDE0cHggMHB4XCIsXG4gIDY6IFwiMHB4IDFweCAxOHB4IDBweFwiLFxuICA3OiBcIjBweCAycHggMTZweCAxcHhcIixcbiAgODogXCIwcHggM3B4IDE0cHggMnB4XCIsXG4gIDk6IFwiMHB4IDNweCAxNnB4IDJweFwiLFxuICAxMDogXCIwcHggNHB4IDE4cHggM3B4XCIsXG4gIDExOiBcIjBweCA0cHggMjBweCAzcHhcIixcbiAgMTI6IFwiMHB4IDVweCAyMnB4IDRweFwiLFxuICAxMzogXCIwcHggNXB4IDI0cHggNHB4XCIsXG4gIDE0OiBcIjBweCA1cHggMjZweCA0cHhcIixcbiAgMTU6IFwiMHB4IDZweCAyOHB4IDVweFwiLFxuICAxNjogXCIwcHggNnB4IDMwcHggNXB4XCIsXG4gIDE3OiBcIjBweCA2cHggMzJweCA1cHhcIixcbiAgMTg6IFwiMHB4IDdweCAzNHB4IDZweFwiLFxuICAxOTogXCIwcHggN3B4IDM2cHggNnB4XCIsXG4gIDIwOiBcIjBweCA4cHggMzhweCA3cHhcIixcbiAgMjE6IFwiMHB4IDhweCA0MHB4IDdweFwiLFxuICAyMjogXCIwcHggOHB4IDQycHggN3B4XCIsXG4gIDIzOiBcIjBweCA5cHggNDRweCA4cHhcIixcbiAgMjQ6IFwiMHB4IDlweCA0NnB4IDhweFwiXG4pO1xuXG4vLyBUaGUgY3NzIHByb3BlcnR5IHVzZWQgZm9yIGVsZXZhdGlvbi4gSW4gbW9zdCBjYXNlcyB0aGlzIHNob3VsZCBub3QgYmUgY2hhbmdlZC4gSXQgaXMgZXhwb3NlZFxuLy8gYXMgYSB2YXJpYWJsZSBmb3IgYWJzdHJhY3Rpb24gLyBlYXN5IHVzZSB3aGVuIG5lZWRpbmcgdG8gcmVmZXJlbmNlIHRoZSBwcm9wZXJ0eSBkaXJlY3RseSwgZm9yXG4vLyBleGFtcGxlIGluIGEgYHdpbGwtY2hhbmdlYCBydWxlLlxuJG1kYy1lbGV2YXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGR1cmF0aW9uIHZhbHVlIGZvciBlbGV2YXRpb24gdHJhbnNpdGlvbnMuXG4kbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLWR1cmF0aW9uOiAyODBtcyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgZWFzaW5nIHZhbHVlIGZvciBlbGV2YXRpb24gdHJhbnNpdGlvbnMuXG4kbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uICFkZWZhdWx0O1xuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdXRpbGl0aWVzL3NyYy9zdmcvbWl4aW5zJztcclxuQGltcG9ydCAnfkBtYXRlcmlhbC9idXR0b24vbWl4aW5zJztcclxuXHJcbi5rbXgtaWNvbi1idXR0b24ge1xyXG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1iYXNlXztcclxuICAgIEBpbmNsdWRlIG1kYy1idXR0b24tY29ybmVyLXJhZGl1cygycHgpO1xyXG4gICAgQGluY2x1ZGUga214LWJ1dHRvbi1iYXNlO1xyXG4gICAgQGluY2x1ZGUga214LWljb24tYnV0dG9uLXN2ZztcclxuICAgIEBpbmNsdWRlIGtteC1zdmctYmFzZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAmLS1wcmltYXJ5IHtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvbnRhaW5lci1maWxsLWNvbG9yKCRrbXgtYnV0dG9uLXByaW1hcnktZmlsbC1vbi1saWdodCk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1pbmstY29sb3IoJGtteC1idXR0b24tcHJpbWFyeS1pbmstb24tbGlnaHQpO1xyXG4gICAgICAgIC8vIE5PVEU6XHJcbiAgICAgICAgLy8gS01YIFVJIGNvbXBzIHNob3cgYSBzZXJpZXMgb2YgYnV0dG9uIHN0YXRlcyB3aGljaCBjYW5ub3QgYmUgcmVhbGl6ZWQgYnkgdXNpbmcgdGhlIE1DVyBmcmFtZXdvcmsgc3RhdGUgc3RyYXRlZ3kgKHdoaWNoIHJlbGllcyBvbiBvcGFjaXR5IG9uIGdlbmVyYXRlZCBjb250ZW50IGVsZW1lbnRzLilcclxuICAgICAgICAvLyBUaGUgZm9sbG93aW5nIDQgc3RlcHMgcmVwcmVzZW50cyBhIGRlcGFydHVyZSBmcm9tIHRoZSBNQ1cgZnJhbWV3b3JrJ3MgY2FwYWJpbGl0aWVzLCBpbiBvcmRlciB0byBtYXRjaCB0aGUgQ2FyTWF4IFVJIGludGVudDpcclxuXHJcbiAgICAgICAgLy8gWzFdIFN1cHByZXNzIHRoZSBpbmNsdXNpb24gb2YgdGhlIHN0YXRlcyBmcm9tIHRoZSBNQ1cgbWRjLXN0YXRlcyBtaXhpbiAoaXQncyBvbmx5IGtlcHQgaGVyZSBmb3IgZnV0dXJlIHJlZmVyZW5jZSk6XHJcbiAgICAgICAgLy8gQGluY2x1ZGUgbWRjLXN0YXRlcygka214LWJ1dHRvbi1zZWNvbmRhcnktaW5rLW9uLWxpZ2h0KTtcclxuXHJcbiAgICAgICAgLy8gWzJdIEhpZGUgdGhlc2UgZWxlbWVudHM6XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFszXSBNYW51YWxseSBhc3NpZ24gaG92ZXIgYW5kIGZvY3VzIHN0YXRlcyB3aXRoIGNlcnRhaW4gcHJvcGVydHkgdmFsdWVzOlxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcigneWVsbG93JywgNjAwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMG1zIGxpbmVhcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFs0XSBNYW51YWxseSBhc3NpZ24gdGhlIGFjdGl2ZSAtLSBvciBcInByZXNzZWRcIiAtLSBzdGF0ZSB3aXRoIGNlcnRhaW4gcHJvcGVydHkgdmFsdWVzOlxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKFxyXG4gICAgICAgICAgICAgICAgJ3llbGxvdycsXHJcbiAgICAgICAgICAgICAgICA3MDBcclxuICAgICAgICAgICAgKTsgLy8gbm8gY29sb3IgaW4ga214IHBhbGV0dGUgaXMgY2xvc2UgdG8gdGhpcyB2YWx1ZSAtIGhhcmQtY29kaW5nIGhlcmUuXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBbNV0gQXNzaWduIGEgZGVmYXVsdCB0cmFuc2l0aW9uIHRvIHRoZSByb290IGVsZW1lbnQ6XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwbXMgbGluZWFyOyAvLyAnaG92ZXItb2ZmJyB0cmFuc2l0aW9uXHJcbiAgICB9XHJcblxyXG4gICAgJi0tc2Vjb25kYXJ5IHtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvbnRhaW5lci1maWxsLWNvbG9yKCRrbXgtYnV0dG9uLXNlY29uZGFyeS1maWxsLW9uLWxpZ2h0KTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWluay1jb2xvcigka214LWJ1dHRvbi1zZWNvbmRhcnktaW5rLW9uLWxpZ2h0KTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLS1vdXRsaW5lZF87XHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1vdXRsaW5lLXdpZHRoKDFweCk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1vdXRsaW5lLWNvbG9yKCRrbXgtYnV0dG9uLXNlY29uZGFyeS1pbmstb24tbGlnaHQpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMG1zIGxpbmVhcjsgLy8gJ2hvdmVyLW9mZicgdHJhbnNpdGlvblxyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IC8vICdob3Zlci1vZmYnIHRyYW5zaXRpb25cclxuXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kYy1idXR0b24tb3V0bGluZS1jb2xvcihrbXgtY29sb3IoJ2JsdWUnLCA2MDApKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwbXMgbGluZWFyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLW91dGxpbmUtY29sb3IoJGtteC1idXR0b24tc2Vjb25kYXJ5LWluay1vbi1saWdodCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCAyMDApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMjBtcyBsaW5lYXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLS10ZXJ0aWFyeSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1jb250YWluZXItZmlsbC1jb2xvcigka214LWJ1dHRvbi10ZXJ0aWFyeS1maWxsLW9uLWxpZ2h0KTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWluay1jb2xvcigka214LWJ1dHRvbi10ZXJ0aWFyeS1pbmstb24tbGlnaHQpO1xyXG5cclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjsgLy8gJ2hvdmVyLW9mZicgdHJhbnNpdGlvblxyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7IC8vICdob3Zlci1vZmYnIHRyYW5zaXRpb25cclxuXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAyMG1zIGxpbmVhcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDIwMCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAka214LWJ1dHRvbi10ZXJ0aWFyeS1pbmstb24tbGlnaHQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjBtcyBsaW5lYXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDIwbXMgbGluZWFyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1yb3VuZCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFRoaXMgaXMgYSBmaXggd2hlcmUgd2UgbmVlZCB0byByZW1vdmUgYWxsIHBhZGRpbmcgZnJvbSBrbXgtaWNvbi1idXR0b25zIHRoYXQgYXJlXHJcbiAgICAvLyBhbHNvIHVzZWQgYXMgdGhlIG1lbnUgaWNvbiAodXN1YWxseSB0aGlzIGlzIGdvaW5nIHRvIGJlIHRoZSAnaGFtYnVyZ2VyJyBtZW51KS5cclxuICAgIC5tZGMtdG9vbGJhciAmIHtcclxuICAgICAgICAmLm1kYy10b29sYmFyX19tZW51LWljb24ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTYgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSBjYXJkXG5cbi5tZGMtY2FyZCB7XG4gIEBpbmNsdWRlIG1kYy1jYXJkLWZpbGwtY29sb3Ioc3VyZmFjZSk7XG4gIEBpbmNsdWRlIG1kYy1jYXJkLWNvcm5lci1yYWRpdXMoMnB4KTtcbiAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbigyKTtcbiAgQGluY2x1ZGUgbWRjLWNhcmQtY29udGFpbmVyLWxheW91dF87XG59XG5cbi5tZGMtY2FyZC0tb3V0bGluZWQge1xuICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDApO1xuICBAaW5jbHVkZSBtZGMtY2FyZC1vdXRsaW5lKCRtZGMtY2FyZC1vdXRsaW5lLWNvbG9yKTtcbn1cblxuLy9cbi8vIE1lZGlhXG4vL1xuXG4ubWRjLWNhcmRfX21lZGlhIHtcbiAgQGluY2x1ZGUgbWRjLWNhcmQtbWVkaWEtYXNwZWN0LXJhdGlvLWJhc2VfO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gQ2hpbGQgZWxlbWVudCBgX19tZWRpYS1jb250ZW50YCBoYXMgYHBvc2l0aW9uOiBhYnNvbHV0ZWBcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ubWRjLWNhcmRfX21lZGlhOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi5tZGMtY2FyZF9fbWVkaWE6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubWRjLWNhcmRfX21lZGlhLS1zcXVhcmUge1xuICBAaW5jbHVkZSBtZGMtY2FyZC1tZWRpYS1hc3BlY3QtcmF0aW8oMSwgMSk7XG59XG5cbi5tZGMtY2FyZF9fbWVkaWEtLTE2LTkge1xuICBAaW5jbHVkZSBtZGMtY2FyZC1tZWRpYS1hc3BlY3QtcmF0aW8oMTYsIDkpO1xufVxuXG4ubWRjLWNhcmRfX21lZGlhLWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLy9cbi8vIFByaW1hcnkgYWN0aW9uXG4vL1xuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uIHtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzO1xuICBAaW5jbHVkZSBtZGMtY2FyZC1jb250YWluZXItbGF5b3V0XztcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIE5lZWRlZCB0byBwcmV2ZW50IHRoZSByaXBwbGUgd2FzaCBmcm9tIG92ZXJmbG93aW5nIHRoZSBjb250YWluZXIgaW4gSUUgYW5kIEVkZ2VcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4vL1xuLy8gQWN0aW9uIHJvd1xuLy9cblxuLm1kYy1jYXJkX19hY3Rpb25zIHtcbiAgQGluY2x1ZGUgbWRjLWNhcmQtYWN0aW9ucy1sYXlvdXRfO1xuXG4gIG1pbi1oZWlnaHQ6IDUycHg7XG4gIHBhZGRpbmc6IDhweDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyxcbi5tZGMtY2FyZF9fYWN0aW9uLWljb25zIHtcbiAgQGluY2x1ZGUgbWRjLWNhcmQtYWN0aW9ucy1sYXlvdXRfO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCB0ZXh0LWljb24tb24tYmFja2dyb3VuZCk7XG5cbiAgZmxleC1ncm93OiAxO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi1idXR0b25zICsgLm1kYy1jYXJkX19hY3Rpb24taWNvbnMge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCBsZWZ0LCAxNnB4KTtcbn1cblxuLy9cbi8vIEFjdGlvbiBpdGVtc1xuLy9cblxuLm1kYy1jYXJkX19hY3Rpb24ge1xuICBAaW5jbHVkZSBtZGMtY2FyZC1hY3Rpb25zLWxheW91dF8oaW5saW5lLWZsZXgpO1xuXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLy9cbi8vIEFjdGlvbiBidXR0b25zXG4vL1xuXG4ubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgcmlnaHQsIDhweCk7XG5cbiAgcGFkZGluZzogMCA4cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCByaWdodCwgMCk7XG4gIH1cbn1cblxuLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b24ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLy9cbi8vIEFjdGlvbiBpY29uc1xuLy9cblxuLm1kYy1jYXJkX19hY3Rpb24tLWljb24ge1xuICAvLyBJY29uIHRvZ2dsZXMgYXJlIHRhbGxlciB0aGFuIGJ1dHRvbnMsIHNvIHdlIG5lZWQgdG8gYWRqdXN0IHRoZWlyIG1hcmdpbnMgdG8gcHJldmVudCB0aGUgYWN0aW9uIHJvdyBmcm9tIGV4cGFuZGluZy5cbiAgbWFyZ2luOiAtNnB4IDA7XG5cbiAgLy8gU2FtZSBwYWRkaW5nIGFzIG1kYy1pY29uLWJ1dHRvbi5cbiAgcGFkZGluZzogMTJweDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24tLWljb246bm90KDpkaXNhYmxlZCkge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgdGV4dC1pY29uLW9uLWJhY2tncm91bmQpO1xufVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vXG4vLyBQdWJsaWNcbi8vXG5cbkBtaXhpbiBtZGMtY2FyZC1maWxsLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLWNhcmQtb3V0bGluZSgkY29sb3IsICR0aGlja25lc3M6ICRtZGMtY2FyZC1vdXRsaW5lLXdpZHRoKSB7XG4gIGJvcmRlcjogJHRoaWNrbmVzcyBzb2xpZCBtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLWNhcmQtY29ybmVyLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBtZGMtY2FyZC1tZWRpYS1hc3BlY3QtcmF0aW8oJHgsICR5KSB7XG4gICY6OmJlZm9yZSB7XG4gICAgLy8gVGhpcyBjbGV2ZXIgdHJpY2sgYnJvdWdodCB0byB5b3UgYnk6IGh0dHA6Ly93d3cubWFkZW15ZGF5LmRlL2Nzcy1oZWlnaHQtZXF1YWxzLXdpZHRoLXdpdGgtcHVyZS1jc3MuaHRtbFxuICAgIG1hcmdpbi10b3A6IHBlcmNlbnRhZ2UoJHkgLyAkeCk7XG4gIH1cbn1cblxuLy9cbi8vIFByaXZhdGVcbi8vXG5cbkBtaXhpbiBtZGMtY2FyZC1jb250YWluZXItbGF5b3V0XyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbkBtaXhpbiBtZGMtY2FyZC1hY3Rpb25zLWxheW91dF8oJGRpc3BsYXk6IGZsZXgpIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbkBtaXhpbiBtZGMtY2FyZC1tZWRpYS1hc3BlY3QtcmF0aW8tYmFzZV8ge1xuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcblxuJG1kYy1jYXJkLW91dGxpbmUtY29sb3I6IG1peChtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgbWRjLXRoZW1lLXByb3AtdmFsdWUoc3VyZmFjZSksIDEyJSk7XG4kbWRjLWNhcmQtb3V0bGluZS13aWR0aDogMXB4O1xuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4kbWRjLXJpcHBsZS1mYWRlLWluLWR1cmF0aW9uOiA3NW1zO1xuJG1kYy1yaXBwbGUtZmFkZS1vdXQtZHVyYXRpb246IDE1MG1zO1xuJG1kYy1yaXBwbGUtdHJhbnNsYXRlLWR1cmF0aW9uOiAyMjVtcztcbiRtZGMtc3RhdGVzLXdhc2gtZHVyYXRpb246IDE1bXM7XG5cbiRtZGMtcmlwcGxlLWRhcmstaW5rLW9wYWNpdGllczogKFxuICBob3ZlcjogLjA0LFxuICBmb2N1czogLjEyLFxuICBwcmVzczogLjE2LFxuICBzZWxlY3RlZDogLjA4LFxuICBhY3RpdmF0ZWQ6IC4xMlxuKSAhZGVmYXVsdDtcblxuJG1kYy1yaXBwbGUtbGlnaHQtaW5rLW9wYWNpdGllczogKFxuICBob3ZlcjogLjA4LFxuICBmb2N1czogLjI0LFxuICBwcmVzczogLjMyLFxuICBzZWxlY3RlZDogLjE2LFxuICBhY3RpdmF0ZWQ6IC4yNFxuKSAhZGVmYXVsdDtcblxuLy8gTGVnYWN5XG5cbiRtZGMtcmlwcGxlLXByZXNzZWQtZGFyay1pbmstb3BhY2l0eTogLjE2O1xuJG1kYy1yaXBwbGUtcHJlc3NlZC1saWdodC1pbmstb3BhY2l0eTogLjMyO1xuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4vLyBDcmVhdGVzIGEgcnVsZSB0aGF0IHdpbGwgYmUgYXBwbGllZCB3aGVuIGFuIE1EQyBXZWIgY29tcG9uZW50IGlzIHdpdGhpbiB0aGUgY29udGV4dCBvZiBhbiBSVEwgbGF5b3V0LlxuLy9cbi8vIFVzYWdlIEV4YW1wbGU6XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgIGxlZnQ6IDA7XG4vL1xuLy8gICBAaW5jbHVkZSBtZGMtcnRsIHtcbi8vICAgICBsZWZ0OiBhdXRvO1xuLy8gICAgIHJpZ2h0OiAwO1xuLy8gICB9XG4vL1xuLy8gICAmX19iYXIge1xuLy8gICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4vLyAgICAgQGluY2x1ZGUgbWRjLXJ0bChcIi5tZGMtZm9vXCIpIHtcbi8vICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy8gICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG4vL1xuLy8gLm1kYy1mb28tLW1vZCB7XG4vLyAgIHBhZGRpbmctbGVmdDogNHB4O1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgcGFkZGluZy1sZWZ0OiBhdXRvO1xuLy8gICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcbi8vICAgfVxuLy8gfVxuLy8gYGBgXG4vL1xuLy8gTm90ZSB0aGF0IHRoaXMgbWl4aW4gd29ya3MgYnkgY2hlY2tpbmcgZm9yIGFuIGFuY2VzdG9yIGVsZW1lbnQgd2l0aCBgW2Rpcj1cInJ0bFwiXWAuXG4vLyBBcyBhIHJlc3VsdCwgbmVzdGVkIGBkaXJgIHZhbHVlcyBhcmUgbm90IHN1cHBvcnRlZDpcbi8vXG4vLyBgYGBodG1sXG4vLyA8aHRtbCBkaXI9XCJydGxcIj5cbi8vICAgPCEtLSAuLi4gLS0+XG4vLyAgIDxkaXYgZGlyPVwibHRyXCI+XG4vLyAgICAgPGRpdiBjbGFzcz1cIm1kYy1mb29cIj5TdHlsZWQgaW5jb3JyZWN0bHkgYXMgUlRMITwvZGl2PlxuLy8gICA8L2Rpdj5cbi8vIDwvaHRtbD5cbi8vIGBgYFxuLy9cbi8vIEluIHRoZSBmdXR1cmUsIHNlbGVjdG9ycyBzdWNoIGFzIHRoZSBgOmRpcmAgcHNldWRvLWNsYXNzIChodHRwOi8vbWRuLmlvL2Nzcy86ZGlyKSB3aWxsIGhlbHAgdXMgbWl0aWdhdGUgdGhpcy5cbkBtaXhpbiBtZGMtcnRsKCRyb290LXNlbGVjdG9yOiBudWxsKSB7XG4gIEBpZiAoJHJvb3Qtc2VsZWN0b3IpIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICAjeyRyb290LXNlbGVjdG9yfVtkaXI9XCJydGxcIl0gJixcbiAgICAgIFtkaXI9XCJydGxcIl0gI3skcm9vdC1zZWxlY3Rvcn0gJiB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2Rpcj1cInJ0bFwiXSAmLFxuICAgICZbZGlyPVwicnRsXCJdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBUYWtlcyBhIGJhc2UgYm94LW1vZGVsIHByb3BlcnR5IG5hbWUgKGBtYXJnaW5gLCBgYm9yZGVyYCwgYHBhZGRpbmdgLCBldGMuKSBhbG9uZyB3aXRoIGFcbi8vIGRlZmF1bHQgZGlyZWN0aW9uIChgbGVmdGAgb3IgYHJpZ2h0YCkgYW5kIHZhbHVlLCBhbmQgZW1pdHMgcnVsZXMgd2hpY2ggYXBwbHkgdGhlIGdpdmVuIHZhbHVlIHRvIHRoZVxuLy8gc3BlY2lmaWVkIGRpcmVjdGlvbiBieSBkZWZhdWx0IGFuZCB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uIGluIFJUTC5cbi8vXG4vLyBGb3IgZXhhbXBsZTpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIGxlZnQsIDhweCk7XG4vLyB9XG4vLyBgYGBcbi8vXG4vLyBpcyBlcXVpdmFsZW50IHRvOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgbWFyZ2luLWxlZnQ6IDhweDtcbi8vICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDA7XG4vLyAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4vLyAgIH1cbi8vIH1cbi8vIGBgYFxuLy9cbi8vIHdoZXJlYXM6XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCByaWdodCwgOHB4KTtcbi8vIH1cbi8vIGBgYFxuLy9cbi8vIGlzIGVxdWl2YWxlbnQgdG86XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBtYXJnaW4tbGVmdDogMDtcbi8vICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4vL1xuLy8gICBAaW5jbHVkZSBtZGMtcnRsIHtcbi8vICAgICBtYXJnaW4tbGVmdDogOHB4O1xuLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vICAgfVxuLy8gfVxuLy8gYGBgXG4vL1xuLy8gWW91IGNhbiBhbHNvIHBhc3MgYW4gb3B0aW9uYWwgNHRoIGAkcm9vdC1zZWxlY3RvcmAgYXJndW1lbnQgd2hpY2ggd2lsbCBiZSBmb3J3YXJkZWQgdG8gYG1kYy1ydGxgLFxuLy8gZS5nLiBgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgOHB4LCBcIi5tZGMtY29tcG9uZW50XCIpYC5cbi8vXG4vLyBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB3aWxsIGFsd2F5cyB6ZXJvIG91dCB0aGUgb3JpZ2luYWwgdmFsdWUgaW4gYW4gUlRMIGNvbnRleHQuXG4vLyBJZiB5b3UncmUgdHJ5aW5nIHRvIGZsaXAgdGhlIHZhbHVlcywgdXNlIGBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eSgpYCBpbnN0ZWFkLlxuQG1peGluIG1kYy1ydGwtcmVmbGV4aXZlLWJveCgkYmFzZS1wcm9wZXJ0eSwgJGRlZmF1bHQtZGlyZWN0aW9uLCAkdmFsdWUsICRyb290LXNlbGVjdG9yOiBudWxsKSB7XG4gIEBpZiAoaW5kZXgoKHJpZ2h0LCBsZWZ0KSwgJGRlZmF1bHQtZGlyZWN0aW9uKSA9PSBudWxsKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBkZWZhdWx0IGRpcmVjdGlvbjogJyN7JGRlZmF1bHQtZGlyZWN0aW9ufScuIFBsZWFzZSBzcGVjaWZpeSBlaXRoZXIgJ3JpZ2h0JyBvciAnbGVmdCcuXCI7XG4gIH1cblxuICAkbGVmdC12YWx1ZTogJHZhbHVlO1xuICAkcmlnaHQtdmFsdWU6IDA7XG5cbiAgQGlmICgkZGVmYXVsdC1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICAkbGVmdC12YWx1ZTogMDtcbiAgICAkcmlnaHQtdmFsdWU6ICR2YWx1ZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KCRiYXNlLXByb3BlcnR5LCAkbGVmdC12YWx1ZSwgJHJpZ2h0LXZhbHVlLCAkcm9vdC1zZWxlY3Rvcik7XG59XG5cbi8vIFRha2VzIGEgYmFzZSBwcm9wZXJ0eSBhbmQgZW1pdHMgcnVsZXMgdGhhdCBhc3NpZ24gPGJhc2UtcHJvcGVydHk+LWxlZnQgdG8gPGxlZnQtdmFsdWU+IGFuZFxuLy8gPGJhc2UtcHJvcGVydHk+LXJpZ2h0IHRvIDxyaWdodC12YWx1ZT4gaW4gYSBMVFIgY29udGV4dCwgYW5kIHZpY2UgdmVyc2EgaW4gYSBSVEwgY29udGV4dC5cbi8vIEZvciBleGFtcGxlOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkobWFyZ2luLCBhdXRvLCAxMnB4KTtcbi8vIH1cbi8vIGBgYFxuLy9cbi8vIGlzIGVxdWl2YWxlbnQgdG86XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBtYXJnaW4tbGVmdDogYXV0bztcbi8vICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4vLyAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuLy8gICB9XG4vLyB9XG4vLyBgYGBcbi8vXG4vLyBBbiBvcHRpb25hbCA0dGggYCRyb290LXNlbGVjdG9yYCBhcmd1bWVudCBjYW4gYmUgZ2l2ZW4sIHdoaWNoIHdpbGwgYmUgcGFzc2VkIHRvIGBtZGMtcnRsYC5cbkBtaXhpbiBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eSgkYmFzZS1wcm9wZXJ0eSwgJGxlZnQtdmFsdWUsICRyaWdodC12YWx1ZSwgJHJvb3Qtc2VsZWN0b3I6IG51bGwpIHtcbiAgJHByb3AtbGVmdDogI3skYmFzZS1wcm9wZXJ0eX0tbGVmdDtcbiAgJHByb3AtcmlnaHQ6ICN7JGJhc2UtcHJvcGVydHl9LXJpZ2h0O1xuXG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlKCRwcm9wLWxlZnQsICRsZWZ0LXZhbHVlLCAkcHJvcC1yaWdodCwgJHJpZ2h0LXZhbHVlLCAkcm9vdC1zZWxlY3Rvcik7XG59XG5cbi8vIFRha2VzIGFuIGFyZ3VtZW50IHNwZWNpZnlpbmcgYSBob3Jpem9udGFsIHBvc2l0aW9uIHByb3BlcnR5IChlaXRoZXIgXCJsZWZ0XCIgb3IgXCJyaWdodFwiKSBhcyB3ZWxsXG4vLyBhcyBhIHZhbHVlLCBhbmQgYXBwbGllcyB0aGF0IHZhbHVlIHRvIHRoZSBzcGVjaWZpZWQgcG9zaXRpb24gaW4gYSBMVFIgY29udGV4dCwgYW5kIGZsaXBzIGl0IGluIGFcbi8vIFJUTCBjb250ZXh0LiBGb3IgZXhhbXBsZTpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsIDApO1xuLy8gfVxuLy8gYGBgXG4vL1xuLy8gaXMgZXF1aXZhbGVudCB0bzpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIGxlZnQ6IDA7XG4vLyAgIHJpZ2h0OiBpbml0aWFsO1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbGVmdDogaW5pdGlhbDtcbi8vICAgICByaWdodDogMDtcbi8vICAgfVxuLy8gfVxuLy8gYGBgXG4vL1xuLy8gQW4gb3B0aW9uYWwgdGhpcmQgJHJvb3Qtc2VsZWN0b3IgYXJndW1lbnQgbWF5IGFsc28gYmUgZ2l2ZW4sIHdoaWNoIGlzIHBhc3NlZCB0byBgbWRjLXJ0bGAuXG5AbWl4aW4gbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24oJHBvc2l0aW9uLXByb3BlcnR5LCAkdmFsdWUsICRyb290LXNlbGVjdG9yOiBudWxsKSB7XG4gIEBpZiAoaW5kZXgoKHJpZ2h0LCBsZWZ0KSwgJHBvc2l0aW9uLXByb3BlcnR5KSA9PSBudWxsKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBwb3NpdGlvbiAje3Bvc2l0aW9uLXByb3BlcnR5fS4gUGxlYXNlIHNwZWNpZml5IGVpdGhlciByaWdodCBvciBsZWZ0XCI7XG4gIH1cblxuICAvLyBUT0RPOiBcImluaXRpYWxcIiBpcyBub3Qgc3VwcG9ydGVkIGluIElFIDExLiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1pbml0aWFsLXZhbHVlXG4gICRsZWZ0LXZhbHVlOiAkdmFsdWU7XG4gICRyaWdodC12YWx1ZTogaW5pdGlhbDtcblxuICBAaWYgKCRwb3NpdGlvbi1wcm9wZXJ0eSA9PSByaWdodCkge1xuICAgICRyaWdodC12YWx1ZTogJHZhbHVlO1xuICAgICRsZWZ0LXZhbHVlOiBpbml0aWFsO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUobGVmdCwgJGxlZnQtdmFsdWUsIHJpZ2h0LCAkcmlnaHQtdmFsdWUsICRyb290LXNlbGVjdG9yKTtcbn1cblxuLy8gVGFrZXMgcGFpciBvZiBwcm9wZXJ0aWVzIHdpdGggdmFsdWVzIGFzIGFyZ3VtZW50cyBhbmQgZmxpcHMgaXQgaW4gUlRMIGNvbnRleHQuXG4vLyBGb3IgZXhhbXBsZTpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlKGxlZnQsIDJweCwgcmlnaHQsIDVweCk7XG4vLyB9XG4vLyBgYGBcbi8vXG4vLyBpcyBlcXVpdmFsZW50IHRvOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgbGVmdDogMnB4O1xuLy8gICByaWdodDogNXB4O1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgcmlnaHQ6IDJweDtcbi8vICAgICBsZWZ0OiA1cHg7XG4vLyAgIH1cbi8vIH1cbi8vIGBgYFxuLy9cbi8vIEFuIG9wdGlvbmFsIGZpZnRoIGAkcm9vdC1zZWxlY3RvcmAgYXJndW1lbnQgbWF5IGFsc28gYmUgZ2l2ZW4sIHdoaWNoIGlzIHBhc3NlZCB0byBgbWRjLXJ0bGAuXG5AbWl4aW4gbWRjLXJ0bC1yZWZsZXhpdmUoXG4gICRsZWZ0LXByb3BlcnR5LFxuICAkbGVmdC12YWx1ZSxcbiAgJHJpZ2h0LXByb3BlcnR5LFxuICAkcmlnaHQtdmFsdWUsXG4gICRyb290LXNlbGVjdG9yOiBudWxsXG4pIHtcbiAgLyogQG5vZmxpcCAqL1xuICAjeyRsZWZ0LXByb3BlcnR5fTogJGxlZnQtdmFsdWU7XG5cbiAgLyogQG5vZmxpcCAqL1xuICAjeyRyaWdodC1wcm9wZXJ0eX06ICRyaWdodC12YWx1ZTtcblxuICBAaW5jbHVkZSBtZGMtcnRsKCRyb290LXNlbGVjdG9yKSB7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgICN7JGxlZnQtcHJvcGVydHl9OiAkcmlnaHQtdmFsdWU7XG5cbiAgICAvKiBAbm9mbGlwICovXG4gICAgI3skcmlnaHQtcHJvcGVydHl9OiAkbGVmdC12YWx1ZTtcbiAgfVxufVxuIiwiQGltcG9ydCAnfkBtYXRlcmlhbC9jYXJkL21kYy1jYXJkJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuXHJcbi5rbXgtY2FyZCB7XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgQGV4dGVuZCAubWRjLWNhcmRfX21lZGlhLWNvbnRlbnQ7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LW1haW47XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy1jYXJkX19hY3Rpb25zICZfX2FjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogMCBzaXplKCdzJyk7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBzaXplKCdzJyk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4vLyBNREMgUmlwcGxlIGtleWZyYW1lcyBhcmUgc3BsaXQgaW50byB0aGVpciBvd24gZmlsZSBzbyB0aGF0IF9taXhpbnMuc2NzcyBjYW4gcmVseSBvbiB0aGVtLlxuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLXJpcHBsZS1rZXlmcmFtZXNfIHtcbiAgQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiB7XG4gICAgZnJvbSB7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkbWRjLWFuaW1hdGlvbi1zdGFuZGFyZC1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgICAvLyBOT1RFOiBGb3IgdGhlc2Uga2V5ZnJhbWVzLCB3ZSBkbyBub3QgbmVlZCBjdXN0b20gcHJvcGVydHkgZmFsbGJhY2tzIGJlY2F1c2UgdGhleSBhcmUgb25seVxuICAgICAgLy8gdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGAubWRjLXJpcHBsZS11cGdyYWRlZGAuIFNpbmNlIE1EQ1JpcHBsZUZvdW5kYXRpb24gY2hlY2tzIHRvIGVuc3VyZVxuICAgICAgLy8gdGhhdCBjdXN0b20gcHJvcGVydGllcyBhcmUgc3VwcG9ydGVkIHdpdGhpbiB0aGUgYnJvd3NlciBiZWZvcmUgYWRkaW5nIHRoaXMgY2xhc3MsIHdlIGNhblxuICAgICAgLy8gc2FmZWx5IHVzZSB0aGVtIHdpdGhvdXQgYSBmYWxsYmFjay5cbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0LCAwKSkgc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIHtcbiAgICBmcm9tIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQge1xuICAgIGZyb20ge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4kbWRjLWFuaW1hdGlvbi1kZWNlbGVyYXRpb24tY3VydmUtdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgLjIsIDEpICFkZWZhdWx0O1xuJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjQsIDAsIC4yLCAxKSAhZGVmYXVsdDtcbiRtZGMtYW5pbWF0aW9uLWFjY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNCwgMCwgMSwgMSkgIWRlZmF1bHQ7XG4kbWRjLWFuaW1hdGlvbi1zaGFycC1jdXJ2ZS10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNCwgMCwgLjYsIDEpICFkZWZhdWx0O1xuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2Jhc2UvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9rZXlmcmFtZXNcIjtcblxuLy8gRW5zdXJlIHRoYXQgc3R5bGVzIG5lZWRlZCBieSBhbnkgY29tcG9uZW50IHVzaW5nIE1EQyBSaXBwbGUgYXJlIGVtaXR0ZWQsIGJ1dCBvbmx5IG9uY2UuXG4vLyAoRXZlcnkgY29tcG9uZW50IHVzaW5nIE1EQyBSaXBwbGUgaW1wb3J0cyB0aGVzZSBtaXhpbnMsIGJ1dCBkb2Vzbid0IG5lY2Vzc2FyaWx5IGltcG9ydCBtZGMtcmlwcGxlLnNjc3MuKVxuQGluY2x1ZGUgbWRjLWJhc2UtZW1pdC1vbmNlKFwibWRjLXJpcHBsZS9jb21tb25cIikge1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLWtleWZyYW1lc187XG5cbiAgLy8gU3R5bGVzIHVzZWQgdG8gZGV0ZWN0IGJ1Z2d5IGJlaGF2aW9yIG9mIENTUyBjdXN0b20gcHJvcGVydGllcyBpbiBFZGdlLlxuICAvLyBTZWU6IGh0dHBzOi8vZGV2ZWxvcGVyLm1pY3Jvc29mdC5jb20vZW4tdXMvbWljcm9zb2Z0LWVkZ2UvcGxhdGZvcm0vaXNzdWVzLzExNDk1NDQ4L1xuICAvLyBUaGlzIGlzIGluY2x1ZGVkIGluIF9taXhpbnMuc2NzcyByYXRoZXIgdGhhbiBtZGMtcmlwcGxlLnNjc3Mgc28gdGhhdCBpdCB3aWxsIGJlXG4gIC8vIHByZXNlbnQgZm9yIG90aGVyIGNvbXBvbmVudHMgd2hpY2ggcmVseSBvbiByaXBwbGUgYXMgd2VsbCBhcyBtZGMtcmlwcGxlIGl0c2VsZi5cbiAgLm1kYy1yaXBwbGUtc3VyZmFjZS0tdGVzdC1lZGdlLXZhci1idWcge1xuICAgIC0tbWRjLXJpcHBsZS1zdXJmYWNlLXRlc3QtZWRnZS12YXI6IDFweCBzb2xpZCAjMDAwO1xuXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlcjogdmFyKC0tbWRjLXJpcHBsZS1zdXJmYWNlLXRlc3QtZWRnZS12YXIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1jaGVja2JveC1jb250YWluZXIta2V5ZnJhbWVzXyhcbiAgJGZyb20tc3Ryb2tlLWNvbG9yLFxuICAkdG8tc3Ryb2tlLWNvbG9yLFxuICAkZnJvbS1maWxsLWNvbG9yLFxuICAkdG8tZmlsbC1jb2xvcixcbiAgJHVpZCkge1xuICBAa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLWluLWJhY2tncm91bmQtI3skdWlkfSB7XG4gICAgMCUge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkZnJvbS1zdHJva2UtY29sb3IpO1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGZyb20tZmlsbC1jb2xvcik7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJvcmRlci1jb2xvciwgJHRvLXN0cm9rZS1jb2xvcik7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkdG8tZmlsbC1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtZmFkZS1vdXQtYmFja2dyb3VuZC0jeyR1aWR9IHtcbiAgICAwJSxcbiAgICA4MCUge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkdG8tc3Ryb2tlLWNvbG9yKTtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICR0by1maWxsLWNvbG9yKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJvcmRlci1jb2xvciwgJGZyb20tc3Ryb2tlLWNvbG9yKTtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRmcm9tLWZpbGwtY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC11bmNoZWNrZWQtY2hlY2tlZC1jaGVja21hcmstcGF0aCB7XG4gIDAlLFxuICA1MCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkbWRjLWNoZWNrYm94LW1hcmstcGF0aC1sZW5ndGhfO1xuICB9XG5cbiAgNTAlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkbWRjLWFuaW1hdGlvbi1kZWNlbGVyYXRpb24tY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUtbWl4ZWRtYXJrIHtcbiAgMCUsXG4gIDY4LjIlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgfVxuXG4gIDY4LjIlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMCwgMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1jaGVja2VkLXVuY2hlY2tlZC1jaGVja21hcmstcGF0aCB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRtZGMtYW5pbWF0aW9uLWFjY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgb3BhY2l0eTogMTtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkbWRjLWNoZWNrYm94LW1hcmstcGF0aC1sZW5ndGhfICogLTE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtY2hlY2tlZC1pbmRldGVybWluYXRlLWNoZWNrbWFyayB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRtZGMtYW5pbWF0aW9uLWRlY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtY2hlY2ttYXJrIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtZWFzaW5nLWZ1bmN0aW9uXztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtY2hlY2tlZC1pbmRldGVybWluYXRlLW1peGVkbWFyayB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IG1kYy1hbmltYXRpb24tZGVjZWxlcmF0aW9uLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtbWl4ZWRtYXJrIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtZWFzaW5nLWZ1bmN0aW9uXztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDMxNWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLXVuY2hlY2tlZC1taXhlZG1hcmsge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAzMi44JSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5cbiRtZGMtY2hlY2tib3gtbWFyay1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tcHJpbWFyeSk7XG4kbWRjLWNoZWNrYm94LWJvcmRlci1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjU0KTtcbiRtZGMtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4yNik7XG4kbWRjLWNoZWNrYm94LWJhc2VsaW5lLXRoZW1lLWNvbG9yOiBzZWNvbmRhcnk7XG5cbiRtZGMtY2hlY2tib3gtdG91Y2gtYXJlYTogNDBweDtcbiRtZGMtY2hlY2tib3gtc2l6ZTogMThweDtcbiRtZGMtY2hlY2tib3gtdWktcGN0OiBwZXJjZW50YWdlKCRtZGMtY2hlY2tib3gtc2l6ZSAvICRtZGMtY2hlY2tib3gtdG91Y2gtYXJlYSk7XG4kbWRjLWNoZWNrYm94LW1hcmstc3Ryb2tlLXNpemU6IDIvMTUgKiAkbWRjLWNoZWNrYm94LXNpemU7XG4kbWRjLWNoZWNrYm94LWJvcmRlci13aWR0aDogMnB4O1xuJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uOiA5MG1zO1xuJG1kYy1jaGVja2JveC1pdGVtLXNwYWNpbmc6IDRweDtcbiRtZGMtY2hlY2tib3gtZm9jdXMtaW5kaWNhdG9yLW9wYWNpdHk6IG1hcC1nZXQoJG1kYy1yaXBwbGUtZGFyay1pbmstb3BhY2l0aWVzLCBmb2N1cyk7XG5cbi8vIE1hbnVhbCBjYWxjdWxhdGlvbiBkb25lIG9uIFNWR1xuJG1kYy1jaGVja2JveC1tYXJrLXBhdGgtbGVuZ3RoXzogMjkuNzgzMzM4NTtcbiRtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLWVhc2luZy1mdW5jdGlvbl86IGN1YmljLWJlemllciguMTQsIDAsIDAsIDEpO1xuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9jb21tb25cIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL21peGluc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgY2hlY2tib3hcblxuLm1kYy1jaGVja2JveCB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1iYXNlXztcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRtZGMtY2hlY2tib3gtYmFzZWxpbmUtdGhlbWUtY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy11bmJvdW5kZWQ7XG59XG5cbkBhdC1yb290IHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWluay1jb2xvcigkbWRjLWNoZWNrYm94LW1hcmstY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtZm9jdXMtaW5kaWNhdG9yLWNvbG9yKCRtZGMtY2hlY2tib3gtYmFzZWxpbmUtdGhlbWUtY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtY29udGFpbmVyLWNvbG9ycztcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWRpc2FibGVkLWNvbnRhaW5lci1jb2xvcl87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgbWFyZ2luOiAwIDFweDsgIC8vIEV4dHJhIGhvcml6b250YWwgc3BhY2UgYXJvdW5kIG1peGVkbWFyayBzeW1ib2wuXG4gIH1cbn1cblxuLy8gTmVlZGVkIHRvIGRpc2FibGUgaG92ZXIgZWZmZWN0cyBvbiBDU1Mtb25seSAobm9uLUpTKSBjaGVja2JveGVzXG4ubWRjLWNoZWNrYm94LS1kaXNhYmxlZCB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC0tZGlzYWJsZWRfO1xufVxuXG4ubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kXztcbn1cblxuLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19jaGVja21hcmtfO1xufVxuXG4ubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGhfO1xufVxuXG4ubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX21peGVkbWFya187XG59XG5cbi8vIEpTIGNoZWNrYm94XG4ubWRjLWNoZWNrYm94LS11cGdyYWRlZCB7XG4gIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4gIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayxcbiAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgsXG4gIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19jaGlsZC0tdXBncmFkZWRfO1xuICB9XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0ge1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtLWFuaW1fO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLS1tYXJrZWRfO1xuXG4gIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoLS1tYXJrZWRfO1xuICB9XG59XG5cbi8vIFRoZSBmcmFtZSdzIDo6YmVmb3JlIGVsZW1lbnQgaXMgdXNlZCBhcyBhIGZvY3VzIGluZGljYXRvciBmb3IgdGhlIGNoZWNrYm94XG4ubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2ZvY3VzLWluZGljYXRvcl87XG59XG5cbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19mb2N1cy1pbmRpY2F0b3ItLXJpcHBsZS11cGdyYWRlZC11bmJvdW5kZWRfO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpmb2N1cyB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fZm9jdXMtaW5kaWNhdG9yLS1mb2N1c2VkXztcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2wge1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sXztcblxuICAmOmRpc2FibGVkIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtLWRpc2FibGVkXztcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19jaGVja21hcmstLWNoZWNrZWRfO1xuICB9XG5cbiAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX21peGVkbWFyay0tY2hlY2tlZF87XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLS1pbmRldGVybWluYXRlXztcbiAgfVxuXG4gIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19taXhlZG1hcmstLWluZGV0ZXJtaW5hdGVfO1xuICB9XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTYgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYW5pbWF0aW9uL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL2tleWZyYW1lc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vXG4vLyBQdWJsaWNcbi8vXG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtY29udGFpbmVyLWNvbG9ycyhcbiAgJHVubWFya2VkLXN0cm9rZS1jb2xvcjogJG1kYy1jaGVja2JveC1ib3JkZXItY29sb3IsXG4gICR1bm1hcmtlZC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgJG1hcmtlZC1maWxsLWNvbG9yOiAkbWRjLWNoZWNrYm94LWJhc2VsaW5lLXRoZW1lLWNvbG9yLFxuICAkZ2VuZXJhdGUta2V5ZnJhbWVzOiB0cnVlKSB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC11bm1hcmtlZC1iYWNrZ3JvdW5kLXNlbGVjdG9yLWVuYWJsZWRfIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICR1bm1hcmtlZC1zdHJva2UtY29sb3IpO1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICR1bm1hcmtlZC1maWxsLWNvbG9yKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1tYXJrZWQtYmFja2dyb3VuZC1zZWxlY3Rvci1lbmFibGVkXyB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkbWFya2VkLWZpbGwtY29sb3IpO1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRtYXJrZWQtZmlsbC1jb2xvcik7XG4gIH1cblxuICBAaWYgJGdlbmVyYXRlLWtleWZyYW1lcyB7XG4gICAgJHVpZDogbWRjLWNoZWNrYm94LWNvbnRhaW5lci1rZXlmcmFtZXMtdWlkXygpO1xuICAgICRhbmltLXNlbGVjdG9yOiBpZigmLCBcIiYubWRjLWNoZWNrYm94LS1hbmltXCIsIFwiLm1kYy1jaGVja2JveC0tYW5pbVwiKTtcblxuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC1jb250YWluZXIta2V5ZnJhbWVzXyhcbiAgICAgICRmcm9tLXN0cm9rZS1jb2xvcjogJHVubWFya2VkLXN0cm9rZS1jb2xvcixcbiAgICAgICR0by1zdHJva2UtY29sb3I6ICRtYXJrZWQtZmlsbC1jb2xvcixcbiAgICAgICRmcm9tLWZpbGwtY29sb3I6ICR1bm1hcmtlZC1maWxsLWNvbG9yLFxuICAgICAgJHRvLWZpbGwtY29sb3I6ICRtYXJrZWQtZmlsbC1jb2xvcixcbiAgICAgICR1aWQ6ICR1aWQpO1xuXG4gICAgI3skYW5pbS1zZWxlY3Rvcn0ge1xuICAgICAgJi11bmNoZWNrZWQtY2hlY2tlZCxcbiAgICAgICYtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUge1xuICAgICAgICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IG1kYy1jaGVja2JveC1mYWRlLWluLWJhY2tncm91bmQtI3skdWlkfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLWNoZWNrZWQtdW5jaGVja2VkLFxuICAgICAgJi1pbmRldGVybWluYXRlLXVuY2hlY2tlZCB7XG4gICAgICAgIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogbWRjLWNoZWNrYm94LWZhZGUtb3V0LWJhY2tncm91bmQtI3skdWlkfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNoZWNrYm94LWluay1jb2xvcigkY29sb3IpIHtcbiAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxuXG4gIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtZm9jdXMtaW5kaWNhdG9yLWNvbG9yKCRjb2xvcikge1xuICAvLyBUaGUgOjpiZWZvcmUgZWxlbWVudCBpcyB1c2VkIGFzIGEgZm9jdXMgaW5kaWNhdG9yIGZvciB0aGUgY2hlY2tib3hcbiAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IsICRlZGdlT3B0T3V0OiB0cnVlKTtcbiAgfVxufVxuXG4vL1xuLy8gUHJpdmF0ZVxuLy9cblxuQG1peGluIG1kYy1jaGVja2JveC1iYXNlXyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDAgJG1kYy1jaGVja2JveC1zaXplO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRtZGMtY2hlY2tib3gtc2l6ZTtcbiAgaGVpZ2h0OiAkbWRjLWNoZWNrYm94LXNpemU7XG4gIHBhZGRpbmc6ICgkbWRjLWNoZWNrYm94LXRvdWNoLWFyZWEgLSAkbWRjLWNoZWNrYm94LXNpemUpIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveC1kaXNhYmxlZC1jb250YWluZXItY29sb3JfIHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LXVubWFya2VkLWJhY2tncm91bmQtc2VsZWN0b3ItZGlzYWJsZWRfIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRtZGMtY2hlY2tib3gtZGlzYWJsZWQtY29sb3IpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LW1hcmtlZC1iYWNrZ3JvdW5kLXNlbGVjdG9yLWRpc2FibGVkXyB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCB0cmFuc3BhcmVudCk7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJG1kYy1jaGVja2JveC1kaXNhYmxlZC1jb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1jaGVja2JveC0tZGlzYWJsZWRfIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hpbGQtLWNvdmVyLXBhcmVudF8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hpbGQtLXVwZ3JhZGVkXyB7XG4gIC8vIER1ZSB0byB0aGUgbXlyaWFkIG9mIHNlbGVjdG9yIGNvbWJvcyB1c2VkIHRvIHByb3Blcmx5IHN0eWxlIGEgQ1NTLW9ubHkgY2hlY2tib3gsIGFsbCBvZlxuICAvLyB3aGljaCBoYXZlIHZhcnlpbmcgc2VsZWN0b3IgcHJlY2VkZW5jZSBhbmQgbWFrZSB1c2Ugb2YgdHJhbnNpdGlvbnMsIGl0IGlzIGNsZWFuZXIgYW5kIG1vcmVcbiAgLy8gZWZmaWNpZW50IGhlcmUgdG8gc2ltcGx5IHVzZSAhaW1wb3J0YW50LCBzaW5jZSB0aGUgbWRjLWNoZWNrYm94LS1hbmltLSogY2xhc3NlcyB3aWxsIHRha2VcbiAgLy8gb3ZlciBmcm9tIGhlcmUuXG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gQW5pbWF0aW9uXG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtLWFuaW1fIHtcbiAgJG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoYW5nZS1kdXJhdGlvbl86IDUwMG1zO1xuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlXG5cbiAgJi11bmNoZWNrZWQtY2hlY2tlZCxcbiAgJi11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZSxcbiAgJi1jaGVja2VkLXVuY2hlY2tlZCxcbiAgJi1pbmRldGVybWluYXRlLXVuY2hlY2tlZCB7XG4gICAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246ICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiAqIDI7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgfVxuICB9XG5cbiAgJi11bmNoZWNrZWQtY2hlY2tlZCB7XG4gICAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgge1xuICAgICAgLy8gSW5zdGVhZCBvZiBkZWxheWluZyB0aGUgYW5pbWF0aW9uLCB3ZSBzaW1wbHkgbXVsdGlwbHkgaXRzIGxlbmd0aCBieSAyIGFuZCBiZWdpbiB0aGVcbiAgICAgIC8vIGFuaW1hdGlvbiBhdCA1MCUgaW4gb3JkZXIgdG8gcHJldmVudCBhIGZsYXNoIG9mIHN0eWxlcyBhcHBsaWVkIHRvIGEgY2hlY2tlZCBjaGVja21hcmtcbiAgICAgIC8vIGFzIHRoZSBiYWNrZ3JvdW5kIGlzIGZhZGluZyBpbiBiZWZvcmUgdGhlIGFuaW1hdGlvbiBiZWdpbnMuXG4gICAgICBhbmltYXRpb246ICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiAqIDIgbGluZWFyIDBzIG1kYy1jaGVja2JveC11bmNoZWNrZWQtY2hlY2tlZC1jaGVja21hcmstcGF0aDtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZSB7XG4gICAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICAgIGFuaW1hdGlvbjogJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUtbWl4ZWRtYXJrO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLWNoZWNrZWQtdW5jaGVja2VkIHtcbiAgICAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gICAgICBhbmltYXRpb246ICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiBsaW5lYXIgMHMgbWRjLWNoZWNrYm94LWNoZWNrZWQtdW5jaGVja2VkLWNoZWNrbWFyay1wYXRoO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLWNoZWNrZWQtaW5kZXRlcm1pbmF0ZSB7XG4gICAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgICAgIGFuaW1hdGlvbjogJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtY2hlY2tlZC1pbmRldGVybWluYXRlLWNoZWNrbWFyaztcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICAgIGFuaW1hdGlvbjogJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtY2hlY2tlZC1pbmRldGVybWluYXRlLW1peGVkbWFyaztcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi1pbmRldGVybWluYXRlLWNoZWNrZWQge1xuICAgIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gICAgICBhbmltYXRpb246ICRtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGFuZ2UtZHVyYXRpb25fIGxpbmVhciAwcyBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLWNoZWNrbWFyaztcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICAgIGFuaW1hdGlvbjogJG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoYW5nZS1kdXJhdGlvbl8gbGluZWFyIDBzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtbWl4ZWRtYXJrO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLWluZGV0ZXJtaW5hdGUtdW5jaGVja2VkIHtcbiAgICAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICAgICAgYW5pbWF0aW9uOiAkbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hhbmdlLWR1cmF0aW9uXyAqIC42IGxpbmVhciAwcyBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS11bmNoZWNrZWQtbWl4ZWRtYXJrO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlXG59XG5cbi8vIEJhY2tncm91bmRcblxuQG1peGluIG1kYy1jaGVja2JveC11bm1hcmtlZC1iYWNrZ3JvdW5kLXNlbGVjdG9yLWVuYWJsZWRfIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eVxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCk6bm90KDppbmRldGVybWluYXRlKSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtdW5tYXJrZWQtYmFja2dyb3VuZC1zZWxlY3Rvci1kaXNhYmxlZF8ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5XG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCk6bm90KDppbmRldGVybWluYXRlKSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtbWFya2VkLWJhY2tncm91bmQtc2VsZWN0b3ItZW5hYmxlZF8ge1xuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNoZWNrYm94LW1hcmtlZC1iYWNrZ3JvdW5kLXNlbGVjdG9yLWRpc2FibGVkXyB7XG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmRpc2FibGVkOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpkaXNhYmxlZDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fYmFja2dyb3VuZF8ge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihcbiAgICBsZWZ0LCAoJG1kYy1jaGVja2JveC10b3VjaC1hcmVhIC0gJG1kYy1jaGVja2JveC1zaXplKSAvIDIsIFwiLm1kYy1jaGVja2JveFwiKTtcblxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICgkbWRjLWNoZWNrYm94LXRvdWNoLWFyZWEgLSAkbWRjLWNoZWNrYm94LXNpemUpIC8gMjtcbiAgYm90dG9tOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRtZGMtY2hlY2tib3gtdWktcGN0O1xuICBoZWlnaHQ6ICRtZGMtY2hlY2tib3gtdWktcGN0O1xuICB0cmFuc2l0aW9uOlxuICAgIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWV4aXQoYmFja2dyb3VuZC1jb2xvciksXG4gICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZXhpdChib3JkZXItY29sb3IpO1xuICAvLyBib3JkZXItY29sb3IgaXMgb3ZlcnJpZGRlbiBieSB0aGUgbWRjLWNoZWNrYm94LXVubWFya2VkLXN0cm9rZS1jb2xvcigpIG1peGluXG4gIGJvcmRlcjogJG1kYy1jaGVja2JveC1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lsbC1jaGFuZ2U6IGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvcjtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fYmFja2dyb3VuZC0tbWFya2VkXyB7XG4gIHRyYW5zaXRpb246XG4gICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZW50ZXIoYm9yZGVyLWNvbG9yKSxcbiAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1lbnRlcihiYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuLy8gRm9jdXMgaW5kaWNhdG9yXG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2ZvY3VzLWluZGljYXRvcl8ge1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2NoaWxkLS1jb3Zlci1wYXJlbnRfO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIHRyYW5zaXRpb246IG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWV4aXQob3BhY2l0eSksIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWV4aXQodHJhbnNmb3JtKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybTtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fZm9jdXMtaW5kaWNhdG9yLS1mb2N1c2VkXyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMi43NSwgMi43NSk7XG4gIHRyYW5zaXRpb246XG4gICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZW50ZXIob3BhY2l0eSwgMG1zLCA4MG1zKSxcbiAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1lbnRlcih0cmFuc2Zvcm0sIDBtcywgODBtcyk7XG4gIG9wYWNpdHk6ICRtZGMtY2hlY2tib3gtZm9jdXMtaW5kaWNhdG9yLW9wYWNpdHk7XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2ZvY3VzLWluZGljYXRvci0tcmlwcGxlLXVwZ3JhZGVkLXVuYm91bmRlZF8ge1xuICBjb250ZW50OiBub25lO1xufVxuXG4vLyBOYXRpdmUgaW5wdXRcblxuQG1peGluIG1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2xfIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBpbmhlcml0O1xufVxuXG4vLyBDaGVjayBtYXJrXG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2NoZWNrbWFya18ge1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2NoaWxkLS1jb3Zlci1wYXJlbnRfO1xuXG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KG9wYWNpdHksIDBtcywgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uICogMik7XG4gIG9wYWNpdHk6IDA7XG5cbiAgLm1kYy1jaGVja2JveC0tdXBncmFkZWQgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNoZWNrYm94X19jaGVja21hcmstLWNoZWNrZWRfIHtcbiAgdHJhbnNpdGlvbjpcbiAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1lbnRlcihvcGFjaXR5LCAwbXMsICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiAqIDIpLFxuICAgIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWVudGVyKHRyYW5zZm9ybSwgMG1zLCAkbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZHVyYXRpb24gKiAyKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLS1pbmRldGVybWluYXRlXyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjpcbiAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KG9wYWNpdHksIDBtcywgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uKSxcbiAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KHRyYW5zZm9ybSwgMG1zLCAkbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4vLyBDaGVjayBtYXJrIHBhdGhcblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGhfIHtcbiAgdHJhbnNpdGlvbjpcbiAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KFxuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQsXG4gICAgICAwbXMsXG4gICAgICAkbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZHVyYXRpb24gKiAyXG4gICAgKTtcbiAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG4gIHN0cm9rZS13aWR0aDogJG1kYy1jaGVja2JveC1tYXJrLXN0cm9rZS1zaXplICogMS4zO1xuICBzdHJva2UtZGFzaG9mZnNldDogJG1kYy1jaGVja2JveC1tYXJrLXBhdGgtbGVuZ3RoXztcbiAgc3Ryb2tlLWRhc2hhcnJheTogJG1kYy1jaGVja2JveC1tYXJrLXBhdGgtbGVuZ3RoXztcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgtLW1hcmtlZF8ge1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLy8gTWl4ZWQgbWFya1xuXG5AbWl4aW4gbWRjLWNoZWNrYm94X19taXhlZG1hcmtfIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2l0aW9uOiBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KG9wYWNpdHkpLCBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KHRyYW5zZm9ybSk7XG4gIGJvcmRlci13aWR0aDogZmxvb3IoJG1kYy1jaGVja2JveC1tYXJrLXN0cm9rZS1zaXplKSAvIDI7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIG9wYWNpdHk6IDA7XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX21peGVkbWFyay0tY2hlY2tlZF8ge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fbWl4ZWRtYXJrLS1pbmRldGVybWluYXRlXyB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cbiIsIkBpbXBvcnQgJ35AbWF0ZXJpYWwvY2hlY2tib3gvbWRjLWNoZWNrYm94JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJy4vdmFyaWFibGVzJztcclxuXHJcbi5rbXgtY2hlY2tib3gge1xyXG4gICAgQGV4dGVuZCAubWRjLWNoZWNrYm94O1xyXG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcygkQ0hFQ0tCT1gtQkxVRSk7XHJcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtZm9jdXMtaW5kaWNhdG9yLWNvbG9yKCRDSEVDS0JPWC1GT0NVUy1JTkRJQ0FUT1ItQ09MT1IpO1xyXG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWNvbnRhaW5lci1jb2xvcnMoJENIRUNLQk9YLUJPUkRFUi1DT0xPUiwgJHdoaXRlLCAkQ0hFQ0tCT1gtQ0hFQ0tFRC1GSUxMLUNPTE9SLCB0cnVlKTtcclxuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaG92ZXItb3BhY2l0eSgkS01YLUZPUk0tSU5QVVQtUklQUExFLUhPVkVSLU9QQUNJVFkpO1xyXG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcy1mb2N1cy1vcGFjaXR5KCRLTVgtRk9STS1JTlBVVC1SSVBQTEUtRk9DVVMtT1BBQ0lUWSk7XHJcblxyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRDSEVDS0JPWC1SSVBQTEUtQkctQ09MT1I7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tZGlzYWJsZWQge1xyXG4gICAgICAgICY6OmJlZm9yZSxcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRDSEVDS0JPWC1DT0xPUi1ESVNBQkxFRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0taW52YWxpZCB7XHJcbiAgICAgICAgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5rbXgtZm9ybS1maWVsZC0taW52YWxpZCB7XHJcbiAgICArIC5rbXgtY2hlY2tib3gtaGVscGVyLXRleHQge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgY29sb3I6ICRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SLUlOVkFMSUQ7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAoJG1kYy1jaGVja2JveC10b3VjaC1hcmVhIC0gJG1kYy1jaGVja2JveC1zaXplKSAvIDI7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi8uLi9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICcuLy4uL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuQGltcG9ydCAnLi8uLi9mdW5jdGlvbnMnO1xyXG5cclxuLy8gRklMRS1MT0NBTCBGT1JNIENPTE9SIERFRklOSVRJT05TLlxyXG4vLyBUcmVhdCB0aGVzZSBhcyAncHJpdmF0ZScgc2NzcyB2YXJpYWJsZXM6XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJEZPUk0tREVGQVVMVC1DT0xPUl86IGtteC1jb2xvcignc2xhdGUnLCA2MDApO1xyXG4kRk9STS1TRUNPTkRBUlktQ09MT1JfOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApO1xyXG4kRk9STS1EQVJLLUNPTE9SXzoga214LWNvbG9yKCdzbGF0ZScsIDkwMCk7XHJcbiRGT1JNLURJU0FCTEVELUNPTE9SXzoga214LWNvbG9yKCdzbGF0ZScsIDQwMCk7XHJcbiRGT1JNLUlOVkFMSUQtQ09MT1JfOiBrbXgtY29sb3IoJ3JlZCcsIDYwMCk7XHJcbiRGT1JNLUZPQ1VTLUNPTE9SXzoga214LWNvbG9yKCdibHVlJywgNjAwKTtcclxuXHJcbiRGT1JNLUxBQkVMLVRFWFQtQ09MT1ItREVGQVVMVF86ICRGT1JNLURFRkFVTFQtQ09MT1JfO1xyXG4kRk9STS1MQUJFTC1URVhULUxJTkUtSEVJR0hUXzogMTtcclxuXHJcbiRGT1JNLUlOUFVULVRFWFQtQ09MT1ItREVGQVVMVF86ICRGT1JNLURBUkstQ09MT1JfO1xyXG4kRk9STS1JTlBVVC1URVhULUZPTlQtRkFNSUxZOiAka214LXR5cG9ncmFwaHktZm9udC1hbHQ7XHJcbiRGT1JNLUlOUFVULVRFWFQtTElORS1IRUlHSFRfOiAoMjUvMTYpO1xyXG5cclxuJEZPUk0tQk9SREVSLUNPTE9SLURFRkFVTFRfOiAkRk9STS1ERUZBVUxULUNPTE9SXztcclxuXHJcbiRGT1JNLUhFTFBFUi1URVhULUNPTE9SXzogJEZPUk0tREVGQVVMVC1DT0xPUl87XHJcbiRGT1JNLUhFTFBFUi1URVhULUZPTlQtRkFNSUxZXzogJGtteC10eXBvZ3JhcGh5LWZvbnQtYWx0O1xyXG4kRk9STS1IRUxQRVItVEVYVC1GT05ULVNJWkVfOiByZW0tY2FsYygxMik7XHJcbiRGT1JNLUhFTFBFUi1URVhULUxJTkUtSEVJR0hUXzogKDE0LzEyKTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBcIlBVQkxJQ1wiIEZPUk0gQ09MT1IgREVGSU5JVElPTlMuXHJcbi8vIFRoZXNlIGFyZSBleHBvc2VkIGFuZCByZWZlcmVuY2VkIGJ5XHJcbi8vIHRoZSB2YXJpb3VzIGZvcm0gcGFja2FnZXMnIFNDU1MuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJEtNWC1GT1JNLUJPUkRFUi1DT0xPUi1ERUZBVUxUOiAkRk9STS1ERUZBVUxULUNPTE9SXztcclxuJEtNWC1GT1JNLUJPUkRFUi1DT0xPUi1JTlZBTElEOiAkRk9STS1JTlZBTElELUNPTE9SXztcclxuJEtNWC1GT1JNLUJPUkRFUi1DT0xPUi1ESVNBQkxFRDogJEZPUk0tRElTQUJMRUQtQ09MT1JfO1xyXG4kS01YLUZPUk0tQk9SREVSLUNPTE9SLUFDVElWRTogJEZPUk0tRk9DVVMtQ09MT1JfO1xyXG5cclxuJEtNWC1GT1JNLUhFTFBFUi1URVhULUNPTE9SOiAkRk9STS1IRUxQRVItVEVYVC1DT0xPUl87XHJcbiRLTVgtRk9STS1IRUxQRVItVEVYVC1GT05ULUZBTUlMWTogJEZPUk0tSEVMUEVSLVRFWFQtRk9OVC1GQU1JTFlfO1xyXG4kS01YLUZPUk0tSEVMUEVSLVRFWFQtRk9OVC1TSVpFOiAkRk9STS1IRUxQRVItVEVYVC1GT05ULVNJWkVfO1xyXG4kS01YLUZPUk0tSEVMUEVSLVRFWFQtTElORS1IRUlHSFQ6ICRGT1JNLUhFTFBFUi1URVhULUxJTkUtSEVJR0hUXztcclxuJEtNWC1GT1JNLUhFTFBFUi1URVhULUNPTE9SLUlOVkFMSUQ6ICRGT1JNLUlOVkFMSUQtQ09MT1JfO1xyXG4kS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1ItRElTQUJMRUQ6ICRGT1JNLURJU0FCTEVELUNPTE9SXztcclxuXHJcbiRLTVgtRk9STS1JTlBVVC1URVhULUNPTE9SLURJU0FCTEVEOiAkRk9STS1ESVNBQkxFRC1DT0xPUl87XHJcbiRLTVgtRk9STS1JTlBVVC1URVhULUNPTE9SLUlOVkFMSUQ6ICRGT1JNLUlOVkFMSUQtQ09MT1JfO1xyXG4kS01YLUZPUk0tSU5QVVQtVEVYVC1DT0xPUjogJEZPUk0tSU5QVVQtVEVYVC1DT0xPUi1ERUZBVUxUXztcclxuJEtNWC1GT1JNLUlOUFVULVRFWFQtTElORS1IRUlHSFQ6ICRGT1JNLUlOUFVULVRFWFQtTElORS1IRUlHSFRfO1xyXG5cclxuJEtNWC1GT1JNLUxBQkVMLVRFWFQtQ09MT1ItSU5WQUxJRDogJEZPUk0tSU5WQUxJRC1DT0xPUl87XHJcbiRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SLURJU0FCTEVEOiAkRk9STS1ESVNBQkxFRC1DT0xPUl87XHJcbiRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SOiAkRk9STS1ERUZBVUxULUNPTE9SXztcclxuJEtNWC1GT1JNLUxBQkVMLUxJTkUtSEVJR0hUOiAkRk9STS1MQUJFTC1URVhULUxJTkUtSEVJR0hUXztcclxuXHJcbiRLTVgtRk9STS1JTlBVVC1SSVBQTEUtSE9WRVItT1BBQ0lUWTogMC4wODtcclxuJEtNWC1GT1JNLUlOUFVULVJJUFBMRS1GT0NVUy1PUEFDSVRZOiAwLjI0O1xyXG4kS01YLUZPUk0tSU5QVVQtUklQUExFLUJHLUNPTE9SOiAkRk9STS1GT0NVUy1DT0xPUl87XHJcblxyXG4kS01YLUZPUk0tVE9HR0xFLUZPQ1VTLUNPTE9SOiAkRk9STS1TRUNPTkRBUlktQ09MT1JfO1xyXG4kS01YLUZPUk0tVE9HR0xFLVNUUk9LRS1DT0xPUjogJEZPUk0tU0VDT05EQVJZLUNPTE9SXztcclxuJEtNWC1GT1JNLVRPR0dMRS1DSEVDS0VELUNPTE9SOiAkRk9STS1TRUNPTkRBUlktQ09MT1JfO1xyXG4kS01YLUZPUk0tVE9HR0xFLUlOSy1DT0xPUjogJEZPUk0tU0VDT05EQVJZLUNPTE9SXztcclxuXHJcbiRLTVgtRk9STS1JTlBVVC1GT0NVUy1DT0xPUjogJEZPUk0tRk9DVVMtQ09MT1JfO1xyXG4iLCIvLyBAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZm9ybXMvaW5kZXgnO1xyXG5AaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcblxyXG4ua214LWNoZWNrYm94Om5vdCgua214LWNoZWNrYm94LS1kaXNhYmxlZCkge1xyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICArIGxhYmVsLFxyXG4gICAgKyAua214LWNoZWNrYm94LWxhYmVsIHtcclxuICAgICAgICBAaW5jbHVkZSB0eXBlLWxhYmVsLWxnKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5rbXgtY2hlY2tib3gtLWRpc2FibGVkIHtcclxuICAgIEBleHRlbmQgLmtteC1jaGVja2JveDtcclxuXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICsgbGFiZWwsXHJcbiAgICArIC5rbXgtY2hlY2tib3gtbGFiZWwge1xyXG4gICAgICAgIEBpbmNsdWRlIHR5cGUtbGFiZWwtbGcoJENIRUNLQk9YLUxBQkVMLUNPTE9SLURJU0FCTEVEKTtcclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZm9ybXMvdmFyaWFibGVzJztcclxuXHJcbi8qXHJcbiAqIE5vdGU6IHRoZSB2YWxpZGF0aW9uIHN0eWxpbmcgZm9yIHRleHQtZmllbGQtaGVscGVyXHJcbiAqIGlzIGxvY2F0ZWQgaW4gLi9fdGV4dC1maWVsZC12YWxpZGF0aW9uLnNjc3NcclxuICpcclxuICogVGhlIGRpc2FibGVkIHN0eWxpbmcgZm9yIHRleHQtZmllbGQtaGVscGVyXHJcbiAqIGlzIGxvY2F0ZWQgaW4gLi9fdGV4dC1maWVsZC1kaXNhYmxlZC5zY3NzXHJcbiAqL1xyXG4ua214LWNoZWNrYm94LWhlbHBlci10ZXh0IHtcclxuICAgIEBpbmNsdWRlIGtteC1mb3JtLWhlbHBlci10ZXh0LW1peGluKCk7XHJcbiAgICBtYXJnaW4tbGVmdDogM2VtO1xyXG59XHJcbiIsIkBpbXBvcnQgJy4vdmFyaWFibGVzJztcclxuQGltcG9ydCAnLi8uLi9zcGFjaW5nL2Z1bmN0aW9ucyc7XHJcblxyXG5AbWl4aW4ga214LWZvcm0taGVscGVyLXRleHQtbWl4aW4oKSB7XHJcbiAgICBjb2xvcjogJEtNWC1GT1JNLUhFTFBFUi1URVhULUNPTE9SO1xyXG4gICAgZm9udC1mYW1pbHk6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1GT05ULUZBTUlMWTtcclxuICAgIGZvbnQtc2l6ZTogJEtNWC1GT1JNLUhFTFBFUi1URVhULUZPTlQtU0laRTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtTElORS1IRUlHSFQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwIHNpemUoJ3MnKTtcclxufVxyXG4iLCIvKlxyXG5cdEltcHJvdmVkIHNjcmVlbiByZWFkZXIgb25seSBDU1MgY2xhc3NcclxuXHRAYXV0aG9yIEdhw6tsIFBvdXBhcmRcclxuXHRcdEBub3RlIEJhc2VkIG9uIFlhaG9vISdzIHRlY2huaXF1ZVxyXG5cdFx0QGF1dGhvciBUaGllcnJ5IEtvYmxlbnR6XHJcblx0XHRAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9ibG9ncy95ZG4vY2xpcC1oaWRkZW4tY29udGVudC1iZXR0ZXItYWNjZXNzaWJpbGl0eS01MzQ1Ni5odG1sXHJcblx0KiAxLlxyXG5cdFx0QG5vdGUgYGNsaXBgIGlzIGRlcHJlY2F0ZWQgYnV0IHdvcmtzIGV2ZXJ5d2hlcmVcclxuXHRcdEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL2NsaXBcclxuXHQqIDIuXHJcblx0XHRAbm90ZSBgY2xpcC1wYXRoYCBpcyB0aGUgZnV0dXJlLXByb29mIHZlcnNpb24sIGJ1dCBub3QgdmVyeSB3ZWxsIHN1cHBvcnRlZCB5ZXRcclxuXHRcdEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL2NsaXAtcGF0aFxyXG5cdFx0QHNlZSBodHRwOi8vY2FuaXVzZS5jb20vI3NlYXJjaD1jbGlwLXBhdGhcclxuXHRcdEBhdXRob3IgWXZhaW4gTGllY2h0aVxyXG5cdFx0QHNlZSBodHRwczovL3R3aXR0ZXIuY29tL3J5dXJhbjc4L3N0YXR1cy83Nzg5NDMzODk4MTk2MDQ5OTJcclxuXHQqIDMuXHJcblx0XHRAbm90ZSBwcmV2ZW50aW5nIHRleHQgdG8gYmUgY29uZGVuc2VkXHJcblx0XHRhdXRob3IgSi4gUmVuw6llIEJlYWNoXHJcblx0XHRAc2VlIGh0dHBzOi8vbWVkaXVtLmNvbS9AamVzc2ViZWFjaC9iZXdhcmUtc211c2hlZC1vZmYtc2NyZWVuLWFjY2Vzc2libGUtdGV4dC01OTUyYTRjMmNiZmVcclxuXHRcdEBub3RlIERydXBhbCA4IGdvZXMgd2l0aCB3b3JkLXdyYXA6IG5vcm1hbCBpbnN0ZWFkXHJcblx0XHRAc2VlIGh0dHBzOi8vd3d3LmRydXBhbC5vcmcvbm9kZS8yMDQ1MTUxXHJcblx0XHRAc2VlIGh0dHA6Ly9jZ2l0LmRydXBhbGNvZGUub3JnL2RydXBhbC9jb21taXQvP2lkPTViODQ3ZWFcclxuXHQqIDQuXHJcblx0XHRAbm90ZSAhaW1wb3J0YW50IGlzIGltcG9ydGFudFxyXG5cdFx0QG5vdGUgT2J2aW91c2x5IHlvdSB3YW5uYSBoaWRlIHNvbWV0aGluZ1xyXG5cdFx0QGF1dGhvciBIYXJyeSBSb2JlcnRzXHJcblx0XHRAc2VlIGh0dHA6Ly9jc3N3aXphcmRyeS5jb20vMjAxNi8wNS90aGUtaW1wb3J0YW5jZS1vZi1pbXBvcnRhbnQvXHJcbiovXHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuLnZpc3VhbGx5LWhpZGRlbiB7XHJcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KSAhaW1wb3J0YW50OyAvKiAxICovXHJcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xyXG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7IC8qIDIgKi9cclxuICAgIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgLyogMyAqL1xyXG59XHJcbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXHJcblxyXG4vKlxyXG5cdFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC52aXN1YWxseS1oaWRkZW4gdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXHJcblx0QG5vdGUgVXNlZnVsIGZvciBza2lwIGxpbmtzXHJcblx0QHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXHJcblx0QG5vdGUgQmFzZWQgb24gYSBIVE1MNSBCb2lsZXJwbGF0ZSB0ZWNobmlxdWUsIGluY2x1ZGVkIGluIEJvb3RzdHJhcFxyXG5cdEBub3RlIEZpeGVkIGEgYnVnIHdpdGggcG9zaXRpb246IHN0YXRpYyBvbiBpT1MgMTAuMC4yICsgVm9pY2VPdmVyXHJcblx0XHRAYXV0aG9yIFN5bHZhaW4gUGlnZWFyZFxyXG5cdFx0QHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIwNzMyXHJcbiovXHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6Zm9jdXMsXHJcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOmFjdGl2ZSB7XHJcbiAgICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgY2xpcC1wYXRoOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG59XHJcbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXHJcbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdXRpbGl0aWVzL3NyYy9oZWxwZXJzL2ExMXkvdmlzdWFsbHktaGlkZGVuJztcclxuXHJcbi5rbXgtcHJvZ3Jlc3MtY2lyY3VsYXIge1xyXG4gICAgJHNpemUtTDogMTI4cHg7XHJcbiAgICAkc2l6ZS1NOiA2NHB4O1xyXG4gICAgJHNpemUtUzogMzJweDtcclxuICAgICRzaXplLVhTOiAxNnB4O1xyXG5cclxuICAgICYtaW5kZXRlcm1pbmF0ZSB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgNjAwKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiA4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcblxyXG4gICAgICAgIC8vIENPTVBPTkVOVCBTSVpJTkc6XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICAgICAmLWxhcmdlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygkc2l6ZS1MKTsgLy8gbm8gYWRqdXN0bWVudCB0byBoZWlnaHQgZm9yIHNpemUgTFxyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygkc2l6ZS1MKTtcclxuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNjsgLy8gYWRqdXN0IHN0cm9rZSBmb3Igc2l6ZSBMXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoJHNpemUtTCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1tZWRpdW0ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKCgkc2l6ZS1NICsgMikpO1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplKCczeGwnKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBzaXplKCczeGwnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXNtYWxsIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygoJHNpemUtUyArIDIpKTtcclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZSgneGwnKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBzaXplKCd4bCcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYteC1zbWFsbCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoKCRzaXplLVhTICsgMikpO1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplKCdtJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogc2l6ZSgnbScpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9lbGV2YXRpb24vbWl4aW5zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3NwYWNpbmcvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvbWl4aW5zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdXRpbGl0aWVzL3NyYy9zdmcvbWl4aW5zJztcclxuXHJcbi5rbXgtc2VhcmNoLWZvcm0ge1xyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGtteC1lbGV2YXRpb24oNCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1mb2N1c2VkIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUga214LWVsZXZhdGlvbig0KTtcclxuXHJcbiAgICAgICAgICAgIC5rbXgtc2VhcmNoLWZvcm1fX3N1Ym1pdC1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19zZWFyY2gtaW5wdXQge1xyXG4gICAgICAgIEBpbmNsdWRlIHR5cGUtYm9keS0xKCk7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDFweDtcclxuICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MHB4KTtcclxuICAgICAgICBtaW4td2lkdGg6IDA7IC8vIEZpeCBmb3IgRmlyZWZveCBhbmQgU2FmYXJpIC0gaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9mbGV4Ym94LXRydW5jYXRlZC10ZXh0L1xyXG4gICAgICAgIG9yZGVyOiAwO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgc2l6ZSgncycpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBGb3IgOjpwbGFjZWhvbGRlciBzdHlsaW5nLFxyXG4gICAgICAgICAqIEZpcmVmb3ggbmVlZHMgb3BhY2l0eSBzZXQgZXhwbGljaXRseSB0byAxXHJcbiAgICAgICAgICogaW4gb3JkZXIgdG8gb3ZlcnJpZGUgZGVmYXVsdCBicm93c2VyIHN0eWxlc1xyXG4gICAgICAgICAqL1xyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA2MDApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmb2N1czo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDQwMCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgNjAwKSAhaW1wb3J0YW50OyAvLyBJRSAxMSByZXF1aXJlcyAhaW1wb3J0YW50IHRvIG92ZXJyaWRlIGRlZmF1bHQgYnJvd3NlciBzdHlsZXNcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zm9jdXM6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA0MDApICFpbXBvcnRhbnQ7IC8vIElFIDExIHJlcXVpcmVzICFpbXBvcnRhbnQgdG8gb3ZlcnJpZGUgZGVmYXVsdCBicm93c2VyIHN0eWxlc1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogY2xlYXJzIHRoZSAnWCcgZnJvbSBJbnRlcm5ldCBFeHBsb3JlciAqL1xyXG4gICAgICAgICY6Oi1tcy1jbGVhciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Oi1tcy1yZXZlYWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogY2xlYXJzIHRoZSAnWCcgZnJvbSBDaHJvbWUgKi9cclxuICAgICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uLFxyXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcbiAgICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXHJcbiAgICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1kZWNvcmF0aW9uIHtcclxuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuICAgIH1cclxuXHJcbiAgICAmX19jbGVhci1idXR0b24sXHJcbiAgICAmX19zdWJtaXQtYnV0dG9uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwcHgpO1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MHB4KTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUga214LXN2Zy1iYXNlO1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1zdmctaWNvbjtcclxuXHJcbiAgICAgICAgLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA2MDApO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHNpemUoJ2wnKTtcclxuICAgICAgICAgICAgd2lkdGg6IHNpemUoJ2wnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY2xlYXItYnV0dG9uIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG5cclxuICAgICAgICAmLnZpc2libGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3VibWl0LWJ1dHRvbiB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDFweDtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMXB4O1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2VsZXZhdGlvbi9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS92YXJpYWJsZXNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgZGlhbG9nXG5cbi5tZGMtZGlhbG9nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDU7XG59XG5cbi5tZGMtZGlhbG9nX19iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsIHRleHQtcHJpbWFyeS1vbi1saWdodCk7XG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLm1kYy1kaWFsb2dfX3N1cmZhY2Uge1xuICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDI0KTtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XG5cbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgbWluLXdpZHRoOiA2NDBweDtcbiAgbWF4LXdpZHRoOiA4NjVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MHB4KSBzY2FsZSguOCk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgb3BhY2l0eTogMDtcblxuICBAaW5jbHVkZSBtZGMtcnRsKFwiLm1kYy1kaWFsb2dcIikge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5tZGMtZGlhbG9nX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAyNHB4IDI0cHggMDtcblxuICBAaW5jbHVkZSBtZGMtcnRsKFwiLm1kYy1kaWFsb2dcIikge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5tZGMtZGlhbG9nX19oZWFkZXJfX2VtcHR5IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1kYy1kaWFsb2dfX2hlYWRlcl9fdGl0bGUge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShoZWFkbGluZTYpO1xuXG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1kYy1kaWFsb2dfX2JvZHkge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgdGV4dC1zZWNvbmRhcnktb24tbGlnaHQpO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShib2R5MSk7XG5cbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZzogMCAyNHB4IDI0cHg7XG59XG5cbi5tZGMtZGlhbG9nX19ib2R5LS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogMTk1cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjEpO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLm1kYy1kaWFsb2dfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4ubWRjLWRpYWxvZ19fZm9vdGVyX19idXR0b24ge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCByaWdodCwgOHB4KTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIHJpZ2h0LCAwKTtcbiAgfVxufVxuXG4ubWRjLWRpYWxvZ19fYWN0aW9uOm5vdCg6ZGlzYWJsZWQpIHtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsIHNlY29uZGFyeSk7XG59XG5cbi8vIFRPRE86IFJlcGxhY2Ugd2l0aCBicmVha3BvaW50IHZhcmlhYmxlXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLm1kYy1kaWFsb2cge1xuICAgIG1pbi13aWR0aDogMjgwcHg7XG4gIH1cblxuICAubWRjLWRpYWxvZ19fc3VyZmFjZSB7XG4gICAgbWluLXdpZHRoOiAyODBweDtcbiAgfVxuXG4gIC5tZGMtZGlhbG9nX19ib2R5IHtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxufVxuXG4ubWRjLWRpYWxvZy0tYW5pbWF0aW5nIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAubWRjLWRpYWxvZ19fYmFja2Ryb3Age1xuICAgIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tZW50ZXIob3BhY2l0eSwgMTIwbXMpO1xuICB9XG5cbiAgLm1kYy1kaWFsb2dfX3N1cmZhY2Uge1xuICAgIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tZW50ZXIob3BhY2l0eSwgMTIwbXMpLCBtZGMtYW5pbWF0aW9uLWVudGVyKHRyYW5zZm9ybSwgMTIwbXMpO1xuICB9XG59XG5cbi5tZGMtZGlhbG9nLS1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAubWRjLWRpYWxvZ19fYmFja2Ryb3Age1xuICAgIG9wYWNpdHk6IC4zO1xuICB9XG5cbiAgLm1kYy1kaWFsb2dfX3N1cmZhY2Uge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG5cbi5tZGMtZGlhbG9nLXNjcm9sbC1sb2NrIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLWxpc3Qvc3JjL21peGlucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9rbXgtdGhlbWUnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2VsZXZhdGlvbi9taXhpbnMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvbGF5b3V0L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvZGlhbG9nL21kYy1kaWFsb2cnO1xyXG5AaW1wb3J0ICd+c2Fzcy1tcS9tcSc7XHJcblxyXG4ua214LWRpYWxvZyB7XHJcbiAgICBAZXh0ZW5kIC5tZGMtZGlhbG9nO1xyXG5cclxuICAgIHotaW5kZXg6IDcwMDtcclxuXHJcbiAgICAmX19iYWNrZHJvcCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDkwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3VyZmFjZSB7XHJcbiAgICAgICAgQGluY2x1ZGUga214LWVsZXZhdGlvbigxNik7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1NjgpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2hlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZzogc2l6ZSgnbScpIHNpemUoJ20nKSAwO1xyXG5cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCdib2xkJyk7XHJcblxyXG4gICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LW1haW47XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogc2l6ZSgnbScpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogKDIwLzE2KTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYm9keSB7XHJcbiAgICAgICAgY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA3MDApO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAka214LXR5cG9ncmFwaHktZm9udC1hbHQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBzaXplKCdtJyk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHNpemUoJ2wnKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiBzaXplKCdtJyk7XHJcbiAgICAgICAgbWluLWhlaWdodDogc2l6ZSgnMnhsJyk7XHJcbiAgICAgICAgcGFkZGluZzogMCBzaXplKCdtJykgc2l6ZSgnbScpO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XHJcbiAgICAgICAgJi0tc2Nyb2xsYWJsZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCAzMDApO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgMzAwKTtcclxuXHJcbiAgICAgICAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICAgICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgICAgICAgLm1kYy1saXN0LWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tb3BlbiB7XHJcbiAgICAgICAgLm1kYy1kaWFsb2dfX2JhY2tkcm9wIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgJl9fc3VyZmFjZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGtteC1lbGV2YXRpb24oMTYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9faGVhZGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogc2l6ZSgnbCcpIHNpemUoJ2wnKSAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fYm9keSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgc2l6ZSgnbCcpIHNpemUoJ2wnKTtcclxuXHJcbiAgICAgICAgICAgICYtLXNjcm9sbGFibGUge1xyXG4gICAgICAgICAgICAgICAgZm9ybSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICAgICAgICAgICAgICAgICAgLm1kYy1saXN0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUga214LWxpc3QtLWRlbnNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBhbmQgJG1lZGlhLXR5cGUgIT0gJ3ByaW50J1xuICAgICAgICApIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcbiAgICBAZWxzZSB7XG4gICAgICAgIEBpZiAkbWluLXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRhbmQgICAgICAgICAgICB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgI3skYW5kfSc7IH1cblxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcbiAgICAgICAgQGlmICgkbWVkaWEtdHlwZSA9PSAnYWxsJyBhbmQgJG1lZGlhLXF1ZXJ5ICE9ICcnKSB7XG4gICAgICAgICAgICAkbWVkaWEtdHlwZTogJyc7XG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gUXVpY2sgc29ydFxuLy8vXG4vLy8gQGF1dGhvciBTYW0gUmljaGFyZHNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzb3J0XG4vLy8gQHJldHVybnMge0xpc3R9IFNvcnRlZCBMaXN0XG5AZnVuY3Rpb24gX21xLXF1aWNrLXNvcnQoJGxpc3QpIHtcbiAgICAkbGVzczogICgpO1xuICAgICRlcXVhbDogKCk7XG4gICAgJGxhcmdlOiAoKTtcblxuICAgIEBpZiBsZW5ndGgoJGxpc3QpID4gMSB7XG4gICAgICAgICRzZWVkOiBudGgoJGxpc3QsIGNlaWwobGVuZ3RoKCRsaXN0KSAvIDIpKTtcblxuICAgICAgICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XG4gICAgICAgICAgICBAaWYgKCRpdGVtID09ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGVxdWFsOiBhcHBlbmQoJGVxdWFsLCAkaXRlbSk7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA8ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGxlc3M6IGFwcGVuZCgkbGVzcywgJGl0ZW0pO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPiAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRsYXJnZTogYXBwZW5kKCRsYXJnZSwgJGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQHJldHVybiBqb2luKGpvaW4oX21xLXF1aWNrLXNvcnQoJGxlc3MpLCAkZXF1YWwpLCBfbXEtcXVpY2stc29ydCgkbGFyZ2UpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gU29ydCBhIG1hcCBieSB2YWx1ZXMgKHdvcmtzIHdpdGggbnVtYmVycyBvbmx5KVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtNYXB9IE1hcCBzb3J0ZWQgYnkgdmFsdWVcbkBmdW5jdGlvbiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1hcCkge1xuICAgICRtYXAtc29ydGVkOiAoKTtcbiAgICAkbWFwLWtleXM6IG1hcC1rZXlzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzLXNvcnRlZDogX21xLXF1aWNrLXNvcnQoJG1hcC12YWx1ZXMpO1xuXG4gICAgLy8gUmVvcmRlciBrZXkvdmFsdWUgcGFpcnMgYmFzZWQgb24ga2V5IHZhbHVlc1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkbWFwLXZhbHVlcy1zb3J0ZWQge1xuICAgICAgICAkaW5kZXg6IGluZGV4KCRtYXAtdmFsdWVzLCAkdmFsdWUpO1xuICAgICAgICAka2V5OiBudGgoJG1hcC1rZXlzLCAkaW5kZXgpO1xuICAgICAgICAkbWFwLXNvcnRlZDogbWFwLW1lcmdlKCRtYXAtc29ydGVkLCAoJGtleTogJHZhbHVlKSk7XG5cbiAgICAgICAgLy8gVW5zZXQgdGhlIHZhbHVlIGluICRtYXAtdmFsdWVzIHRvIHByZXZlbnQgdGhlIGxvb3BcbiAgICAgICAgLy8gZnJvbSBmaW5kaW5nIHRoZSBzYW1lIGluZGV4IHR3aWNlXG4gICAgICAgICRtYXAtdmFsdWVzOiBzZXQtbnRoKCRtYXAtdmFsdWVzLCAkaW5kZXgsIDApO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG1hcC1zb3J0ZWQ7XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbiAgICAkbXEtYnJlYWtwb2ludHM6IF9tcS1tYXAtc29ydC1ieS12YWx1ZSgkbXEtYnJlYWtwb2ludHMpICFnbG9iYWw7XG59XG5cbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gQnJlYWtwb2ludCBuYW1lcyBhbmQgc2l6ZXNcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zaG93LWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgZ2xvYmFsIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG4vLy9cbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBjdXN0b20gc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cygoTCwgWEwpLCAoUzogMzAwcHgsIEw6IDgwMHB4LCBYTDogMTIwMHB4KSk7XG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGOEUzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xuICAgIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3NwYWNpbmcvZnVuY3Rpb25zJztcclxuXHJcbkBtaXhpbiBrbXgtbGlzdC1pdGVtIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxufVxyXG5cclxuQG1peGluIGtteC1saXN0LS1kZW5zZSB7XHJcbiAgICBmb250LXNpemU6IHNpemUoJ20nKTtcclxuXHJcbiAgICAua214LWxpc3QtaXRlbSB7XHJcbiAgICAgICAgQGluY2x1ZGUga214LWxpc3QtaXRlbTtcclxuXHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHNpemUoJ3hzJyk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHNpemUoJ3hzJyk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYW5pbWF0aW9uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGRyYXdlclxuXG4ubWRjLWRyYXdlciB7XG4gIEBpbmNsdWRlIG1kYy1kcmF3ZXItdGl0bGUtaW5rLWNvbG9yKCRtZGMtZHJhd2VyLXRpdGxlLWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1kcmF3ZXItc3VidGl0bGUtaW5rLWNvbG9yKCRtZGMtZHJhd2VyLXN1YnRpdGxlLWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1kcmF3ZXItYm9yZGVyLWNvbG9yKCRtZGMtZHJhd2VyLWRpdmlkZXItY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtZHJhd2VyLXN1cmZhY2UtZmlsbC1jb2xvcigkbWRjLWRyYXdlci1zdXJmYWNlLWZpbGwtY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtZHJhd2VyLWl0ZW0taWNvbi1pbmstY29sb3IoJG1kYy1kcmF3ZXItaXRlbS1pbmFjdGl2ZS1pbmstY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtZHJhd2VyLWl0ZW0tdGV4dC1pbmstY29sb3IoJG1kYy1kcmF3ZXItaXRlbS1pbmFjdGl2ZS1pbmstY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtZHJhd2VyLWl0ZW0tYWN0aXZhdGVkLWljb24taW5rLWNvbG9yKCRtZGMtZHJhd2VyLWl0ZW0tYWN0aXZhdGVkLWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1kcmF3ZXItaXRlbS1hY3RpdmF0ZWQtdGV4dC1pbmstY29sb3IoJG1kYy1kcmF3ZXItaXRlbS1hY3RpdmF0ZWQtaW5rLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLWRyYXdlci1pdGVtLWNvcm5lci1yYWRpdXMoNHB4KTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXNocmluazogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRtZGMtZHJhd2VyLXdpZHRoO1xuICBtYXgtd2lkdGg6ICRtZGMtZHJhd2VyLXdpZHRoO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6ICRtZGMtZHJhd2VyLXotaW5kZXg7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gIC5tZGMtbGlzdC1pdGVtIHtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShzdWJ0aXRsZTIpO1xuXG4gICAgaGVpZ2h0OiBjYWxjKDQ4cHggLSAyICogI3skbWRjLWRyYXdlci1saXN0LWl0ZW0tc3BhY2luZ30pO1xuICAgIC8vIFRvIGFjY29tb2RhdGUgbWFyZ2luIGNvbmZsaWN0LlxuICAgIG1hcmdpbjogKCRtZGMtZHJhd2VyLWxpc3QtaXRlbS1zcGFjaW5nICogMikgOHB4O1xuICAgIHBhZGRpbmc6IDAgJG1kYy1kcmF3ZXItc3VyZmFjZS1wYWRkaW5nIC8gMjtcbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gIC5tZGMtbGlzdC1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICB9XG5cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBpZ25vcmVcbiAgLm1kYy1saXN0LWl0ZW06bnRoLWxhc3QtY2hpbGQoMSkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAvLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGlnbm9yZVxuICAubWRjLWxpc3QtZ3JvdXBfX3N1YmhlYWRlciB7XG4gICAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoYm9keTIpO1xuICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLXRvcCgyNHB4KTtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICRtZGMtZHJhd2VyLXN1cmZhY2UtcGFkZGluZztcbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gIC5tZGMtbGlzdC1kaXZpZGVyIHtcbiAgICBtYXJnaW46IDNweCAwIDRweCAwO1xuICB9XG5cbiAgLy8gUHJldmVudHMgbGlzdCBpdGVtIGNoaWxkcmVuIGZyb20gYmVpbmcgaW5jbHVkZWQgaW4gdGhlIGNsaWNrIHRhcmdldC5cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBpZ25vcmVcbiAgLm1kYy1saXN0LWl0ZW1fX3RleHQsXG4gIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4ubWRjLWRyYXdlci0tb3BlbiB7XG4gIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tc3RhbmRhcmQodHJhbnNmb3JtLCAkbWRjLWRyYXdlci1hbmltYXRpb24tZW50ZXIpO1xufVxuXG4ubWRjLWRyYXdlci0tYW5pbWF0ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG59XG5cbi5tZGMtZHJhd2VyLS1vcGVuaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkbWRjLWRyYXdlci1hbmltYXRpb24tZW50ZXI7XG5cbiAgLy8gUmVxdWlyZWQgdG8gbGV2ZWwgdGhlIHNwZWNpZmljaXR5IHdpdGggYW5pbWF0ZSBjbGFzcy5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5tZGMtZHJhd2VyLS1jbG9zaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJG1kYy1kcmF3ZXItYW5pbWF0aW9uLWV4aXQ7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG59XG5cbi5tZGMtZHJhd2VyX19oZWFkZXIge1xuICBmbGV4LXNocmluazogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWluLWhlaWdodDogNjRweDsgLy8gc2FtZSBhcyAkbWRjLXRvcC1hcHAtYmFyLXJvdy1oZWlnaHRcbiAgcGFkZGluZzogMCAkbWRjLWRyYXdlci1zdXJmYWNlLXBhZGRpbmcgNHB4O1xufVxuXG4ubWRjLWRyYXdlcl9fdGl0bGUge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShoZWFkbGluZTYpO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS10b3AoMzZweCk7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLWJvdHRvbSgyMHB4KTtcbn1cblxuLm1kYy1kcmF3ZXJfX3N1YnRpdGxlIHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoYm9keTIpO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS10b3AoMjBweCk7XG5cbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLm1kYy1kcmF3ZXJfX2NvbnRlbnQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5cbi8vIENvbG9yc1xuJG1kYy1kcmF3ZXItdGl0bGUtaW5rLWNvbG9yOiBtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKTtcbiRtZGMtZHJhd2VyLXN1YnRpdGxlLWluay1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSk7XG4kbWRjLWRyYXdlci1pdGVtLWluYWN0aXZlLWluay1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSk7XG4kbWRjLWRyYXdlci1pdGVtLWFjdGl2YXRlZC1pbmstY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKHByaW1hcnkpO1xuJG1kYy1kcmF3ZXItZGl2aWRlci1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSk7XG4kbWRjLWRyYXdlci1zdXJmYWNlLWZpbGwtY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpO1xuXG4vLyBPcGFjaXR5XG4kbWRjLWRyYXdlci10aXRsZS1pbmstb3BhY2l0eTogbWRjLXRoZW1lLXRleHQtZW1waGFzaXMoaGlnaCk7XG4kbWRjLWRyYXdlci1zdWJ0aXRsZS1pbmstb3BhY2l0eTogbWRjLXRoZW1lLXRleHQtZW1waGFzaXMobWVkaXVtKTtcbiRtZGMtZHJhd2VyLWl0ZW0taW5hY3RpdmUtaWNvbi1pbmstb3BhY2l0eTogbWRjLXRoZW1lLXRleHQtZW1waGFzaXMobWVkaXVtKTtcbiRtZGMtZHJhd2VyLWl0ZW0taW5hY3RpdmUtdGV4dC1pbmstb3BhY2l0eTogbWRjLXRoZW1lLXRleHQtZW1waGFzaXMoaGlnaCk7XG4kbWRjLWRyYXdlci1pdGVtLWFjdGl2ZS1pY29uLWluay1vcGFjaXR5OiAxO1xuJG1kYy1kcmF3ZXItaXRlbS1hY3RpdmUtdGV4dC1pbmstb3BhY2l0eTogbWRjLXRoZW1lLXRleHQtZW1waGFzaXMoaGlnaCk7XG4kbWRjLWRyYXdlci1kaXZpZGVyLW9wYWNpdHk6IC4xMjtcblxuLy8gV2lkdGhzXG4kbWRjLWRyYXdlci13aWR0aDogMjU2cHg7XG4kbWRjLWRyYXdlci1saXN0LWl0ZW0tc3BhY2luZzogNHB4O1xuJG1kYy1kcmF3ZXItc3VyZmFjZS1wYWRkaW5nOiAxNnB4O1xuXG4vLyBBbmltYXRpb25zXG4kbWRjLWRyYXdlci1hbmltYXRpb24tZW50ZXI6IDI1MG1zO1xuJG1kYy1kcmF3ZXItYW5pbWF0aW9uLWV4aXQ6IDIwMG1zO1xuXG4vLyBTY3JpbVxuJG1kYy1kcmF3ZXItbW9kYWwtc2NyaW0tY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpO1xuJG1kYy1kcmF3ZXItbW9kYWwtc2NyaW0tb3BhY2l0eTogLjMyO1xuXG4kbWRjLWRyYXdlci16LWluZGV4OiA2O1xuJG1kYy1kcmF3ZXItbW9kYWwtZWxldmF0aW9uOiAxNjtcbiIsIi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vL1xuLy8gUHVibGljXG4vL1xuXG5AbWl4aW4gbWRjLWxpc3QtaXRlbS1wcmltYXJ5LXRleHQtaW5rLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy1saXN0LWl0ZW0tc2Vjb25kYXJ5LXRleHQtaW5rLWNvbG9yKCRjb2xvcikge1xuICAubWRjLWxpc3QtaXRlbV9fc2Vjb25kYXJ5LXRleHQge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbGlzdC1pdGVtLWdyYXBoaWMtZmlsbC1jb2xvcigkY29sb3IpIHtcbiAgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1saXN0LWl0ZW0tZ3JhcGhpYy1pbmstY29sb3IoJGNvbG9yKSB7XG4gIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWxpc3QtaXRlbS1tZXRhLWluay1jb2xvcigkY29sb3IpIHtcbiAgLm1kYy1saXN0LWl0ZW1fX21ldGEge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbGlzdC1pdGVtLWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICAubWRjLWxpc3QtaXRlbSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWxpc3QtZGl2aWRlci1jb2xvcigkY29sb3IpIHtcbiAgLm1kYy1saXN0LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJvcmRlci1ib3R0b20tY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1saXN0LWdyb3VwLXN1YmhlYWRlci1pbmstY29sb3IoJGNvbG9yKSB7XG4gIC5tZGMtbGlzdC1ncm91cF9fc3ViaGVhZGVyIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG4vL1xuLy8gUHJpdmF0ZVxuLy9cblxuLy8gU2V0cyB0aGUgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgZ3JhcGhpYyBlbGVtZW50LCBhcyB3ZWxsIGFzIGNhbGN1bGF0ZXMgdGhlIG1hcmdpbnMgZm9yXG4vLyB0aGUgZ3JhcGhpYyBlbGVtZW50IHN1Y2ggdGhhdCB0aGUgdGV4dCBpcyBhbHdheXMgb2Zmc2V0IGJ5IDcycHgsIHdoaWNoIGlzIGRlZmluZWQgd2l0aGluXG4vLyB0aGUgc3BlYy5cbkBtaXhpbiBtZGMtbGlzdC1ncmFwaGljLXNpemVfKCRzaXplKSB7XG4gICR0ZXh0LW9mZnNldDogNzJweDtcbiAgJHNpZGUtcGFkZGluZzogJG1kYy1saXN0LXNpZGUtcGFkZGluZztcbiAgJG1hcmdpbi12YWx1ZTogJHRleHQtb2Zmc2V0IC0gJHNpZGUtcGFkZGluZyAtICRzaXplO1xuXG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIHJpZ2h0LCAkbWFyZ2luLXZhbHVlLCBcIi5tZGMtbGlzdC1pdGVtXCIpO1xuXG4gIHdpZHRoOiAkc2l6ZTtcbiAgaGVpZ2h0OiAkc2l6ZTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kYy1kcmF3ZXItLWRpc21pc3NpYmxlIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24obGVmdCwgMCk7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG5cbiAgJi5tZGMtZHJhd2VyLS1vcGVuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5tZGMtZHJhd2VyLWFwcC1jb250ZW50IHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgMCk7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5tZGMtZHJhd2VyLS1vcGVuICsgJiB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgJG1kYy1kcmF3ZXItd2lkdGgpO1xuICB9XG5cbiAgLm1kYy1kcmF3ZXItLWNsb3NpbmcgKyAmIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCBsZWZ0LCAwKTtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5tZGMtZHJhd2VyLS1tb2RhbCB7XG4gIEBpbmNsdWRlIG1kYy1kcmF3ZXItc2NyaW0tZmlsbC1jb2xvcigkbWRjLWRyYXdlci1tb2RhbC1zY3JpbS1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oJG1kYy1kcmF3ZXItbW9kYWwtZWxldmF0aW9uKTtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24obGVmdCwgMCk7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuXG4gICYubWRjLWRyYXdlci0tb3BlbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4ubWRjLWRyYXdlci1zY3JpbSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICB6LWluZGV4OiAkbWRjLWRyYXdlci16LWluZGV4IC0gMTtcblxuICAubWRjLWRyYXdlci0tb3BlbiArICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLm1kYy1kcmF3ZXItLWFuaW1hdGUgKyAmIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLm1kYy1kcmF3ZXItLW9wZW5pbmcgKyAmIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkbWRjLWRyYXdlci1hbmltYXRpb24tZW50ZXI7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5tZGMtZHJhd2VyLS1jbG9zaW5nICsgJiB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJG1kYy1kcmF3ZXItYW5pbWF0aW9uLWV4aXQ7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9saXN0L21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1kcmF3ZXItYWN0aXZhdGVkLW92ZXJsYXktY29sb3IoJGNvbG9yKSB7XG4gIDpub3QoLm1kYy1saXN0LS1ub24taW50ZXJhY3RpdmUpID4gLm1kYy1saXN0LWl0ZW0ge1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMtYWN0aXZhdGVkKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1kcmF3ZXItYm9yZGVyLWNvbG9yKCRjb2xvcikge1xuICAkdmFsdWU6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKSwgJG1kYy1kcmF3ZXItZGl2aWRlci1vcGFjaXR5KTtcblxuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICR2YWx1ZSk7XG59XG5cbkBtaXhpbiBtZGMtZHJhd2VyLWl0ZW0tY29ybmVyLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpbmNsdWRlIG1kYy1saXN0LWl0ZW0tY29ybmVyLXJhZGl1cygkcmFkaXVzKTtcbn1cblxuQG1peGluIG1kYy1kcmF3ZXItZGl2aWRlci1jb2xvcigkY29sb3IpIHtcbiAgJHZhbHVlOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKCRjb2xvciksICRtZGMtZHJhd2VyLWRpdmlkZXItb3BhY2l0eSk7XG5cbiAgQGluY2x1ZGUgbWRjLWxpc3QtZGl2aWRlci1jb2xvcigkdmFsdWUpO1xufVxuXG5AbWl4aW4gbWRjLWRyYXdlci10aXRsZS1pbmstY29sb3IoJGNvbG9yKSB7XG4gICR2YWx1ZTogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpLCAkbWRjLWRyYXdlci10aXRsZS1pbmstb3BhY2l0eSk7XG5cbiAgLm1kYy1kcmF3ZXJfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJHZhbHVlKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWRyYXdlci1zdWJ0aXRsZS1pbmstY29sb3IoJGNvbG9yKSB7XG4gICR2YWx1ZTogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpLCAkbWRjLWRyYXdlci1zdWJ0aXRsZS1pbmstb3BhY2l0eSk7XG5cbiAgQGluY2x1ZGUgbWRjLWxpc3QtZ3JvdXAtc3ViaGVhZGVyLWluay1jb2xvcigkdmFsdWUpO1xuXG4gIC5tZGMtZHJhd2VyX19zdWJ0aXRsZSB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICR2YWx1ZSk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1kcmF3ZXItZmlsbC1jb2xvci1hY2Nlc3NpYmxlKCRjb2xvcikge1xuICAkYWNjZXNzaWJsZUNvbG9yOiBtZGMtdGhlbWUtYWNjZXNzaWJsZS1pbmstY29sb3IoJGNvbG9yKTtcblxuICBAaW5jbHVkZSBtZGMtZHJhd2VyLXRpdGxlLWluay1jb2xvcigkYWNjZXNzaWJsZUNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLWRyYXdlci1zdWJ0aXRsZS1pbmstY29sb3IoJGFjY2Vzc2libGVDb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1kcmF3ZXItaXRlbS10ZXh0LWluay1jb2xvcigkYWNjZXNzaWJsZUNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLWRyYXdlci1pdGVtLWljb24taW5rLWNvbG9yKCRhY2Nlc3NpYmxlQ29sb3IpO1xuICBAaW5jbHVkZSBtZGMtZHJhd2VyLXN1cmZhY2UtZmlsbC1jb2xvcigkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLWRyYXdlci1pdGVtLWljb24taW5rLWNvbG9yKCRjb2xvcikge1xuICAkdmFsdWU6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKSwgJG1kYy1kcmF3ZXItaXRlbS1pbmFjdGl2ZS1pY29uLWluay1vcGFjaXR5KTtcblxuICBAaW5jbHVkZSBtZGMtbGlzdC1pdGVtLWdyYXBoaWMtaW5rLWNvbG9yKCR2YWx1ZSk7XG59XG5cbkBtaXhpbiBtZGMtZHJhd2VyLWl0ZW0tYWN0aXZhdGVkLWljb24taW5rLWNvbG9yKCRjb2xvcikge1xuICAkdmFsdWU6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKSwgJG1kYy1kcmF3ZXItaXRlbS1hY3RpdmUtaWNvbi1pbmstb3BhY2l0eSk7XG5cbiAgLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1ncmFwaGljLWluay1jb2xvcigkdmFsdWUpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZHJhd2VyLWl0ZW0tYWN0aXZhdGVkLXRleHQtaW5rLWNvbG9yKCRjb2xvcikge1xuICAkdmFsdWU6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKSwgJG1kYy1kcmF3ZXItaXRlbS1hY3RpdmUtdGV4dC1pbmstb3BhY2l0eSk7XG5cbiAgLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1wcmltYXJ5LXRleHQtaW5rLWNvbG9yKCR2YWx1ZSk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1kcmF3ZXItaXRlbS10ZXh0LWluay1jb2xvcigkY29sb3IpIHtcbiAgJHZhbHVlOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKCRjb2xvciksICRtZGMtZHJhd2VyLWl0ZW0taW5hY3RpdmUtdGV4dC1pbmstb3BhY2l0eSk7XG5cbiAgLm1kYy1saXN0LWl0ZW0ge1xuICAgIEBpbmNsdWRlIG1kYy1saXN0LWl0ZW0tcHJpbWFyeS10ZXh0LWluay1jb2xvcigkdmFsdWUpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZHJhd2VyLXN1cmZhY2UtZmlsbC1jb2xvcigkY29sb3IpIHtcbiAgJHZhbHVlOiBtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICR2YWx1ZSk7XG59XG5cbkBtaXhpbiBtZGMtZHJhd2VyLXNjcmltLWZpbGwtY29sb3IoJGNvbG9yKSB7XG4gICR2YWx1ZTogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpLCAkbWRjLWRyYXdlci1tb2RhbC1zY3JpbS1vcGFjaXR5KTtcblxuICArIC5tZGMtZHJhd2VyLXNjcmltIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkdmFsdWUpO1xuICB9XG59XG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2xheW91dC92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL2RyYXdlci9tZGMtZHJhd2VyJztcclxuQGltcG9ydCAnfnNhc3MtbXEvbXEnO1xyXG5cclxuLmtteC1kcmF3ZXIge1xyXG4gICAgei1pbmRleDogNzUwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZSkge1xyXG4gICAgICAgIHotaW5kZXg6IDE1O1xyXG4gICAgfVxyXG59XHJcblxyXG4ua214LWRyYXdlci1zY3JpbSB7XHJcbiAgICB6LWluZGV4OiA3NDk7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGxhcmdlKSB7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgIH1cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBhbmQgJG1lZGlhLXR5cGUgIT0gJ3ByaW50J1xuICAgICAgICApIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcbiAgICBAZWxzZSB7XG4gICAgICAgIEBpZiAkbWluLXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRhbmQgICAgICAgICAgICB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgI3skYW5kfSc7IH1cblxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcbiAgICAgICAgQGlmICgkbWVkaWEtdHlwZSA9PSAnYWxsJyBhbmQgJG1lZGlhLXF1ZXJ5ICE9ICcnKSB7XG4gICAgICAgICAgICAkbWVkaWEtdHlwZTogJyc7XG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gUXVpY2sgc29ydFxuLy8vXG4vLy8gQGF1dGhvciBTYW0gUmljaGFyZHNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzb3J0XG4vLy8gQHJldHVybnMge0xpc3R9IFNvcnRlZCBMaXN0XG5AZnVuY3Rpb24gX21xLXF1aWNrLXNvcnQoJGxpc3QpIHtcbiAgICAkbGVzczogICgpO1xuICAgICRlcXVhbDogKCk7XG4gICAgJGxhcmdlOiAoKTtcblxuICAgIEBpZiBsZW5ndGgoJGxpc3QpID4gMSB7XG4gICAgICAgICRzZWVkOiBudGgoJGxpc3QsIGNlaWwobGVuZ3RoKCRsaXN0KSAvIDIpKTtcblxuICAgICAgICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XG4gICAgICAgICAgICBAaWYgKCRpdGVtID09ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGVxdWFsOiBhcHBlbmQoJGVxdWFsLCAkaXRlbSk7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA8ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGxlc3M6IGFwcGVuZCgkbGVzcywgJGl0ZW0pO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPiAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRsYXJnZTogYXBwZW5kKCRsYXJnZSwgJGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQHJldHVybiBqb2luKGpvaW4oX21xLXF1aWNrLXNvcnQoJGxlc3MpLCAkZXF1YWwpLCBfbXEtcXVpY2stc29ydCgkbGFyZ2UpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gU29ydCBhIG1hcCBieSB2YWx1ZXMgKHdvcmtzIHdpdGggbnVtYmVycyBvbmx5KVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtNYXB9IE1hcCBzb3J0ZWQgYnkgdmFsdWVcbkBmdW5jdGlvbiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1hcCkge1xuICAgICRtYXAtc29ydGVkOiAoKTtcbiAgICAkbWFwLWtleXM6IG1hcC1rZXlzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzLXNvcnRlZDogX21xLXF1aWNrLXNvcnQoJG1hcC12YWx1ZXMpO1xuXG4gICAgLy8gUmVvcmRlciBrZXkvdmFsdWUgcGFpcnMgYmFzZWQgb24ga2V5IHZhbHVlc1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkbWFwLXZhbHVlcy1zb3J0ZWQge1xuICAgICAgICAkaW5kZXg6IGluZGV4KCRtYXAtdmFsdWVzLCAkdmFsdWUpO1xuICAgICAgICAka2V5OiBudGgoJG1hcC1rZXlzLCAkaW5kZXgpO1xuICAgICAgICAkbWFwLXNvcnRlZDogbWFwLW1lcmdlKCRtYXAtc29ydGVkLCAoJGtleTogJHZhbHVlKSk7XG5cbiAgICAgICAgLy8gVW5zZXQgdGhlIHZhbHVlIGluICRtYXAtdmFsdWVzIHRvIHByZXZlbnQgdGhlIGxvb3BcbiAgICAgICAgLy8gZnJvbSBmaW5kaW5nIHRoZSBzYW1lIGluZGV4IHR3aWNlXG4gICAgICAgICRtYXAtdmFsdWVzOiBzZXQtbnRoKCRtYXAtdmFsdWVzLCAkaW5kZXgsIDApO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG1hcC1zb3J0ZWQ7XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbiAgICAkbXEtYnJlYWtwb2ludHM6IF9tcS1tYXAtc29ydC1ieS12YWx1ZSgkbXEtYnJlYWtwb2ludHMpICFnbG9iYWw7XG59XG5cbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gQnJlYWtwb2ludCBuYW1lcyBhbmQgc2l6ZXNcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zaG93LWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgZ2xvYmFsIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG4vLy9cbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBjdXN0b20gc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cygoTCwgWEwpLCAoUzogMzAwcHgsIEw6IDgwMHB4LCBYTDogMTIwMHB4KSk7XG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGOEUzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xuICAgIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG4iLCJAaW1wb3J0ICd+QG1hdGVyaWFsL2ZhYi9taXhpbnMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdXRpbGl0aWVzL3NyYy9zdmcvbWl4aW5zJztcclxuQGltcG9ydCAnLi9taXhpbnMnO1xyXG5cclxuLmtteC1mYWIge1xyXG4gICAgJEZBQi1aLUlOREVYOiA1OyAvLyB0b2RvOiBMRVQnUyBHRVQgVEhFU0UgWi1JTkRFWCBWQUxVRVMgSU5UTyBBIEdMT0JBTCBMT09LVVAvTUFQIElOIFRIRSBUSEVNRSBQQUNLQUdFXHJcblxyXG4gICAgQGluY2x1ZGUgbWRjLWZhYi1iYXNlXztcclxuICAgIEBpbmNsdWRlIGtteC1mYWItc3ZnO1xyXG4gICAgQGluY2x1ZGUga214LXN2Zy1iYXNlO1xyXG5cclxuICAgIEBpbmNsdWRlIG1kYy1mYWItY29udGFpbmVyLWNvbG9yKCR3aGl0ZSk7XHJcbiAgICBAaW5jbHVkZSBtZGMtZmFiLWluay1jb2xvcihrbXgtY29sb3IoJ2JsdWUnLCA5MDApKTtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwbXMgbGluZWFyOyAvLyAnaG92ZXItb2ZmJyB0cmFuc2l0aW9uXHJcbiAgICB6LWluZGV4OiAkRkFCLVotSU5ERVg7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IC8vIHJlbW92ZSB0aGUgcmlwcGxlIGVmZmVjdCBob3N0IGNvbnRhaW5lcnNcclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDIwMCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMG1zIGxpbmVhcjtcclxuICAgIH1cclxufVxyXG4iLCIvLyBDb3B5cmlnaHQgMjAxNiBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9lbGV2YXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLWZhYi1hY2Nlc3NpYmxlKCRjb250YWluZXItY29sb3IpIHtcbiAgJGZpbGwtdG9uZTogbWRjLXRoZW1lLXRvbmUoJGNvbnRhaW5lci1jb2xvcik7XG5cbiAgQGluY2x1ZGUgbWRjLWZhYi1jb250YWluZXItY29sb3IoJGNvbnRhaW5lci1jb2xvcik7XG5cbiAgQGlmICgkZmlsbC10b25lID09IFwiZGFya1wiKSB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWRhcmspO1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXModGV4dC1wcmltYXJ5LW9uLWRhcmspO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmFiLWluay1jb2xvcih0ZXh0LXByaW1hcnktb24tbGlnaHQpO1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXModGV4dC1wcmltYXJ5LW9uLWxpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZhYi1jb250YWluZXItY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvciwgJGVkZ2VPcHRPdXQ6IHRydWUpO1xufVxuXG5AbWl4aW4gbWRjLWZhYi1pY29uLXNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgLm1kYy1mYWJfX2ljb24ge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGhlaWdodDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZhYi1pbmstY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLWZhYi1leHRlbmRlZC1mbHVpZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWl4aW4gbWRjLWZhYi1leHRlbmRlZC1wYWRkaW5nKCRpY29uLXBhZGRpbmcsICRsYWJlbC1wYWRkaW5nKSB7XG4gIEBpbmNsdWRlIG1kYy1mYWItZXh0ZW5kZWQtbGFiZWwtcGFkZGluZygkbGFiZWwtcGFkZGluZyk7XG5cbiAgLy8gT2Zmc2V0cyB0aGUgb3V0ZXIgbGFiZWwgcGFkZGluZyBieSBkZWR1Y3RpbmcgaXQgZnJvbSBpY29uIHBhZGRpbmcuXG4gIC5tZGMtZmFiX19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShcbiAgICAgIG1hcmdpbixcbiAgICAgICRpY29uLXBhZGRpbmcgLSAkbGFiZWwtcGFkZGluZyxcbiAgICAgICRpY29uLXBhZGRpbmcpO1xuICB9XG5cbiAgLy8gRm9yIEV4dGVuZGVkIEZBQiB3aXRoIHRleHQgbGFiZWwgZm9sbG93ZWQgYnkgaWNvbi5cbiAgLm1kYy1mYWJfX2xhYmVsICsgLm1kYy1mYWJfX2ljb24ge1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KFxuICAgICAgbWFyZ2luLFxuICAgICAgJGljb24tcGFkZGluZyxcbiAgICAgICRpY29uLXBhZGRpbmcgLSAkbGFiZWwtcGFkZGluZyk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1mYWItZXh0ZW5kZWQtbGFiZWwtcGFkZGluZygkbGFiZWwtcGFkZGluZykge1xuICBwYWRkaW5nOiAwICRsYWJlbC1wYWRkaW5nO1xufVxuXG4kbWRjLWZhYi1pY29uLWVudGVyLWRlbGF5XzogOTBtcztcbiRtZGMtZmFiLWljb24tZW50ZXItZHVyYXRpb25fOiAxODBtcztcbiRtZGMtZmFiLWV4dGVuZGVkLWhlaWdodF86IDQ4cHg7XG5cbkBtaXhpbiBtZGMtZmFiLWJhc2VfIHtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkO1xuICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDYpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogNTZweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOlxuICAgIGJveC1zaGFkb3cgJG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi1kdXJhdGlvbiAkbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbixcbiAgICBvcGFjaXR5IDE1bXMgbGluZWFyIDMwbXMsXG4gICAgbWRjLWFuaW1hdGlvbi1lbnRlcih0cmFuc2Zvcm0sICRtZGMtZmFiLWljb24tZW50ZXItZHVyYXRpb25fICsgJG1kYy1mYWItaWNvbi1lbnRlci1kZWxheV8pO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oOCk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbigxMik7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgLy8gVE9ETyhhY2R2b3Jhayk6IFNob3VsZCB0aGlzIGJlIHBhaXJlZCB3aXRoIHN0YXRlcyBhbmQvb3IgcmlwcGxlPyBXZSBkb24ndCB3YW50IHRvIGRpc2FibGUgb3V0bGluZVxuICAgIC8vIChhbiBhY2Nlc3NpYmlsaXR5L3VzYWJpbGl0eSBmZWF0dXJlKSB1bmxlc3Mgd2UncmUgY29uZmlkZW50IHRoYXQgdGhlcmUgaXMgYWxzbyBhIHZpc3VhbCBpbmRpY2F0aW9uIHRoYXQgdGhlXG4gICAgLy8gZWxlbWVudCBoYXMgZm9jdXMuIElmIHRoZSBjbGllbnQgaGFzIGN1c3RvbWl6ZWQgdGhlIERPTSBpbiBzb21lIHVuZXhwZWN0ZWQgd2F5LCBhbmQgaXMgY2VydGFpbiB0aGF0IGFub3RoZXJcbiAgICAvLyBlbGVtZW50IHdpbGwgcmVjZWl2ZSBmb2N1cyBpbnN0ZWFkLCB0aGV5IGNhbiBhbHdheXMgb3ZlcnJpZGUgdGhpcyBwcm9wZXJ0eSBtYW51YWxseSBpbiB0aGVpciBDU1MuXG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC8vIFRoaXMgYWxsb3dzIGZvciB1c2luZyBTVkdzIHdpdGhpbiB0aGVtIHRvIGFsaWduIHByb3Blcmx5IGluIGFsbCBicm93c2Vycy5cbiAgLy8gQ2FuIHJlbW92ZSBvbmNlOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk0NTE1IGlzIHJlc29sdmVkLlxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gID4gc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlXG59XG5cbkBtaXhpbiBtZGMtZmFiLS1taW5pXyB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbkBtaXhpbiBtZGMtZmFiLS1leHRlbmRlZF8ge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShidXR0b24pO1xuICBAaW5jbHVkZSBtZGMtZmFiLWV4dGVuZGVkLXBhZGRpbmcoXG4gICAgJG1kYy1mYWItZXh0ZW5kZWQtaWNvbi1wYWRkaW5nLFxuICAgICRtZGMtZmFiLWV4dGVuZGVkLWxhYmVsLXBhZGRpbmcpO1xuXG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJG1kYy1mYWItZXh0ZW5kZWQtaGVpZ2h0XztcbiAgYm9yZGVyLXJhZGl1czogJG1kYy1mYWItZXh0ZW5kZWQtaGVpZ2h0XyAvIDI7XG59XG5cbkBtaXhpbiBtZGMtZmFiX19pY29uXyB7XG4gIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tZW50ZXIodHJhbnNmb3JtLCAkbWRjLWZhYi1pY29uLWVudGVyLWR1cmF0aW9uXywgJG1kYy1mYWItaWNvbi1lbnRlci1kZWxheV8pO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG5cbkBtaXhpbiBtZGMtZmFiX19sYWJlbF8ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5AbWl4aW4gbWRjLWZhYl9faWNvbi1vdmVycmlkZXNfIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWl4aW4gbWRjLWZhYi0tZXhpdGVkXyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zaXRpb246XG4gICAgb3BhY2l0eSAxNW1zIGxpbmVhciAxNTBtcyxcbiAgICBtZGMtYW5pbWF0aW9uLWV4aXQtcGVybWFuZW50KHRyYW5zZm9ybSwgMTgwbXMpO1xuICBvcGFjaXR5OiAwO1xuXG4gIC5tZGMtZmFiX19pY29uIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tZXhpdC1wZXJtYW5lbnQodHJhbnNmb3JtLCAxMzVtcyk7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXV0aWxpdGllcy9zcmMvc3ZnL21peGlucyc7XHJcblxyXG5AbWl4aW4ga214LWZhYi1zdmcoJGljb24tc3F1YXJlOiBzaXplKCdsJykpIHtcclxuICAgIEBpbmNsdWRlIGtteC1zdmctaWNvbjtcclxuXHJcbiAgICAuc3ZnLWljb24ge1xyXG4gICAgICAgIGhlaWdodDogJGljb24tc3F1YXJlO1xyXG4gICAgICAgIHdpZHRoOiAkaWNvbi1zcXVhcmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5cbiRtZGMtZm9ybS1maWVsZC1pdGVtLXNwYWNpbmc6IDRweDtcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGVcbi5tZGMtZm9ybS1maWVsZCB7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KGJvZHkyKTtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsIHRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kKTtcblxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICA+IGxhYmVsIHtcbiAgICBvcmRlcjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAkbWRjLWZvcm0tZmllbGQtaXRlbS1zcGFjaW5nO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgPiBsYWJlbCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRtZGMtZm9ybS1maWVsZC1pdGVtLXNwYWNpbmc7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtZm9ybS1maWVsZC0tYWxpZ24tZW5kIHtcbiAgPiBsYWJlbCB7XG4gICAgb3JkZXI6IC0xO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRtZGMtZm9ybS1maWVsZC1pdGVtLXNwYWNpbmc7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtcnRsIHtcbiAgICA+IGxhYmVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogJG1kYy1mb3JtLWZpZWxkLWl0ZW0tc3BhY2luZztcbiAgICB9XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGVcbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9rbXgtdGhlbWUnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Zvcm1zL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvZm9ybS1maWVsZC9tZGMtZm9ybS1maWVsZCc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvY2hlY2tib3gvdmFyaWFibGVzJztcclxuXHJcbiRrbXgtZm9ybS1maWVsZC1pdGVtLXNwYWNpbmc6IHNpemUoJ3hzJyk7XHJcblxyXG4ua214LWZvcm0tZmllbGQge1xyXG4gICAgQGV4dGVuZCAubWRjLWZvcm0tZmllbGQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB3aWR0aDogYXV0bztcclxuXHJcbiAgICAmLS1pbnZhbGlkIHtcclxuICAgICAgICArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUxBQkVMLVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy10aGVtZS0tZGFyayAmIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1rbXgtaW5wdXQtbGFiZWwtcHJpbWFyeS1vbi1kYXJrLCAkd2hpdGUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBGb3JtIEZpZWxkIGNsYXNzIHZhcmlhbnRzXHJcbi8vIChleHRlbmQgZm9ybS1maWVsZCByYXRoZXIgdGhhbiByZXF1aXJlIGNvbXBvdW5kXHJcbi8vIGNsYXNzLW5hbWUgYXNzaWdubWVudHMgaW4gdGhlIERPTSBlbGVtZW50KTpcclxuLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkLmtteC1mb3JtLWZpZWxkLS1zdGFja2VkIHtcclxuICAgIEBleHRlbmQgLmtteC1mb3JtLWZpZWxkO1xyXG5cclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgIGxhYmVsLFxyXG4gICAgW2NsYXNzJD0nLWxhYmVsJ10ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1lbmQge1xyXG4gICAgQGV4dGVuZCAubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZDtcclxufVxyXG5cclxuLmtteC1mb3JtLWZpZWxkLS1hbGlnbi1wdXNoLWRvd24ge1xyXG4gICAgQGV4dGVuZCAua214LWZvcm0tZmllbGQ7XHJcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcclxufVxyXG5cclxuLmtteC1mb3JtLWdyb3VwIHtcclxuICAgICYtLWludmFsaWQge1xyXG4gICAgICAgIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUxBQkVMLVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC43NWVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLS12ZXJ0aWNhbCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxufVxyXG5cclxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcclxuICAgIGZvbnQtZmFtaWx5OiAka214LXR5cG9ncmFwaHktZm9udC1hbHQ7XHJcbiAgICBjb2xvcjogJEtNWC1GT1JNLUhFTFBFUi1URVhULUNPTE9SO1xyXG4gICAgY29sb3I6IHZhcigtLWtteC10aGVtZS10ZXh0LWhpbnQtb24tbGlnaHQsICRLTVgtRk9STS1IRUxQRVItVEVYVC1DT0xPUik7XHJcbn1cclxuIiwiQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2tteC10aGVtZSc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS9taXhpbnMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL2Zvcm0tZmllbGQvbWRjLWZvcm0tZmllbGQnO1xyXG5cclxuLyogIUlNUE9SVEFOVDogTEVHT1MgcmVjb21tZW5kcyB0aGUgdXNlIG9mIHRoZSBmaWVsZHNldCBlbGVtZW50XHJcbiAqIHdoZW4gZ3JvdXBpbmcgcmVsYXRlZCBmb3JtIGNvbXBvbmVudHMuXHJcbiAqL1xyXG5cclxuLy8gVGhlIGZvbGxvd2luZyByZXNldHMgYW5kIHJlbW92ZXMgdGhlIGJyb3dzZXItZGVmYXVsdCBzdHlsaW5nICYgcG9zaXRpb25pbmcgZm9yIHRoZSBmaWVsZHNldCAmIGxlZ2VuZCBlbGVtZW50czpcclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG5sZWdlbmQge1xyXG4gICAgQGluY2x1ZGUgdHlwZS1sYWJlbC1sZyhrbXgtY29sb3IoJ3NsYXRlJywgOTAwKSk7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIHBhZGRpbmc6IDAuNWVtIDAgMCAwLjVlbTtcclxufVxyXG5cclxuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbmZpZWxkc2V0LFxyXG4ua214LWZpZWxkc2V0IHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG1pbi13aWR0aDogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMC4wMWVtOyAvLyB0aGlzIHRvcC1wYWRkaW5nIGlzIGNyaXRpY2FsIGZvciB0aGUgbGVnZW5kIGVsZW1lbnQgcG9zaXRpb25pbmcgdG8gd29yay5cclxufVxyXG5cclxuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbmJvZHk6bm90KDotbW96LWhhbmRsZXItYmxvY2tlZCkgZmllbGRzZXQge1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxufVxyXG5cclxuLypcclxuICogSU1QT1JUQU5UOiBBIGRlc2lnbi1kZWNpc2lvbiBpbiBzb21lIGJyb3dzZXJzIHdpbGwgbm90IGFsbG93IGFcclxuICogZmllbGRzZXQgdG8gYmUgY2FzdCBhcyBhIGZsZXhib3ggY29udGFpbmVyLlxyXG4gKlxyXG4gKiBMRUdPUyByZWNvbW1lbmRzIGFkZGluZyBhIGFuIGltbWVkaWF0ZSBjaGlsZCBjb250YWluZXIgb2YgdGhlIGZpZWxkc2V0IHdpdGggZGlzcGxheTpmbGV4IGFzc2lnbmVkLlxyXG4gKiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ3NTkwXHJcbiAqL1xyXG5cclxuLy8gVE9ETzogcGVyaGFwcyB0aGlzIC5mbGV4LXdyYXBwZXIgbmVlZHMgdG8gYmUgYSB1dGlsaXR5IGNsYXNzOlxyXG4ua214LWZsZXgtd3JhcHBlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICAmLS1ob3Jpem9udGFsIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLmtteC1maWVsZHNldC0taW52YWxpZCB7XHJcbiAgICAua214LWZpZWxkc2V0LWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUhFTFBFUi1URVhULUNPTE9SLUlOVkFMSUQ7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Zvcm1zL21peGlucyc7XHJcblxyXG4ua214LWZpZWxkc2V0LWhlbHBlci10ZXh0IHtcclxuICAgIEBpbmNsdWRlIGtteC1mb3JtLWhlbHBlci10ZXh0LW1peGluKCk7XHJcbn1cclxuIiwiLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcblxuOnJvb3Qge1xuICBAZWFjaCAkc2l6ZSBpbiBtYXAta2V5cygkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMpIHtcbiAgICAtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tI3skc2l6ZX06ICN7bWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWRlZmF1bHQtbWFyZ2luLCAkc2l6ZSl9O1xuICAgIC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci0jeyRzaXplfTogI3ttYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtZGVmYXVsdC1ndXR0ZXIsICRzaXplKX07XG4gICAgLS1tZGMtbGF5b3V0LWdyaWQtY29sdW1uLXdpZHRoLSN7JHNpemV9OiAje21hcC1nZXQoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW4td2lkdGgsICRzaXplKX07XG4gIH1cbn1cblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgbGF5b3V0LWdyaWRcbi5tZGMtbGF5b3V0LWdyaWQge1xuICBAZWFjaCAkc2l6ZSBpbiBtYXAta2V5cygkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMpIHtcbiAgICBAaW5jbHVkZSBtZGMtbGF5b3V0LWdyaWQtbWVkaWEtcXVlcnlfKCRzaXplKSB7XG4gICAgICAkbWFyZ2luOiBtYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtZGVmYXVsdC1tYXJnaW4sICRzaXplKTtcblxuICAgICAgQGluY2x1ZGUgbWRjLWxheW91dC1ncmlkKCRzaXplLCAkbWFyZ2luLCAkbWRjLWxheW91dC1ncmlkLW1heC13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtbGF5b3V0LWdyaWRfX2lubmVyIHtcbiAgQGVhY2ggJHNpemUgaW4gbWFwLWtleXMoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zKSB7XG4gICAgQGluY2x1ZGUgbWRjLWxheW91dC1ncmlkLW1lZGlhLXF1ZXJ5Xygkc2l6ZSkge1xuICAgICAgJG1hcmdpbjogbWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWRlZmF1bHQtbWFyZ2luLCAkc2l6ZSk7XG4gICAgICAkZ3V0dGVyOiBtYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtZGVmYXVsdC1ndXR0ZXIsICRzaXplKTtcblxuICAgICAgQGluY2x1ZGUgbWRjLWxheW91dC1ncmlkLWlubmVyKCRzaXplLCAkbWFyZ2luLCAkZ3V0dGVyKTtcbiAgICB9XG4gIH1cbn1cblxuLm1kYy1sYXlvdXQtZ3JpZF9fY2VsbCB7XG4gIC8vIHNlbGVjdCB0aGUgdXBwZXIgYnJlYWtwb2ludFxuICAkdXBwZXItYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucyksIDEpO1xuXG4gIEBlYWNoICRzaXplIGluIG1hcC1rZXlzKCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucykge1xuICAgIEBpbmNsdWRlIG1kYy1sYXlvdXQtZ3JpZC1tZWRpYS1xdWVyeV8oJHNpemUpIHtcbiAgICAgICRndXR0ZXI6IG1hcC1nZXQoJG1kYy1sYXlvdXQtZ3JpZC1kZWZhdWx0LWd1dHRlciwgJHNpemUpO1xuXG4gICAgICBAaW5jbHVkZSBtZGMtbGF5b3V0LWdyaWQtY2VsbCgkc2l6ZSwgJG1kYy1sYXlvdXQtZ3JpZC1kZWZhdWx0LWNvbHVtbi1zcGFuLCAkZ3V0dGVyKTtcblxuICAgICAgQGZvciAkc3BhbiBmcm9tIDEgdGhyb3VnaCBtYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHVwcGVyLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgLy8gU3BhbiBjbGFzc2VzLlxuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBtYXgtbmVzdGluZy1kZXB0aFxuICAgICAgICBAYXQtcm9vdCAubWRjLWxheW91dC1ncmlkX19jZWxsLS1zcGFuLSN7JHNwYW59LFxuICAgICAgICAgIC5tZGMtbGF5b3V0LWdyaWRfX2NlbGwtLXNwYW4tI3skc3Bhbn0tI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1kYy1sYXlvdXQtZ3JpZC1jZWxsLXNwYW5fKCRzaXplLCAkc3BhbiwgJGd1dHRlcik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBtYXgtbmVzdGluZy1kZXB0aFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE9yZGVyIG92ZXJyaWRlIGNsYXNzZXMuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMsICR1cHBlci1icmVha3BvaW50KSB7XG4gICAgJi0tb3JkZXItI3skaX0ge1xuICAgICAgQGluY2x1ZGUgbWRjLWxheW91dC1ncmlkLWNlbGwtb3JkZXIoJGkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFsaWdubWVudCBjbGFzc2VzLlxuICAmLS1hbGlnbi10b3Age1xuICAgIEBpbmNsdWRlIG1kYy1sYXlvdXQtZ3JpZC1jZWxsLWFsaWduKHRvcCk7XG4gIH1cblxuICAmLS1hbGlnbi1taWRkbGUge1xuICAgIEBpbmNsdWRlIG1kYy1sYXlvdXQtZ3JpZC1jZWxsLWFsaWduKG1pZGRsZSk7XG4gIH1cblxuICAmLS1hbGlnbi1ib3R0b20ge1xuICAgIEBpbmNsdWRlIG1kYy1sYXlvdXQtZ3JpZC1jZWxsLWFsaWduKGJvdHRvbSk7XG4gIH1cbn1cblxuLm1kYy1sYXlvdXQtZ3JpZC0tZml4ZWQtY29sdW1uLXdpZHRoIHtcbiAgQGVhY2ggJHNpemUgaW4gbWFwLWtleXMoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zKSB7XG4gICAgQGluY2x1ZGUgbWRjLWxheW91dC1ncmlkLW1lZGlhLXF1ZXJ5Xygkc2l6ZSkge1xuICAgICAgJG1hcmdpbjogbWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWRlZmF1bHQtbWFyZ2luLCAkc2l6ZSk7XG4gICAgICAkZ3V0dGVyOiBtYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtZGVmYXVsdC1ndXR0ZXIsICRzaXplKTtcbiAgICAgICRjb2x1bW4td2lkdGg6IG1hcC1nZXQoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW4td2lkdGgsICRzaXplKTtcblxuICAgICAgQGluY2x1ZGUgbWRjLWxheW91dC1ncmlkLWZpeGVkLWNvbHVtbi13aWR0aCgkc2l6ZSwgJG1hcmdpbiwgJGd1dHRlciwgJGNvbHVtbi13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtbGF5b3V0LWdyaWQtLWFsaWduLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ubWRjLWxheW91dC1ncmlkLS1hbGlnbi1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vIHJldHVybnMgdGhlIGxvd2VyIGdyaWQgYm91bmRhcnkgb3IgbnVsbCBpZiB0aGUgc21hbGxlc3QgZ3JpZCBpcyBzZWxlY3RlZFxuQGZ1bmN0aW9uIG1kYy1sYXlvdXQtZ3JpZC1icmVha3BvaW50LW1pbigkc2l6ZSkge1xuICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHNpemUpIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHN0eWxlIHNwZWNpZmllZCEgQ2hvb3NlIG9uZSBvZiAje21hcC1rZXlzKCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucyl9XCI7XG4gIH1cbiAgJG1pbjogbWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyByZXR1cm5zIHRoZSB1cHBlciBncmlkIGJvdW5kYXJ5IG9yIG51bGwgaWYgdGhlIGxhcmdlc3QgZ3JpZCBpcyBzZWxlY3RlZFxuQGZ1bmN0aW9uIG1kYy1sYXlvdXQtZ3JpZC1icmVha3BvaW50LW1heCgkc2l6ZSkge1xuICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHNpemUpIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHN0eWxlIHNwZWNpZmllZCEgQ2hvb3NlIG9uZSBvZiAje21hcC1rZXlzKCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucyl9XCI7XG4gIH1cbiAgJG5hbWVzOiBtYXAta2V5cygkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMpO1xuICAkbjogaW5kZXgoJG5hbWVzLCAkc2l6ZSk7XG4gICRwcmV2OiBpZigkbiA+IDEsIG50aCgkbmFtZXMsICRuIC0gMSksIG51bGwpO1xuXG4gIEByZXR1cm4gaWYoJHByZXYsIChtZGMtbGF5b3V0LWdyaWQtYnJlYWtwb2ludC1taW4oJHByZXYpIC0gMXB4KSwgbnVsbCk7XG59XG5cbi8vIFByaXZhdGUgbWl4aW5zLCBtZWFudCBmb3IgaW50ZXJuYWwgdXNlLlxuQG1peGluIG1kYy1sYXlvdXQtZ3JpZC1tZWRpYS1xdWVyeV8oJHNpemUpIHtcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMsICRzaXplKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBzdHlsZSBzcGVjaWZpZWQhIENob29zZSBvbmUgb2YgI3ttYXAta2V5cygkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMpfVwiO1xuICB9XG5cbiAgJG1pbjogbWRjLWxheW91dC1ncmlkLWJyZWFrcG9pbnQtbWluKCRzaXplKTtcbiAgJG1heDogbWRjLWxheW91dC1ncmlkLWJyZWFrcG9pbnQtbWF4KCRzaXplKTtcblxuICBAaWYgJG1pbiA9PSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIC8vIFBob25lXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgLy8gVGFibGV0XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ID09IG51bGwge1xuICAgIC8vIERlc2t0b3BcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBGYWxsYmFjayAtIG5vIGJyZWFrcG9pbnRzIGRlZmluZWRcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWxheW91dC1ncmlkLWNlbGwtc3Bhbl8oJHNpemUsICRzcGFuLCAkZ3V0dGVyKSB7XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zLCAkc2l6ZSkge1xuICAgIEBlcnJvciBcIkludmFsaWQgc3R5bGUgc3BlY2lmaWVkISBDaG9vc2Ugb25lIG9mICN7bWFwLWtleXMoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zKX1cIjtcbiAgfVxuXG4gICRwZXJjZW50OiBwZXJjZW50YWdlKCRzcGFuIC8gbWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMsICRzaXplKSk7XG5cbiAgQGlmICRwZXJjZW50ID4gMTAwJSB7XG4gICAgJHBlcmNlbnQ6IDEwMCU7XG4gIH1cblxuICB3aWR0aDogY2FsYygjeyRwZXJjZW50fSAtICN7JGd1dHRlcn0pO1xuICB3aWR0aDogY2FsYygjeyRwZXJjZW50fSAtIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItI3skc2l6ZX0sICN7JGd1dHRlcn0pKTtcblxuICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gbWluKCRzcGFuLCBtYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHNpemUpKTtcbiAgfVxufVxuXG4vLyBQdWJsaWMgbWl4aW5zLCBtZWFudCBmb3IgZGV2ZWxvcGVyIHVzYWdlLlxuQG1peGluIG1kYy1sYXlvdXQtZ3JpZCgkc2l6ZSwgJG1hcmdpbiwgJG1heC13aWR0aDogbnVsbCkge1xuICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHNpemUpIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHN0eWxlIHNwZWNpZmllZCEgQ2hvb3NlIG9uZSBvZiAje21hcC1rZXlzKCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucyl9XCI7XG4gIH1cblxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogJG1hcmdpbjtcbiAgcGFkZGluZzogdmFyKC0tbWRjLWxheW91dC1ncmlkLW1hcmdpbi0jeyRzaXplfSwgI3skbWFyZ2lufSk7XG5cbiAgQGlmICRtYXgtd2lkdGgge1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWxheW91dC1ncmlkLWlubmVyKCRzaXplLCAkbWFyZ2luLCAkZ3V0dGVyKSB7XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zLCAkc2l6ZSkge1xuICAgIEBlcnJvciBcIkludmFsaWQgc3R5bGUgc3BlY2lmaWVkISBDaG9vc2Ugb25lIG9mICN7bWFwLWtleXMoJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zKX1cIjtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBtYXJnaW46IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luOiBjYWxjKHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItI3skc2l6ZX0sICN7JGd1dHRlcn0pIC8gMiAqIC0xKTtcblxuICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1hcmdpbjogMDtcbiAgICBncmlkLWdhcDogJGd1dHRlcjtcbiAgICBncmlkLWdhcDogdmFyKC0tbWRjLWxheW91dC1ncmlkLWd1dHRlci0jeyRzaXplfSwgJGd1dHRlcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQobWFwLWdldCgkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMsICRzaXplKSwgbWlubWF4KDAsIDFmcikpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbGF5b3V0LWdyaWQtY2VsbCgkc2l6ZSwgJGRlZmF1bHQtc3BhbiwgJGd1dHRlcikge1xuICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHNpemUpIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHN0eWxlIHNwZWNpZmllZCEgQ2hvb3NlIG9uZSBvZiAje21hcC1rZXlzKCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucyl9XCI7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtbGF5b3V0LWdyaWQtY2VsbC1zcGFuXygkc2l6ZSwgJGRlZmF1bHQtc3BhbiwgJGd1dHRlcik7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luOiBjYWxjKHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1ndXR0ZXItI3skc2l6ZX0sICN7JGd1dHRlcn0pIC8gMik7XG5cbiAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbGF5b3V0LWdyaWQtY2VsbC1vcmRlcigkb3JkZXIpIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuQG1peGluIG1kYy1sYXlvdXQtZ3JpZC1jZWxsLWFsaWduKCRwb3NpdGlvbikge1xuICBAaWYgJHBvc2l0aW9uID09IFwidG9wXCIge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cbiAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9zaXRpb24gPT0gXCJtaWRkbGVcIiB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgQGlmICRwb3NpdGlvbiA9PSBcImJvdHRvbVwiIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgYWxpZ24tc2VsZjogZW5kO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9zaXRpb24gPT0gXCJzdHJldGNoXCIge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIH1cbn1cblxuQG1peGluIG1kYy1sYXlvdXQtZ3JpZC1maXhlZC1jb2x1bW4td2lkdGgoJHNpemUsICRtYXJnaW4sICRndXR0ZXIsICRjb2x1bW4td2lkdGgpIHtcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMsICRzaXplKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBzdHlsZSBzcGVjaWZpZWQhIENob29zZSBvbmUgb2YgI3ttYXAta2V5cygkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMpfVwiO1xuICB9XG5cbiAgJGNvbHVtbkNvdW50OiBtYXAtZ2V0KCRtZGMtbGF5b3V0LWdyaWQtY29sdW1ucywgJHNpemUpO1xuICAkZ3V0dGVyLW51bWJlcjogJGNvbHVtbkNvdW50IC0gMTtcbiAgJG1hcmdpbi1udW1iZXI6IDI7XG5cbiAgd2lkdGg6ICRjb2x1bW4td2lkdGggKiAkY29sdW1uQ291bnQgKyAkZ3V0dGVyICogJGd1dHRlci1udW1iZXIgKyAkbWFyZ2luICogJG1hcmdpbi1udW1iZXI7XG4gIHdpZHRoOlxuICAgIGNhbGMoXG4gICAgICB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtY29sdW1uLXdpZHRoLSN7JHNpemV9LCAjeyRjb2x1bW4td2lkdGh9KSAqICN7JGNvbHVtbkNvdW50fSArXG4gICAgICB2YXIoLS1tZGMtbGF5b3V0LWdyaWQtZ3V0dGVyLSN7JHNpemV9LCAjeyRndXR0ZXJ9KSAqICN7JGd1dHRlci1udW1iZXJ9ICtcbiAgICAgIHZhcigtLW1kYy1sYXlvdXQtZ3JpZC1tYXJnaW4tI3skc2l6ZX0sICN7JG1hcmdpbn0pICogI3skbWFyZ2luLW51bWJlcn1cbiAgICApO1xufVxuIiwiLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuJG1kYy1sYXlvdXQtZ3JpZC1icmVha3BvaW50czogKFxuICBkZXNrdG9wOiA4NDBweCxcbiAgdGFibGV0OiA0ODBweCxcbiAgcGhvbmU6IDBweFxuKSAhZGVmYXVsdDtcblxuJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW5zOiAoXG4gIGRlc2t0b3A6IDEyLFxuICB0YWJsZXQ6IDgsXG4gIHBob25lOiA0XG4pICFkZWZhdWx0O1xuXG4kbWRjLWxheW91dC1ncmlkLWRlZmF1bHQtbWFyZ2luOiAoXG4gIGRlc2t0b3A6IDI0cHgsXG4gIHRhYmxldDogMTZweCxcbiAgcGhvbmU6IDE2cHhcbikgIWRlZmF1bHQ7XG5cbiRtZGMtbGF5b3V0LWdyaWQtZGVmYXVsdC1ndXR0ZXI6IChcbiAgZGVza3RvcDogMjRweCxcbiAgdGFibGV0OiAxNnB4LFxuICBwaG9uZTogMTZweFxuKSAhZGVmYXVsdDtcblxuJG1kYy1sYXlvdXQtZ3JpZC1jb2x1bW4td2lkdGg6IChcbiAgZGVza3RvcDogNzJweCxcbiAgdGFibGV0OiA3MnB4LFxuICBwaG9uZTogNzJweFxuKSAhZGVmYXVsdDtcblxuJG1kYy1sYXlvdXQtZ3JpZC1kZWZhdWx0LWNvbHVtbi1zcGFuOiA0ICFkZWZhdWx0O1xuXG4kbWRjLWxheW91dC1ncmlkLW1heC13aWR0aDogbnVsbCAhZGVmYXVsdDtcbiIsIkBpbXBvcnQgJ35AbWF0ZXJpYWwvbGF5b3V0LWdyaWQvbWRjLWxheW91dC1ncmlkJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2xheW91dC92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICcuL21peGlucyc7XHJcblxyXG4vKiAtLSBzY3JlZW4gc2l6ZXMgcmVmZXJlbmNlOiAtLVxyXG4kc2NyZWVuLXNpemVzOlxyXG4gICAgc21hbGw6IDMwMHB4LFxyXG4gICAgbWVkaXVtOiA2MDBweCxcclxuICAgIGxhcmdlOiA5MDBweCxcclxuICAgIHhsYXJnZTogMTIwMHB4LFxyXG4gICAgeHhsYXJnZTogMjEwMHB4LFxyXG4qL1xyXG5cclxuLmtteC1sYXlvdXQtZ3JpZCB7XHJcbiAgICBAZWFjaCAkc2l6ZSBpbiBtYXAta2V5cygkbWRjLWxheW91dC1ncmlkLWNvbHVtbnMpIHtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtbGF5b3V0LWdyaWQtbWVkaWEtcXVlcnlfKCRzaXplKSB7XHJcbiAgICAgICAgICAgICRtYXJnaW46IG1hcC1nZXQoJG1kYy1sYXlvdXQtZ3JpZC1kZWZhdWx0LW1hcmdpbiwgJHNpemUpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtbGF5b3V0LWdyaWQoJHNpemUsICRtYXJnaW4sICRtZGMtbGF5b3V0LWdyaWQtbWF4LXdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5tYXgtd2lkdGgtLXhsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbi1zaXplcywgeGxhcmdlKTsgLy8xMjAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi5tYXgtd2lkdGgtLWxnIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbi1zaXplcywgbGFyZ2UpOyAvLzkwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYubWF4LXdpZHRoLS1tZCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW4tc2l6ZXMsIG1lZGl1bSk7IC8vNjAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi5tYXgtd2lkdGgtLXNtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbi1zaXplcywgc21hbGwpOyAvLzMwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYua214LWxheW91dC1ncmlkLS1hbGlnbi1sZWZ0IHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5rbXgtbGF5b3V0LWdyaWQtLWFsaWduLXJpZ2h0IHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZGMtbGF5b3V0LWdyaWRfX2NlbGwge1xyXG4gICAgJi0tanVzdGlmeS1zdGFydCB7XHJcbiAgICAgICAgQGluY2x1ZGUga214LWxheW91dC1ncmlkLWNlbGwtanVzdGlmeShzdGFydCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tanVzdGlmeS1jZW50ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1sYXlvdXQtZ3JpZC1jZWxsLWp1c3RpZnkoY2VudGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmLS1qdXN0aWZ5LWVuZCB7XHJcbiAgICAgICAgQGluY2x1ZGUga214LWxheW91dC1ncmlkLWNlbGwtanVzdGlmeShlbmQpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIENvcGllZCBmcm9tIG1kYy1sYXlvdXQtZ3JpZC9fbWl4aW5zLnNjc3M6MTQ1XHJcblxyXG5AbWl4aW4ga214LWxheW91dC1ncmlkLWNlbGwtanVzdGlmeSgkcG9zaXRpb24pIHtcclxuICAgIEBpZiAkcG9zaXRpb24gPT0gJ3N0YXJ0JyB7XHJcbiAgICAgICAganVzdGlmeS1zZWxmOiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcclxuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBzdGFydDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRwb3NpdGlvbiA9PSAnY2VudGVyJyB7XHJcbiAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRwb3NpdGlvbiA9PSAnZW5kJyB7XHJcbiAgICAgICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcclxuXHJcbiAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaWYgJHBvc2l0aW9uID09ICdzdHJldGNoJyB7XHJcbiAgICAgICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkcG9zaXRpb24gPT0gJ251bGwnIHtcclxuICAgICAgICBAZXJyb3IgXCJUaGUgYGtteC1sYXlvdXQtZ3JpZC1jZWxsLWp1c3RpZnlgIG1peGluIHNob3VsZCBoYXZlIGEgcG9zaXRpb24gcGFyYW1ldGVyIHByb3ZpZGVkLiBGaXggdGhpcyBhbmQgYnVpbGQgYWdhaW4uXCI7XHJcblxyXG4gICAgICAgIGp1c3RpZnktc2VsZjogZmxleC1zdGFydDtcclxuXHJcbiAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZm9ybXMvdmFyaWFibGVzJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3NwYWNpbmcvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdXRpbGl0aWVzL3NyYy9zdmcvbWl4aW5zJztcclxuXHJcbi8qIE5PVEU6IEljb24gVG9nZ2xlIGRvZXMgbm90IGhhdmUgYSBcInB1c2hlZC9hY3RpdmVcIiBzdGF0ZSAqL1xyXG5cclxuLmtteC1pY29uLXRvZ2dsZS13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAua214LWljb24tdG9nZ2xlIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdibHVlJywgNjAwLCAkS01YLUZPUk0tSU5QVVQtUklQUExFLUhPVkVSLU9QQUNJVFkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmb2N1cyB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdibHVlJywgNjAwLCAkS01YLUZPUk0tSU5QVVQtUklQUExFLUZPQ1VTLU9QQUNJVFkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIC8vIHRoZW9yZXRpY2FsbHksIHRoZXJlIGlzIG5vIGZvY3VzIHN0YXRlIG9uIGEgZGlzYWJsZWQgaWNvbi10b2dnbGUuXHJcbiAgICAgICAgICAgICY6aG92ZXIgfiAuc3ZnLWljb24td3JhcHBlciA+IC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICAgICAgICAgJiB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBrbXgtY29sb3IoJ3NsYXRlJywgNDAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUga214LXN2Zy1iYXNlO1xyXG4gICAgQGluY2x1ZGUga214LXN2Zy1pY29uO1xyXG5cclxuICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xyXG5cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIGZpbGw6IGtteC1jb2xvcignYmx1ZScsIDkwMCk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IHNpemUoJ2wnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWRjLXRoZW1lLS1kYXJrIHtcclxuICAgIC5rbXgtaWNvbi10b2dnbGUtd3JhcHBlciB7XHJcbiAgICAgICAgLmtteC1pY29uLXRvZ2dsZSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIgfiAuc3ZnLWljb24td3JhcHBlciA+IC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4wOCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6Zm9jdXMgfiAuc3ZnLWljb24td3JhcHBlciA+IC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yNCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uLFxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG4gICAgICAgICAgICAgICAgJiB+IC5zdmctaWNvbi13cmFwcGVyID4gLnN2Zy1pY29uIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsbDoga214LWNvbG9yKCdzbGF0ZScsIDQwMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xyXG5cclxuICAgICAgICAgICAgLy8gJjpmb2N1cyxcclxuICAgICAgICAgICAgLy8gJjpob3ZlciB7XHJcbiAgICAgICAgICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjEpO1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGtleWZyYW1lcyBwcmltYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41LCAwLCAuNzAxNzMyLCAuNDk1ODE5KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA1OS4xNSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMzAyNDM1LCAuMzgxMzUyLCAuNTUsIC45NTYzNTIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4My42NzE0MiUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMC42MTEwNTclKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHByaW1hcnktaW5kZXRlcm1pbmF0ZS1zY2FsZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCguMDgpO1xuICB9XG5cbiAgMzYuNjUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjMzNDczMSwgLjEyNDgyLCAuNzg1ODQ0LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCguMDgpO1xuICB9XG5cbiAgNjkuMTUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjA2LCAuMTEsIC42LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCguNjYxNDc5KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC4wOCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzZWNvbmRhcnktaW5kZXRlcm1pbmF0ZS10cmFuc2xhdGUge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNSwgMCwgLjUxNTA1OCwgLjQwOTY4NSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjMxMDMzLCAuMjg0MDU4LCAuOCwgLjczMzcxMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDM3LjY1MTkxMyUpO1xuICB9XG5cbiAgNDguMzUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjQsIC42MjcwMzUsIC42LCAuOTAyMDI2KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODQuMzg2MTY1JSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTYwLjI3Nzc4MiUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtc2NhbGUge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMDUwMjgsIC4wNTcwNTEsIC41NzY2MSwgLjQ1Mzk3MSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLjA4KTtcbiAgfVxuXG4gIDE5LjE1JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNTIzMTMsIC4xOTY0MzIsIC42NDgzNzQsIDEuMDA0MzE1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCguNDU3MTA0KTtcbiAgfVxuXG4gIDQ0LjE1JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yNTc3NTksIC0uMDAzMTYzLCAuMjExNzYyLCAxLjM4MTc5KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCguNzI3OTYpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLjA4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJ1ZmZlcmluZyB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHJpbWFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZS1yZXZlcnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41LCAwLCAuNzAxNzMyLCAuNDk1ODE5KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA1OS4xNSUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMzAyNDM1LCAuMzgxMzUyLCAuNTUsIC45NTYzNTIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtODMuNjcxNDIlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwLjYxMTA1NyUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlLXJldmVyc2Uge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNSwgMCwgLjUxNTA1OCwgLjQwOTY4NSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjUlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjMxMDMzLCAuMjg0MDU4LCAuOCwgLjczMzcxMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNy42NTE5MTMlKTtcbiAgfVxuXG4gIDQ4LjM1JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40LCAuNjI3MDM1LCAuNiwgLjkwMjAyNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC04NC4zODYxNjUlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTYwLjI3Nzc4MiUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYnVmZmVyaW5nLXJldmVyc2Uge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG59XG4iLCIvLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL2tleWZyYW1lc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLm1kYy1saW5lYXItcHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2l0aW9uOiBtZGMtYW5pbWF0aW9uLWV4aXQtdGVtcG9yYXJ5KG9wYWNpdHksIDI1MG1zKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmX19iYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tZXhpdC10ZW1wb3JhcnkodHJhbnNmb3JtLCAyNTBtcyk7XG4gIH1cblxuICAmX19iYXItaW5uZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxuXG4gICZfX2J1ZmZlcmluZy1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFuaW1hdGlvbjogYnVmZmVyaW5nIDI1MG1zIGluZmluaXRlIGxpbmVhcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDRweDtcbiAgfVxuXG4gICZfX2J1ZmZlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICB0cmFuc2l0aW9uOiBtZGMtYW5pbWF0aW9uLWV4aXQtdGVtcG9yYXJ5KHRyYW5zZm9ybSwgMjUwbXMpO1xuICB9XG5cbiAgJl9fcHJpbWFyeS1iYXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG5cbiAgJl9fc2Vjb25kYXJ5LWJhciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJi0taW5kZXRlcm1pbmF0ZSB7XG4gICAgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2JhciB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5tZGMtbGluZWFyLXByb2dyZXNzX19wcmltYXJ5LWJhciB7XG4gICAgICBsZWZ0OiAtMTQ1LjE2NjYxMSU7XG4gICAgICBhbmltYXRpb246IHByaW1hcnktaW5kZXRlcm1pbmF0ZS10cmFuc2xhdGUgMnMgaW5maW5pdGUgbGluZWFyO1xuXG4gICAgICA+IC5tZGMtbGluZWFyLXByb2dyZXNzX19iYXItaW5uZXIge1xuICAgICAgICBhbmltYXRpb246IHByaW1hcnktaW5kZXRlcm1pbmF0ZS1zY2FsZSAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX3NlY29uZGFyeS1iYXIge1xuICAgICAgbGVmdDogLTU0Ljg4ODg5MSU7XG4gICAgICBhbmltYXRpb246IHNlY29uZGFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZSAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgICA+IC5tZGMtbGluZWFyLXByb2dyZXNzX19iYXItaW5uZXIge1xuICAgICAgICBhbmltYXRpb246IHNlY29uZGFyeS1pbmRldGVybWluYXRlLXNjYWxlIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1yZXZlcnNlZCB7XG4gICAgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX2JhcixcbiAgICAubWRjLWxpbmVhci1wcm9ncmVzc19fYnVmZmVyIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICAgIH1cblxuICAgIC5tZGMtbGluZWFyLXByb2dyZXNzX19wcmltYXJ5LWJhciB7XG4gICAgICBhbmltYXRpb24tbmFtZTogcHJpbWFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZS1yZXZlcnNlO1xuICAgIH1cblxuICAgIC5tZGMtbGluZWFyLXByb2dyZXNzX19zZWNvbmRhcnktYmFyIHtcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiBzZWNvbmRhcnktaW5kZXRlcm1pbmF0ZS10cmFuc2xhdGUtcmV2ZXJzZTtcbiAgICB9XG5cbiAgICAubWRjLWxpbmVhci1wcm9ncmVzc19fYnVmZmVyaW5nLWRvdHMge1xuICAgICAgYW5pbWF0aW9uOiBidWZmZXJpbmctcmV2ZXJzZSAyNTBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgfVxuICB9XG5cbiAgJi0tY2xvc2VkIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBhdC1yb290IHtcbiAgQGluY2x1ZGUgbWRjLWxpbmVhci1wcm9ncmVzcy1iYXItY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy1saW5lYXItcHJvZ3Jlc3MtYnVmZmVyLWNvbG9yKCRtZGMtbGluZWFyLXByb2dyZXNzLWJhc2VsaW5lLWJ1ZmZlci1jb2xvcik7XG59XG5cbi5tZGMtbGluZWFyLXByb2dyZXNzLS1pbmRldGVybWluYXRlLm1kYy1saW5lYXItcHJvZ3Jlc3MtLXJldmVyc2VkIHtcbiAgLm1kYy1saW5lYXItcHJvZ3Jlc3NfX3ByaW1hcnktYmFyIHtcbiAgICByaWdodDogLTE0NS4xNjY2MTElO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAubWRjLWxpbmVhci1wcm9ncmVzc19fc2Vjb25kYXJ5LWJhciB7XG4gICAgcmlnaHQ6IC01NC44ODg4OTElO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL3ZhcmlhYmxlc1wiOyAvLyBmb3IgbWRjLXRoZW1lLXByb3AtdmFsdWVcblxuQG1peGluIG1kYy1saW5lYXItcHJvZ3Jlc3MtYmFyLWNvbG9yKCRjb2xvcikge1xuICAubWRjLWxpbmVhci1wcm9ncmVzc19fYmFyLWlubmVyIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbGluZWFyLXByb2dyZXNzLWJ1ZmZlci1jb2xvcigkY29sb3IpIHtcbiAgLy8gV2UgbmVlZCB0byBlc2NhcGUgdGhlICcjJyBjaGFyYWN0ZXIgYXMgXCIlMjNcIiBmb3IgU1ZHIGJlY2F1c2UgJyMnIGlzIGEgcmVzZXJ2ZWQgY2hhcmFjdGVyIGluIFVSSXMuXG4gICRjb2xvci12YWx1ZS1mb3ItY3NzOiBtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpO1xuICAkY29sb3ItdmFsdWUtZm9yLXN2ZzogbWRjLWxpbmVhci1wcm9ncmVzcy1zdHItcmVwbGFjZV8oI3skY29sb3ItdmFsdWUtZm9yLWNzc30sIFwiI1wiLCBcIiUyM1wiKTtcblxuICAubWRjLWxpbmVhci1wcm9ncmVzc19fYnVmZmVyaW5nLWRvdHMge1xuICAgIC8vIFNWRyBpcyBvcHRpbWl6ZWQgZm9yIGRhdGEgVVJJIChodHRwczovL2NvZGVwZW4uaW8vdGlndC9wb3N0L29wdGltaXppbmctc3Zncy1pbi1kYXRhLXVyaXMpXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZ1bmN0aW9uLXVybC1xdW90ZXNcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycgeD0nMHB4JyB5PScwcHgnIGVuYWJsZS1iYWNrZ3JvdW5kPSduZXcgMCAwIDUgMicgeG1sOnNwYWNlPSdwcmVzZXJ2ZScgdmlld0JveD0nMCAwIDUgMicgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSBzbGljZSclM0UlM0NjaXJjbGUgY3g9JzEnIGN5PScxJyByPScxJyBmaWxsPScjeyRjb2xvci12YWx1ZS1mb3Itc3ZnfScvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgfVxuXG4gIC5tZGMtbGluZWFyLXByb2dyZXNzX19idWZmZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci12YWx1ZS1mb3ItY3NzO1xuICB9XG59XG5cbi8vIEJhc2VkIG9uIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvc2Fzcy9zdHItcmVwbGFjZS1mdW5jdGlvbi9cbkBmdW5jdGlvbiBtZGMtbGluZWFyLXByb2dyZXNzLXN0ci1yZXBsYWNlXygkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZSkge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICAkaGVhZDogc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpO1xuICAgICR0YWlsOiBtZGMtbGluZWFyLXByb2dyZXNzLXN0ci1yZXBsYWNlXyhzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcblxuICAgIEByZXR1cm4gJGhlYWQgKyAkcmVwbGFjZSArICR0YWlsO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuIiwiLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuJG1kYy1saW5lYXItcHJvZ3Jlc3MtYmFzZWxpbmUtYnVmZmVyLWNvbG9yOiAjZTZlNmU2O1xuIiwiQGltcG9ydCAnfkBtYXRlcmlhbC9saW5lYXItcHJvZ3Jlc3MvbWRjLWxpbmVhci1wcm9ncmVzcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5cclxuLm1kYy1saW5lYXItcHJvZ3Jlc3Mge1xyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXHJcbiAgICAmX19iYXItaW5uZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDYwMCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmX19idWZmZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDEwMCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXHJcbn1cclxuXHJcbi5rbXgtbGluZWFyLXByb2dyZXNzIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgQGV4dGVuZCAubWRjLWxpbmVhci1wcm9ncmVzcztcclxufVxyXG4iLCIvLyBDb3B5cmlnaHQgMjAxNiBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9jb21tb25cIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90eXBvZ3JhcGh5L21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90eXBvZ3JhcGh5L3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgbGlzdFxuXG4ubWRjLWxpc3Qge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShzdWJ0aXRsZTEpO1xuICBAaW5jbHVkZSBtZGMtbGlzdC1pdGVtLXByaW1hcnktdGV4dC1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQpO1xuXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOHB4IDA7XG5cbiAgLy8gQWNjb3JkaW5nIHRvIHRoZSBtb2NrcyBhbmQgc3RpY2tlcnNoZWV0LCB0aGUgbGluZS1oZWlnaHQgaXMgYWRqdXN0ZWQgdG8gMjRweCBmb3IgdGV4dCBjb250ZW50LFxuICAvLyBzYW1lIGFzIGZvciBib2R5MS5cblxuICAvKiBAYWx0ZXJuYXRlICovXG4gIGxpbmUtaGVpZ2h0OiBtYXAtZ2V0KG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LXN0eWxlcywgYm9keTEpLCBsaW5lLWhlaWdodCk7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuQGF0LXJvb3Qge1xuICBAaW5jbHVkZSBtZGMtbGlzdC1pdGVtLXNlY29uZGFyeS10ZXh0LWluay1jb2xvcih0ZXh0LXNlY29uZGFyeS1vbi1iYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1ncmFwaGljLWZpbGwtY29sb3IodHJhbnNwYXJlbnQpO1xuICBAaW5jbHVkZSBtZGMtbGlzdC1pdGVtLWdyYXBoaWMtaW5rLWNvbG9yKHRleHQtaWNvbi1vbi1iYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1tZXRhLWluay1jb2xvcih0ZXh0LWhpbnQtb24tYmFja2dyb3VuZCk7XG59XG5cbi5tZGMtbGlzdC0tZGVuc2Uge1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICBmb250LXNpemU6IC44MTJyZW07XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGxpc3QtaXRlbVxuXG4ubWRjLWxpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDAgJG1kYy1saXN0LXNpZGUtcGFkZGluZztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi8vIFwiU2VsZWN0ZWRcIiBpcyBlcGhlbWVyYWwgYW5kIGxpa2VseSB0byBjaGFuZ2Ugc29vbi4gRS5nLiwgc2VsZWN0aW5nIG9uZSBvciBtb3JlIHBob3RvcyB0byBzaGFyZSBpbiBHb29nbGUgUGhvdG9zLlxuLy8gXCJBY3RpdmF0ZWRcIiBpcyBtb3JlIHBlcm1hbmVudC4gRS5nLiwgdGhlIGN1cnJlbnRseSBoaWdobGlnaHRlZCBuYXZpZ2F0aW9uIGRlc3RpbmF0aW9uIGluIGEgZHJhd2VyLlxuLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkLFxuLm1kYy1saXN0LWl0ZW0tLWFjdGl2YXRlZCB7XG4gIEBpbmNsdWRlIG1kYy1saXN0LWl0ZW0tcHJpbWFyeS10ZXh0LWluay1jb2xvcihwcmltYXJ5KTtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1ncmFwaGljLWluay1jb2xvcihwcmltYXJ5KTtcbn1cblxuLm1kYy1saXN0LWl0ZW0tLWRpc2FibGVkIHtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1wcmltYXJ5LXRleHQtaW5rLWNvbG9yKHRleHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCk7XG59XG5cbi5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtZ3JhcGhpYy1zaXplXygyNHB4KTtcblxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5tZGMtbGlzdC1pdGVtX19tZXRhIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkobWFyZ2luLCBhdXRvLCAwLCBcIi5tZGMtbGlzdC1pdGVtXCIpO1xufVxuXG4ubWRjLWxpc3QtaXRlbV9fdGV4dCB7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LW92ZXJmbG93LWVsbGlwc2lzO1xufVxuXG4kbWRjLWxpc3QtaXRlbS1wcmltYXJ5LXRleHQtYmFzZWxpbmUtaGVpZ2h0XzogMzJweDtcbiRtZGMtbGlzdC1pdGVtLXNlY29uZGFyeS10ZXh0LWJhc2VsaW5lLWhlaWdodF86IDIwcHg7XG4kbWRjLWxpc3QtZGVuc2UtaXRlbS1wcmltYXJ5LXRleHQtYmFzZWxpbmUtaGVpZ2h0XzogMjRweDtcblxuLm1kYy1saXN0LWl0ZW1fX3ByaW1hcnktdGV4dCB7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LW92ZXJmbG93LWVsbGlwc2lzO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS10b3AoJG1kYy1saXN0LWl0ZW0tcHJpbWFyeS10ZXh0LWJhc2VsaW5lLWhlaWdodF8pO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS1ib3R0b20oJG1kYy1saXN0LWl0ZW0tc2Vjb25kYXJ5LXRleHQtYmFzZWxpbmUtaGVpZ2h0Xyk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gIC5tZGMtbGlzdC0tZGVuc2UgJiB7XG4gICAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtdG9wKCRtZGMtbGlzdC1kZW5zZS1pdGVtLXByaW1hcnktdGV4dC1iYXNlbGluZS1oZWlnaHRfKTtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS1ib3R0b20oJG1kYy1saXN0LWl0ZW0tc2Vjb25kYXJ5LXRleHQtYmFzZWxpbmUtaGVpZ2h0Xyk7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWVuYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbn1cblxuLm1kYy1saXN0LWl0ZW1fX3NlY29uZGFyeS10ZXh0IHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoYm9keTIpO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1vdmVyZmxvdy1lbGxpcHNpcztcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtdG9wKCRtZGMtbGlzdC1pdGVtLXNlY29uZGFyeS10ZXh0LWJhc2VsaW5lLWhlaWdodF8pO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAubWRjLWxpc3QtLWRlbnNlICYge1xuICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLXRvcCgkbWRjLWxpc3QtaXRlbS1zZWNvbmRhcnktdGV4dC1iYXNlbGluZS1oZWlnaHRfKTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZW5hYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbi5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW0ge1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW1fX2dyYXBoaWMge1xuICBAaW5jbHVkZSBtZGMtbGlzdC1ncmFwaGljLXNpemVfKDIwcHgpO1xufVxuXG4ubWRjLWxpc3QtLWF2YXRhci1saXN0IC5tZGMtbGlzdC1pdGVtIHtcbiAgaGVpZ2h0OiA1NnB4O1xufVxuXG4ubWRjLWxpc3QtLWF2YXRhci1saXN0IC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtZ3JhcGhpYy1zaXplXyg0MHB4KTtcblxuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5tZGMtbGlzdC0tdHdvLWxpbmUgLm1kYy1saXN0LWl0ZW1fX3RleHQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWRjLWxpc3QtLXR3by1saW5lIC5tZGMtbGlzdC1pdGVtIHtcbiAgaGVpZ2h0OiA3MnB4O1xufVxuXG4ubWRjLWxpc3QtLXR3by1saW5lLm1kYy1saXN0LS1kZW5zZSAubWRjLWxpc3QtaXRlbSB7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLm1kYy1saXN0LS1hdmF0YXItbGlzdC5tZGMtbGlzdC0tZGVuc2UgLm1kYy1saXN0LWl0ZW0ge1xuICBoZWlnaHQ6IDYwcHg7XG59XG5cbi5tZGMtbGlzdC0tYXZhdGFyLWxpc3QubWRjLWxpc3QtLWRlbnNlIC5tZGMtbGlzdC1pdGVtX19ncmFwaGljIHtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtZ3JhcGhpYy1zaXplXygzNnB4KTtcbn1cblxuLy8gTGlzdCBpdGVtcyBzaG91bGQgc3VwcG9ydCBzdGF0ZXMgYnkgZGVmYXVsdCwgYnV0IGl0IHNob3VsZCBiZSBwb3NzaWJsZSB0byBvcHQgb3V0LlxuLy8gRGlyZWN0IGNoaWxkIGNvbWJpbmF0b3IgaXMgbmVjZXNzYXJ5IGZvciBub24taW50ZXJhY3RpdmUgbW9kaWZpZXIgb24gcGFyZW50IHRvIG5vdCBtYXRjaCB0aGlzIHNlbGVjdG9yLlxuOm5vdCgubWRjLWxpc3QtLW5vbi1pbnRlcmFjdGl2ZSkgPiA6bm90KC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCkubWRjLWxpc3QtaXRlbSB7XG4gIEBpbmNsdWRlIG1kYy1yaXBwbGUtc3VyZmFjZTtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1yYWRpdXMtYm91bmRlZDtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcztcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1hY3RpdmF0ZWQocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtc2VsZWN0ZWQocHJpbWFyeSk7XG59XG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuXG4vLyBPdmVycmlkZSBhbmNob3IgdGFnIHN0eWxlcyBmb3IgdGhlIHVzZS1jYXNlIG9mIGEgbGlzdCBiZWluZyB1c2VkIGZvciBuYXZpZ2F0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSxzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEubWRjLWxpc3QtaXRlbSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlLHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSBsaXN0LWRpdmlkZXJcblxuLm1kYy1saXN0LWRpdmlkZXIge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xufVxuXG5AYXQtcm9vdCB7XG4gICRkaXZpZGVyLWNvbG9yOiBpZihcbiAgICBtZGMtdGhlbWUtdG9uZSgkbWRjLXRoZW1lLWJhY2tncm91bmQpID09IFwiZGFya1wiLFxuICAgICRtZGMtbGlzdC1kaXZpZGVyLWNvbG9yLW9uLWRhcmstYmcsXG4gICAgJG1kYy1saXN0LWRpdmlkZXItY29sb3Itb24tbGlnaHQtYmdcbiAgKTtcblxuICBAaW5jbHVkZSBtZGMtbGlzdC1kaXZpZGVyLWNvbG9yKCRkaXZpZGVyLWNvbG9yKTtcbn1cblxuLm1kYy1saXN0LWRpdmlkZXItLXBhZGRlZCB7XG4gIC8vIExlYXZlIGdhcHMgb24gZWFjaCBzaWRlIHRvIG1hdGNoIHRoZSBwYWRkaW5nIG9uIGxpc3QgaXRlbXNcbiAgbWFyZ2luOiAwICRtZGMtbGlzdC1zaWRlLXBhZGRpbmc7XG59XG5cbi5tZGMtbGlzdC1kaXZpZGVyLS1pbnNldCB7XG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIGxlZnQsICRtZGMtbGlzdC10ZXh0LW9mZnNldCwgXCIubWRjLWxpc3QtZ3JvdXBcIik7XG5cbiAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JG1kYy1saXN0LXRleHQtb2Zmc2V0fSk7XG59XG5cbi5tZGMtbGlzdC1kaXZpZGVyLS1pbnNldC5tZGMtbGlzdC1kaXZpZGVyLS1wYWRkZWQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gI3skbWRjLWxpc3QtdGV4dC1vZmZzZXR9IC0gI3skbWRjLWxpc3Qtc2lkZS1wYWRkaW5nfSk7XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGxpc3QtZ3JvdXBcblxuLm1kYy1saXN0LWdyb3VwIHtcbiAgLy8gQ2FuY2VsIHRvcC9ib3R0b20gcGFkZGluZyBvbiBpbmRpdmlkdWFsIGxpc3RzIHdpdGhpbiBncm91cFxuICAubWRjLWxpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLm1kYy1saXN0LWdyb3VwX19zdWJoZWFkZXIge1xuICAkbWRjLWxpc3Qtc3ViaGVhZGVyLXZpcnR1YWwtaGVpZ2h0OiAzcmVtO1xuICAkbWRjLWxpc3Qtc3ViaGVhZGVyLWxlYWRpbmc6IG1hcC1nZXQobWFwLWdldCgkbWRjLXR5cG9ncmFwaHktc3R5bGVzLCBib2R5MSksIGxpbmUtaGVpZ2h0KTtcbiAgJG1kYy1saXN0LXN1YmhlYWRlci1tYXJnaW46XG4gICAgKCRtZGMtbGlzdC1zdWJoZWFkZXItdmlydHVhbC1oZWlnaHQgLSAkbWRjLWxpc3Qtc3ViaGVhZGVyLWxlYWRpbmcpIC8gMjtcblxuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShzdWJ0aXRsZTEpO1xuXG4gIG1hcmdpbjogJG1kYy1saXN0LXN1YmhlYWRlci1tYXJnaW4gJG1kYy1saXN0LXNpZGUtcGFkZGluZztcbn1cblxuQGF0LXJvb3Qge1xuICBAaW5jbHVkZSBtZGMtbGlzdC1ncm91cC1zdWJoZWFkZXItaW5rLWNvbG9yKHRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kKTtcbn1cblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbiIsIi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbiRtZGMtbGlzdC1kaXZpZGVyLWNvbG9yLW9uLWxpZ2h0LWJnOiByZ2JhKDAsIDAsIDAsIC4xMikgIWRlZmF1bHQ7XG4kbWRjLWxpc3QtZGl2aWRlci1jb2xvci1vbi1kYXJrLWJnOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKSAhZGVmYXVsdDtcbiRtZGMtbGlzdC1zaWRlLXBhZGRpbmc6IDE2cHg7XG4kbWRjLWxpc3QtdGV4dC1vZmZzZXQ6IDcycHg7XG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL2xpc3QvbWRjLWxpc3QnO1xyXG5cclxuLmtteC1saXN0IHtcclxuICAgIEBleHRlbmQgLm1kYy1saXN0O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiBzaXplKCdtJyk7XHJcblxyXG4gICAgLm1kYy1saXN0LWl0ZW0ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBoZWlnaHQ6IHNpemUoJzJ4bCcpO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzaXplKCdtJyk7XHJcblxyXG4gICAgICAgICZfX21ldGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBzaXplKCdzJyk7XHJcbiAgICAgICAgICAgICYua214LWljb24tYnV0dG9uLS10ZXJ0aWFyeTpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmtteC1saXN0LWl0ZW1fX2VuZC1idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0OjpiZWZvcmUsXHJcbiAgICAgICAgLm1kYy1saXN0LWl0ZW1fX3ByaW1hcnktdGV4dDo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubWRjLWxpc3QtLWRlbnNlLFxyXG4gICAgJi5rbXgtbGlzdC0tZGVuc2Uge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogc2l6ZSgnbScpO1xyXG5cclxuICAgICAgICAubWRjLWxpc3QtaXRlbSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogc2l6ZSgncycpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm1kYy1saXN0LS1hdmF0YXItbGlzdCB7XHJcbiAgICAgICAgLmtteC1saXN0LWl0ZW1fX2dyYXBoaWMge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHNpemUoJ20nKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5tZGMtbGlzdC0tdHdvLWxpbmUsXHJcbiAgICAmLm1kYy1saXN0LS10aHJlZS1saW5lIHtcclxuICAgICAgICAubWRjLWxpc3QtaXRlbSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgICAgIC5tZGMtbGlzdC1pdGVtX190ZXh0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHNpemUoJ3MnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubWRjLWxpc3QtaXRlbV9fdGV4dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZGMtbGlzdC0tZGVuc2Uge1xyXG4gICAgICAgICAgICAubWRjLWxpc3QtaXRlbV9fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBzaXplKCd4cycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubWRjLWxpc3QtLXR3by1saW5lIHtcclxuICAgICAgICAubWRjLWxpc3QtaXRlbV9fc2Vjb25kYXJ5LXRleHQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjk7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDM2KTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5tZGMtbGlzdC0tdGhyZWUtbGluZSB7XHJcbiAgICAgICAgLm1kYy1saXN0LWl0ZW1fX3NlY29uZGFyeS10ZXh0IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI5O1xyXG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9saXN0L21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvY29tbW9uXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbWVudS1zdXJmYWNlIGFuZCBjb250YWluZWQgbGlzdCB0byBtYXRjaCB0aGUgbWRjLW1lbnUgc3R5bGVzLlxuLm1kYy1tZW51IHtcbiAgQGluY2x1ZGUgbWRjLWxpc3QtaXRlbS1tZXRhLWluay1jb2xvcih0ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIG1kYy1saXN0LWl0ZW0tZ3JhcGhpYy1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQpO1xuXG4gIG1pbi13aWR0aDogJG1kYy1tZW51LW1pbi13aWR0aDtcbiAgbWF4LXdpZHRoOiAkbWRjLW1lbnUtbWF4LXdpZHRoO1xuXG4gIC5tZGMtbGlzdC1kaXZpZGVyIHtcbiAgICBtYXJnaW46IDhweCAwO1xuICB9XG5cbiAgLm1kYy1saXN0LWl0ZW0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC5tZGMtbGlzdC1pdGVtLS1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIG1lbnVcbi5tZGMtbWVudV9fc2VsZWN0aW9uLWdyb3VwIHtcbiAgcGFkZGluZzogMDtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuXG4gIC5tZGMtbGlzdC1pdGVtIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gocGFkZGluZywgbGVmdCwgNTZweCk7XG4gIH1cbn1cblxuLm1kYy1tZW51X19zZWxlY3Rpb24tZ3JvdXAtaWNvbiB7XG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsIDE2cHgpO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuLm1kYy1tZW51LWl0ZW0tLXNlbGVjdGVkIC5tZGMtbWVudV9fc2VsZWN0aW9uLWdyb3VwLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtbWVudS13aWR0aC1iYXNlOiA1NnB4O1xuJG1kYy1tZW51LW1pbi13aWR0aDogMiAqICRtZGMtbWVudS13aWR0aC1iYXNlO1xuJG1kYy1tZW51LW1heC13aWR0aDogNiAqICRtZGMtbWVudS13aWR0aC1iYXNlO1xuIiwiQGltcG9ydCAnfkBtYXRlcmlhbC9tZW51L21kYy1tZW51JztcclxuXHJcbi5tZGMtc2ltcGxlLW1lbnUtLW9wZW4tZnJvbS10b3AtcmlnaHQge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL2NvbW1vblwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgcmFkaW9cbi5tZGMtcmFkaW8ge1xuICBAaW5jbHVkZSBtZGMtcmFkaW8tdW5jaGVja2VkLXN0cm9rZS1jb2xvcigkbWRjLXJhZGlvLXVuY2hlY2tlZC1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1yYWRpby1jaGVja2VkLXN0cm9rZS1jb2xvcigkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXJhZGlvLWluay1jb2xvcigkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXJhZGlvLWZvY3VzLWluZGljYXRvci1jb2xvcigkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy11bmJvdW5kZWQ7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMoJG1kYy1yYWRpby1iYXNlbGluZS10aGVtZS1jb2xvcik7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogJG1kYy1yYWRpby10b3VjaC1hcmVhO1xuICBoZWlnaHQ6ICRtZGMtcmFkaW8tdG91Y2gtYXJlYTtcbiAgcGFkZGluZzogKCRtZGMtcmFkaW8tdG91Y2gtYXJlYSAtICRtZGMtcmFkaW8tdWktc2l6ZSkgLyAyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLyogQGFsdGVybmF0ZSAqL1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtLCBib3JkZXItY29sb3IsIGNvbG9yO1xuXG4gIC8vIENvbnRhaW5lciBmb3IgcmFkaW8gY2lyY2xlcyBhbmQgcmlwcGxlLlxuICAmX19iYWNrZ3JvdW5kIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6ICgkbWRjLXJhZGlvLXRvdWNoLWFyZWEgLSAkbWRjLXJhZGlvLXVpLXNpemUpIC8gMjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkbWRjLXJhZGlvLXVpLXBjdDtcbiAgICBoZWlnaHQ6ICRtZGMtcmFkaW8tdWktcGN0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uOiBtZGMtcmFkaW8tZXhpdChvcGFjaXR5KSwgbWRjLXJhZGlvLWV4aXQodHJhbnNmb3JtKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgJl9fb3V0ZXItY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogbWRjLXJhZGlvLWV4aXQoYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gICZfX2lubmVyLWNpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogbWRjLXJhZGlvLWV4aXQodHJhbnNmb3JtKSwgbWRjLXJhZGlvLWV4aXQoYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItd2lkdGg6IDEwcHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cblxuICAmX19uYXRpdmUtY29udHJvbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogaW5oZXJpdDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkIHtcbiAgICAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbiAgLy8gc3R5bGVsaW50LWVuYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbn1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCxcbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkIHtcbiAgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIHtcbiAgICB0cmFuc2l0aW9uOiBtZGMtcmFkaW8tZW50ZXIob3BhY2l0eSksIG1kYy1yYWRpby1lbnRlcih0cmFuc2Zvcm0pO1xuXG4gICAgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgICAgIHRyYW5zaXRpb246IG1kYy1yYWRpby1lbnRlcihib3JkZXItY29sb3IpO1xuICAgIH1cblxuICAgIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSB7XG4gICAgICB0cmFuc2l0aW9uOiBtZGMtcmFkaW8tZW50ZXIodHJhbnNmb3JtKSwgbWRjLXJhZGlvLWVudGVyKGJvcmRlci1jb2xvcik7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtcmFkaW8tLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB7XG4gICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCB7XG4gICAgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xuICAgICAgdHJhbnNpdGlvbjogbWRjLXJhZGlvLWVudGVyKHRyYW5zZm9ybSksIG1kYy1yYWRpby1lbnRlcihib3JkZXItY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCxcblthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCB7XG4gICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG1kYy1yYWRpby1jaXJjbGUtY29sb3I7XG4gICAgfVxuXG4gICAgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG1kYy1yYWRpby1jaXJjbGUtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmZvY3VzIHtcbiAgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMiwgMik7XG4gICAgdHJhbnNpdGlvbjogbWRjLXJhZGlvLWVudGVyKG9wYWNpdHkpLCBtZGMtcmFkaW8tZW50ZXIodHJhbnNmb3JtKTtcbiAgICBvcGFjaXR5OiBtYXAtZ2V0KCRtZGMtcmlwcGxlLWRhcmstaW5rLW9wYWNpdGllcywgZm9jdXMpO1xuICB9XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTYgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5cbiRtZGMtcmFkaW8tdG91Y2gtYXJlYTogNDBweDtcbiRtZGMtcmFkaW8tdWktc2l6ZTogMjBweDtcbiRtZGMtcmFkaW8tdWktcGN0OiBwZXJjZW50YWdlKCRtZGMtcmFkaW8tdWktc2l6ZSAvICRtZGMtcmFkaW8tdG91Y2gtYXJlYSk7XG4kbWRjLXJhZGlvLXRyYW5zaXRpb24tZHVyYXRpb246IDEyMG1zO1xuJG1kYy1yYWRpby1yaXBwbGUtb3BhY2l0eTogLjE0O1xuJG1kYy1yYWRpby1iYXNlbGluZS10aGVtZS1jb2xvcjogc2Vjb25kYXJ5O1xuJG1kYy1yYWRpby11bmNoZWNrZWQtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC41NCk7XG4kbWRjLXJhZGlvLWNpcmNsZS1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjI2KTtcbiIsIkBpbXBvcnQgJ35AbWF0ZXJpYWwvcmFkaW8vbWRjLXJhZGlvJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJy4vdmFyaWFibGVzJztcclxuXHJcbi5rbXgtcmFkaW8ge1xyXG4gICAgQGV4dGVuZCAubWRjLXJhZGlvO1xyXG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLXVuY2hlY2tlZC1zdHJva2UtY29sb3IoJFJBRElPLUNPTE9SLURFRkFVTFQpO1xyXG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWNoZWNrZWQtc3Ryb2tlLWNvbG9yKCRSQURJTy1DSEVDS0VELVNUUk9LRS1DT0xPUik7XHJcbiAgICBAaW5jbHVkZSBtZGMtcmFkaW8taW5rLWNvbG9yKCRSQURJTy1JTkstQ09MT1IpO1xyXG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWZvY3VzLWluZGljYXRvci1jb2xvcigkUkFESU8tRk9DVVMtSU5ESUNBVE9SLUNPTE9SKTtcclxuXHJcbiAgICAmOjpiZWZvcmUsXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJFJBRElPLVJJUFBMRS1CRy1DT0xPUjtcclxuICAgIH1cclxuXHJcbiAgICAmLS1kaXNhYmxlZCB7XHJcbiAgICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJFJBRElPLUNPTE9SLURJU0FCTEVEO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1pbnZhbGlkIHtcclxuICAgICAgICAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgY29sb3I6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1DT0xPUi1JTlZBTElEO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyBAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZm9ybXMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS9taXhpbnMnO1xyXG5AaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcblxyXG4ua214LXJhZGlvOm5vdCgua214LXJhZGlvLS1kaXNhYmxlZCkge1xyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICArIGxhYmVsLFxyXG4gICAgKyAua214LXJhZGlvLWxhYmVsIHtcclxuICAgICAgICBAaW5jbHVkZSB0eXBlLWxhYmVsLWxnKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5rbXgtcmFkaW8tLWRpc2FibGVkIHtcclxuICAgIEBleHRlbmQgLmtteC1yYWRpbztcclxuXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgICsgbGFiZWwsXHJcbiAgICArIC5rbXgtcmFkaW8tbGFiZWwge1xyXG4gICAgICAgIEBpbmNsdWRlIHR5cGUtbGFiZWwtbGcoJFJBRElPLUxBQkVMLUNPTE9SLURJU0FCTEVEKTtcclxuICAgIH1cclxufVxyXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSB0b29sYmFyXG4ubWRjLXRvb2xiYXIge1xuICBAaW5jbHVkZSBtZGMtdG9vbGJhci1maWxsLWNvbG9yLWFjY2Vzc2libGUocHJpbWFyeSk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICZfX3JvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAkbWRjLXRvb2xiYXItcm93LWhlaWdodDtcblxuICAgIC8vIFRPRE86IHJlZmFjdG9yIHRoaXMgb3V0IHdoZW4gIzIzIGlzIGltcGxlbWVudGVkXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZGMtdG9vbGJhci1tb2JpbGUtbGFuZHNjYXBlLXdpZHRoLWJyZWFrcG9pbnQpXG4gICAgICBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIG1pbi1oZWlnaHQ6ICRtZGMtdG9vbGJhci1tb2JpbGUtbGFuZHNjYXBlLXJvdy1oZWlnaHQ7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogcmVmYWN0b3IgdGhpcyBvdXQgd2hlbiAjMjMgaXMgaW1wbGVtZW50ZWRcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kYy10b29sYmFyLW1vYmlsZS1icmVha3BvaW50KSB7XG4gICAgICBtaW4taGVpZ2h0OiAkbWRjLXRvb2xiYXItbW9iaWxlLXJvdy1oZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgJl9fc2VjdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleDogMTtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6ICRtZGMtdG9vbGJhci1lbGVtZW50LXNlY3Rpb24tcGFkZGluZztcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZGMtdG9vbGJhci1tb2JpbGUtbGFuZHNjYXBlLXdpZHRoLWJyZWFrcG9pbnQpXG4gICAgICBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZGMtdG9vbGJhci1tb2JpbGUtYnJlYWtwb2ludCkge1xuICAgICAgcGFkZGluZzogJG1kYy10b29sYmFyLWVsZW1lbnQtbW9iaWxlLXNlY3Rpb24tcGFkZGluZyAwO1xuICAgIH1cblxuICAgICYtLWFsaWduLXN0YXJ0IHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChwYWRkaW5nLCBcImxlZnRcIiwgJG1kYy10b29sYmFyLXNlY3Rpb24taG9yaXpvbnRhbC1wYWRkaW5nKTtcblxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgb3JkZXI6IC0xO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kYy10b29sYmFyLW1vYmlsZS1sYW5kc2NhcGUtd2lkdGgtYnJlYWtwb2ludClcbiAgICAgICAgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChwYWRkaW5nLCBcImxlZnRcIiwgJG1kYy10b29sYmFyLW1vYmlsZS1zZWN0aW9uLWhvcml6b250YWwtcGFkZGluZyk7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWRjLXRvb2xiYXItbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KHBhZGRpbmcsIFwibGVmdFwiLCAkbWRjLXRvb2xiYXItbW9iaWxlLXNlY3Rpb24taG9yaXpvbnRhbC1wYWRkaW5nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KHBhZGRpbmcsIFwicmlnaHRcIiwgJG1kYy10b29sYmFyLXNlY3Rpb24taG9yaXpvbnRhbC1wYWRkaW5nKTtcblxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIG9yZGVyOiAxO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kYy10b29sYmFyLW1vYmlsZS1sYW5kc2NhcGUtd2lkdGgtYnJlYWtwb2ludClcbiAgICAgICAgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChwYWRkaW5nLCBcInJpZ2h0XCIsICRtZGMtdG9vbGJhci1tb2JpbGUtc2VjdGlvbi1ob3Jpem9udGFsLXBhZGRpbmcpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kYy10b29sYmFyLW1vYmlsZS1icmVha3BvaW50KSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChwYWRkaW5nLCBcInJpZ2h0XCIsICRtZGMtdG9vbGJhci1tb2JpbGUtc2VjdGlvbi1ob3Jpem9udGFsLXBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShoZWFkbGluZTYpO1xuICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LW92ZXJmbG93LWVsbGlwc2lzO1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIGxlZnQsICRtZGMtdG9vbGJhci1lbGVtZW50LWhvcml6b250YWwtcGFkZGluZy1kZXNrdG9wKTtcblxuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgJl9faWNvbixcbiAgJl9fbWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtdG9vbGJhci1pY29uXztcbiAgfVxufVxuXG4ubWRjLXRvb2xiYXJfX21lbnUtaWNvbiArIC5tZGMtdG9vbGJhcl9fdGl0bGUge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCBsZWZ0LCAkbWRjLXRvb2xiYXItdGl0bGUtbWFyZ2luLXRvLW1lbnUtaWNvbi1kZXNrdG9wKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZGMtdG9vbGJhci1tb2JpbGUtYnJlYWtwb2ludCkge1xuICAubWRjLXRvb2xiYXJfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCBsZWZ0LCAkbWRjLXRvb2xiYXItZWxlbWVudC1ob3Jpem9udGFsLXBhZGRpbmctbW9iaWxlKTtcbiAgfVxufVxuXG4ubWRjLXRvb2xiYXItLWZpeGVkIHtcbiAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbig0KTtcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNDtcbn1cblxuLm1kYy10b29sYmFyLS1mbGV4aWJsZSB7XG4gIC8vIGJlbSBsaW50ZXIgaXMgZGlzYWJsZWQgYmVjYXVzZSBpdCBjYW5ub3QgY29ycmVjdGx5IHJlY29uY2lsZSBtZGMgcHJlZml4IGZvciBjc3MgdmFyaWFibGVzLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gIC0tbWRjLXRvb2xiYXItcmF0aW8tdG8tZXh0ZW5kLWZsZXhpYmxlOiAjeyRtZGMtdG9vbGJhci1yYXRpby10by1leHRlbmQtZmxleGlibGV9O1xuXG4gIC5tZGMtdG9vbGJhcl9fcm93OmZpcnN0LWNoaWxkIHtcbiAgICBoZWlnaHQ6ICRtZGMtdG9vbGJhci1yb3ctaGVpZ2h0ICogJG1kYy10b29sYmFyLXJhdGlvLXRvLWV4dGVuZC1mbGV4aWJsZTtcbiAgICBoZWlnaHQ6IGNhbGMoI3skbWRjLXRvb2xiYXItcm93LWhlaWdodH0gKiB2YXIoLS1tZGMtdG9vbGJhci1yYXRpby10by1leHRlbmQtZmxleGlibGUsICN7JG1kYy10b29sYmFyLXJhdGlvLXRvLWV4dGVuZC1mbGV4aWJsZX0pKTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWRjLXRvb2xiYXItbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgIGhlaWdodDogJG1kYy10b29sYmFyLW1vYmlsZS1yb3ctaGVpZ2h0ICogJG1kYy10b29sYmFyLXJhdGlvLXRvLWV4dGVuZC1mbGV4aWJsZTtcbiAgICAgIGhlaWdodDogY2FsYygjeyRtZGMtdG9vbGJhci1tb2JpbGUtcm93LWhlaWdodH0gKiB2YXIoLS1tZGMtdG9vbGJhci1yYXRpby10by1leHRlbmQtZmxleGlibGUsICN7JG1kYy10b29sYmFyLXJhdGlvLXRvLWV4dGVuZC1mbGV4aWJsZX0pKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAvLyBUaGUgc3R5bGUgZW5zdXJlcyB0aGUgcHNldWRvIGVsZW1lbnQgd2lsbCBiZSBkZWZpbmVkIGFuZCBjYW4gZWFzaWx5IGJlIHN0eWxlZFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbiAgLy8gYmVtIGxpbnRlciBpcyBkaXNhYmxlZCBiZWNhdXNlIGl0IGNhbm5vdCBoYW5kbGUgbXVsdGlwbGUgdG9wIGxldmVsIHNlbGVjdG9yXG4gICYtZGVmYXVsdC1iZWhhdmlvciB7XG4gICAgLm1kYy10b29sYmFyX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShoZWFkbGluZTYpO1xuXG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgfVxuXG4gICAgLm1kYy10b29sYmFyX19yb3c6Zmlyc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2U7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICYubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCB7XG4gICAgICAubWRjLXRvb2xiYXJfX3JvdzpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuXG4gICAgICAubWRjLXRvb2xiYXJfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICN7bWFwLWdldCgkbWRjLXR5cG9ncmFwaHktZm9udC13ZWlnaHQtdmFsdWVzLCBtZWRpdW0pfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm1kYy10b29sYmFyLS13YXRlcmZhbGwge1xuICAmLm1kYy10b29sYmFyLS1maXhlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbigwKTtcblxuICAgIHRyYW5zaXRpb246IG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi12YWx1ZSgpO1xuICAgIHdpbGwtY2hhbmdlOiAkbWRjLWVsZXZhdGlvbi1wcm9wZXJ0eTtcblxuICAgICYubWRjLXRvb2xiYXItLWZsZXhpYmxlLXNwYWNlLW1pbmltaXplZCB7XG4gICAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDQpO1xuICAgIH1cblxuICAgICYubWRjLXRvb2xiYXItLWZpeGVkLWxhc3Ryb3ctb25seSB7XG4gICAgICAmLm1kYy10b29sYmFyLS1mbGV4aWJsZS1zcGFjZS1taW5pbWl6ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDApO1xuICAgICAgfVxuXG4gICAgICAmLm1kYy10b29sYmFyLS1maXhlZC1hdC1sYXN0LXJvdyB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oNCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuLy8gc3R5bGVsaW50LWVuYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cblxuLm1kYy10b29sYmFyLWZpeGVkLWFkanVzdCB7XG4gIHBhZGRpbmctdG9wOiAkbWRjLXRvb2xiYXItcm93LWhlaWdodDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJG1kYy10b29sYmFyLW1vYmlsZS1sYW5kc2NhcGUtd2lkdGgtYnJlYWtwb2ludClcbiAgICBhbmQgKG1heC1oZWlnaHQ6ICRtZGMtdG9vbGJhci1tb2JpbGUtYnJlYWtwb2ludCkge1xuICAgIHBhZGRpbmctdG9wOiAkbWRjLXRvb2xiYXItbW9iaWxlLWxhbmRzY2FwZS1yb3ctaGVpZ2h0O1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZGMtdG9vbGJhci1tb2JpbGUtYnJlYWtwb2ludCkge1xuICAgIHBhZGRpbmctdG9wOiAkbWRjLXRvb2xiYXItbW9iaWxlLXJvdy1oZWlnaHQ7XG4gIH1cbn1cblxuLm1kYy10b29sYmFyX19zZWN0aW9uLS1zaHJpbmstdG8tZml0IHtcbiAgZmxleDogbm9uZTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuJG1kYy10b29sYmFyLXJvdy1oZWlnaHQ6IDY0cHg7XG4kbWRjLXRvb2xiYXItbW9iaWxlLXJvdy1oZWlnaHQ6IDU2cHg7XG4kbWRjLXRvb2xiYXItbW9iaWxlLWxhbmRzY2FwZS1yb3ctaGVpZ2h0OiA0OHB4O1xuXG4kbWRjLXRvb2xiYXItZWxlbWVudC1zZWN0aW9uLXBhZGRpbmc6IDhweDtcbiRtZGMtdG9vbGJhci1lbGVtZW50LW1vYmlsZS1zZWN0aW9uLXBhZGRpbmc6IDRweDtcblxuJG1kYy10b29sYmFyLWVsZW1lbnQtaG9yaXpvbnRhbC1wYWRkaW5nLWRlc2t0b3A6IDI0cHg7XG4kbWRjLXRvb2xiYXItZWxlbWVudC1ob3Jpem9udGFsLXBhZGRpbmctbW9iaWxlOiAxNnB4O1xuJG1kYy10b29sYmFyLXRpdGxlLW1hcmdpbi10by1tZW51LWljb24tZGVza3RvcDogOHB4O1xuJG1kYy10b29sYmFyLXRpdGxlLW1hcmdpbi10by1tZW51LWljb24tbW9iaWxlOiAxNnB4O1xuXG4kbWRjLXRvb2xiYXItcmF0aW8tdG8tZXh0ZW5kLWZsZXhpYmxlOiA0ICFkZWZhdWx0O1xuXG4kbWRjLXRvb2xiYXItbW9iaWxlLWxhbmRzY2FwZS13aWR0aC1icmVha3BvaW50OiA5NTlweDtcbiRtZGMtdG9vbGJhci1tb2JpbGUtYnJlYWtwb2ludDogNTk5cHg7XG5cbiRtZGMtdG9vbGJhci1pY29uLXBhZGRpbmc6IDEycHg7XG4kbWRjLXRvb2xiYXItc2VjdGlvbi1ob3Jpem9udGFsLXBhZGRpbmc6IDEycHg7XG4kbWRjLXRvb2xiYXItbW9iaWxlLXNlY3Rpb24taG9yaXpvbnRhbC1wYWRkaW5nOiA0cHg7XG5cbiRtZGMtdG9vbGJhci1pY29uLXNpemU6IDI0cHg7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7IC8vIGZvciBtZGMtdGhlbWUtYWNjZXNzaWJsZS1pbmstY29sb3JcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vL1xuLy8gUHVibGljXG4vL1xuXG5AbWl4aW4gbWRjLXRvb2xiYXItaW5rLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy10b29sYmFyLWZpbGwtY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvcik7XG59XG5cbkBtaXhpbiBtZGMtdG9vbGJhci1maWxsLWNvbG9yLWFjY2Vzc2libGUoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10b29sYmFyLWZpbGwtY29sb3IoJGNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRvb2xiYXItaW5rLWNvbG9yKG1kYy10aGVtZS1hY2Nlc3NpYmxlLWluay1jb2xvcigkY29sb3IpKTtcblxuICAubWRjLXRvb2xiYXJfX2ljb24ge1xuICAgIEBpbmNsdWRlIG1kYy10b29sYmFyLWljb24taW5rLWNvbG9yKG1kYy10aGVtZS1hY2Nlc3NpYmxlLWluay1jb2xvcigkY29sb3IpKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRvb2xiYXItaWNvbi1pbmstY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRjb2xvcik7XG59XG5cbi8vXG4vLyBQcml2YXRlXG4vL1xuXG4vLyBBcHBsaWVzIHN0eWxlcyB0byB0aGUgZGlmZmVyZW50IHR5cGVzIG9mIGljb25zIHRoYXQgY2FuIGV4aXN0IGluIHRvb2xiYXJzLlxuLy8gQm90aCAubWRjLXRvb2xiYXJfX2ljb24gYW5kIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uIHNoYXJlIGFsbCBzdHlsZXMgZXhjZXB0IGZvclxuLy8gaG9yaXpvbnRhbCBwYWRkaW5nLlxuQG1peGluIG1kYy10b29sYmFyLWljb25fKCkge1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2U7XG4gIEBpbmNsdWRlIG1kYy1yaXBwbGUtcmFkaXVzLXVuYm91bmRlZDtcblxuICAvLyBtZGMtc3RhdGVzIGlzIGluY2x1ZGVkIHdpdGhpbiB0aGUgbWRjLXRvb2xiYXItaWNvbi1pbmstY29sb3IgbWl4aW5cblxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAkbWRjLXRvb2xiYXItaWNvbi1zaXplICsgJG1kYy10b29sYmFyLWljb24tcGFkZGluZyAqIDI7XG4gIGhlaWdodDogJG1kYy10b29sYmFyLWljb24tc2l6ZSArICRtZGMtdG9vbGJhci1pY29uLXBhZGRpbmcgKiAyO1xuICBwYWRkaW5nOiAkbWRjLXRvb2xiYXItaWNvbi1wYWRkaW5nO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9rbXgtdGhlbWUnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2VsZXZhdGlvbi9taXhpbnMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvbGF5b3V0L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9mdW5jdGlvbnMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL3Rvb2xiYXIvbWRjLXRvb2xiYXInO1xyXG5AaW1wb3J0ICd+c2Fzcy1tcS9tcSc7XHJcblxyXG4ka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtOiByZW0tY2FsYyg1Nik7XHJcbiRrbXgtc2Vjb25kYXJ5LWhlYWRlci1oZWlnaHQtdW50aWwtbWVkaXVtOiByZW0tY2FsYyg4MCk7XHJcblxyXG4ua214LXNlY29uZGFyeS1oZWFkZXIge1xyXG4gICAgJi5rbXgtc2Vjb25kYXJ5LWhlYWRlciB7XHJcbiAgICAgICAgQGV4dGVuZCAubWRjLXRvb2xiYXI7XHJcbiAgICAgICAgQGluY2x1ZGUga214LWVsZXZhdGlvbig0KTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtdG9vbGJhci1maWxsLWNvbG9yKGtteC1jb2xvcignYmx1ZScsIDkwMCkpO1xyXG5cclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogc2l6ZSgnMnhsJyk7XHJcbiAgICAgICAgbWluLWhlaWdodDogc2l6ZSgnMnhsJyk7XHJcbiAgICAgICAgcGFkZGluZzogMCBzaXplKCdtJyk7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxhcmdlKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgc2l6ZSgnbCcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fY29udGVudC0tZG91YmxlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LXVudGlsLW1lZGl1bTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogJGtteC1zZWNvbmRhcnktaGVhZGVyLWhlaWdodC11bnRpbC1tZWRpdW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDg4KTtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDg4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fY29udGVudC0tZG91YmxlLW9uLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogJGtteC1zZWNvbmRhcnktaGVhZGVyLWhlaWdodC11bnRpbC1tZWRpdW07XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6ICRrbXgtc2Vjb25kYXJ5LWhlYWRlci1oZWlnaHQtdW50aWwtbWVkaXVtO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogJGtteC1zZWNvbmRhcnktaGVhZGVyLWhlaWdodC1mcm9tLW1lZGl1bTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyX190aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHNpemUoJ3hsJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplKCd4bCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiBzaXplKCdtJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHNpemUoJ3hzJyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAua214LXNlY29uZGFyeS1oZWFkZXIge1xyXG4gICAgICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLS1tdWx0aSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogc2l6ZSgneGwnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplKCd4bCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogc2l6ZSgnbScpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogc2l6ZSgneHMnKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9fdGFicyB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubWRjLXRhYi1iYXIge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuICAgICAgICAua214LXNlY29uZGFyeS1oZWFkZXIge1xyXG4gICAgICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbWFwLWdldCgkc2NyZWVuLXNpemVzLCB4bGFyZ2UpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZSgnMnhsJyk7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBzaXplKCcyeGwnKTtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6ICRrbXgtc2Vjb25kYXJ5LWhlYWRlci1oZWlnaHQtZnJvbS1tZWRpdW07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tZG91YmxlIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5rbXgtc2Vjb25kYXJ5LWhlYWRlcl9fdGl0bGUtLW11bHRpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplKCd4bCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBzaXplKCd4bCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogc2l6ZSgnbScpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogc2l6ZSgneHMnKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tY2VudGVyZWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHNpemUoJzJ4bCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZSgnMnhsJyk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJGtteC1zZWNvbmRhcnktaGVhZGVyLWhlaWdodC1mcm9tLW1lZGl1bTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogJGtteC1zZWNvbmRhcnktaGVhZGVyLWhlaWdodC1mcm9tLW1lZGl1bTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tbm8td3JhcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cclxuXHJcbiAgICAgICAgLmtteC1zZWNvbmRhcnktaGVhZGVyX190YWJzIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAka214LXNlY29uZGFyeS1oZWFkZXItaGVpZ2h0LWZyb20tbWVkaXVtO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogJGtteC1zZWNvbmRhcnktaGVhZGVyLWhlaWdodC1mcm9tLW1lZGl1bTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gVE9ETzogcmVmYWN0b3IgaW50byBidXR0b25zIGNvbXBvbmVudCBhcyBcIi5rbXgtYnV0dG9uLS10ZXJ0aWFyeS1kYXJrXCJcclxuICAgICAgICAua214LWJ1dHRvbi0tdGVydGlhcnksXHJcbiAgICAgICAgLmtteC1pY29uLWJ1dHRvbi0tdGVydGlhcnkge1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoOmFjdGl2ZSkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50aXplKCR3aGl0ZSwgMC4zKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDIwMCwgMC43KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5rbXgtc2VhcmNoLWZvcm0ge1xyXG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcblxyXG4gICAgICAgICAgICAmOm5vdCg6b25seS1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBzaXplKCd4cycpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKFxyXG4gICAgICAgICAgICAgICAgICAgIDU2OFxyXG4gICAgICAgICAgICAgICAgKTsgLy90b2RvOiBpcyB0aGlzIG1heC13aWR0aCBuZWVkZWQgd2hlbiB0aGVyZSBpcyBhbiBleHBsaWNpdCB3aWR0aCBzZXQgd2l0aGluIHNhbWUgZGVjbGFyYXRpb24/XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNTY4KTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOm5vdCg6b25seS1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBzaXplKCdtJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBzaXplKCdtJyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiOyAvLyBGaXhlcyBhbiBpc3N1ZSB3aGVyZSBSdWJ5IGxvY2FsZSBpcyBub3Qgc2V0IHByb3Blcmx5XG4gICAgICAgICAgICAgICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcS9wdWxsLzEwXG5cbi8vLyBCYXNlIGZvbnQgc2l6ZSBvbiB0aGUgYDxib2R5PmAgZWxlbWVudFxuLy8vIEB0eXBlIE51bWJlciAodW5pdClcbiRtcS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8vIFJlc3BvbnNpdmUgbW9kZVxuLy8vXG4vLy8gU2V0IHRvIGBmYWxzZWAgdG8gZW5hYmxlIHN1cHBvcnQgZm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgQG1lZGlhIHF1ZXJpZXMsXG4vLy8gKElFIDw9IDgsIEZpcmVmb3ggPD0gMywgT3BlcmEgPD0gOSlcbi8vL1xuLy8vIFlvdSBjb3VsZCBjcmVhdGUgYSBzdHlsZXNoZWV0IHNlcnZlZCBleGNsdXNpdmVseSB0byBvbGRlciBicm93c2Vycyxcbi8vLyB3aGVyZSBAbWVkaWEgcXVlcmllcyBhcmUgcmFzdGVyaXplZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBvbGQtaWUuc2Nzc1xuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcbi8vL1xuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vZmYgRGlzYWJsZWQgcmVzcG9uc2l2ZSBtb2RlIGRvY3VtZW50YXRpb25cbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBsaXN0XG4vLy9cbi8vLyBOYW1lIHlvdXIgYnJlYWtwb2ludHMgaW4gYSB3YXkgdGhhdCBjcmVhdGVzIGEgdWJpcXVpdG91cyBsYW5ndWFnZVxuLy8vIGFjcm9zcyB0ZWFtIG1lbWJlcnMuIEl0IHdpbGwgaW1wcm92ZSBjb21tdW5pY2F0aW9uIGJldHdlZW5cbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXG4vLy9cbi8vLyBAdHlwZSBNYXBcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1icmVha3BvaW50czogKFxuICAgIG1vYmlsZTogIDMyMHB4LFxuICAgIHRhYmxldDogIDc0MHB4LFxuICAgIGRlc2t0b3A6IDk4MHB4LFxuICAgIHdpZGU6ICAgIDEzMDBweFxuKSAhZGVmYXVsdDtcblxuLy8vIFN0YXRpYyBicmVha3BvaW50IChmb3IgZml4ZWQtd2lkdGggbGF5b3V0cylcbi8vL1xuLy8vIERlZmluZSB0aGUgYnJlYWtwb2ludCBmcm9tICRtcS1icmVha3BvaW50cyB0aGF0IHNob3VsZFxuLy8vIGJlIHVzZWQgYXMgdGhlIHRhcmdldCB3aWR0aCBmb3IgdGhlIGZpeGVkLXdpZHRoIGxheW91dFxuLy8vIChpLmUuIHdoZW4gJG1xLXJlc3BvbnNpdmUgaXMgc2V0IHRvICdmYWxzZScpIGluIGEgb2xkLWllLnNjc3Ncbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gdGFibGV0LW9ubHkuc2Nzc1xuLy8vICAvL1xuLy8vICAvLyBJZ25vcmUgYWxsIHN0eWxlcyBhYm92ZSB0YWJsZXQgYnJlYWtwb2ludCxcbi8vLyAgLy8gYW5kIGZpeCB0aGUgc3R5bGVzIChlLmcuIGxheW91dCkgYXQgdGFibGV0IHdpZHRoXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgJG1xLXN0YXRpYy1icmVha3BvaW50OiB0YWJsZXQ7XG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvIHRhYmxldFxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcbi8vL1xuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjYWRkaW5nLWN1c3RvbS1icmVha3BvaW50cyBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtc3RhdGljLWJyZWFrcG9pbnQ6IGRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vLyBTaG93IGJyZWFrcG9pbnRzIGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy9cbi8vLyBJZiB5b3Ugd2FudCB0byBkaXNwbGF5IHRoZSBjdXJyZW50bHkgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcFxuLy8vIHJpZ2h0IGNvcm5lciBvZiB5b3VyIHNpdGUgZHVyaW5nIGRldmVsb3BtZW50LCBhZGQgdGhlIGJyZWFrcG9pbnRzXG4vLy8gdG8gdGhpcyBsaXN0LCBvcmRlcmVkIGJ5IHdpZHRoLCBlLmcuIChtb2JpbGUsIHRhYmxldCwgZGVza3RvcCkuXG4vLy9cbi8vLyBAdHlwZSBtYXBcbiRtcS1zaG93LWJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcblxuLy8vIEN1c3RvbWl6ZSB0aGUgbWVkaWEgdHlwZSAoZS5nLiBgQG1lZGlhIHNjcmVlbmAgb3IgYEBtZWRpYSBwcmludGApXG4vLy8gQnkgZGVmYXVsdCBzYXNzLW1xIHVzZXMgYW4gXCJhbGxcIiBtZWRpYSB0eXBlIChgQG1lZGlhIGFsbCBhbmQg4oCmYClcbi8vL1xuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjY2hhbmdpbmctbWVkaWEtdHlwZSBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtbWVkaWEtdHlwZTogYWxsICFkZWZhdWx0O1xuXG4vLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gdmFsdWUgdG8gY29udmVydFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZS1mb250LXNpemUgKCRtcS1iYXNlLWZvbnQtc2l6ZSkgLSBgPGJvZHk+YCBmb250IHNpemVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJGZvbnQtc2l6ZS1pbi1lbXM6IG1xLXB4MmVtKDE2cHgpO1xuLy8vICBwIHsgZm9udC1zaXplOiBtcS1weDJlbSgxNnB4KTsgfVxuLy8vXG4vLy8gQHJlcXVpcmVzICRtcS1iYXNlLWZvbnQtc2l6ZVxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9XG5AZnVuY3Rpb24gbXEtcHgyZW0oJHB4LCAkYmFzZS1mb250LXNpemU6ICRtcS1iYXNlLWZvbnQtc2l6ZSkge1xuICAgIEBpZiB1bml0bGVzcygkcHgpIHtcbiAgICAgICAgQHdhcm4gXCJBc3N1bWluZyAjeyRweH0gdG8gYmUgaW4gcGl4ZWxzLCBhdHRlbXB0aW5nIHRvIGNvbnZlcnQgaXQgaW50byBwaXhlbHMuXCI7XG4gICAgICAgIEByZXR1cm4gbXEtcHgyZW0oJHB4ICogMXB4LCAkYmFzZS1mb250LXNpemUpO1xuICAgIH0gQGVsc2UgaWYgdW5pdCgkcHgpID09IGVtIHtcbiAgICAgICAgQHJldHVybiAkcHg7XG4gICAgfVxuICAgIEByZXR1cm4gKCRweCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07XG59XG5cbi8vLyBHZXQgYSBicmVha3BvaW50J3Mgd2lkdGhcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnQuIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJHRhYmxldC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgodGFibGV0KTtcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKGRlc2t0b3ApKSB7fVxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBWYWx1ZSBpbiBwaXhlbHNcbkBmdW5jdGlvbiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEB3YXJuIFwiQnJlYWtwb2ludCAjeyRuYW1lfSB3YXNuJ3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzLlwiO1xuICAgIH1cbn1cblxuLy8vIE1lZGlhIFF1ZXJ5IG1peGluXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRmcm9tIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRhbmQgKGZhbHNlKSAtIEFkZGl0aW9uYWwgbWVkaWEgcXVlcnkgcGFyYW1ldGVyc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVkaWEtdHlwZSAoJG1xLW1lZGlhLXR5cGUpIC0gTWVkaWEgdHlwZTogc2NyZWVuLCBwcmludOKAplxuLy8vXG4vLy8gQGlnbm9yZSBVbmRvY3VtZW50ZWQgQVBJLCBmb3IgYWR2YW5jZWQgdXNlIG9ubHk6XG4vLy8gQGlnbm9yZSBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpXG4vLy8gQGlnbm9yZSBAcGFyYW0ge1N0cmluZ30gJHN0YXRpYy1icmVha3BvaW50ICgkbXEtc3RhdGljLWJyZWFrcG9pbnQpXG4vLy9cbi8vLyBAY29udGVudCBzdHlsaW5nIHJ1bGVzLCB3cmFwcGVkIGludG8gYSBAbWVkaWEgcXVlcnkgd2hlbiAkcmVzcG9uc2l2ZSBpcyB0cnVlXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtbWVkaWEtdHlwZVxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLXB4MmVtXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGhcbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9uLWRlZmF1bHQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAuZWxlbWVudCB7XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZSkge1xuLy8vICAgICAgY29sb3I6IHJlZDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBibHVlO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcShtb2JpbGUsIHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGdyZWVuO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0LCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xuLy8vICAgICAgY29sb3I6IHRlYWw7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKDk1MHB4KSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEodGFibGV0LCAkbWVkaWEtdHlwZTogc2NyZWVuKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgLy8gQWR2YW5jZWQgdXNlOlxuLy8vICAgICRteS1icmVha3BvaW50czogKEw6IDkwMHB4LCBYTDogMTIwMHB4KTtcbi8vLyAgICBAaW5jbHVkZSBtcShMLCAkYnJlYWtwb2ludHM6ICRteS1icmVha3BvaW50cywgJHN0YXRpYy1icmVha3BvaW50OiBMKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gIH1cbkBtaXhpbiBtcShcbiAgICAkZnJvbTogZmFsc2UsXG4gICAgJHVudGlsOiBmYWxzZSxcbiAgICAkYW5kOiBmYWxzZSxcbiAgICAkbWVkaWEtdHlwZTogJG1xLW1lZGlhLXR5cGUsXG4gICAgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMsXG4gICAgJHJlc3BvbnNpdmU6ICRtcS1yZXNwb25zaXZlLFxuICAgICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XG4pIHtcbiAgICAkbWluLXdpZHRoOiAwO1xuICAgICRtYXgtd2lkdGg6IDA7XG4gICAgJG1lZGlhLXF1ZXJ5OiAnJztcblxuICAgIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxuICAgIEBpZiAkZnJvbSB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCRmcm9tKSA9PSBudW1iZXIge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0oJGZyb20pO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtaW4td2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRmcm9tLCAkYnJlYWtwb2ludHMpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcbiAgICBAaWYgJHVudGlsIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJHVudGlsKSA9PSBudW1iZXIge1xuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0oJHVudGlsKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkdW50aWwsICRicmVha3BvaW50cykpIC0gLjAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZGlzYWJsZWQsIHJhc3Rlcml6ZSB0aGUgb3V0cHV0IG91dHNpZGUgQG1lZGlhIGJsb2Nrc1xuICAgIC8vIFRoZSBicm93c2VyIHdpbGwgcmVseSBvbiB0aGUgY2FzY2FkZSBpdHNlbGYuXG4gICAgQGlmICRyZXNwb25zaXZlID09IGZhbHNlIHtcbiAgICAgICAgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc3RhdGljLWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICR0YXJnZXQtd2lkdGg6IG1xLXB4MmVtKCRzdGF0aWMtYnJlYWtwb2ludC13aWR0aCk7XG5cbiAgICAgICAgLy8gT3V0cHV0IG9ubHkgcnVsZXMgdGhhdCBzdGFydCBhdCBvciBzcGFuIG91ciB0YXJnZXQgd2lkdGhcbiAgICAgICAgQGlmIChcbiAgICAgICAgICAgICRhbmQgPT0gZmFsc2VcbiAgICAgICAgICAgIGFuZCAkbWluLXdpZHRoIDw9ICR0YXJnZXQtd2lkdGhcbiAgICAgICAgICAgIGFuZCAoXG4gICAgICAgICAgICAgICAgJHVudGlsID09IGZhbHNlIG9yICRtYXgtd2lkdGggPj0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgYW5kICRtZWRpYS10eXBlICE9ICdwcmludCdcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBlbmFibGVkLCBvdXRwdXQgcnVsZXMgaW5zaWRlIEBtZWRpYSBxdWVyaWVzXG4gICAgQGVsc2Uge1xuICAgICAgICBAaWYgJG1pbi13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWluLXdpZHRoOiAjeyRtaW4td2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRtYXgtd2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1heC13aWR0aDogI3skbWF4LXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkYW5kICAgICAgICAgICAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kICN7JGFuZH0nOyB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIHVubmVjZXNzYXJ5IG1lZGlhIHF1ZXJ5IHByZWZpeCAnYWxsIGFuZCAnXG4gICAgICAgIEBpZiAoJG1lZGlhLXR5cGUgPT0gJ2FsbCcgYW5kICRtZWRpYS1xdWVyeSAhPSAnJykge1xuICAgICAgICAgICAgJG1lZGlhLXR5cGU6ICcnO1xuICAgICAgICAgICAgJG1lZGlhLXF1ZXJ5OiBzdHItc2xpY2UodW5xdW90ZSgkbWVkaWEtcXVlcnkpLCA2KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRtZWRpYS10eXBlICsgJG1lZGlhLXF1ZXJ5fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIFF1aWNrIHNvcnRcbi8vL1xuLy8vIEBhdXRob3IgU2FtIFJpY2hhcmRzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtMaXN0fSBTb3J0ZWQgTGlzdFxuQGZ1bmN0aW9uIF9tcS1xdWljay1zb3J0KCRsaXN0KSB7XG4gICAgJGxlc3M6ICAoKTtcbiAgICAkZXF1YWw6ICgpO1xuICAgICRsYXJnZTogKCk7XG5cbiAgICBAaWYgbGVuZ3RoKCRsaXN0KSA+IDEge1xuICAgICAgICAkc2VlZDogbnRoKCRsaXN0LCBjZWlsKGxlbmd0aCgkbGlzdCkgLyAyKSk7XG5cbiAgICAgICAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgICAgICAgICAgQGlmICgkaXRlbSA9PSAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRlcXVhbDogYXBwZW5kKCRlcXVhbCwgJGl0ZW0pO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPCAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRsZXNzOiBhcHBlbmQoJGxlc3MsICRpdGVtKTtcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKCRpdGVtID4gJHNlZWQpIHtcbiAgICAgICAgICAgICAgICAkbGFyZ2U6IGFwcGVuZCgkbGFyZ2UsICRpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEByZXR1cm4gam9pbihqb2luKF9tcS1xdWljay1zb3J0KCRsZXNzKSwgJGVxdWFsKSwgX21xLXF1aWNrLXNvcnQoJGxhcmdlKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFNvcnQgYSBtYXAgYnkgdmFsdWVzICh3b3JrcyB3aXRoIG51bWJlcnMgb25seSlcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNvcnRcbi8vLyBAcmV0dXJucyB7TWFwfSBNYXAgc29ydGVkIGJ5IHZhbHVlXG5AZnVuY3Rpb24gX21xLW1hcC1zb3J0LWJ5LXZhbHVlKCRtYXApIHtcbiAgICAkbWFwLXNvcnRlZDogKCk7XG4gICAgJG1hcC1rZXlzOiBtYXAta2V5cygkbWFwKTtcbiAgICAkbWFwLXZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgICAkbWFwLXZhbHVlcy1zb3J0ZWQ6IF9tcS1xdWljay1zb3J0KCRtYXAtdmFsdWVzKTtcblxuICAgIC8vIFJlb3JkZXIga2V5L3ZhbHVlIHBhaXJzIGJhc2VkIG9uIGtleSB2YWx1ZXNcbiAgICBAZWFjaCAkdmFsdWUgaW4gJG1hcC12YWx1ZXMtc29ydGVkIHtcbiAgICAgICAgJGluZGV4OiBpbmRleCgkbWFwLXZhbHVlcywgJHZhbHVlKTtcbiAgICAgICAgJGtleTogbnRoKCRtYXAta2V5cywgJGluZGV4KTtcbiAgICAgICAgJG1hcC1zb3J0ZWQ6IG1hcC1tZXJnZSgkbWFwLXNvcnRlZCwgKCRrZXk6ICR2YWx1ZSkpO1xuXG4gICAgICAgIC8vIFVuc2V0IHRoZSB2YWx1ZSBpbiAkbWFwLXZhbHVlcyB0byBwcmV2ZW50IHRoZSBsb29wXG4gICAgICAgIC8vIGZyb20gZmluZGluZyB0aGUgc2FtZSBpbmRleCB0d2ljZVxuICAgICAgICAkbWFwLXZhbHVlczogc2V0LW50aCgkbWFwLXZhbHVlcywgJGluZGV4LCAwKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRtYXAtc29ydGVkO1xufVxuXG4vLy8gQWRkIGEgYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgYnJlYWtwb2ludFxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIEBpbmNsdWRlIG1xLWFkZC1icmVha3BvaW50KHR2c2NyZWVuLCAxOTIwcHgpO1xuLy8vICBAaW5jbHVkZSBtcSh0dnNjcmVlbikge31cbkBtaXhpbiBtcS1hZGQtYnJlYWtwb2ludCgkbmFtZSwgJHdpZHRoKSB7XG4gICAgJG5ldy1icmVha3BvaW50OiAoJG5hbWU6ICR3aWR0aCk7XG4gICAgJG1xLWJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJG1xLWJyZWFrcG9pbnRzLCAkbmV3LWJyZWFrcG9pbnQpICFnbG9iYWw7XG4gICAgJG1xLWJyZWFrcG9pbnRzOiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1xLWJyZWFrcG9pbnRzKSAhZ2xvYmFsO1xufVxuXG4vLy8gU2hvdyB0aGUgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgdGhlIHZpZXdwb3J0XG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvdy1icmVha3BvaW50cyAoJG1xLXNob3ctYnJlYWtwb2ludHMpIC0gTGlzdCBvZiBicmVha3BvaW50cyB0byBzaG93IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKSAtIEJyZWFrcG9pbnQgbmFtZXMgYW5kIHNpemVzXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc2hvdy1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGdsb2JhbCBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xuLy8vXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgY3VzdG9tIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xuQG1peGluIG1xLXNob3ctYnJlYWtwb2ludHMoJHNob3ctYnJlYWtwb2ludHM6ICRtcS1zaG93LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIGJvZHk6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgY29sb3I6ICNDMDk4NTM7XG4gICAgICAgIGZvbnQ6IHNtYWxsLWNhcHRpb247XG4gICAgICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXG4gICAgICAgIEBlYWNoICRzaG93LWJyZWFrcG9pbnQgaW4gJHNob3ctYnJlYWtwb2ludHMge1xuICAgICAgICAgICAgJHdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiN7JHNob3ctYnJlYWtwb2ludH0g4omlICN7JHdpZHRofSAoI3ttcS1weDJlbSgkd2lkdGgpfSlcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGlmIGxlbmd0aCgkbXEtc2hvdy1icmVha3BvaW50cykgPiAwIHtcbiAgICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5Aa2V5ZnJhbWVzIG1kYy1zZWxlY3QtZmxvYXQtbmF0aXZlLWNvbnRyb2wge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYmFzZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL21peGluc1wiO1xuXG4vLyBMaW5lIFJpcHBsZSBpcyBpbnRlbmRlZCBmb3IgdXNlIGJ5IG11bHRpcGxlIGNvbXBvbmVudHMsIGJ1dCBpdHMgc3R5bGVzIHNob3VsZCBvbmx5IGJlIGVtaXR0ZWQgb25jZSB3aGVuIGJ1bmRsZWRcbkBpbmNsdWRlIG1kYy1iYXNlLWVtaXQtb25jZShcIm1kYy1saW5lLXJpcHBsZVwiKSB7XG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGxpbmUtcmlwcGxlXG4gIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2l0aW9uOiBtZGMtbGluZS1yaXBwbGUtdHJhbnNpdGlvbi12YWx1ZSh0cmFuc2Zvcm0pLCBtZGMtbGluZS1yaXBwbGUtdHJhbnNpdGlvbi12YWx1ZShvcGFjaXR5KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAubWRjLWxpbmUtcmlwcGxlLS1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAubWRjLWxpbmUtcmlwcGxlLS1kZWFjdGl2YXRpbmcge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2Jhc2UvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vIE5vdGNoZWQgT3V0bGluZSBpcyBpbnRlbmRlZCBmb3IgdXNlIGJ5IG11bHRpcGxlIGNvbXBvbmVudHMsIGJ1dCBpdHMgc3R5bGVzIHNob3VsZCBvbmx5IGJlIGVtaXR0ZWQgb25jZSB3aGVuIGJ1bmRsZWRcbkBpbmNsdWRlIG1kYy1iYXNlLWVtaXQtb25jZShcIm1kYy1ub3RjaGVkLW91dGxpbmVcIikge1xuICAubWRjLW5vdGNoZWQtb3V0bGluZSxcbiAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRtZGMtbm90Y2hlZC1vdXRsaW5lLXRyYW5zaXRpb24tZHVyYXRpb24gJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZVxuICAgIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZVxuICB9XG5cbiAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGUge1xuICAgIHRyYW5zaXRpb246XG4gICAgICBvcGFjaXR5ICRtZGMtbm90Y2hlZC1vdXRsaW5lLXRyYW5zaXRpb24tZHVyYXRpb24gJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uLFxuICAgICAgYm9yZGVyLWNvbG9yICRtZGMtbm90Y2hlZC1vdXRsaW5lLXRyYW5zaXRpb24tZHVyYXRpb24gJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIHN0cm9rZSAkbWRjLW5vdGNoZWQtb3V0bGluZS10cmFuc2l0aW9uLWR1cmF0aW9uICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbixcbiAgICAgIHN0cm9rZS13aWR0aCAkbWRjLW5vdGNoZWQtb3V0bGluZS10cmFuc2l0aW9uLWR1cmF0aW9uICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbiAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS1ub3RjaGVkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLm1kYy1ub3RjaGVkLW91dGxpbmUtLW5vdGNoZWQgfiAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYmFzZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBGbG9hdGluZyBMYWJlbCBpcyBpbnRlbmRlZCBmb3IgdXNlIGJ5IG11bHRpcGxlIGNvbXBvbmVudHMsIGJ1dCBpdHMgc3R5bGVzIHNob3VsZCBvbmx5IGJlIGVtaXR0ZWQgb25jZSB3aGVuIGJ1bmRsZWRcbkBpbmNsdWRlIG1kYy1iYXNlLWVtaXQtb25jZShcIm1kYy1mbG9hdGluZy1sYWJlbFwiKSB7XG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGZsb2F0aW5nLWxhYmVsXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KHN1YnRpdGxlMSk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA4cHg7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtICRtZGMtZmxvYXRpbmctbGFiZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiAkbWRjLWFuaW1hdGlvbi1zdGFuZGFyZC1jdXJ2ZS10aW1pbmctZnVuY3Rpb24sXG4gICAgICBjb2xvciAkbWRjLWZsb2F0aW5nLWxhYmVsLXRyYW5zaXRpb24tZHVyYXRpb24gJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1cmVtO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY3Vyc29yOiB0ZXh0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy8gRm9yY2UgdGhlIGxhYmVsIGludG8gaXRzIG93biBsYXllciB0byBwcmV2ZW50IHZpc2libGUgbGF5ZXIgcHJvbW90aW9uIGFkanVzdG1lbnRzXG4gICAgLy8gd2hlbiB0aGUgcmlwcGxlIGlzIGFjdGl2YXRlZCBiZWhpbmQgaXQuXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblxuICAgIEBpbmNsdWRlIG1kYy1ydGwge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGF1dG87XG5cbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgICB9XG4gIH1cblxuICAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG5cbiAgQGF0LXJvb3Qge1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLWZsb2F0aW5nLWxhYmVsLXBvc2l0aW9uLXkpO1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24oc3RhbmRhcmQpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyhzdGFuZGFyZCwgJG1kYy1mbG9hdGluZy1sYWJlbC1wb3NpdGlvbi15KTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1mbG9hdGluZy1sYWJlbC1pbmstY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xufVxuXG4vLyBVc2VkIGZvciB0ZXh0YXJlYSBpbiBjYXNlIG9mIHNjcm9sbGluZ1xuQG1peGluIG1kYy1mbG9hdGluZy1sYWJlbC1maWxsLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcygkbW9kaWZpZXIsICRwb3NpdGlvblksICRwb3NpdGlvblg6IDAlLCAkc2NhbGU6IC43NSkge1xuICBAa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS0jeyRtb2RpZmllcn0ge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAjeyRwb3NpdGlvblh9KSkgdHJhbnNsYXRlWSgtI3skcG9zaXRpb25ZfSkgc2NhbGUoI3skc2NhbGV9KTtcbiAgICB9XG5cbiAgICAzMyUge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41LCAwLCAuNzAxNzMyLCAuNDk1ODE5KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gI3skcG9zaXRpb25YfSkpIHRyYW5zbGF0ZVkoLSN7JHBvc2l0aW9uWX0pIHNjYWxlKCN7JHNjYWxlfSk7XG4gICAgfVxuXG4gICAgNjYlIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMzAyNDM1LCAuMzgxMzUyLCAuNTUsIC45NTYzNTIpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gI3skcG9zaXRpb25YfSkpIHRyYW5zbGF0ZVkoLSN7JHBvc2l0aW9uWX0pIHNjYWxlKCN7JHNjYWxlfSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gI3skcG9zaXRpb25YfSkpIHRyYW5zbGF0ZVkoLSN7JHBvc2l0aW9uWX0pIHNjYWxlKCN7JHNjYWxlfSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJHBvc2l0aW9uWSwgJHBvc2l0aW9uWDogMCUsICRzY2FsZTogLjc1KSB7XG4gIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICBAaWYgJHBvc2l0aW9uWCA9PSAwIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMSAqICRwb3NpdGlvblkpIHNjYWxlKCRzY2FsZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEgKiAkcG9zaXRpb25ZKSB0cmFuc2xhdGVYKC0xICogJHBvc2l0aW9uWCkgc2NhbGUoJHNjYWxlKTtcblxuICAgICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMSAqICRwb3NpdGlvblkpIHRyYW5zbGF0ZVgoJHBvc2l0aW9uWCkgc2NhbGUoJHNjYWxlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24oJG1vZGlmaWVyKSB7XG4gIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS0jeyRtb2RpZmllcn0gMjUwbXMgMTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZsb2F0aW5nLWxhYmVsLW1heC13aWR0aCgkbWF4LXdpZHRoKSB7XG4gIG1heC13aWR0aDogJG1heC13aWR0aDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4va2V5ZnJhbWVzXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2xpbmUtcmlwcGxlL21kYy1saW5lLXJpcHBsZVwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ub3RjaGVkLW91dGxpbmUvbWRjLW5vdGNoZWQtb3V0bGluZVwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mbG9hdGluZy1sYWJlbC9tZGMtZmxvYXRpbmctbGFiZWxcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL2NvbW1vblwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgc2VsZWN0XG4ubWRjLXNlbGVjdCB7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtY29udGFpbmVyLWZpbGwtY29sb3IodHJhbnNwYXJlbnQpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWRkLWFycm93LXN2Zy1iZ187XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtaW5rLWNvbG9yKCRtZGMtc2VsZWN0LWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtbGFiZWwtY29sb3IoJG1kYy1zZWxlY3QtbGFiZWwtY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWNvbG9yKCRtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWlkbGUtY29sb3IpO1xuXG4gIC8vIEZvY3VzZWQgc3RhdGUgY29sb3JzXG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtZm9jdXNlZC1ib3R0b20tbGluZS1jb2xvcihwcmltYXJ5KTtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mb2N1c2VkLWxhYmVsLWNvbG9yKCRtZGMtc2VsZWN0LWZvY3VzZWQtbGFiZWwtY29sb3IpO1xuXG4gIC8vIEhvdmVyIHN0YXRlIGNvbG9yc1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWhvdmVyLWJvdHRvbS1saW5lLWNvbG9yKCRtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWhvdmVyLWNvbG9yKTtcblxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDUycHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDhweCBib3R0b20gMTJweDtcblxuICBAaW5jbHVkZSBtZGMtcnRsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDhweCBib3R0b20gMTJweDtcbiAgfVxuXG4gICZfX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShwYWRkaW5nLCAwLCAkbWRjLXNlbGVjdC1hcnJvdy1wYWRkaW5nKTtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShzdWJ0aXRsZTEpO1xuXG4gICAgJjo6LW1zLWV4cGFuZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8vIGNvdW50ZXJhY3RzIHRoZSBleHRyYSB0ZXh0IHBhZGRpbmcgdGhhdCBGaXJlZm94IGFkZHMgYnkgZGVmYXVsdFxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoXCJcIikge1xuICAgICAgdGV4dC1pbmRlbnQ6IC0ycHg7XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlLCBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbiAgICA+IG9wdGlvbiB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCB1c2VyIGFnZW50IHN0eWxlc2hlZXRcbiAgICB9XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0OyAvLyBPdmVycmlkZSBkZWZhdWx0IHVzZXIgYWdlbnQgc3R5bGVzaGVldFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mb2N1c2VkLWxpbmUtcmlwcGxlXyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAyKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtc2VsZWN0LS1ib3gge1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yKCRtZGMtc2VsZWN0LWJveC1maWxsLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkO1xuICAvLyBTZWxlY3QgQm94IGludGVudGlvbmFsbHkgb21pdHMgcHJlc3MgcmlwcGxlLCBzbyBlYWNoIHN0YXRlIG5lZWRzIHRvIGJlIHNwZWNpZmllZCBpbmRpdmlkdWFsbHlcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1iYXNlLWNvbG9yKCRtZGMtc2VsZWN0LWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaG92ZXItb3BhY2l0eShtZGMtc3RhdGVzLW9wYWNpdHkoJG1kYy1zZWxlY3QtaW5rLWNvbG9yLCBob3ZlcikpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHkobWRjLXN0YXRlcy1vcGFjaXR5KCRtZGMtc2VsZWN0LWluay1jb2xvciwgZm9jdXMpKTtcblxuICBoZWlnaHQ6IDU2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAaW5jbHVkZSBtZGMtcnRsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDEwcHggY2VudGVyO1xuICB9XG5cbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShwYWRkaW5nLCAkbWRjLXNlbGVjdC1sYWJlbC1wYWRkaW5nLCAkbWRjLXNlbGVjdC1hcnJvdy1wYWRkaW5nKTtcblxuICAgIGhlaWdodDogNTZweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAxNnB4KTtcblxuICAgIGJvdHRvbTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcblxuICAgICYtLWZsb2F0LWFib3ZlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAlKSBzY2FsZSguNzUsIC43NSk7XG4gICAgfVxuICB9XG4gIC8vIHN0eWxlbGludC1lbmFibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCB7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3Qtb3V0bGluZS1jb2xvcigkbWRjLXNlbGVjdC1vdXRsaW5lZC1pZGxlLWJvcmRlcik7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtaG92ZXItb3V0bGluZS1jb2xvcigkbWRjLXNlbGVjdC1vdXRsaW5lZC1ob3Zlci1ib3JkZXIpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtb3V0bGluZS1jb2xvcihwcmltYXJ5KTtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWZsb2F0LXBvc2l0aW9uKCRtZGMtc2VsZWN0LW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXkpO1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtYW5pbWF0aW9uKHRleHQtZmllbGQtb3V0bGluZWQpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LW91dGxpbmUtY29ybmVyLXJhZGl1cygkbWRjLXNlbGVjdC1ib3JkZXItcmFkaXVzKTtcblxuICBoZWlnaHQ6IDU2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxMHB4IGNlbnRlcjtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkocGFkZGluZywgJG1kYy1zZWxlY3QtbGFiZWwtcGFkZGluZywgJG1kYy1zZWxlY3QtYXJyb3ctcGFkZGluZyk7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAxNnB4KTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkIHtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1kZC1hcnJvdy1zdmctYmdfKCRtZGMtc2VsZWN0LWRpc2FibGVkLWFycm93LWNvbG9yKTtcblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtaW5rLWNvbG9yKCRtZGMtc2VsZWN0LWRpc2FibGVkLWxhYmVsLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAubWRjLWxpbmUtcmlwcGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7XG4gICAgY29sb3I6ICRtZGMtc2VsZWN0LWRpc2FibGVkLWluay1jb2xvcjtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZW5hYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuXG4gICYubWRjLXNlbGVjdC0tYm94IHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yXygkbWRjLXNlbGVjdC1ib3gtZGlzYWJsZWQtZmlsbC1jb2xvcik7XG4gIH1cblxuICAmLm1kYy1zZWxlY3QtLW91dGxpbmVkIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gICAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1vdXRsaW5lLWNvbG9yXygkbWRjLXNlbGVjdC1vdXRsaW5lZC1kaXNhYmxlZC1ib3JkZXIpO1xuICB9XG5cbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9mbG9hdGluZy1sYWJlbC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2xpbmUtcmlwcGxlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ub3RjaGVkLW91dGxpbmUvbWl4aW5zXCI7XG5cbi8vIFB1YmxpY1xuXG5AbWl4aW4gbWRjLXNlbGVjdC1pbmstY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaW5rLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWZvY3VzZWQtbGFiZWwtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpmb2N1cyB+IC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWluay1jb2xvcihtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtaG92ZXItYm90dG9tLWxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LW5hdGl2ZS1jb250cm9sLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWZvY3VzZWQtYm90dG9tLWxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtZm9jdXNlZC1saW5lLXJpcHBsZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1sYWJlbC1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtaW5rLWNvbG9yKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3Qtb3V0bGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1vdXRsaW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWhvdmVyLW91dGxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaG92ZXItb3V0bGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtZm9jdXNlZC1vdXRsaW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzICRyYWRpdXMgMCAwO1xufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1vdXRsaW5lLWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICAvLyBOT1RFOiBpZGxlIGFuZCBub3RjaGVkIHN0YXRlIGJvcmRlciByYWRpdXMgbWl4aW5zXG4gIC8vIGFyZSBicm9rZW4gaW50byAyIGRpZmZlcmVudCBtaXhpbnMsIG90aGVyd2lzZVxuICAvLyB3ZSB3b3VsZCBiZSBvdmVybHkgc3BlY2lmaWMgKGJpZyBubywgbm8pLiBUaGUgY2F1c2Ugb2ZcbiAgLy8gdGhpcyBpcyBiZWNhdXNlIC5tZGMtbm90Y2hlZC1vdXRsaW5lIGFuZCAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZVxuICAvLyBhcmUgc2libGluZ3MuIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIG5lZWRzIHRvIGJlIGEgY2hpbGQgb2ZcbiAgLy8gLm1kYy1ub3RjaGVkLW91dGxpbmUgaW4gb3JkZXIgdG8gcmVtZWR5IHRoaXMgaXNzdWUuXG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lIHtcbiAgICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvcm5lci1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWlkbGUtY29ybmVyLXJhZGl1cygkcmFkaXVzKTtcbn1cblxuLy8gUHJpdmF0ZVxuQG1peGluIG1kYy1zZWxlY3QtZm9jdXNlZC1saW5lLXJpcHBsZV8ge1xuICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgfiAubWRjLWxpbmUtcmlwcGxlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmVfIHtcbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmZvY3VzIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUge1xuICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtc3Ryb2tlLXdpZHRoKDJweCk7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtaW5rLWNvbG9yXygkY29sb3IpIHtcbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1jb250YWluZXItZmlsbC1jb2xvcl8oJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvcik7XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpIHtcbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LW5hdGl2ZS1jb250cm9sLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LW5hdGl2ZS1jb250cm9sLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mb2N1c2VkLWxpbmUtcmlwcGxlLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mb2N1c2VkLWxpbmUtcmlwcGxlXyB7XG4gICAgQGluY2x1ZGUgbWRjLWxpbmUtcmlwcGxlLWNvbG9yKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtZGQtYXJyb3ctc3ZnLWJnXygkZmlsbC1oZXgtbnVtYmVyOiAwMDAwMDAsICRvcGFjaXR5OiAuNTQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTBweCUyMiUyMGhlaWdodCUzRCUyMjVweCUyMiUyMHZpZXdCb3glM0QlMjI3JTIwMTAlMjAxMCUyMDUlMjIlMjB2ZXJzaW9uJTNEJTIyMS4xJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB4bWxucyUzQXhsaW5rJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmslMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwaWQlM0QlMjJTaGFwZSUyMiUyMHN0cm9rZSUzRCUyMm5vbmUlMjIlMjBmaWxsJTNEJTIyJTIzI3skZmlsbC1oZXgtbnVtYmVyfSUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBvcGFjaXR5JTNEJTIyI3skb3BhY2l0eX0lMjIlMjBwb2ludHMlM0QlMjI3JTIwMTAlMjAxMiUyMDE1JTIwMTclMjAxMCUyMiUzRSUzQyUyRnBvbHlnb24lM0UlMEElM0MlMkZzdmclM0VcIik7XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LW91dGxpbmUtY29sb3JfKCRjb2xvcikge1xuICAvLyBOT1RFOiBvdXRsaW5lZCB2ZXJzaW9uIG9mIHNlbGVjdCB3YW50cyB0aGUgXCJpZGxlXCIgYW5kXG4gIC8vIFwibm90Y2hlZFwiIG91dGxpbmUgdG8gaGF2ZSB0aGUgc2FtZSBjb2xvci4gVGhpcyBjb3ZlcnMgdHdvIGNhc2VzOlxuICAvLyAxKSB0ZXh0IGZpZWxkIHJlbmRlcnMgd2l0aCBOTyB2YWx1ZSBpbiB0aGUgXCJpZGxlXCIgc3RhdGVcbiAgLy8gMikgdGV4dCBmaWVsZCByZW5kZXJzIHdpdGggYSB2YWx1ZSBpbiB0aGUgXCJub3RjaGVkXCIgc3RhdGVcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1pZGxlLWNvbG9yKCRjb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtY29sb3IoJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy1zZWxlY3QtaG92ZXItb3V0bGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpmb2N1cykgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIH4ge1xuICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtaWRsZS1jb2xvcigkY29sb3IpO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eVxuICAgIC5tZGMtbm90Y2hlZC1vdXRsaW5lIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtZm9jdXNlZC1vdXRsaW5lLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmVfIHtcbiAgICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcik7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5cbiRtZGMtc2VsZWN0LWFycm93LXBhZGRpbmc6IDI2cHg7XG4kbWRjLXNlbGVjdC1sYWJlbC1wYWRkaW5nOiAxNnB4O1xuJG1kYy1zZWxlY3QtYm9yZGVyLXJhZGl1czogNHB4O1xuXG4kbWRjLXNlbGVjdC1pbmstY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC44Nyk7XG4kbWRjLXNlbGVjdC1kaXNhYmxlZC1pbmstY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zNyk7XG4kbWRjLXNlbGVjdC1kaXNhYmxlZC1hcnJvdy1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSk7XG5cbiRtZGMtc2VsZWN0LWxhYmVsLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNik7XG4kbWRjLXNlbGVjdC1mb2N1c2VkLWxhYmVsLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKHByaW1hcnkpLCAuODcpO1xuJG1kYy1zZWxlY3QtZGlzYWJsZWQtbGFiZWwtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zNyk7XG5cbiRtZGMtc2VsZWN0LWJvdHRvbS1saW5lLWlkbGUtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC40Mik7XG4kbWRjLXNlbGVjdC1ib3R0b20tbGluZS1ob3Zlci1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjg3KTtcblxuJG1kYy1zZWxlY3QtYm94LWZpbGwtY29sb3I6IG1peChtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgbWRjLXRoZW1lLXByb3AtdmFsdWUoc3VyZmFjZSksIDQlKTtcbiRtZGMtc2VsZWN0LWJveC1kaXNhYmxlZC1maWxsLWNvbG9yOiBtaXgobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpLCAyJSk7XG5cbiRtZGMtc2VsZWN0LW91dGxpbmVkLWlkbGUtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMjQpO1xuXG4vLyBzaG91bGQgYmUgLjA2IGFmdGVyIG1kYy1zZWxlY3Qgb3BhY2l0eSBpcyBhcHBsaWVkXG4kbWRjLXNlbGVjdC1vdXRsaW5lZC1kaXNhYmxlZC1ib3JkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4xNik7XG4kbWRjLXNlbGVjdC1vdXRsaW5lZC1ob3Zlci1ib3JkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC44Nyk7XG5cbiRtZGMtc2VsZWN0LW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXk6IDEzMCU7XG4kbWRjLXNlbGVjdC1vdXRsaW5lZC1kZW5zZS1sYWJlbC1wb3NpdGlvbi15OiAxMTAlO1xuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL21peGluc1wiO1xuXG5AbWl4aW4gbWRjLW5vdGNoZWQtb3V0bGluZS1pZGxlLWNvbG9yKCRjb2xvcikge1xuICAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAubWRjLW5vdGNoZWQtb3V0bGluZV9fcGF0aCB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3Aoc3Ryb2tlLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbm90Y2hlZC1vdXRsaW5lLXN0cm9rZS13aWR0aCgkd2lkdGgpIHtcbiAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGgge1xuICAgIHN0cm9rZS13aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gbWRjLW5vdGNoZWQtb3V0bGluZS1pZGxlLWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5cclxuLmtteC1zZWxlY3QubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY29tbWVudC1lbXB0eS1saW5lLWJlZm9yZSAqL1xyXG4gICAgLyogVGhpcyBtaXhpbiByZXF1aXJlcyB0aGUgaGV4IHZhbHVlIHRvIGJlIHBhc3NlZCB3aXRob3V0IHRoZSBsZWFkaW5nIGhhc2g6ICovXHJcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWRkLWFycm93LXN2Zy1iZ18oJzA1NTlhZCcsIDEpOyAvLyBibHVlLTcwMFxyXG5cclxuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaW5rLWNvbG9yKGtteC1jb2xvcignc2xhdGUnLCA2MDApKTtcclxuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtYm90dG9tLWxpbmUtY29sb3IoJFNFTEVDVC1DT0xPUi1CT1JERVItQk9UVE9NKTtcclxuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaG92ZXItYm90dG9tLWxpbmUtY29sb3IoJFNFTEVDVC1DT0xPUi1CT1JERVItQk9UVE9NKTtcclxuXHJcbiAgICAvKiBNYXRjaCBoZWlnaHQgJiB3aWR0aCBvZiB0ZXh0LWlucHV0ICovXHJcbiAgICBoZWlnaHQ6ICRTRUxFQ1QtSEVJR0hUO1xyXG5cclxuICAgIHdpZHRoOiAkU0VMRUNULVdJRFRIO1xyXG5cclxuICAgIC8qIGFkanVzdCB0aGUgcG9zaXRpb24gb2YgdGhlIHRyaWFuZ2xlIHNvIGl0IGNvcnJlY3RseSBwb3NpdGlvbmVkIHdpdGggYmFzZWxpbmUgKi9cclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogJFNFTEVDVC1QT0lOVEVSLVk7XHJcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWRkLWFycm93LXN2Zy1iZ18oNmQ3NDdhLCAxKTsgLy8gc2xhdGUtNjAwXHJcblxyXG4gICAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgKi9cclxuICAgICAgICA+IG9wdGlvbjpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIC8vIFRoaXMgZW5zdXJlcyB0aGUgZGlzYWJsZWQgb3B0aW9uc+KAmSB0ZXh0IHZhbHVlIGlzbid0IGFmZmVjdGVkIGJ5IDpob3ZlciBjb2xvciBkZWNsYXJhdGlvbnM6XHJcbiAgICAgICAgICAgIGNvbG9yOiAkU0VMRUNULUNPTE9SLS1ESVNBQkxFRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHNpemUoJ3MnKTtcclxuICAgIH1cclxuXHJcbiAgICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgfiAubWRjLWZsb2F0aW5nLWxhYmVsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb2xvcjogJFNFTEVDVC1DT0xPUi0tQkxVRTtcclxuICAgIH1cclxuXHJcbiAgICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgfiAubWRjLWxpbmUtcmlwcGxlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkU0VMRUNULVVOREVSTElORS1DT0xPUi0tQUNUSVZFO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZGMtZmxvYXRpbmctbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkU0VMRUNULUxBQkVMLUNPTE9SO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkU0VMRUNULUxBQkVMLUxJTkUtSEVJR0hUO1xyXG4gICAgICAgIGxlZnQ6IHNpemUoJ3MnKTtcclxuICAgICAgICBib3R0b206ICRTRUxFQ1QtRkxPQVRJTkctTEFCRUwtUE9TSVRJT04tLUJPVFRPTTtcclxuXHJcbiAgICAgICAgJi0tZmxvYXQtYWJvdmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJFNFTEVDVC1DT0xPUi0tQkxVRTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgJFNFTEVDVC1GTE9BVElORy1MQUJFTC1QT1NJVElPTi0tVE9QKSBzY2FsZSgkU0VMRUNULUZMT0FUSU5HLUxBQkVMLVBPU0lUSU9OLS1TQ0FMRSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQsXHJcbi5tZGMtc2VsZWN0W2Rpc2FibGVkXSB7XHJcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWRkLWFycm93LXN2Zy1iZ18oYWJhZmIzLCAxKTsgLy8gc2xhdGUtNDAwIChnbG9iYWwgJ2Rpc2FibGVkJyB2YWx1ZSlcclxuXHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG4gICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICBoZWlnaHQ6ICRTRUxFQ1QtSEVJR0hUO1xyXG4gICAgd2lkdGg6ICRTRUxFQ1QtV0lEVEg7XHJcblxyXG4gICAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcclxuICAgICAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRTRUxFQ1QtQ09MT1ItLURJU0FCTEVELUJPUkRFUjtcclxuICAgICAgICAgICAgY29sb3I6ICRTRUxFQ1QtQ09MT1ItLURJU0FCTEVEO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcclxuICAgICAgICBjb2xvcjogJFNFTEVDVC1DT0xPUi0tRElTQUJMRUQ7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9mb3Jtcy92YXJpYWJsZXMnO1xyXG5cclxuJFNFTEVDVC1IRUlHSFQ6IDU2cHg7XHJcblxyXG4kU0VMRUNULVdJRFRIOiAxMDAlO1xyXG5cclxuJFNFTEVDVC1CQUNLR1JPVU5ELUNPTE9SOiB0cmFuc3BhcmVudDtcclxuXHJcbiRTRUxFQ1QtQ09MT1ItLUJMVUU6IGtteC1jb2xvcignYmx1ZScsIDYwMCk7XHJcblxyXG4kU0VMRUNULUNPTE9SLS1HUkVZOiBrbXgtY29sb3IoJ3NsYXRlJywgNjAwKTtcclxuXHJcbiRTRUxFQ1QtQ09MT1ItLURJU0FCTEVEOiBrbXgtY29sb3IoJ3NsYXRlJywgNDAwKTtcclxuXHJcbiRTRUxFQ1QtQ09MT1ItQk9SREVSLUJPVFRPTTogJFNFTEVDVC1DT0xPUi0tR1JFWTsgLy8gcmdiYSgwLCAwLCAwLCAwLjEyKTtcclxuXHJcbiRTRUxFQ1QtQ09MT1ItLURJU0FCTEVELUJPUkRFUjogJFNFTEVDVC1DT0xPUi0tRElTQUJMRUQ7XHJcblxyXG4kU0VMRUNULUNPTE9SLS1JTlZBTElEOiBrbXgtY29sb3IoJ3JlZCcsIDYwMCk7XHJcblxyXG4kU0VMRUNULUZMT0FUSU5HLUxBQkVMLVBPU0lUSU9OLS1TQ0FMRTogMC43NTtcclxuXHJcbiRTRUxFQ1QtRkxPQVRJTkctTEFCRUwtUE9TSVRJT04tLUJPVFRPTTogMTJweDtcclxuXHJcbiRTRUxFQ1QtRkxPQVRJTkctTEFCRUwtUE9TSVRJT04tLVRPUDogLTIxcHg7XHJcblxyXG4kU0VMRUNULUhFTFBFUi1URVhULUNPTE9SOiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1I7XHJcblxyXG4kU0VMRUNULUhFTFBFUi1URVhULURJU0FCTEVEOiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1ItRElTQUJMRUQ7XHJcblxyXG4kU0VMRUNULVBBRERJTkc6IHNpemUoJ3MnKTtcclxuXHJcbiRTRUxFQ1QtVEVYVC0tRElTQUJMRUQ6ICRTRUxFQ1QtQ09MT1ItLURJU0FCTEVEO1xyXG5cclxuJFNFTEVDVC1URVhULS1HUkVZOiBrbXgtY29sb3IoJ3NsYXRlJywgOTAwKTtcclxuXHJcbiRTRUxFQ1QtVEVYVC0tSU5WQUxJRDoga214LWNvbG9yKCdyZWQnLCA2MDApO1xyXG5cclxuLy8gJFNFTEVDVC1URVhULS1USEVNRS0tREFSSzogJHdoaXRlO1xyXG5cclxuLy8gJFNFTEVDVC0tVEhFTUUtREFSSzoga214LWNvbG9yKCdibHVlJywgMzAwKTtcclxuXHJcbiRTRUxFQ1QtUE9JTlRFUi1ZOiBzaXplKCd4bCcpO1xyXG5cclxuJFNFTEVDVC1VTkRFUkxJTkUtQ09MT1ItLUFDVElWRToga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuXHJcbiRTRUxFQ1QtTEFCRUwtQ09MT1I6ICRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SO1xyXG5cclxuJFNFTEVDVC1MQUJFTC1MSU5FLUhFSUdIVDogJEtNWC1GT1JNLUxBQkVMLUxJTkUtSEVJR0hUO1xyXG5cclxuJFNFTEVDVC1IRUxQRVItVEVYVC1GT05ULUZBTUlMWTogJEtNWC1GT1JNLUhFTFBFUi1URVhULUZPTlQtRkFNSUxZO1xyXG5cclxuJFNFTEVDVC1IRUxQRVItVEVYVC1GT05ULVNJWkU6IHJlbS1jYWxjKDEyKTtcclxuXHJcbiRTRUxFQ1QtSEVMUEVSLVRFWFQtTElORS1IRUlHSFQ6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1MSU5FLUhFSUdIVDtcclxuXHJcbiRTRUxFQ1QtSEVMUEVSLVRFWFQtTUFSR0lOOiAzcHggMCAwO1xyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9mb3Jtcy9taXhpbnMnO1xyXG5cclxuLmtteC1zZWxlY3Qge1xyXG4gICAgJi5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcclxuICAgICAgICArIC5rbXgtc2VsZWN0LWhlbHBlci10ZXh0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUga214LWZvcm0taGVscGVyLXRleHQtbWl4aW4oKTtcclxuICAgICAgICAgICAgbWFyZ2luOiAkU0VMRUNULUhFTFBFUi1URVhULU1BUkdJTjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSBzbmFja2JhclxuLm1kYy1zbmFja2JhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcbiAgdHJhbnNpdGlvbjogbWRjLWFuaW1hdGlvbi1leGl0LXBlcm1hbmVudCh0cmFuc2Zvcm0sIC4yNXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWRjLXNuYWNrYmFyLWJhY2tncm91bmQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAoJG1kYy1zbmFja2Jhci10YWJsZXQtYnJlYWtwb2ludCAtIDEpKSB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbWRjLXNuYWNrYmFyLXRhYmxldC1icmVha3BvaW50KSB7XG4gICAgbWluLXdpZHRoOiAyODhweDtcbiAgICBtYXgtd2lkdGg6IDU2OHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxufVxuXG4ubWRjLXNuYWNrYmFyLS1hbGlnbi1zdGFydCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbWRjLXNuYWNrYmFyLXRhYmxldC1icmVha3BvaW50KSB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24obGVmdCwgMjRweCk7XG5cbiAgICBib3R0b206IDI0cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMjAwJSk7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogKCRtZGMtc25hY2tiYXItdGFibGV0LWJyZWFrcG9pbnQgLSAxKSkge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICB9XG59XG5cbi5tZGMtc25hY2tiYXItLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICB0cmFuc2l0aW9uOiBtZGMtYW5pbWF0aW9uLWVudGVyKHRyYW5zZm9ybSwgLjI1cyk7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXG4gICY6bm90KC5tZGMtc25hY2tiYXItLWFsaWduLXN0YXJ0KSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogKCRtZGMtc25hY2tiYXItdGFibGV0LWJyZWFrcG9pbnQgLSAxKSkge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtc25hY2tiYXJfX2FjdGlvbi13cmFwcGVyIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkocGFkZGluZywgMjRweCwgMCk7XG59XG5cbi5tZGMtc25hY2tiYXItLWFjdGlvbi1vbi1ib3R0b20ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ubWRjLXNuYWNrYmFyX190ZXh0IHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoYm9keTEpO1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCByaWdodCwgYXV0bywgXCIubWRjLXNuYWNrYmFyXCIpO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogNDhweDtcbiAgdHJhbnNpdGlvbjogbWRjLWFuaW1hdGlvbi1leGl0LXBlcm1hbmVudChvcGFjaXR5LCAuM3MpO1xuICBvcGFjaXR5OiAwO1xuICBjb2xvcjogJG1kYy1zbmFja2Jhci1mb3JlZ3JvdW5kLWNvbG9yO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbWRjLXNuYWNrYmFyLXRhYmxldC1icmVha3BvaW50KSB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkocGFkZGluZywgMCwgMjRweCk7XG4gIH1cbn1cblxuLm1kYy1zbmFja2Jhci0tYWN0aW9uLW9uLWJvdHRvbSAubWRjLXNuYWNrYmFyX190ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xufVxuXG4ubWRjLXNuYWNrYmFyLS1hY3Rpb24tb24tYm90dG9tIC5tZGMtc25hY2tiYXJfX2FjdGlvbi13cmFwcGVyIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgYXV0byk7XG5cbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4ubWRjLXNuYWNrYmFyLS1tdWx0aWxpbmUgLm1kYy1zbmFja2Jhcl9fdGV4dCB7XG4gIGhlaWdodDogODBweDtcbn1cblxuLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbiB7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KGJ1dHRvbik7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCBzZWNvbmRhcnkpO1xuXG4gIHBhZGRpbmc6IDA7XG4gIHRyYW5zaXRpb246IG1kYy1hbmltYXRpb24tZXhpdC1wZXJtYW5lbnQob3BhY2l0eSwgLjNzKTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6bm90KFthcmlhLWhpZGRlbl0pIHtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG59XG5cbi5tZGMtc25hY2tiYXItLWFjdGl2ZSAubWRjLXNuYWNrYmFyX190ZXh0LFxuLm1kYy1zbmFja2Jhci0tYWN0aXZlIC5tZGMtc25hY2tiYXJfX2FjdGlvbi1idXR0b246bm90KFthcmlhLWhpZGRlbl0pIHtcbiAgdHJhbnNpdGlvbjogbWRjLWFuaW1hdGlvbi1leGl0LXBlcm1hbmVudChvcGFjaXR5LCAuM3MpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbi5tZGMtc25hY2tiYXItLW11bHRpbGluZS5tZGMtc25hY2tiYXItLWFjdGlvbi1vbi1ib3R0b20gLm1kYy1zbmFja2Jhcl9fdGV4dCB7XG4gIG1hcmdpbjogMDtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbi8vIEhhcmQgY29kZWQgc2luY2UgdGhlIGNvbG9yIGlzIG5vdCBwcmVzZW50IGluIGFueSBwYWxldHRlLlxuJG1kYy1zbmFja2Jhci1iYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyICFkZWZhdWx0O1xuJG1kYy1zbmFja2Jhci1mb3JlZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbi8vIFRPRE86IEJldHRlciBzcG90IHRvIHB1bGwgdGhpcyBicmVha3BvaW50P1xuLy8kc25hY2tiYXItdGFibGV0LWJyZWFrcG9pbnQ6ICRncmlkLXRhYmxldC1icmVha3BvaW50O1xuJG1kYy1zbmFja2Jhci10YWJsZXQtYnJlYWtwb2ludDogNjAwcHggIWRlZmF1bHQ7XG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9lbGV2YXRpb24vbWl4aW5zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXV0aWxpdGllcy9zcmMvc3ZnL21peGlucyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvc25hY2tiYXIvbWRjLXNuYWNrYmFyJztcclxuQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5cclxuLm1kYy1zbmFja2JhciB7XHJcbiAgICBAaW5jbHVkZSBrbXgtZWxldmF0aW9uKDgpO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrbXgtdGhlbWUtc25hY2tiYXItaW5mb3JtYXRpb25hbC1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgcGFkZGluZy1sZWZ0OiBzaXplKCdtJyk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiBzaXplKCdzJyk7XHJcblxyXG4gICAgJjpub3QoLm1kYy1zbmFja2Jhci0tYWxpZ24tc3RhcnQpIHtcclxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ljb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1zdmctYmFzZTtcclxuICAgICAgICBAaW5jbHVkZSBrbXgtc3ZnLWljb247XHJcblxyXG4gICAgICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMS4yNWVtO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMWVtIDAgMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGV4dCB7XHJcbiAgICAgICAgY29sb3I6ICRrbXgtdGhlbWUtc25hY2tiYXItaW5mb3JtYXRpb25hbC10ZXh0LWNvbG9yO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHNpemUoJzJ4bCcpO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IHNpemUoJzN4bCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcclxuICAgIH1cclxuXHJcbiAgICAmX19hY3Rpb24td3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBzaXplKCdzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYWN0aW9uLWJ1dHRvbiB7XHJcbiAgICAgICAgY29sb3I6ICRrbXgtdGhlbWUtc25hY2tiYXItaW5mb3JtYXRpb25hbC1hY3Rpb24tYnV0dG9uLWNvbG9yO1xyXG5cclxuICAgICAgICAmLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBzaXplKCdzJyk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHNpemUoJ3MnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy10aGVtZS0tZGFyayAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLWluZm9ybWF0aW9uYWwtYmFja2dyb3VuZC1jb2xvcjtcclxuXHJcbiAgICAgICAgJl9fdGV4dCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLWluZm9ybWF0aW9uYWwtdGV4dC1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2FjdGlvbi1idXR0b24ge1xyXG4gICAgICAgICAgICBjb2xvcjogJGtteC10aGVtZS1zbmFja2Jhci1pbmZvcm1hdGlvbmFsLWFjdGlvbi1idXR0b24tY29sb3I7XHJcblxyXG4gICAgICAgICAgICAmLmtteC1idXR0b24tLXRlcnRpYXJ5LXdoaXRlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogc2l6ZSgncycpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogc2l6ZSgncycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXN1Y2Nlc3Mge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRrbXgtdGhlbWUtc25hY2tiYXItc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yO1xyXG5cclxuICAgICAgICAubWRjLXNuYWNrYmFyX190ZXh0IHtcclxuICAgICAgICAgICAgY29sb3I6ICRrbXgtdGhlbWUtc25hY2tiYXItc3VjY2Vzcy10ZXh0LWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbi5rbXgtYnV0dG9uLS10ZXJ0aWFyeS13aGl0ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLXN1Y2Nlc3MtYWN0aW9uLWJ1dHRvbi1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdzbGF0ZScsIDIwMCwgMC43KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLXN1Y2Nlc3MtYWN0aW9uLWJ1dHRvbi1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1kYy10aGVtZS0tZGFyayAmIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGtteC10aGVtZS1zbmFja2Jhci1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I7XHJcblxyXG4gICAgICAgICAgICAubWRjLXNuYWNrYmFyX190ZXh0IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLXN1Y2Nlc3MtdGV4dC1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm1kYy1zbmFja2Jhcl9fYWN0aW9uLWJ1dHRvbi5rbXgtYnV0dG9uLS10ZXJ0aWFyeS13aGl0ZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGtteC10aGVtZS1zbmFja2Jhci1zdWNjZXNzLWFjdGlvbi1idXR0b24tY29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBrbXgtY29sb3IoJ3NsYXRlJywgMjAwLCAwLjcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLXN1Y2Nlc3MtYWN0aW9uLWJ1dHRvbi1jb2xvcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS13YXJuaW5nIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjtcclxuXHJcbiAgICAgICAgLm1kYy1zbmFja2Jhcl9fdGV4dCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAka214LXRoZW1lLXNuYWNrYmFyLXdhcm5pbmctdGV4dC1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZGMtdGhlbWUtLWRhcmsgJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRrbXgtdGhlbWUtc25hY2tiYXItd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgLm1kYy1zbmFja2Jhcl9fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGtteC10aGVtZS1zbmFja2Jhci13YXJuaW5nLXRleHQtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tbXVsdGlsaW5lIHtcclxuICAgICAgICAubWRjLXNuYWNrYmFyX190ZXh0IHtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg3Mik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ua214LXNuYWNrYmFyIHtcclxuICAgIEBleHRlbmQgLm1kYy1zbmFja2JhcjtcclxuXHJcbiAgICB6LWluZGV4OiA5OTA7XHJcbn1cclxuIiwiQGltcG9ydCAnfkBrbXgvbGVnb3MtdXRpbGl0aWVzL3NyYy9zdmcvbWl4aW5zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvbWl4aW5zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcblxyXG4ua214LXN0b3JlLWxpc3QtaWNvbiB7XHJcbiAgICBAaW5jbHVkZSBrbXgtc3ZnLWljb247XHJcblxyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDkwMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICBmb250LWZhbWlseTogJGtteC10eXBvZ3JhcGh5LWZvbnQtbWFpbjtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4gICAgaGVpZ2h0OiBzaXplKCdsJyk7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiBzaXplKCdsJyk7XHJcblxyXG4gICAgLnN2Zy1pY29uIHtcclxuICAgICAgICBoZWlnaHQ6IHNpemUoJ20nKTtcclxuICAgICAgICB3aWR0aDogc2l6ZSgnbScpO1xyXG4gICAgfVxyXG5cclxuICAgICYtLWZhdm9yaXRlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBrbXgtY29sb3IoJ3llbGxvdycsIDYwMCk7XHJcblxyXG4gICAgICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy11dGlsaXRpZXMvc3JjL3N2Zy9taXhpbnMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3NwYWNpbmcvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvdmFyaWFibGVzJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvbWl4aW5zJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Zvcm1zL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXN0b3JlLWxhYmVsL3NyYy9pbmRleCc7XHJcblxyXG4ua214LXN0b3Jlcy1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4ua214LXN0b3Jlcy1saXN0LWl0ZW0ge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGtteC1jb2xvcignc2xhdGUnLCAyMDApO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBtaW4td2lkdGg6IDMyMHB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDYwMCwgJEtNWC1GT1JNLUlOUFVULVJJUFBMRS1IT1ZFUi1PUEFDSVRZKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmX195b3VyLXN0b3JlLWxhYmVsIHtcclxuICAgICAgICBwYWRkaW5nOiBzaXplKCdtJykgc2l6ZSgnMnhsJykgMDtcclxuICAgIH1cclxuXHJcbiAgICAmX19saW5rIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgLmtteC1zdG9yZS1saXN0LWljb24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHNpemUoJ3MnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGtteC1zdmctYmFzZTtcclxuXHJcbiAgICAgICAgLnN2Zy1pY29uLXdyYXBwZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogc2l6ZSgnbCcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbmZvIHtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbmFtZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1kaXNwbGF5LTIoKTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYWRkcmVzcyB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1ib2R5LTIoa214LWNvbG9yKCdzbGF0ZScsIDkwMCkpO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBzaXplKCdzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGlzdGFuY2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIHR5cGUtYm9keS0xKCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1ib2R5LTIoKTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYXJyb3ctcmlnaHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1zdmctaWNvbjtcclxuXHJcbiAgICAgICAgLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcignYmx1ZScsIDkwMCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogc2l6ZSgnbCcpO1xyXG4gICAgICAgICAgICB3aWR0aDogc2l6ZSgnbCcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19hY3Rpb25zIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcGFkZGluZzogc2l6ZSgneHMnKSBzaXplKCcyeGwnKSBzaXplKCdsJyk7XHJcblxyXG4gICAgICAgIC5rbXgtYnV0dG9uIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogc2l6ZSgnbScpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19waG9uZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1ib2R5LTIoKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19sYWJlbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1ib2R5LTEoKTtcclxuICAgICAgICBAaW5jbHVkZSBrbXgtc3ZnLWJhc2U7XHJcbiAgICAgICAgQGluY2x1ZGUga214LXN2Zy1pY29uO1xyXG5cclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHNpemUoJ3MnKTtcclxuXHJcbiAgICAgICAgLnN2Zy1pY29uLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBzaXplKCdzJyk7XHJcbiAgICAgICAgICAgIHdpZHRoOiBzaXplKCdsJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3ZnLWljb24ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHNpemUoJ2wnKTtcclxuICAgICAgICAgICAgd2lkdGg6IHNpemUoJ2wnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLWJ1eWluZy1jZW50ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdncmVlbicsIDYwMCk7XHJcblxyXG4gICAgICAgICAgICAuc3ZnLWljb24ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcignZ3JlZW4nLCA2MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1uZXctY2FyLXNhbGVzLFxyXG4gICAgICAgICYtLW9wZW5pbmctc29vbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApO1xyXG5cclxuICAgICAgICAgICAgLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBrbXgtY29sb3IoJ2JsdWUnLCA2MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1zdG9yZS13YXJuaW5nIHtcclxuICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcigncmVkJywgNjAwKTtcclxuXHJcbiAgICAgICAgICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdyZWQnLCA2MDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXJlZ2lvbiB7XHJcbiAgICAgICAgLmtteC1zdG9yZXMtbGlzdC1pdGVtX19saW5rIHtcclxuICAgICAgICAgICAgcGFkZGluZzogc2l6ZSgnbScpO1xyXG5cclxuICAgICAgICAgICAgLnN2Zy1pY29uLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXN0b3JlIHtcclxuICAgICAgICAua214LXN0b3Jlcy1saXN0LWl0ZW1fX3lvdXItc3RvcmUtbGFiZWwgKyAua214LXN0b3Jlcy1saXN0LWl0ZW1fX2xpbmsge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5rbXgtc3RvcmVzLWxpc3QtaXRlbV9fbGluayB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHNpemUoJ20nKSBzaXplKCdtJykgc2l6ZSgneHMnKSBzaXplKCdtJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9lbGV2YXRpb24vbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL2NvbW1vblwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi5tZGMtc3dpdGNoIHtcbiAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9uLXRyYWNrLWNvbG9yKCRtZGMtc3dpdGNoLWJhc2VsaW5lLXRoZW1lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9uLXRodW1iLWNvbG9yKCRtZGMtc3dpdGNoLWJhc2VsaW5lLXRoZW1lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9mZi10cmFjay1jb2xvcigkbWRjLXN3aXRjaC10b2dnbGVkLW9mZi10cmFjay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1zd2l0Y2gtdG9nZ2xlZC1vZmYtdGh1bWItY29sb3IoJG1kYy1zd2l0Y2gtdG9nZ2xlZC1vZmYtdGh1bWItY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc3dpdGNoLXRvZ2dsZWQtb2ZmLXJpcHBsZS1jb2xvcigkbWRjLXN3aXRjaC10b2dnbGVkLW9mZi1yaXBwbGUtY29sb3IpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdXRsaW5lOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLm1kYy1zd2l0Y2hfX25hdGl2ZS1jb250cm9sIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24obGVmdCwgMCk7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAkbWRjLXN3aXRjaC1uYXRpdmUtY29udHJvbC13aWR0aDtcbiAgaGVpZ2h0OiAkbWRjLXN3aXRjaC10YXAtdGFyZ2V0LXNpemU7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cblxuLm1kYy1zd2l0Y2hfX3RyYWNrIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRtZGMtc3dpdGNoLXRyYWNrLXdpZHRoO1xuICBoZWlnaHQ6ICRtZGMtc3dpdGNoLXRyYWNrLWhlaWdodDtcbiAgdHJhbnNpdGlvbjpcbiAgICBtZGMtc3dpdGNoLXRyYW5zaXRpb24ob3BhY2l0eSksXG4gICAgbWRjLXN3aXRjaC10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpLFxuICAgIG1kYy1zd2l0Y2gtdHJhbnNpdGlvbihib3JkZXItY29sb3IpO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogJG1kYy1zd2l0Y2gtdHJhY2staGVpZ2h0IC8gMjtcbiAgb3BhY2l0eTogLjM4O1xufVxuXG4ubWRjLXN3aXRjaF9fdGh1bWItdW5kZXJsYXkge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLXN3aXRjaC10YXAtdGFyZ2V0LWluaXRpYWwtcG9zaXRpb24pO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2UoKTtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1yYWRpdXMtdW5ib3VuZGVkO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRtZGMtc3dpdGNoLWJhc2VsaW5lLXRoZW1lLWNvbG9yKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vIEVuc3VyZXMgdGhlIGtub2IgaXMgY2VudGVyZWQgb24gdGhlIHRyYWNrLlxuICB0b3A6IC0oKCRtZGMtc3dpdGNoLXRhcC10YXJnZXQtc2l6ZSAtICRtZGMtc3dpdGNoLXRyYWNrLWhlaWdodCkgLyAyKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAkbWRjLXN3aXRjaC10YXAtdGFyZ2V0LXNpemU7XG4gIGhlaWdodDogJG1kYy1zd2l0Y2gtdGFwLXRhcmdldC1zaXplO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb246XG4gICAgbWRjLXN3aXRjaC10cmFuc2l0aW9uKHRyYW5zZm9ybSksXG4gICAgbWRjLXN3aXRjaC10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpLFxuICAgIG1kYy1zd2l0Y2gtdHJhbnNpdGlvbihib3JkZXItY29sb3IpO1xufVxuXG4ubWRjLXN3aXRjaF9fdGh1bWIge1xuICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDIpO1xuXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAkbWRjLXN3aXRjaC10aHVtYi1kaWFtZXRlcjtcbiAgaGVpZ2h0OiAkbWRjLXN3aXRjaC10aHVtYi1kaWFtZXRlcjtcbiAgYm9yZGVyOiAkbWRjLXN3aXRjaC10aHVtYi1kaWFtZXRlciAvIDIgc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLy8gQWxsb3cgZXZlbnRzIHRvIGdvIHRocm91Z2ggdG8gdGhlIG5hdGl2ZSBjb250cm9sLCBuZWNlc3NhcnkgZm9yIElFIGFuZCBFZGdlLlxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy1zd2l0Y2gtLWNoZWNrZWQge1xuICAubWRjLXN3aXRjaF9fdHJhY2sge1xuICAgIG9wYWNpdHk6IC41NDtcbiAgfVxuXG4gIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRtZGMtc3dpdGNoLXRodW1iLWFjdGl2ZS1tYXJnaW4pO1xuXG4gICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSgkbWRjLXN3aXRjaC10aHVtYi1hY3RpdmUtbWFyZ2luKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gVHJhbnNsYXRlIHRoZSBuYXRpdmUgY29udHJvbCB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uIHNvIHRoYXQgdGhlIHRhcCB0YXJnZXQgc3RheXMgdGhlIHNhbWUuXG4gIC5tZGMtc3dpdGNoX19uYXRpdmUtY29udHJvbCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0oJG1kYy1zd2l0Y2gtdGh1bWItYWN0aXZlLW1hcmdpbikpO1xuXG4gICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJG1kYy1zd2l0Y2gtdGh1bWItYWN0aXZlLW1hcmdpbik7XG4gICAgfVxuICB9XG59XG5cbi5tZGMtc3dpdGNoLS1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IC4zODtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLm1kYy1zd2l0Y2hfX3RodW1iIHtcbiAgICBib3JkZXItd2lkdGg6IDFweDsgIC8vIEluIGhpZ2ggY29udHJhc3QgbW9kZSwgb25seSBzaG93IG91dGxpbmUgb2Yga25vYi5cbiAgfVxuXG4gIC5tZGMtc3dpdGNoX19uYXRpdmUtY29udHJvbCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5cbiRtZGMtc3dpdGNoLXRyYWNrLXdpZHRoOiAzMnB4O1xuJG1kYy1zd2l0Y2gtdHJhY2staGVpZ2h0OiAxNHB4O1xuJG1kYy1zd2l0Y2gtdGh1bWItZGlhbWV0ZXI6IDIwcHg7XG4kbWRjLXN3aXRjaC10YXAtdGFyZ2V0LXNpemU6IDQ4cHg7XG5cbi8vIEFtb3VudCB0aGUgZWRnZSBvZiB0aGUgdGh1bWIgc2hvdWxkIGJlIG9mZnNldCBmcm9tIHRoZSBlZGdlIG9mIHRoZSB0cmFjay5cbiRtZGMtc3dpdGNoLXRodW1iLW9mZnNldDogNHB4O1xuXG4vLyBQb3NpdGlvbiBmb3IgdGhlIHRhcCB0YXJnZXQgdGhhdCBjb250YWlucyB0aGUgdGh1bWIgdG8gYWxpZ24gdGhlIHRodW1iIGNvcnJlY3RseSBvZmZzZXQgZnJvbSB0aGUgdHJhY2suXG4kbWRjLXN3aXRjaC10YXAtdGFyZ2V0LWluaXRpYWwtcG9zaXRpb246XG4gIC0kbWRjLXN3aXRjaC10YXAtdGFyZ2V0LXNpemUgLyAyICsgJG1kYy1zd2l0Y2gtdGh1bWItZGlhbWV0ZXIgLyAyIC1cbiAgJG1kYy1zd2l0Y2gtdGh1bWItb2Zmc2V0O1xuXG4vLyBWYWx1ZSB0byBjb3ZlciB0aGUgd2hvbGUgc3dpdGNoIGFyZWEgKGluY2x1ZGluZyB0aGUgcmlwcGxlKSB3aXRoIHRoZSBuYXRpdmUgY29udHJvbC5cbiRtZGMtc3dpdGNoLW5hdGl2ZS1jb250cm9sLXdpZHRoOlxuICAkbWRjLXN3aXRjaC10cmFjay13aWR0aCArXG4gICgkbWRjLXN3aXRjaC10YXAtdGFyZ2V0LXNpemUgLSAkbWRjLXN3aXRjaC10aHVtYi1kaWFtZXRlcikgK1xuICAkbWRjLXN3aXRjaC10aHVtYi1vZmZzZXQgKiAyO1xuXG4kbWRjLXN3aXRjaC10aHVtYi1hY3RpdmUtbWFyZ2luOiAkbWRjLXN3aXRjaC10cmFjay13aWR0aCAtICRtZGMtc3dpdGNoLXRodW1iLWRpYW1ldGVyICsgJG1kYy1zd2l0Y2gtdGh1bWItb2Zmc2V0ICogMjtcblxuJG1kYy1zd2l0Y2gtdG9nZ2xlZC1vZmYtdGh1bWItY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpO1xuJG1kYy1zd2l0Y2gtdG9nZ2xlZC1vZmYtdHJhY2stY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpO1xuJG1kYy1zd2l0Y2gtdG9nZ2xlZC1vZmYtcmlwcGxlLWNvbG9yOiAjOWU5ZTllO1xuJG1kYy1zd2l0Y2gtZGlzYWJsZWQtdGh1bWItY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpO1xuJG1kYy1zd2l0Y2gtZGlzYWJsZWQtdHJhY2stY29sb3I6IG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpO1xuXG4kbWRjLXN3aXRjaC1iYXNlbGluZS10aGVtZS1jb2xvcjogc2Vjb25kYXJ5O1xuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuW2NsYXNzXj0na214LXR5cG9ncmFwaHktLWxhYmVsLSddICsgLmtteC1zd2l0Y2gsXHJcbi5rbXgtdHlwb2dyYXBoeS0tbGFiZWwtbGcgKyAua214LXN3aXRjaCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcclxufVxyXG5cclxuLmtteC1zd2l0Y2ggKyBbY2xhc3NePSdrbXgtdHlwb2dyYXBoeS0tbGFiZWwtJ10ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7XHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuLmtteC1mb3JtLWZpZWxkIHtcclxuICAgIC5rbXgtdHlwb2dyYXBoeS0tbGFiZWwtbGcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDdweDtcclxuICAgIH1cclxuICAgIC5rbXgtdHlwb2dyYXBoeS0tbGFiZWwtc20ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL3N3aXRjaC9tZGMtc3dpdGNoJztcclxuQGltcG9ydCAnLi9sYWJlbCc7XHJcblxyXG4ubWRjLXN3aXRjaCB7XHJcbiAgICAvLyBUb2dnbGVkIE9mZlxyXG4gICAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9mZi10cmFjay1jb2xvcigka214LXN3aXRjaC10b2dnbGVkLW9mZi10cmFjay1jb2xvcik7XHJcbiAgICBAaW5jbHVkZSBtZGMtc3dpdGNoLXRvZ2dsZWQtb2ZmLXRodW1iLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb2ZmLXRodW1iLWNvbG9yKTtcclxuICAgIEBpbmNsdWRlIG1kYy1zd2l0Y2gtdG9nZ2xlZC1vZmYtcmlwcGxlLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb2ZmLXJpcHBsZS1jb2xvcik7XHJcblxyXG4gICAgLy8gVG9nZ2xlZCBPblxyXG4gICAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9uLXRyYWNrLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb24tdHJhY2stY29sb3IpO1xyXG4gICAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9uLXRodW1iLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb24tdGh1bWItY29sb3IpO1xyXG4gICAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9uLXJpcHBsZS1jb2xvcigka214LXN3aXRjaC10b2dnbGVkLW9uLXJpcHBsZS1jb2xvcik7XHJcblxyXG4gICAgJi5tZGMtc3dpdGNoLS1kaXNhYmxlZCB7XHJcbiAgICAgICAgLy8gVG9nZ2xlZCBPZmZcclxuICAgICAgICBAaW5jbHVkZSBtZGMtc3dpdGNoLXRvZ2dsZWQtb2ZmLXRyYWNrLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb2ZmLWRpc2FibGVkLXRyYWNrLWNvbG9yKTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtc3dpdGNoLXRvZ2dsZWQtb2ZmLXRodW1iLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb2ZmLWRpc2FibGVkLXRodW1iLWNvbG9yKTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtc3dpdGNoLXRvZ2dsZWQtb2ZmLXJpcHBsZS1jb2xvcigka214LXN3aXRjaC10b2dnbGVkLW9mZi1kaXNhYmxlZC1yaXBwbGUtY29sb3IpO1xyXG5cclxuICAgICAgICAvLyBUb2dnbGVkIE9uXHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLXN3aXRjaC10b2dnbGVkLW9uLXRyYWNrLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb24tZGlzYWJsZWQtdHJhY2stY29sb3IpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1kYy1zd2l0Y2gtdG9nZ2xlZC1vbi10aHVtYi1jb2xvcigka214LXN3aXRjaC10b2dnbGVkLW9uLWRpc2FibGVkLXRodW1iLWNvbG9yKTtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtc3dpdGNoLXRvZ2dsZWQtb24tcmlwcGxlLWNvbG9yKCRrbXgtc3dpdGNoLXRvZ2dsZWQtb24tZGlzYWJsZWQtcmlwcGxlLWNvbG9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLmtteC1zd2l0Y2gge1xyXG4gICAgQGV4dGVuZCAubWRjLXN3aXRjaDtcclxuXHJcbiAgICAmLm1kYy1zd2l0Y2gtLWRpc2FibGVkIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZGMtc3dpdGNoX190cmFjayB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAubWRjLXN3aXRjaF9fdGh1bWIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDJweCBrbXgtY29sb3IoJ3NsYXRlJywgOTAwLCAwLjE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLm1kYy1zd2l0Y2gtLWNoZWNrZWQsXHJcbiAgICAmOm5vdCgubWRjLXN3aXRjaC0tY2hlY2tlZCkge1xyXG4gICAgICAgIC5tZGMtc3dpdGNoX190aHVtYi11bmRlcmxheSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgIHRvcDogLTEzcHg7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmZvY3VzOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBicmluZyB0aGUgc3dpdGNoIGNvbXBvbmVudCBpbnRvIHZlcnRpY2FsIGFsaWdubWVudCB3aXRoIHRoZSBvdGhlciBmb3JtIGNvbXBvbmVudHM6XHJcbltjbGFzc149J2tteC1mb3JtLWZpZWxkJ10ge1xyXG4gICAgLmtteC1zd2l0Y2gge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHNpemUoJ3MnKTtcclxuICAgIH1cclxuICAgICsgLmtteC1zd2l0Y2gge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBzcGFjaW5nIG1vZGlmaWNhdGlvbiB0byBTd2l0Y2gsIHNvIGl0IGFuZCBpdHMgbGFiZWwgYXJlIHZpc3VhbGx5IGFsaWduZWQgd2hlbiBzaXR1YXRlZCB2ZXJ0aWNhbGx5OlxyXG4ua214LWZvcm0tZmllbGQtLXN0YWNrZWQge1xyXG4gICAgPiAua214LXN3aXRjaCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi9taXhpbnMnO1xyXG5cclxuLmtteC10YWJsZSB7XHJcbiAgICBAaW5jbHVkZSBrbXgtdGFibGUtY29yZSgpO1xyXG5cclxuICAgICYtLWFsaWduLWxlZnQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAmLS1mdWxsLXdpZHRoIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2Z1bmN0aW9ucyc7XHJcblxyXG5AbWl4aW4ga214LXRhYmxlLWNvcmUoKSB7XHJcbiAgICAkdGFibGUtYm9yZGVyLXN0eWxlOiAxcHggc29saWQga214LWNvbG9yKCdzbGF0ZScsIDMwMCk7XHJcbiAgICAkdGFibGUtaC1wYWRkaW5nOiBzaXplKCdtJyk7XHJcbiAgICAkdGFibGUtaWNvbi1zcXVhcmU6IHNpemUoJ2wnKTtcclxuICAgICR0YWJsZS1yb3ctaGVpZ2h0OiBzaXplKCcyeGwnKTtcclxuICAgICR0YWJsZS10eHQtY29sb3I6IGtteC1jb2xvcignc2xhdGUnLCA2MDApO1xyXG4gICAgJHRhYmxlLXYtcGFkZGluZzogKCR0YWJsZS1oLXBhZGRpbmcgLyAyKTtcclxuXHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB3aWR0aDogYXV0bztcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuICAgIGNhcHRpb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIHR5cGUtaGVhZGxpbmUtMygpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgdGQsXHJcbiAgICB0aCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHlwZS1ib2R5LTEoJHRhYmxlLXR4dC1jb2xvcik7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC13ZWlnaHQoJ3JlZ3VsYXInKTtcclxuXHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkdGFibGUtaC1wYWRkaW5nO1xyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICR0YWJsZS1oLXBhZGRpbmc7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0ZCB7XHJcbiAgICAgICAgLmljb24tdGQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdibHVlJywgOTAwKTtcclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAkdGFibGUtaWNvbi1zcXVhcmU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICR0YWJsZS1pY29uLXNxdWFyZTtcclxuICAgICAgICAgICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLm5vIHtcclxuICAgICAgICAgICAgY29sb3I6IGtteC1jb2xvcigncmVkJywgNjAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi55ZXMge1xyXG4gICAgICAgICAgICBjb2xvcjoga214LWNvbG9yKCdncmVlbicsIDYwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoZWFkIHtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgdHI6bm90KC56ZXJvLWhlaWdodCkge1xyXG4gICAgICAgICAgICBoZWlnaHQ6ICgkdGFibGUtcm93LWhlaWdodCAtIHJlbS1jYWxjKDIwKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHR5cGUtYm9keS0yKCR0YWJsZS10eHQtY29sb3IpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgICAgICAgICAgLnZpc3VhbGx5LWhpZGRlbiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGJvZHkge1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlci1zdHlsZTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAkdGFibGUtcm93LWhlaWdodDtcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGZvb3Qge1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci1zdHlsZTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogJHRhYmxlLXJvdy1oZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC13ZWlnaHQoJ2JvbGQnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbn1cclxuIiwiLmtteC10YWJfX2NvbnRlbnQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLS1hY3RpdmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4gKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbiAqIFRIRSBTT0ZUV0FSRS5cbiAqL1xuXG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGFiLWJhclxuXG4ubWRjLXRhYi1iYXIge1xuICBAaW5jbHVkZSBtZGMtdGFiLWJhci13aWR0aCgxMDAlKTtcbn1cblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbiIsIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4gKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbiAqIFRIRSBTT0ZUV0FSRS5cbiAqL1xuXG5AbWl4aW4gbWRjLXRhYi1iYXItd2lkdGgoJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG59XG4iLCIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4gKiBUSEUgU09GVFdBUkUuXG4gKi9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RhYi9taXhpbnNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGFiLXNjcm9sbGVyXG4ubWRjLXRhYi1zY3JvbGxlciB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLy8gU2VsZWN0b3IgZm9yIHRlc3QgZWxlbWVudCB1c2VkIHRvIGZlYXR1cmUtZGV0ZWN0IGhvcml6b250YWwgc2Nyb2xsYmFyIGhlaWdodFxuLm1kYy10YWItc2Nyb2xsZXJfX3Rlc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBvdmVyZmxvdy14OiBzY3JvbGw7XG59XG5cbi5tZGMtdGFiLXNjcm9sbGVyX19zY3JvbGwtYXJlYSB7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWFyZWEsXG4ubWRjLXRhYi1zY3JvbGxlcl9fdGVzdCB7XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFRoaXMgbW9kaWZpZXIgY2xhc3Mgd2lsbCBiZSBhZGRlZCBpbiBKUyBhZnRlciBjb21wdXRpbmcgdGhlIE9TIHNjcm9sbGJhciBzaXplIGluIG9yZGVyIHRvIGhpZGUgdGhlIHNjcm9sbGJhci5cbi5tZGMtdGFiLXNjcm9sbGVyX19zY3JvbGwtYXJlYS0tc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xufVxuXG4ubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWNvbnRlbnQge1xuICBAaW5jbHVkZSBtZGMtdGFiLXBhcmVudC1wb3NpdGlvbmluZztcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDAgYXV0bztcbiAgdHJhbnNmb3JtOiBub25lO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuXG4ubWRjLXRhYi1zY3JvbGxlci0tYWxpZ24tc3RhcnQgLm1kYy10YWItc2Nyb2xsZXJfX3Njcm9sbC1jb250ZW50IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4ubWRjLXRhYi1zY3JvbGxlci0tYWxpZ24tZW5kIC5tZGMtdGFiLXNjcm9sbGVyX19zY3JvbGwtY29udGVudCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5tZGMtdGFiLXNjcm9sbGVyLS1hbGlnbi1jZW50ZXIgLm1kYy10YWItc2Nyb2xsZXJfX3Njcm9sbC1jb250ZW50IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5tZGMtdGFiLXNjcm9sbGVyLS1hbmltYXRpbmcgLm1kYy10YWItc2Nyb2xsZXJfX3Njcm9sbC1hcmVhIHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IGF1dG87XG59XG5cbi5tZGMtdGFiLXNjcm9sbGVyLS1hbmltYXRpbmcgLm1kYy10YWItc2Nyb2xsZXJfX3Njcm9sbC1jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogMjUwbXMgdHJhbnNmb3JtICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbn1cblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcblxuLy8gUHVibGljIG1peGluc1xuXG5AbWl4aW4gbWRjLXRhYi10ZXh0LWxhYmVsLWNvbG9yKCRjb2xvcikge1xuICAubWRjLXRhYl9fdGV4dC1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10YWItaWNvbi1jb2xvcigkY29sb3IpIHtcbiAgLm1kYy10YWJfX2ljb24ge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGFiLXBhcmVudC1wb3NpdGlvbmluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1peGluIG1kYy10YWItZml4ZWQtd2lkdGgoJHdpZHRoKSB7XG4gIGZsZXg6IDAgMSAkd2lkdGg7XG59XG4iLCIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4gKiBUSEUgU09GVFdBUkUuXG4gKi9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGFiLWluZGljYXRvclxuXG4ubWRjLXRhYi1pbmRpY2F0b3Ige1xuICBAaW5jbHVkZSBtZGMtdGFiLWluZGljYXRvci11bmRlcmxpbmUtY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy10YWItaW5kaWNhdG9yLXVuZGVybGluZS1oZWlnaHQoMnB4KTtcbiAgQGluY2x1ZGUgbWRjLXRhYi1pbmRpY2F0b3ItaWNvbi1jb2xvcihzZWNvbmRhcnkpO1xuICBAaW5jbHVkZSBtZGMtdGFiLWluZGljYXRvci1pY29uLWhlaWdodCgzNHB4KTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQtLWljb24ge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ubWRjLXRhYi1pbmRpY2F0b3ItLWFjdGl2ZSA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8vIFNsaWRlIGJ5IGRlZmF1bHRcbi5tZGMtdGFiLWluZGljYXRvciA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIHRyYW5zaXRpb246IDI1MG1zIHRyYW5zZm9ybSAkbWRjLWFuaW1hdGlvbi1zdGFuZGFyZC1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG59XG5cbi8vIC0tbm8tdHJhbnNpdGlvbiBpcyBhcHBsaWVkIGluIGNhc2VzIHdoZXJlIHN0eWxlcyBuZWVkIHRvIGJlIGFwcGxpZWQgaW1tZWRpYXRlbHkgdG8gc2V0IHVwIGEgdHJhbnNpdGlvblxuLm1kYy10YWItaW5kaWNhdG9yLS1uby10cmFuc2l0aW9uID4gLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLm1kYy10YWItaW5kaWNhdG9yLS1mYWRlID4gLm1kYy10YWItaW5kaWNhdG9yX19jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogMTUwbXMgb3BhY2l0eSBsaW5lYXI7XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4ubWRjLXRhYi1pbmRpY2F0b3ItLWFjdGl2ZS5tZGMtdGFiLWluZGljYXRvci0tZmFkZSA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudCB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zO1xufVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4gKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4gKiB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4gKiBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbiAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuICogVEhFIFNPRlRXQVJFLlxuICovXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5cbkBtaXhpbiBtZGMtdGFiLWluZGljYXRvci1zdXJmYWNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWl4aW4gbWRjLXRhYi1pbmRpY2F0b3ItdW5kZXJsaW5lLWNvbG9yKCRjb2xvcikge1xuICA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGFiLWluZGljYXRvci11bmRlcmxpbmUtaGVpZ2h0KCRoZWlnaHQpIHtcbiAgPiAubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQtLXVuZGVybGluZSB7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGFiLWluZGljYXRvci11bmRlcmxpbmUtdG9wLWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0tdW5kZXJsaW5lIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGFiLWluZGljYXRvci1pY29uLWNvbG9yKCRjb2xvcikge1xuICA+IC5tZGMtdGFiLWluZGljYXRvcl9fY29udGVudC0taWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10YWItaW5kaWNhdG9yLWljb24taGVpZ2h0KCRoZWlnaHQpIHtcbiAgPiAubWRjLXRhYi1pbmRpY2F0b3JfX2NvbnRlbnQtLWljb24ge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICBmb250LXNpemU6ICRoZWlnaHQ7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvY29tbW9uXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90eXBvZ3JhcGh5L21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90YWItaW5kaWNhdG9yL21peGluc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGFiXG5cbi5tZGMtdGFiIHtcbiAgQGluY2x1ZGUgbWRjLXRhYi10ZXh0LWxhYmVsLWNvbG9yKG9uLXN1cmZhY2UpO1xuICBAaW5jbHVkZSBtZGMtdGFiLWljb24tY29sb3Iob24tc3VyZmFjZSk7XG4gIEBpbmNsdWRlIG1kYy10YWItaW5kaWNhdG9yLXN1cmZhY2U7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KGJ1dHRvbik7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAwIGF1dG87XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6ICRtZGMtdGFiLWhlaWdodDtcbiAgcGFkZGluZzogMCAyNHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy10YWItLW1pbi13aWR0aCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuXG4ubWRjLXRhYl9fcmlwcGxlIHtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzKHByaW1hcnkpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWRjLXRhYl9fY29udGVudCB7XG4gIEBpbmNsdWRlIG1kYy10YWItaW5kaWNhdG9yLXN1cmZhY2U7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtdGFiX190ZXh0LWxhYmVsLFxuLm1kYy10YWJfX2ljb24ge1xuICB0cmFuc2l0aW9uOiAxNTBtcyBjb2xvciBsaW5lYXIsIDE1MG1zIG9wYWNpdHkgbGluZWFyO1xuICB6LWluZGV4OiAyO1xufVxuXG4ubWRjLXRhYl9fdGV4dC1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3BhY2l0eTogJG1kYy10YWItdGV4dC1sYWJlbC1vcGFjaXR5O1xuICAvLyBTZXR0aW5nIGxpbmUtaGVpZ2h0IGhlcmUgb3ZlcnJpZGVzIHRoZSBsaW5lLWhlaWdodCBmcm9tIHRoZSB0eXBvZ3JhcGh5XG4gIC8vIG1peGluIGFib3ZlLiBUaGUgbGluZS1oZWlnaHQgbmVlZHMgdG8gYmUgb3ZlcnJpZGRlbiBzbyB0aGF0IHRoZSBzcGFjaW5nXG4gIC8vIGJldHdlZW4gdGhlIHRleHQgbGFiZWwgYW5kIHRoZSBpY29uIGFzIHdlbGwgYXMgdGhlIHRleHQgbGFiZWwgYW5kIHRoZVxuICAvLyBib3R0b20gb2YgdGhlIHRhYiByZW1haW4gdGhlIHNhbWUuXG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubWRjLXRhYl9faWNvbiB7XG4gIHdpZHRoOiAkbWRjLXRhYi1pY29uLXNpemU7XG4gIGhlaWdodDogJG1kYy10YWItaWNvbi1zaXplO1xuICBvcGFjaXR5OiAkbWRjLXRhYi1pY29uLW9wYWNpdHk7XG59XG5cbi5tZGMtdGFiLS1zdGFja2VkIHtcbiAgaGVpZ2h0OiAkbWRjLXRhYi1zdGFja2VkLWhlaWdodDtcbn1cblxuLm1kYy10YWItLXN0YWNrZWQgLm1kYy10YWJfX2NvbnRlbnQge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5tZGMtdGFiLS1zdGFja2VkIC5tZGMtdGFiX19pY29uIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG59XG5cbi5tZGMtdGFiLS1zdGFja2VkIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG59XG5cbi5tZGMtdGFiLS1hY3RpdmUge1xuICBAaW5jbHVkZSBtZGMtdGFiLXRleHQtbGFiZWwtY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy10YWItaWNvbi1jb2xvcihwcmltYXJ5KTtcblxuICAubWRjLXRhYl9fdGV4dC1sYWJlbCxcbiAgLm1kYy10YWJfX2ljb24ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLm1kYy10YWI6bm90KC5tZGMtdGFiLS1zdGFja2VkKSAubWRjLXRhYl9faWNvbiArIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KHBhZGRpbmcsIGxlZnQsIDhweCk7XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Ly9cbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuLy9cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtdGFiLWljb24tc2l6ZTogMjRweDtcbiRtZGMtdGFiLWhlaWdodDogNDhweDtcbiRtZGMtdGFiLXN0YWNrZWQtaGVpZ2h0OiA3MnB4O1xuJG1kYy10YWItdGV4dC1sYWJlbC1vcGFjaXR5OiAuNjtcbiRtZGMtdGFiLWljb24tb3BhY2l0eTogLjU0O1xuIiwiQGltcG9ydCAnLi90YWItYmFyLWNvbnRlbnQnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvdGFiLWJhci9tZGMtdGFiLWJhcic7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvdGFiLXNjcm9sbGVyL21kYy10YWItc2Nyb2xsZXInO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL3RhYi1pbmRpY2F0b3IvbWRjLXRhYi1pbmRpY2F0b3InO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL3RhYi9tZGMtdGFiJztcclxuQGltcG9ydCAnfkBtYXRlcmlhbC90aGVtZS9taXhpbnMnO1xyXG5cclxuLmtteC10YWItYmFyIHtcclxuICAgIC5rbXgtdGFiIHtcclxuICAgICAgICBAaW5jbHVkZSBtZGMtdGFiLXRleHQtbGFiZWwtY29sb3Ioa214LWNvbG9yKCdzbGF0ZScsIDYwMCkpO1xyXG4gICAgICAgIC5tZGMtdGFiX190ZXh0LWxhYmVsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHlwZS1ib2R5LTIoKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZGMtdGFiLWljb24tY29sb3Ioa214LWNvbG9yKCdzbGF0ZScsIDYwMCkpO1xyXG4gICAgICAgIC5tZGMtdGFiX19pY29uIHtcclxuICAgICAgICAgICAgZmlsbDoga214LWNvbG9yKCdzbGF0ZScsIDYwMCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWRjLXRhYi1pbmRpY2F0b3Ige1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtdGFiLWluZGljYXRvci11bmRlcmxpbmUtaGVpZ2h0KDJweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWRjLXRhYl9fcmlwcGxlIHtcclxuICAgICAgICAgICAgJjphZnRlcixcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjoga214LWNvbG9yKCdibHVlJywgNjAwKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4wODtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMjQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWRjLXRhYi0tYWN0aXZlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWRjLXRhYi10ZXh0LWxhYmVsLWNvbG9yKGtteC1jb2xvcignYmx1ZScsIDkwMCkpO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWRjLXRhYi1pY29uLWNvbG9yKGtteC1jb2xvcignYmx1ZScsIDkwMCkpO1xyXG4gICAgICAgICAgICAubWRjLXRhYl9faWNvbiB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBrbXgtY29sb3IoJ2JsdWUnLCA5MDApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubWRjLXRhYi1pbmRpY2F0b3Ige1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWRjLXRhYi1pbmRpY2F0b3ItdW5kZXJsaW5lLWNvbG9yKGtteC1jb2xvcignYmx1ZScsIDkwMCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWRjLXRoZW1lLS1kYXJrICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtdGFiLXRleHQtbGFiZWwtY29sb3Ioa214LWNvbG9yKCdibHVlJywgMzAwKSk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtdGFiLWljb24tY29sb3Ioa214LWNvbG9yKCdibHVlJywgMzAwKSk7XHJcbiAgICAgICAgICAgIC5tZGMtdGFiX19pY29uIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IGtteC1jb2xvcignYmx1ZScsIDMwMCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5tZGMtdGFiX19yaXBwbGUge1xyXG4gICAgICAgICAgICAgICAgJjphZnRlcixcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYubWRjLXRhYi0tYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1kYy10YWItdGV4dC1sYWJlbC1jb2xvcigkd2hpdGUpO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1kYy10YWItaWNvbi1jb2xvcigkd2hpdGUpO1xyXG4gICAgICAgICAgICAgICAgLm1kYy10YWJfX2ljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubWRjLXRhYi1pbmRpY2F0b3Ige1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1kYy10YWItaW5kaWNhdG9yLXVuZGVybGluZS1jb2xvcigkd2hpdGUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmRpc2FibGVkLFxyXG4gICAgICAgIC5tZGMtdGhlbWUtLWRhcmsgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogdW5zZXQ7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtdGFiLXRleHQtbGFiZWwtY29sb3Ioa214LWNvbG9yKCdzbGF0ZScsIDQwMCkpO1xyXG5cclxuICAgICAgICAgICAgLm1kYy10YWItaW5kaWNhdG9yIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1kYy10YWItaW5kaWNhdG9yLXVuZGVybGluZS1jb2xvcihrbXgtY29sb3IoJ3NsYXRlJywgMjAwKSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5tZGMtdGFiX19yaXBwbGUge1xyXG4gICAgICAgICAgICAgICAgJjphZnRlcixcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi1zY3JvbGxlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgICAgICAmX19idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubWRjLXRhYi1zY3JvbGxlcl9fc2Nyb2xsLWFyZWEge1xyXG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4uL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS9taXhpbnNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGV4dC1maWVsZC1oZWxwZXItdGV4dFxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShjYXB0aW9uKTtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtdG9wKDE2cHgpO1xuXG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogbWRjLXRleHQtZmllbGQtdHJhbnNpdGlvbihvcGFjaXR5KTtcbiAgb3BhY2l0eTogMDtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tcGVyc2lzdGVudCB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpbGwtY2hhbmdlOiBpbml0aWFsO1xufVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2ljb246bm90KFt0YWJpbmRleF0pLFxuLm1kYy10ZXh0LWZpZWxkX19pY29uW3RhYmluZGV4PVwiLTFcIl0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi8vXG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi8vXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmxvYXRpbmctbGFiZWwvbWRjLWZsb2F0aW5nLWxhYmVsXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2xpbmUtcmlwcGxlL21kYy1saW5lLXJpcHBsZVwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ub3RjaGVkLW91dGxpbmUvbWRjLW5vdGNoZWQtb3V0bGluZVwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvY29tbW9uXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIi4vaGVscGVyLXRleHQvbWRjLXRleHQtZmllbGQtaGVscGVyLXRleHRcIjtcbkBpbXBvcnQgXCIuL2ljb24vbWRjLXRleHQtZmllbGQtaWNvblwiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGV4dC1maWVsZFxuXG4ubWRjLXRleHQtZmllbGQge1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2U7XG4gIC8vIFRleHQgRmllbGQgaW50ZW50aW9uYWxseSBvbWl0cyBwcmVzcyByaXBwbGUsIHNvIGVhY2ggc3RhdGUgbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGluZGl2aWR1YWxseS5cbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1iYXNlLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1pbmstY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWhvdmVyLW9wYWNpdHkobWRjLXN0YXRlcy1vcGFjaXR5KCRtZGMtdGV4dC1maWVsZC1pbmstY29sb3IsIGhvdmVyKSk7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtZm9jdXMtb3BhY2l0eShtZGMtc3RhdGVzLW9wYWNpdHkoJG1kYy10ZXh0LWZpZWxkLWluay1jb2xvciwgZm9jdXMpKTtcbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1yYWRpdXMtYm91bmRlZDtcblxuICAvLyBTaGFwZVxuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1jb3JuZXItcmFkaXVzKCRtZGMtdGV4dC1maWVsZC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBDb2xvcnNcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGFiZWwtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWxhYmVsKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaW5rLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1pbmstY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1jYXJldC1jb2xvcihwcmltYXJ5KTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtYm90dG9tLWxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWJvdHRvbS1saW5lLWlkbGUpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ob3Zlci1ib3R0b20tbGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtYm90dG9tLWxpbmUtaG92ZXIpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1saW5lLXJpcHBsZS1jb2xvcl8ocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaWNvbi1jb2xvcigkbWRjLXRleHQtZmllbGQtaWNvbi1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZpbGwtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWJhY2tncm91bmQpO1xuXG4gIC8vIEZsb2F0aW5nIExhYmVsXG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZsb2F0aW5nLWxhYmVsXztcbiAgLy8gVGhlIGZvbGxvd2luZyBtaXhpbnMgd2lsbCBiZSByZW1vdmVkIGFmdGVyIHNlbGVjdCBpcyB1cGRhdGVkIHRvIGRlZmF1bHQgdG8gdGhlIGJveC5cbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWZsb2F0LXBvc2l0aW9uKCRtZGMtdGV4dC1maWVsZC1sYWJlbC1wb3NpdGlvbi15KTtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLWJveCk7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXModGV4dC1maWVsZC1ib3gsICRtZGMtdGV4dC1maWVsZC1sYWJlbC1wb3NpdGlvbi15KTtcblxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yO1xuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24obGVmdCwgMTJweCk7XG5cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoc3VidGl0bGUxKTtcblxuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweCAxMnB4IDZweDtcbiAgdHJhbnNpdGlvbjogbWRjLXRleHQtZmllbGQtdHJhbnNpdGlvbihvcGFjaXR5KTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb246IG1kYy10ZXh0LWZpZWxkLXRyYW5zaXRpb24oY29sb3IpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHJlZCBvdXRsaW5lIG9uIGZpcmVmb3hcbiAgJjppbnZhbGlkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4vLyBNb3ZlIGxhYmVsIHdoZW4gdGV4dC1maWVsZCBnZXRzIGF1dG8tZmlsbGVkIGluIENocm9tZS5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCArIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoLjc1KTtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZWRfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZm9jdXNlZF87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGlzYWJsZWRfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXdpdGgtbGVhZGluZy1pY29uXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC13aXRoLWxlYWRpbmctaWNvbl87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLXdpdGgtbGVhZGluZy1pY29uXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC13aXRoLXRyYWlsaW5nLWljb25fO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbixcbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBib3R0b206IDE2cHg7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjgpO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2Uge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1kZW5zZS13aXRoLWxlYWRpbmctaWNvbl87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWRlbnNlLXdpdGgtdHJhaWxpbmctaWNvbl87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2Uge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1kZW5zZV87XG59XG5cbkBpbmNsdWRlIG1kYy1yZXF1aXJlZC10ZXh0LWZpZWxkLWxhYmVsLWFzdGVyaXNrXyB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiKlwiO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtdGV4dGFyZWFfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aF87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWludmFsaWRfO1xufVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSB0ZXh0LWZpZWxkLWhlbHBlci10ZXh0XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAubWRjLXRleHQtZmllbGQtLWRlbnNlICsgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICB9XG5cbiAgLm1kYy10ZXh0LWZpZWxkICsgJiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICB9XG5cbiAgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCArICYge1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1lbmFibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG5cbi8vIG1kYy1mb3JtLWZpZWxkIHR3ZWFrcyB0byBhbGlnbiB0ZXh0IGZpZWxkIGxhYmVsIGNvcnJlY3RseVxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGVcbi5tZGMtZm9ybS1maWVsZCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGVcblxuLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZm9jdXNlZF87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1zdHJva2UtY29sb3IocHJpbWFyeSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWludmFsaWRfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtaW52YWxpZF87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1pbnZhbGlkXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1kaXNhYmxlZF87XG59XG5cbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXModGV4dC1maWVsZC1kZW5zZSwgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksIDAlLCAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtc2NhbGUpO1xuQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyh0ZXh0LWZpZWxkLW91dGxpbmVkLCAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teSk7XG5AaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2Uta2V5ZnJhbWVzKHRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UsICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZS1sYWJlbC1wb3NpdGlvbi15LCAwJSwgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlKTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXModGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24sICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1sYWJlbC1wb3NpdGlvbi15LCAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teCk7XG5AaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2Uta2V5ZnJhbWVzKHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLCAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UtbGFiZWwtcG9zaXRpb24teSwgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLXdpdGgtbGVhZGluZy1pY29uLWxhYmVsLXBvc2l0aW9uLXgsICRtZGMtdGV4dC1maWVsZC1kZW5zZS1sYWJlbC1zY2FsZSk7XG5AaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2Uta2V5ZnJhbWVzKHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCwgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXksIC0kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teCk7XG5AaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2Uta2V5ZnJhbWVzKHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCwgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksIC0kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teCwgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlKTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXModGV4dGFyZWEsICRtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1sYWJlbC1wb3NpdGlvbi15LCAwJSwgJG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWxhYmVsLXNjYWxlKTtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9mbG9hdGluZy1sYWJlbC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvbGluZS1yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL25vdGNoZWQtb3V0bGluZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiaGVscGVyLXRleHQvbWl4aW5zXCI7XG5AaW1wb3J0IFwiaWNvbi9taXhpbnNcIjtcbkBpbXBvcnQgXCJpY29uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1jb3JuZXItcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cyAkcmFkaXVzIDAgMDtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWNvcm5lci1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIC8vIEJvdHRvbSBjb3JuZXJzIGFyZSBzcXVhcmUgdG8gcHJldmVudCB3ZWlyZCBlZGdlIGNhc2VzXG4gICAgLy8gd2hlcmUgdGV4dCB3b3VsZCBiZSB2aXNpYmxlIG91dHNpZGUgb2YgdGhlIGN1cnZlLlxuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXMgJHJhZGl1cyAwIDA7XG4gIH1cblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICAvLyBUaGUgaW5wdXQgZWxlbWVudCBpcyByZXF1aXJlZCB0byBoYXZlIDIgcGl4ZWxzIHNoYXZlZCBvZmZcbiAgICAvLyBvZiB0aGUgcmFkaXVzIG9mIGl0cyBwYXJlbnQuIFRoaXMgcHJldmVudHMgYW4gdWdseSBzcGFjZSBvZlxuICAgIC8vIGJhY2tncm91bmQgYmV0d2VlbiB0aGUgdHdvIGJvcmRlcnMgaW4gZWFjaCBjb3JuZXIgd2hlbiB0aGVcbiAgICAvLyB0ZXh0YXJlYSBpcyBmb2N1c2VkLiBUaGlzIGFsc28gbWVhbnMgd2UgbmVlZCB0byBndWFyZCBhZ2FpbnN0XG4gICAgLy8gaW52YWxpZCBvdXRwdXQuXG4gICAgYm9yZGVyLXJhZGl1czogbWF4KCRyYWRpdXMgLSAyLCAwKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtaW5rLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaW5rLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1maWxsLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtc3Ryb2tlLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtc3Ryb2tlLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1maWxsLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtZmlsbC1jb2xvcl8oJGNvbG9yKTtcblxuICAgIC8vIEF1dG9tYXRpY2FsbHkgYWRkIGxhYmVsIGJhY2tncm91bmQgY29sb3IgdGhlIHNhbWUgY29sb3IgYXMgd2VsbCB0byBlbnN1cmVcbiAgICAvLyB0aGUgbGFiZWwgY2FuIGJlIHNlZW4gaWYgdGhlIGlucHV0IHNjcm9sbHMgYmVoaW5kIHRoZSBsYWJlbFxuICAgIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWZpbGwtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtYm90dG9tLWxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1ob3Zlci1ib3R0b20tbGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItYm90dG9tLWxpbmUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWxpbmUtcmlwcGxlLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGluZS1yaXBwbGUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWxhYmVsLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGFiZWwtaW5rLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWhvdmVyLW91dGxpbmUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZvY3VzZWQtb3V0bGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZvY3VzZWQtb3V0bGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtY2FyZXQtY29sb3IoJGNvbG9yKSB7XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNhcmV0LWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbi8vIFByaXZhdGUgbWl4aW5zXG5cbi8vIEJhc2VsaW5lXG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1kaXNhYmxlZF8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1jb2xvcl8oJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWJvcmRlcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWluay1jb2xvcl8oJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWxhYmVsLWluay1jb2xvcl8oJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWxhYmVsLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtY29sb3JfKCRtZGMtdGV4dC1maWVsZC1kaXNhYmxlZC1oZWxwZXItdGV4dC1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24tY29sb3JfKCRtZGMtdGV4dC1maWVsZC1kaXNhYmxlZC1pY29uKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yXygkbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcl8oJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWJhY2tncm91bmQpO1xuXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtaW52YWxpZF8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ob3Zlci1ib3R0b20tbGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1saW5lLXJpcHBsZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1sYWJlbC1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC12YWxpZGF0aW9uLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG5cbiAgJi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1pY29uLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG4gIH1cblxuICArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZvY3VzZWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGFiZWwtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWZvY3VzZWQtbGFiZWwtY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1kYy1yZXF1aXJlZC10ZXh0LWZpZWxkLWxhYmVsLWFzdGVyaXNrXyB7XG4gICAgY29sb3I6ICRtZGMtdGV4dC1maWVsZC1lcnJvcjtcbiAgfVxuXG4gICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0Om5vdCgubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnKSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZGVuc2VfIHtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWZsb2F0LXBvc2l0aW9uKCRtZGMtdGV4dC1maWVsZC1kZW5zZS1sYWJlbC1wb3NpdGlvbi15LCAwJSwgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlKTtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLWRlbnNlKTtcblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggMDtcbiAgfVxuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogLjgxM3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXJlcXVpcmVkLXRleHQtZmllbGQtbGFiZWwtYXN0ZXJpc2tfKCkge1xuICAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkICsgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLWNvcm5lci1yYWRpdXNfKCRyYWRpdXMpIHtcbiAgLy8gTk9URTogaWRsZSBhbmQgbm90Y2hlZCBzdGF0ZSBib3JkZXIgcmFkaXVzIG1peGluc1xuICAvLyBhcmUgYnJva2VuIGludG8gMiBkaWZmZXJlbnQgbWl4aW5zLCBvdGhlcndpc2VcbiAgLy8gd2Ugd291bGQgYmUgb3Zlcmx5IHNwZWNpZmljIChiaWcgbm8sIG5vKS4gVGhlIGNhdXNlIG9mXG4gIC8vIHRoaXMgaXMgYmVjYXVzZSAubWRjLW5vdGNoZWQtb3V0bGluZSBhbmQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2lkbGVcbiAgLy8gYXJlIHNpYmxpbmdzLiAubWRjLW5vdGNoZWQtb3V0bGluZV9faWRsZSBuZWVkcyB0byBiZSBhIGNoaWxkIG9mXG4gIC8vIC5tZGMtbm90Y2hlZC1vdXRsaW5lIGluIG9yZGVyIHRvIHJlbWVkeSB0aGlzIGlzc3VlLlxuICAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1jb3JuZXItcmFkaXVzKCRyYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1pZGxlLWNvcm5lci1yYWRpdXMoJHJhZGl1cyk7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1mbG9hdGluZy1sYWJlbF8ge1xuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAxNnB4KTtcblxuICAgIGJvdHRvbTogMjBweDtcbiAgfVxuXG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgICAvLyBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtbWF4LXdpZHRoKGNhbGMoMTAwJSAtICN7JG1kYy10ZXh0LWZpZWxkLWljb24tcGFkZGluZ30pKTtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3skbWRjLXRleHQtZmllbGQtaWNvbi1wYWRkaW5nfSk7XG4gICAgfVxuICB9XG59XG5cbi8vIE91dGxpbmVkXG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kaXNhYmxlZF8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1pbmstY29sb3JfKCRtZGMtdGV4dC1maWVsZC1wbGFjZWhvbGRlcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtY29sb3JfKCRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kaXNhYmxlZC1ib3JkZXIpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1maWxsLWNvbG9yXyh0cmFuc3BhcmVudCk7XG5cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtb3V0bGluZWQtaW52YWxpZF8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWhvdmVyLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZm9jdXNlZC1vdXRsaW5lLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1mb2N1c2VkXyB7XG4gIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtc3Ryb2tlLXdpZHRoKDJweCk7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZV8ge1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksIDAlLCAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtc2NhbGUpO1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtYW5pbWF0aW9uKHRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UpO1xuXG4gIGhlaWdodDogNDhweDtcblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggN3B4O1xuICB9XG5cbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgYm90dG9tOiAxNnB4O1xuICB9XG5cbiAgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgICB0b3A6IDEycHg7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWlkbGUtYm9yZGVyKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtaG92ZXItYm9yZGVyKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZm9jdXNlZC1vdXRsaW5lLWNvbG9yKHByaW1hcnkpO1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXkpO1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtYW5pbWF0aW9uKHRleHQtZmllbGQtb3V0bGluZWQpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLWNvcm5lci1yYWRpdXNfKCRtZGMtdGV4dC1maWVsZC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1iYXNlLWNvbG9yKHRyYW5zcGFyZW50KTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcih0cmFuc3BhcmVudCk7XG5cbiAgYm9yZGVyOiBub25lO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweCAxNHB4O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyAgLy8gRkYgYWRkcyB1bndhbnRlZCBib3JkZXIgaW4gSEMgbW9kZSBvbiB3aW5kb3dzLlxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAxNnB4KTtcblxuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLWNvbG9yXygkY29sb3IpIHtcbiAgLy8gTk9URTogb3V0bGluZWQgdmVyc2lvbiBvZiB0ZXh0LWZpZWxkIHdhbnRzIHRoZSBcImlkbGVcIiBhbmRcbiAgLy8gXCJub3RjaGVkXCIgb3V0bGluZSB0byBoYXZlIHRoZSBzYW1lIGNvbG9yLiBUaGlzIGNvdmVycyB0d28gY2FzZXM6XG4gIC8vIDEpIHRleHQgZmllbGQgcmVuZGVycyB3aXRoIE5PIHZhbHVlIGluIHRoZSBcImlkbGVcIiBzdGF0ZVxuICAvLyAyKSB0ZXh0IGZpZWxkIHJlbmRlcnMgd2l0aCBhIHZhbHVlIGluIHRoZSBcIm5vdGNoZWRcIiBzdGF0ZVxuICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWlkbGUtY29sb3IoJGNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1jb2xvcigkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkge1xuICAgIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfixcbiAgICAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiB7XG4gICAgICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWlkbGUtY29sb3IoJGNvbG9yKTtcblxuICAgICAgLy8gdGxkcjsgdGhpcyBkb2Vzbid0IGJyZWFrIEJFTTpcbiAgICAgIC8vIFdlIG5lZWQgdG8gd3JhcCB0aGlzIG1peGluIHdpdGggdGhlIC5tZGMtbm90Y2hlZC1vdXRsaW5lXG4gICAgICAvLyBzZWxlY3RvciwgYmVjYXVzZSBvZiB0aGUgc2libGluZyBzZWxlY3RvciAnficuIFRoZSBub3RjaGVkXG4gICAgICAvLyBvdXRsaW5lIGh0bWwgc3RydWN0dXJlIGhhcyAubWRjLW5vdGNoZWQtb3V0bGluZVxuICAgICAgLy8gYW5kIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19pZGxlIGFzIHNpYmxpbmdzLCB3aGlsZVxuICAgICAgLy8gLm1kYy1ub3RjaGVkLW91dGxpbmVfX3BhdGggaXMgYSBjaGlsZCBvZiAubWRjLW5vdGNoZWQtb3V0bGluZVxuICAgICAgLm1kYy1ub3RjaGVkLW91dGxpbmUge1xuICAgICAgICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1mb2N1c2VkLW91dGxpbmUtY29sb3JfKCRjb2xvcikge1xuICAmLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIHtcbiAgICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcik7XG4gIH1cbn1cblxuLy8gSWNvbnNcblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLXdpdGgtbGVhZGluZy1pY29uXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbl8obGVmdCwgJG1kYy10ZXh0LWZpZWxkLWljb24tcG9zaXRpb24sICRtZGMtdGV4dC1maWVsZC1pY29uLXBhZGRpbmcpO1xufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb25fIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaWNvbi1ob3Jpem9udGFsLXBvc2l0aW9uXyhsZWZ0LCAkbWRjLXRleHQtZmllbGQtZGVuc2UtaWNvbi1wb3NpdGlvbiwgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWljb24tcGFkZGluZyk7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC13aXRoLWxlYWRpbmctaWNvbl8ge1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXksICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC13aXRoLWxlYWRpbmctaWNvbi1sYWJlbC1wb3NpdGlvbi14KTtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbik7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1ydGwpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZS13aXRoLWxlYWRpbmctaWNvbl8ge1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZS13aXRoLWxlYWRpbmctaWNvbi1sYWJlbC1wb3NpdGlvbi14LCAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtc2NhbGUpO1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtYW5pbWF0aW9uKHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlKTtcblxuICBAaW5jbHVkZSBtZGMtcnRsIHtcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtYW5pbWF0aW9uKHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCk7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLXdpdGgtdHJhaWxpbmctaWNvbl8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1pY29uLWhvcml6b250YWwtcG9zaXRpb25fKHJpZ2h0LCAkbWRjLXRleHQtZmllbGQtdHJhaWxpbmctaWNvbi1wb3NpdGlvbiwgJG1kYy10ZXh0LWZpZWxkLWljb24tcGFkZGluZyk7XG5cbiAgLy8gT3V0bGluZWQgdXNlcyAxNnB4IGZvciB0ZXh0IGFsaWdubWVudCB3aGVuIHVzaW5nIGEgdHJhaWxpbmcgaWNvbi5cbiAgJi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbl8ocmlnaHQsICRtZGMtdGV4dC1maWVsZC1pY29uLXBvc2l0aW9uLCAkbWRjLXRleHQtZmllbGQtaWNvbi1wYWRkaW5nKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC10cmFpbGluZy1pY29uXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbl8ocmlnaHQsICRtZGMtdGV4dC1maWVsZC1kZW5zZS1pY29uLXBvc2l0aW9uLCAkbWRjLXRleHQtZmllbGQtZGVuc2UtaWNvbi1wYWRkaW5nKTtcbn1cblxuLy8gRnVsbCBXaWR0aFxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aF8ge1xuICB3aWR0aDogMTAwJTtcblxuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcy1iYXNlLWNvbG9yKHRyYW5zcGFyZW50KTtcbiAgICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1maWxsLWNvbG9yKHRyYW5zcGFyZW50KTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWludmFsaWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG59XG5cbi8vIFRleHRhcmVhXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtZGlzYWJsZWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtc3Ryb2tlLWNvbG9yXygkbWRjLXRleHRhcmVhLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWZpbGwtY29sb3JfKCRtZGMtdGV4dGFyZWEtZGlzYWJsZWQtYmFja2dyb3VuZCk7XG5cbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuXG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWZpbGwtY29sb3IoJG1kYy10ZXh0YXJlYS1kaXNhYmxlZC1iYWNrZ3JvdW5kKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtaW52YWxpZF8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1zdHJva2UtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWNvcm5lci1yYWRpdXMoJG1kYy10ZXh0LWZpZWxkLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1zdHJva2UtY29sb3IoJG1kYy10ZXh0YXJlYS1ib3JkZXIpO1xuXG4gIC8vIFRyYW5zbGF0ZSBhYm92ZSB0aGUgdG9wIG9mIHRoZSBpbnB1dCwgYW5kIGNvbXBlbnNhdGUgZm9yIHRoZSBhbW91bnQgb2Ygb2Zmc2V0IG5lZWRlZFxuICAvLyB0byBwb3NpdGlvbiB0aGUgbGFiZWwgd2l0aGluIHRoZSBib3VuZHMgb2YgdGhlIGluc2V0IHBhZGRpbmcuXG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtbGFiZWwtcG9zaXRpb24teSwgMCUsICRtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1sYWJlbC1zY2FsZSk7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24odGV4dGFyZWEpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWJhc2UtY29sb3IodHJhbnNwYXJlbnQpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1maWxsLWNvbG9yKHRyYW5zcGFyZW50KTtcblxuICAkcGFkZGluZy1pbnNldDogMTZweDtcbiAgJGxhYmVsLW9mZnNldC15OiAkcGFkZGluZy1pbnNldCArIDI7XG4gICRsYWJlbC1vZmZzZXQteDogJHBhZGRpbmctaW5zZXQ7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgYWxpZ24tc2VsZjogYXV0bztcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWluc2V0O1xuICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZy1pbnNldCAqIDI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmlsbC1jb2xvcigkbWRjLXRleHRhcmVhLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlKGxlZnQsIDFweCwgcmlnaHQsIDApO1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KG1hcmdpbiwgOHB4LCAwKTtcblxuICAgIHRvcDogJGxhYmVsLW9mZnNldC15O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcGFkZGluZzogMTJweCA4cHggOHB4IDhweDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4vLyBDdXN0b21pemF0aW9uXG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1pbmstY29sb3JfKCRjb2xvcikge1xuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcl8oJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvcik7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1zdHJva2UtY29sb3JfKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRjb2xvcik7XG5cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpmb2N1cyB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1maWxsLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItYm90dG9tLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJvcmRlci1ib3R0b20tY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWhvdmVyLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpIHtcbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWJvdHRvbS1jb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtbGluZS1yaXBwbGUtY29sb3JfKCRjb2xvcikge1xuICAubWRjLWxpbmUtcmlwcGxlIHtcbiAgICBAaW5jbHVkZSBtZGMtbGluZS1yaXBwbGUtY29sb3IoJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtbGFiZWwtaW5rLWNvbG9yXygkY29sb3IpIHtcbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWluay1jb2xvcigkY29sb3IpO1xuICB9XG5cbiAgLy8gQ1NTLW9ubHkgdmVyc2lvblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cbiRtZGMtdGV4dC1maWVsZC1lcnJvcjogI2IwMDAyMDtcbiRtZGMtdGV4dC1maWVsZC1mdWxsd2lkdGgtYm90dG9tLWxpbmUtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4xMik7XG4kbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMDYpO1xuJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWljb246IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zKTtcbiRtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1ob3ZlcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjg3KTtcbiRtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1pZGxlOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNDIpO1xuJG1kYy10ZXh0LWZpZWxkLWxhYmVsOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNik7XG4kbWRjLXRleHQtZmllbGQtcGxhY2Vob2xkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC42KTtcblxuJG1kYy10ZXh0LWZpZWxkLWluay1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjg3KTtcbiRtZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjYpO1xuJG1kYy10ZXh0LWZpZWxkLWljb24tY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC41NCk7XG4kbWRjLXRleHQtZmllbGQtZm9jdXNlZC1sYWJlbC1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShwcmltYXJ5KSwgLjg3KTtcblxuJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWxhYmVsLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMzcpO1xuJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWluay1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjM3KTtcbiRtZGMtdGV4dC1maWVsZC1kaXNhYmxlZC1oZWxwZXItdGV4dC1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjM3KTtcblxuJG1kYy10ZXh0LWZpZWxkLWJhY2tncm91bmQ6IG1peChtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgbWRjLXRoZW1lLXByb3AtdmFsdWUoc3VyZmFjZSksIDQlKTtcbiRtZGMtdGV4dC1maWVsZC1kaXNhYmxlZC1iYWNrZ3JvdW5kOiBtaXgobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpLCAyJSk7XG4kbWRjLXRleHQtZmllbGQtc2Vjb25kYXJ5LXRleHQ6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC42KTtcblxuJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWlkbGUtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMjQpO1xuJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRpc2FibGVkLWJvcmRlcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjA2KTtcbiRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1ob3Zlci1ib3JkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC44Nyk7XG5cbiRtZGMtdGV4dGFyZWEtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNzMpO1xuJG1kYy10ZXh0YXJlYS1iYWNrZ3JvdW5kOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpLCAxKTtcbiRtZGMtdGV4dGFyZWEtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMjYpO1xuLy8gY2Fubm90IGJlIHRyYW5zcGFyZW50IGJlY2F1c2UgbXVsdGlsaW5lIHRleHRhcmVhIGlucHV0XG4vLyB3aWxsIG1ha2UgdGV4dCB1bnJlYWRhYmxlXG4kbWRjLXRleHRhcmVhLWRpc2FibGVkLWJhY2tncm91bmQ6IHJnYmEoMjQ5LCAyNDksIDI0OSwgMSk7XG5cbiRtZGMtdGV4dC1maWVsZC1ib3JkZXItcmFkaXVzOiA0cHggIWRlZmF1bHQ7XG5cbiRtZGMtdGV4dC1maWVsZC1sYWJlbC1wb3NpdGlvbi15OiA1MCU7XG4kbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtcG9zaXRpb24teTogNzAlO1xuJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlOiAuOTIzO1xuJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXk6IDEzMCU7XG4kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UtbGFiZWwtcG9zaXRpb24teTogMTEwJTtcbiRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC13aXRoLWxlYWRpbmctaWNvbi1sYWJlbC1wb3NpdGlvbi14OiAzMnB4O1xuJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLXdpdGgtbGVhZGluZy1pY29uLWxhYmVsLXBvc2l0aW9uLXg6IDIxcHg7XG4kbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtbGFiZWwtcG9zaXRpb24teTogNTAlO1xuLy8gTm90ZSB0aGF0IHRoZSBzY2FsZSBmYWN0b3IgaXMgYW4gZXllYmFsbGVkIGFwcHJveGltYXRpb24gb2Ygd2hhdCdzIHNob3duIGluIHRoZSBtb2Nrcy5cbiRtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1sYWJlbC1zY2FsZTogLjkyMztcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczovL1xuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vL1xuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuJG1kYy10ZXh0LWZpZWxkLWljb24tcG9zaXRpb246IDE2cHg7XG4kbWRjLXRleHQtZmllbGQtdHJhaWxpbmctaWNvbi1wb3NpdGlvbjogMTJweDtcbiRtZGMtdGV4dC1maWVsZC1pY29uLXBhZGRpbmc6IDQ4cHg7XG4kbWRjLXRleHQtZmllbGQtZGVuc2UtaWNvbi1wb3NpdGlvbjogMTJweDtcbiRtZGMtdGV4dC1maWVsZC1kZW5zZS1pY29uLXBhZGRpbmc6IDM4cHg7XG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9mdW5jdGlvbnMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvdHlwb2dyYXBoeS92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QG1hdGVyaWFsL3RleHRmaWVsZC9tZGMtdGV4dC1maWVsZCc7XHJcbkBpbXBvcnQgJ35zYXNzLW1xL21xJztcclxuXHJcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcclxuICAgIC8vIHNwZWNpZmljaXR5IGJ1bXAgdG8gb3ZlcmNvbWUgTURDIHN0eWxlczpcclxuICAgICYua214LXRleHQtYXJlYSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkVEVYVEFSRUEtQ09MT1ItLUdSRVk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gbm90ZTogdGV4dC1hcmVhIHdpbGwgcmVxdWlyZSBhIHBhcmVudCBlbGVtZW50IHdoaWNoIGlzIHN0eWxlZCB3aXRoIG92ZXJmbG93OmhpZGRlbiBpbiBvcmRlciB0byBwcmV2ZW50IGhvcml6b250YWwgc2Nyb2xsYmFycy4gS25vd24gYnVnIGluIG1kYyAwLjM5LjNcclxuICAgICAgICB3aWR0aDogJFRFWFRBUkVBLVdJRFRIO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogbm9uZTsgLy8gbm8gcmlwcGxlIGVsZW1lbnRzIC0gcHJldmVudHMgb3ZlcmZsb3cgcHJvYmxlbSB3aXRoIHRoZSBmbG9hdGluZyBsYWJlbCBwb3NpdGlvbiAod2hpY2ggcmVxdWlyZXMgb3ZlcmZsb3c6dmlzaWJsZSlcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJFRFWFRBUkVBLUNPTE9SLS1CTFVFO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJFRFWFRBUkVBLUNPTE9SLS1CTFVFO1xyXG5cclxuICAgICAgICAgICAgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRURVhUQVJFQS1DT0xPUi0tQkxVRTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmtteC10ZXh0LWFyZWFfX2lucHV0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJFRFWFRBUkVBLUJBQ0tHUk9VTkQtQ09MT1I7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgY2FyZXQtY29sb3I6ICRURVhUQVJFQS1DT0xPUi0tQkxVRTtcclxuICAgICAgICAgICAgY29sb3I6ICRURVhUQVJFQS1JTlBVVC1URVhULUNPTE9SO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJFRFWFRBUkVBLUlOUFVULUZPTlQtRkFNSUxZO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJFRFWFRBUkVBLUlOUFVULUxJTkUtSEVJR0hUO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggJFRFWFRBUkVBLVBBRERJTkcgJFRFWFRBUkVBLVBBRERJTkc7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHJlc2l6ZTogdmVydGljYWw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkVEVYVEFSRUEtTEFCRUwtQ09MT1I7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICB0b3A6IDNweDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiBzaXplKCdzJykgc2l6ZSgncycpIDA7XHJcblxyXG4gICAgICAgICAgICAmLS1mbG9hdC1hYm92ZSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjdweCkgc2NhbGUoMC43NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWRjLXRleHQtYXJlYS0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWFyZWEtLWRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkVEVYVEFSRUEtQ09MT1ItLUJMVUU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWRjLXRleHQtYXJlYS0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWFyZWEtLWRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgICYubWRjLXRleHQtZmllbGQtLWludmFsaWQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkVEVYVEFSRUEtQ09MT1ItLUlOVkFMSUQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRURVhUQVJFQS1DT0xPUi0tSU5WQUxJRDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tdmVydGljYWwtYWxpZ24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBzaXplKCdtJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ua214LXRleHQtYXJlYTpub3QoLmtteC10ZXh0LWFyZWEtLWRpc2FibGVkKSB7XHJcbiAgICAmLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XHJcbiAgICAgICAgKyAua214LXRleHQtYXJlYS1oZWxwZXItdGV4dC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGtteC1mb3JtLWhlbHBlci10ZXh0LW1peGluKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ua214LWZvcm0tY29tcG9uZW50LWhlbHBlci1saW5lIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LWFsdDtcclxuICAgIHdpZHRoOiAkVEVYVEFSRUEtV0lEVEg7XHJcblxyXG4gICAgLmtteC10ZXh0LWFyZWEtaGVscGVyLXRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1mb3JtLWhlbHBlci10ZXh0LW1peGluKCk7XHJcblxyXG4gICAgICAgICYtLWludmFsaWQge1xyXG4gICAgICAgICAgICBjb2xvcjogJFRFWFRBUkVBLUNPTE9SLS1JTlZBTElEO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gZm9yIGNoYXJhY3RlciBjb3VudCB2YXJpYW50LCB0aGUgY29ycmVjdGl2ZSB2YWxpZGF0aW9uIG1lc3NhZ2UgaXMgaW5pdGlhbGx5IGhpZGRlbjpcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvY29sb3JzL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Zvcm1zL2luZGV4JztcclxuXHJcbiRURVhUQVJFQS1CQUNLR1JPVU5ELUNPTE9SOiB0cmFuc3BhcmVudDtcclxuXHJcbiRURVhUQVJFQS1DT0xPUi0tQkxVRToga214LWNvbG9yKCdibHVlJywgNjAwKTtcclxuXHJcbiRURVhUQVJFQS1DT0xPUi0tRElTQUJMRUQtQk9SREVSOiAkS01YLUZPUk0tQk9SREVSLUNPTE9SLURJU0FCTEVEO1xyXG5cclxuJFRFWFRBUkVBLUNPTE9SLS1HUkVZOiBrbXgtY29sb3IoJ3NsYXRlJywgNjAwKTtcclxuXHJcbiRURVhUQVJFQS1DT0xPUi0tSU5WQUxJRDoga214LWNvbG9yKCdyZWQnLCA2MDApO1xyXG5cclxuJFRFWFRBUkVBLUZMT0FUSU5HLUxBQkVMLVBPU0lUSU9OLS1UT1A6IDIycHg7XHJcblxyXG4kVEVYVEFSRUEtUEFERElORzogc2l6ZSgncycpO1xyXG5cclxuJFRFWFRBUkVBLVRFWFQtLURJU0FCTEVEOiBrbXgtY29sb3IoJ3NsYXRlJywgNDAwKTtcclxuXHJcbiRURVhUQVJFQS1URVhULS1HUkVZOiBrbXgtY29sb3IoJ3NsYXRlJywgOTAwKTtcclxuXHJcbiRURVhUQVJFQS1URVhULS1JTlZBTElEOiBrbXgtY29sb3IoJ3JlZCcsIDYwMCk7XHJcblxyXG4kVEVYVEFSRUEtVEVYVC0tVEhFTUUtLURBUks6ICR3aGl0ZTtcclxuXHJcbiRURVhUQVJFQS0tVEhFTUUtREFSSzoga214LWNvbG9yKCdibHVlJywgMzAwKTtcclxuXHJcbiRURVhUQVJFQS1XSURUSDogMTAwJTtcclxuXHJcbiRURVhUQVJFQS1JTlBVVC1MSU5FLUhFSUdIVDogJEtNWC1GT1JNLUlOUFVULVRFWFQtTElORS1IRUlHSFQ7XHJcblxyXG4kVEVYVEFSRUEtSU5QVVQtVEVYVC1DT0xPUjogJEtNWC1GT1JNLUlOUFVULVRFWFQtQ09MT1I7XHJcblxyXG4kVEVYVEFSRUEtSU5QVVQtQk9SREVSLUNPTE9SOiAkS01YLUZPUk0tQk9SREVSLUNPTE9SLURFRkFVTFQ7XHJcblxyXG4kVEVYVEFSRUEtSU5QVVQtRk9OVC1GQU1JTFk6ICRGT1JNLUlOUFVULVRFWFQtRk9OVC1GQU1JTFk7XHJcblxyXG4kVEVYVEFSRUEtTEFCRUwtTElORS1IRUlHSFQ6ICRLTVgtRk9STS1MQUJFTC1MSU5FLUhFSUdIVDtcclxuXHJcbiRURVhUQVJFQS1MQUJFTC1DT0xPUjogJEtNWC1GT1JNLUxBQkVMLVRFWFQtQ09MT1I7XHJcblxyXG4kVEVYVEFSRUEtTEFCRUwtQ09MT1ItRElTQUJMRUQ6ICRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SLURJU0FCTEVEO1xyXG5cclxuJFRFWFRBUkVBLUZMT0FUSU5HLUxBQkVMLUNPTE9SOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUjtcclxuXHJcbiRURVhUQVJFQS1CT1JERVItQ09MT1ItRElTQUJMRUQ6ICRLTVgtRk9STS1CT1JERVItQ09MT1ItRElTQUJMRUQ7XHJcblxyXG4kVEVYVEFSRUEtSU5QVVQtVEVYVC1DT0xPUi0tRElTQUJMRUQ6ICRLTVgtRk9STS1JTlBVVC1URVhULUNPTE9SLURJU0FCTEVEO1xyXG5cclxuJFRFWFRBUkVBLUhFTFBFUi1URVhULUNPTE9SOiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1I7XHJcblxyXG4kVEVYVEFSRUEtSEVMUEVSLVRFWFQtRk9OVC1GQU1JTFk6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1GT05ULUZBTUlMWTtcclxuXHJcbiRURVhUQVJFQS1IRUxQRVItVEVYVC1GT05ULVNJWkU6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1GT05ULVNJWkU7XHJcblxyXG4kVEVYVEFSRUEtSEVMUEVSLVRFWFQtTElORS1IRUlHSFQ6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1MSU5FLUhFSUdIVDtcclxuXHJcbiRURVhUQVJFQS1IRUxQRVItVEVYVC1ESVNBQkxFRDoga214LWNvbG9yKCdzbGF0ZScsIDQwMCk7XHJcblxyXG4kVEVYVEFSRUEtSEVMUEVSLVRFWFQtQ09MT1ItSU5WQUxJRDoga214LWNvbG9yKCdyZWQnLCA2MDApO1xyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvdGV4dGZpZWxkL21kYy10ZXh0LWZpZWxkJztcclxuQGltcG9ydCAnfnNhc3MtbXEvbXEnO1xyXG5cclxuLmtteC10ZXh0LWFyZWEubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAgIC5tZGMtZmxvYXRpbmctbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkVEVYVEFSRUEtQk9SREVSLUNPTE9SLURJU0FCTEVEO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJFRFWFRBUkVBLUJPUkRFUi1DT0xPUi1ESVNBQkxFRDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB0b3A6IDNweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiBzaXplKCdzJykgc2l6ZSgncycpIDA7XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2luZGV4JztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2Zvcm1zL2luZGV4JztcclxuQGltcG9ydCAnfkBtYXRlcmlhbC90ZXh0ZmllbGQvbWRjLXRleHQtZmllbGQnO1xyXG5cclxuLypcclxuICogTk9URTogVGhlIG1kYyBvdXRsaW5lZCB0ZXh0LWZpZWxkIHZhcmlhbnQgaXMgbm90IHVzZWQgaW4gTEVHT1MsXHJcbiAqIHRoZXJlZm9yZSBzZWxlY3RvcnMgZm9yIG91dGxpbmVkIHRleHQtZmllbGQgYXJlIG5vdCBpbmNsdWRlZCBoZXJlLlxyXG4gKlxyXG4gKiBUZXh0LWZpZWxkIHN0eWxpbmcgaXMgd3JhcHBlZCB3aXRoIGJvdGgga214LSogYW5kIG1kYy0qIHNlbGVjdG9yc1xyXG4gKiB0byBwcm92aWRlIGEgaGlnaGVyIHNwZWNpZmljaXR5IHRoYW4gdGhlIGJhc2UgbWRjLSogcnVsZXM6XHJcbiovXHJcblxyXG4vKiBTZXQgdGhlIHdpZHRoIG9mIHRleHQtZmllbGQgdG8gMTAwJSBieSBkZWZhdWx0IChhbGxvdyB0aGUgZGlzcGxheSBjb250ZXh0IC8gcGFyZW50IGNvbnRhaW5lciB0byBnb3Zlcm4gY29tcG9uZW50IHdpZHRoKTogKi9cclxuLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKSB7XHJcbiAgICB3aWR0aDogJFRFWFRGSUVMRC1XSURUSDtcclxufVxyXG5cclxuLypcclxuICogTk9URTogVGhlIG1kYyBvdXRsaW5lZCB0ZXh0LWZpZWxkIHZhcmlhbnQgaXMgbm90IHVzZWQgaW4gTEVHT1MsXHJcbiAqIHRoZXJlZm9yZSBzZWxlY3RvcnMgZm9yIG91dGxpbmVkIHRleHQtZmllbGQgYXJlIG5vdCBpbmNsdWRlZCBoZXJlLlxyXG4gKlxyXG4gKiBUZXh0LWZpZWxkIHN0eWxpbmcgaXMgd3JhcHBlZCB3aXRoIGJvdGgga214LSogYW5kIG1kYy0qIHNlbGVjdG9yc1xyXG4gKiB0byBwcm92aWRlIGEgaGlnaGVyIHNwZWNpZmljaXR5IHRoYW4gdGhlIGJhc2UgbWRjLSogcnVsZXM6XHJcbiovXHJcblxyXG4ua214LXRleHQtZmllbGQubWRjLXRleHQtZmllbGQge1xyXG4gICAgLmtteC10ZXh0LWZpZWxkX19pbnB1dC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLmtteC10ZXh0LWZpZWxkOm5vdCgua214LXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLmtteC10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XHJcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJFRFWFRGSUVMRC1GTE9BVElORy1MQUJFTC1QT1NJVElPTi0tVE9QKTtcclxuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yKCRLTVgtRk9STS1JTlBVVC1GT0NVUy1DT0xPUik7XHJcbiAgICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1jb3JuZXItcmFkaXVzKDApO1xyXG5cclxuICAgIC8vIFN1cHByZXNzZXMgdGhlIG1kYyBkZWZhdWx0IGJhY2tncm91bmQtY29sb3I6XHJcbiAgICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSxcclxuICAgICY6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6YWZ0ZXIsXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJFRFWFRGSUVMRC1CQUNLR1JPVU5ELUNPTE9SO1xyXG4gICAgfVxyXG5cclxuICAgIC5rbXgtdGV4dC1maWVsZF9faW5wdXQubWRjLXRleHQtZmllbGRfX2lucHV0IHtcclxuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkVEVYVEZJRUxELUNPTE9SLUJPUkRFUi1CT1RUT00tREVGQVVMVDtcclxuICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUlOUFVULVRFWFQtQ09MT1I7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRGT1JNLUlOUFVULVRFWFQtRk9OVC1GQU1JTFk7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBzaXplKCdsJyk7XHJcbiAgICAgICAgcGFkZGluZzogJFRFWFRGSUVMRC1GTE9BVElORy1MQUJFTC1QT1NJVElPTi0tVE9QICRURVhURklFTEQtUEFERElORyAkVEVYVEZJRUxELVBBRERJTkc7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkS01YLUZPUk0tSU5QVVQtRk9DVVMtQ09MT1I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5rbXgtdGV4dC1maWVsZC1pY29uIHtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgaGVpZ2h0OiBzaXplKCdtJyk7XHJcbiAgICAgICAgd2lkdGg6IHNpemUoJ20nKTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB0b3A6IDI1cHg7XHJcbiAgICAgICAgYm90dG9tOiBhdXRvO1xyXG5cclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmljb24tcmlnaHQge1xyXG4gICAgICAgIC5rbXgtdGV4dC1maWVsZC1pY29uIHtcclxuICAgICAgICAgICAgcmlnaHQ6IHNpemUoJ3MnKTtcclxuICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmtteC10ZXh0LWZpZWxkX19pbnB1dC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBzaXplKCdsJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYubWRjLXRleHQtZmllbGQtLWludmFsaWQge1xyXG4gICAgICAgICAgICAua214LXRleHQtZmllbGQtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIGNvbG9yIGlzIGFzc2lnbmVkIHNvIGl0J3MgcGlja2VkIHVwIGJ5IFNWRyBmaWxsICdjdXJyZW50Q29sb3InOlxyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRLTVgtRk9STS1JTlBVVC1URVhULUNPTE9SLUlOVkFMSUQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy1saW5lLXJpcHBsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJEtNWC1GT1JNLUlOUFVULUZPQ1VTLUNPTE9SO1xyXG4gICAgfVxyXG5cclxuICAgICY6bm90KC5tZGMtdGV4dC1maWVsZC0taW52YWxpZCkge1xyXG4gICAgICAgIC5tZGMtZmxvYXRpbmctbGFiZWwge1xyXG4gICAgICAgICAgICBib3R0b206ICRURVhURklFTEQtRkxPQVRJTkctTEFCRUwtUE9TSVRJT04tLUJPVFRPTTtcclxuICAgICAgICAgICAgY29sb3I6ICRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJEZPUk0tSU5QVVQtVEVYVC1GT05ULUZBTUlMWTtcclxuICAgICAgICAgICAgbGVmdDogc2l6ZSgncycpO1xyXG5cclxuICAgICAgICAgICAgJi5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUjtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHNpemUoJ3MnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIHtcclxuICAgICAgICAua214LXRleHQtZmllbGRfX2lucHV0Lm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1I7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWRjLWZsb2F0aW5nLWxhYmVsLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUlOUFVULUZPQ1VTLUNPTE9SO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmtteC1mb3JtLWNvbXBvbmVudC1oZWxwZXItbGluZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGZvbnQtZmFtaWx5OiAka214LXR5cG9ncmFwaHktZm9udC1hbHQ7XHJcbiAgICB3aWR0aDogJFRFWFRGSUVMRC1XSURUSDtcclxuXHJcbiAgICAua214LXRleHQtZmllbGQtaGVscGVyLXRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGtteC1mb3JtLWhlbHBlci10ZXh0LW1peGluKCk7XHJcblxyXG4gICAgICAgICYtLWludmFsaWQge1xyXG4gICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUhFTFBFUi1URVhULUNPTE9SLUlOVkFMSUQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBmb3IgY2hhcmFjdGVyIGNvdW50IHZhcmlhbnQsIHRoZSBjb3JyZWN0aXZlIHZhbGlkYXRpb24gbWVzc2FnZSBpcyBpbml0aWFsbHkgaGlkZGVuOlxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9mb3Jtcy9pbmRleCc7XHJcblxyXG4kVEVYVEZJRUxELUJBQ0tHUk9VTkQtQ09MT1I6IHRyYW5zcGFyZW50O1xyXG5cclxuJFRFWFRGSUVMRC1DT0xPUi1CT1JERVItQk9UVE9NLURFRkFVTFQ6ICRLTVgtRk9STS1CT1JERVItQ09MT1ItREVGQVVMVDtcclxuXHJcbiRURVhURklFTEQtQ09MT1ItQk9SREVSLUJPVFRPTS1IT1ZFUjogIzZkNzQ3YTsgLy8gcmdiYSgwLDAsMCwuMTIpO1xyXG5cclxuJFRFWFRGSUVMRC1QQURESU5HOiBzaXplKCdzJyk7XHJcblxyXG4kVEVYVEZJRUxELVdJRFRIOiAxMDAlO1xyXG5cclxuJFRFWFRGSUVMRC1GTE9BVElORy1MQUJFTC1QT1NJVElPTi0tQk9UVE9NOiAxMnB4O1xyXG5cclxuJFRFWFRGSUVMRC1GTE9BVElORy1MQUJFTC1QT1NJVElPTi0tVE9QOiAyMHB4O1xyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9zcGFjaW5nL2luZGV4JztcclxuXHJcbi5rbXgtdGV4dC1maWVsZDpub3QoLmtteC10ZXh0LWZpZWxkLS10ZXh0YXJlYSkua214LXRleHQtZmllbGQtLWRpc2FibGVkLFxyXG4ubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XHJcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJFRFWFRGSUVMRC1GTE9BVElORy1MQUJFTC1QT1NJVElPTi0tVE9QKTtcclxuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWNvcm5lci1yYWRpdXMoMCk7XHJcblxyXG4gICAgLy8gU3VwcHJlc3NlcyB0aGUgbWRjIGRlZmF1bHQgYmFja2dyb3VuZC1jb2xvcjpcclxuICAgICY6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLFxyXG4gICAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSksXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjphZnRlcixcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkVEVYVEZJRUxELUJBQ0tHUk9VTkQtQ09MT1I7XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XHJcbiAgICAgICAgYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIGNvbG9yOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUi1ESVNBQkxFRDtcclxuICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gICAgICAgICYubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUi1ESVNBQkxFRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmtteC10ZXh0LWZpZWxkX19pbnB1dC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRLTVgtRk9STS1CT1JERVItQ09MT1ItRElTQUJMRUQ7XHJcbiAgICAgICAgY29sb3I6ICRLTVgtRk9STS1MQUJFTC1URVhULUNPTE9SLURJU0FCTEVEO1xyXG4gICAgICAgIHBhZGRpbmc6ICRURVhURklFTEQtRkxPQVRJTkctTEFCRUwtUE9TSVRJT04tLVRPUCAkVEVYVEZJRUxELVBBRERJTkcgJFRFWFRGSUVMRC1QQURESU5HO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZGMtbGluZS1yaXBwbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRLTVgtRk9STS1CT1JERVItQ09MT1ItRElTQUJMRUQ7XHJcbiAgICB9XHJcblxyXG4gICAgJiArIC5rbXgtdGV4dC1maWVsZC1oZWxwZXItdGV4dC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XHJcbiAgICAgICAgY29sb3I6ICRLTVgtRk9STS1IRUxQRVItVEVYVC1DT0xPUi1ESVNBQkxFRDtcclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvZm9ybXMvdmFyaWFibGVzJztcclxuXHJcbi8qXHJcbiAqIE5vdGU6IHRoZSB2YWxpZGF0aW9uIHN0eWxpbmcgZm9yIHRleHQtZmllbGQtaGVscGVyXHJcbiAqIGlzIGxvY2F0ZWQgaW4gLi9fdGV4dC1maWVsZC12YWxpZGF0aW9uLnNjc3NcclxuICpcclxuICogVGhlIGRpc2FibGVkIHN0eWxpbmcgZm9yIHRleHQtZmllbGQtaGVscGVyXHJcbiAqIGlzIGxvY2F0ZWQgaW4gLi9fdGV4dC1maWVsZC1kaXNhYmxlZC5zY3NzXHJcbiAqL1xyXG4ua214LXRleHQtZmllbGQge1xyXG4gICAgJi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xyXG4gICAgICAgICsgLmtteC10ZXh0LWZpZWxkLWhlbHBlci10ZXh0Lm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUga214LWZvcm0taGVscGVyLXRleHQtbWl4aW4oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMva214LXRoZW1lJztcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2NvbG9ycy9pbmRleCc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvdGV4dGZpZWxkL21kYy10ZXh0LWZpZWxkJztcclxuXHJcbi8qXHJcbiAqIE5PVEU6IFRoZSBtZGMgb3V0bGluZWQgdGV4dC1maWVsZCB2YXJpYW50IGlzIG5vdCB1c2VkIGluIExFR09TLFxyXG4gKiB0aGVyZWZvcmUgc2VsZWN0b3JzIGZvciBvdXRsaW5lZCB0ZXh0LWZpZWxkIGFyZSBub3QgaW5jbHVkZWQgaGVyZS5cclxuICpcclxuICogVGV4dC1maWVsZCBzdHlsaW5nIGlzIHdyYXBwZWQgd2l0aCBib3RoIGtteC0qIGFuZCBtZGMtKiBzZWxlY3RvcnNcclxuICogdG8gcHJvdmlkZSBhIGhpZ2hlciBzcGVjaWZpY2l0eSB0aGFuIHRoZSBiYXNlIG1kYy0qIHJ1bGVzOlxyXG4qL1xyXG4ua214LXRleHQtZmllbGQ6bm90KC5rbXgtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgua214LXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcclxuICAgIC8vIC0tLSBURVhUIElOUFVUIEVMRU1FTlQ6XHJcbiAgICAmLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xyXG4gICAgICAgIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkS01YLUZPUk0tQk9SREVSLUNPTE9SLUlOVkFMSUQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tSU5QVVQtVEVYVC1DT0xPUi1JTlZBTElEO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkS01YLUZPUk0tQk9SREVSLUNPTE9SLUlOVkFMSUQ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUlOUFVULVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyAtLSBNQVRFUklBTCBGTE9BVElORyBMQUJFTCBFTEVNRU5UOlxyXG4gICAgLypcclxuICAgICAgICBNREMgYXV0b21hdGljYWxseSBhcHBlbmRzIGFuIGFzdGVyaXNrIHRvIHRoZSBsYWJlbCBlbGVtZW50IGNoaWxkIG9mIGEgcmVxdWlyZWQgdGV4dGZpZWxkLlxyXG4gICAgICAgIFRoZSBMRUdPUyBVWCBzdHJhdGVneSBpcyB0byBtYXJrIGlucHV0cyBhcyBvcHRpb25hbCwgcmF0aGVyIHRoYW4gcmVxdWlyZWQuXHJcblxyXG4gICAgICAgIFRoZSBmb2xsb3dpbmcgc3VwcHJlc3NlcyB0aGUgJ3JlcXVpcmVkJyBhc3RlcmlzayBvbiByZXF1aXJlZCB0ZXh0LWZpZWxkczpcclxuICAgICovXHJcbiAgICAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkICsgLm1kYy1mbG9hdGluZy1sYWJlbDphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkIHtcclxuICAgICAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcclxuICAgICAgICAgICAgYm90dG9tOiAkVEVYVEZJRUxELUZMT0FUSU5HLUxBQkVMLVBPU0lUSU9OLS1CT1RUT007XHJcbiAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUi1JTlZBTElEO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJEZPUk0tSU5QVVQtVEVYVC1GT05ULUZBTUlMWTtcclxuICAgICAgICAgICAgbGVmdDogc2l6ZSgncycpO1xyXG5cclxuICAgICAgICAgICAgJi5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUi1JTlZBTElEO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogc2l6ZSgncycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIHtcclxuICAgICAgICAgICAgLm1kYy1mbG9hdGluZy1sYWJlbC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tTEFCRUwtVEVYVC1DT0xPUi1JTlZBTElEO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XHJcbiAgICAgICAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCxcclxuICAgICAgICAubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XHJcbiAgICAgICAgICAgIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRLTVgtRk9STS1JTlBVVC1URVhULUNPTE9SLUlOVkFMSUQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRGlzYWJsZSB0aGUgbGFiZWwncyBzaGFrZSBhbmltYXRpb24gd2l0aCBpbnZhbGlkIGlucHV0OlxyXG4gICAgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xyXG4gICAgICAgIC5tZGMtZmxvYXRpbmctbGFiZWwge1xyXG4gICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUxBQkVMLVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCB7XHJcbiAgICAgICAgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJEtNWC1GT1JNLUxBQkVMLVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0gTUFURVJJQUwgTElORSBSSVBQTEUgRUxFTUVOVDpcclxuICAgICYubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XHJcbiAgICAgICAgLm1kYy1saW5lLXJpcHBsZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRLTVgtRk9STS1CT1JERVItQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSGVscGVyIHRleHQgdmFsaWRhdGlvbiBtZXNzYWdlOlxyXG4gICAgJi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xyXG4gICAgICAgICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkS01YLUZPUk0tSEVMUEVSLVRFWFQtQ09MT1ItSU5WQUxJRDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuICogIFJlbW92ZXMgdGhlIGluc2V0IHNoYWRvdyBhbmQgb3Zlcmx5LXJvdW5kZWQgVUkgb24gaU9TIHdlYmtpdDpcclxuICovXHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSAqL1xyXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGUgKi9cclxuIiwiLy8gVG9vbGJhciBTdHlsZXNcclxuQGltcG9ydCAnfkBrbXgvbGVnb3MtdGhlbWUvc3JjL2tteC10aGVtZSc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy9jb2xvcnMvaW5kZXgnO1xyXG5AaW1wb3J0ICd+QGtteC9sZWdvcy10aGVtZS9zcmMvbGF5b3V0L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35Aa214L2xlZ29zLXRoZW1lL3NyYy90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvdG9vbGJhci9tZGMtdG9vbGJhcic7XHJcbkBpbXBvcnQgJ35AbWF0ZXJpYWwvdGhlbWUvbWl4aW5zJztcclxuXHJcbi5rbXgtdG9vbGJhciB7XHJcbiAgICBAZXh0ZW5kIC5tZGMtdG9vbGJhcjtcclxuXHJcbiAgICAmLS1maXhlZCB7XHJcbiAgICAgICAgQGV4dGVuZCAubWRjLXRvb2xiYXItLWZpeGVkO1xyXG4gICAgfVxyXG5cclxuICAgICYtZml4ZWQtYWRqdXN0IHtcclxuICAgICAgICBAZXh0ZW5kIC5tZGMtdG9vbGJhci1maXhlZC1hZGp1c3Q7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbWVudS1pY29uIHtcclxuICAgICAgICBAZXh0ZW5kIC5tZGMtdG9vbGJhcl9fbWVudS1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ljb24ge1xyXG4gICAgICAgIEBleHRlbmQgLm1kYy10b29sYmFyX19pY29uO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3JvdyB7XHJcbiAgICAgICAgQGV4dGVuZCAubWRjLXRvb2xiYXJfX3JvdztcclxuICAgIH1cclxuXHJcbiAgICAmX19zZWN0aW9uIHtcclxuICAgICAgICBAZXh0ZW5kIC5tZGMtdG9vbGJhcl9fc2VjdGlvbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBAZXh0ZW5kIC5tZGMtdG9vbGJhcl9fdGl0bGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRrbXgtdHlwb2dyYXBoeS1mb250LW1haW47XHJcbiAgICAgICAgZm9udC1zaXplOiBzaXplKCdtJyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tZml4ZWQtYm90dG9tIHtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ljb24tLXByaW1hcnkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZm9udC1zaXplOiBzaXplKCdsJyk7XHJcbiAgICAgICAgbWFyZ2luOiAwIHNpemUoJ3MnKTtcclxuICAgICAgICBtaW4td2lkdGg6IHNpemUoJzJ4bCcpO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBmb250LXNpemU6IHNpemUoJzJ4bCcpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTApO1xyXG4gICAgICAgIC5rbXgtaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyLjVlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGluayB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmb250LWZhbWlseTogJGtteC10eXBvZ3JhcGh5LWZvbnQtbWFpbjtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogc2l6ZSgnbCcpO1xyXG4gICAgICAgIC5rbXgtaWNvbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogc2l6ZSgnbScpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgc2l6ZSgneHMnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5rbXgtdG9vbGJhci0tYnJhbmRlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCB0ZXh0LXByaW1hcnktb24tbGlnaHQpO1xyXG5cclxuICAgICAgICAua214LXRvb2xiYXJfX21lbnUtaWNvbixcclxuICAgICAgICAua214LXRvb2xiYXJfX2ljb246bm90KC5rbXgtdG9vbGJhcl9faWNvbi0tcHJpbWFyeSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgdGV4dC1wcmltYXJ5LW9uLWxpZ2h0KTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBzaXplKCdsJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAua214LXRvb2xiYXJfX21lbnUtaWNvbjpkaXNhYmxlZCxcclxuICAgICAgICAua214LXRvb2xiYXJfX2ljb246ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgdGV4dC1kaXNhYmxlZC1vbi1saWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYua214LXRvb2xiYXItLWNlbnRlcmVkIC5rbXgtdG9vbGJhcl9fcm93IHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbi1zaXplcywgbGFyZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgICYtLWZpeGVkLmtteC10b29sYmFyLS1maXhlZC0tc2Vjb25kYXJ5Om5vdCgmLS1mbGV4aWJsZS1zcGFjZS1taW5pbWl6ZWQpIHtcclxuICAgICAgICB0b3A6IHJlbS1jYWxjKDU2KTtcclxuICAgIH1cclxuXHJcbiAgICAua214LXRvb2xiYXJfX21lbnUtaWNvbjpkaXNhYmxlZCxcclxuICAgIC5rbXgtdG9vbGJhcl9faWNvbjpkaXNhYmxlZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsIHRleHQtZGlzYWJsZWQtb24tbGlnaHQpO1xyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJ21peGlucyc7XHJcblxyXG4ua214LWljb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xyXG4gICAgaGVpZ2h0OiAxZW07XHJcbiAgICB3aWR0aDogMWVtO1xyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlICovXHJcbiAgICBzdmcge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xyXG59XHJcbiIsIi8vIDEtYSBpbXBvcnQgYWxsIExFR09TIFNDU1MgcmVzb3VyY2VzOlxyXG5AaW1wb3J0ICdAa214L2xlZ29zL3NyYy9pbmRleC5zY3NzJztcclxuXHJcbi8vIDEtYiAtb3ItIGltcG9ydCBvbmx5IHNvbWUgTEVHT1MgcmVzb3VyY2VzOlxyXG4vLyBAaW1wb3J0ICdAa214L2xlZ29zLXRoZW1lL3NyYy9pbmRleCc7XHJcbi8vIEBpbXBvcnQgJ0BrbXgvbGVnb3MtdGhlbWUvc3JjL3R5cG9ncmFwaHkvX2luZGV4LnNjc3MnO1xyXG4vLyBAaW1wb3J0ICdAa214L2xlZ29zLWNpcmN1bGFyLXByb2dyZXNzL3NyYy9pbmRleC5zY3NzJztcclxuLy8gQGltcG9ydCAnQGtteC9sZWdvcy1zbmFja2Jhci9zcmMvaW5kZXguc2Nzcyc7XHJcbi8vIEBpbXBvcnQgJ0BrbXgvbGVnb3MtbGF5b3V0LWdyaWQvc3JjL2luZGV4LnNjc3MnO1xyXG4vL1xyXG5cclxuLy8gQUxMIE9GIFlPVVIgQ1VTVE9NIChhcHBsaWNhdGlvbi1sZXZlbCkgQ1NTIElTIEFVVEhPUkVEIEhFUkUuLi5cclxuXHJcblxyXG5cclxuLmtteC10aGVtZV9fYmFja2dyb3VuZC0tZ3JheSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xyXG59XHJcblxyXG4ucGFnZS1mb290ZXItLWxlZ2FsLS1jb3B5cmlnaHQge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgY29sb3I6IHJnYigxMjgsIDEyOCwgMTI4KTtcclxuICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxufVxyXG5cclxuLmZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5tZGMtY29udGVudCB7XHJcbiAgICBwYWRkaW5nLXRvcDogODBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOjBweDtcclxufVxyXG5cclxuLm1kYy1iYWNrZ3JvdW5kIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7IFxyXG59XHJcblxyXG5odG1sLFxyXG5ib2R5IHtcclxuICAgIG1hcmdpbjogMHB4O1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4jaGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZjA7XHJcbiAgICBwYWRkaW5nOiAwcHg7XHJcbn1cclxuXHJcbiNib2R5IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbn1cclxuXHJcbiNmb290ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZTRlNGU0O1xyXG59XHJcblxyXG4jY29udGFpbmVyIHtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4iXSwic291cmNlUm9vdCI6IiJ9*/