@import url(https://fonts.googleapis.com/icon?family=Material+Icons|Material+Icons+Outlined);
@charset "UTF-8";
@font-face {
  font-family: "Montserrat";
  src: url(/build/fonts/Montserrat-Regular.3cd78665.ttf) format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Open Sans";
  src: url(/build/fonts/OpenSans-Regular.1b0809d5.ttf) format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "PT Serif";
  src: url(/build/fonts/PTSerif-Regular.322d97f9.ttf) format("truetype");
  font-weight: normal;
  font-style: normal;
}

/**
   COULEURS
*/
/**
   Responsive
 */
.mdc-button {
  font-family: Roboto, 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;
  padding: 0 8px 0 8px;
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 64px;
  height: 36px;
  border: none;
  outline: none;
  /* @alternate */
  line-height: inherit;
  user-select: none;
  -webkit-appearance: none;
  overflow: hidden;
  vertical-align: middle;
  border-radius: 4px;
}

.mdc-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mdc-button:active {
  outline: none;
}

.mdc-button:hover {
  cursor: pointer;
}

.mdc-button:disabled {
  background-color: transparent;
  color: rgba(0, 0, 0, 0.37);
  cursor: default;
  pointer-events: none;
}

.mdc-button.mdc-button--dense {
  border-radius: 4px;
}

.mdc-button:not(:disabled) {
  background-color: transparent;
}

.mdc-button .mdc-button__icon {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: 8px;
  display: inline-block;
  width: 18px;
  height: 18px;
  font-size: 18px;
  vertical-align: top;
}

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

.mdc-button:not(:disabled) {
  color: #6200ee;
  /* @alternate */
  color: var(--mdc-theme-primary, #6200ee);
}

.mdc-button__label + .mdc-button__icon {
  /* @noflip */
  margin-left: 8px;
  /* @noflip */
  margin-right: 0;
}

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

svg.mdc-button__icon {
  fill: currentColor;
}

.mdc-button--raised .mdc-button__icon,
.mdc-button--unelevated .mdc-button__icon,
.mdc-button--outlined .mdc-button__icon {
  /* @noflip */
  margin-left: -4px;
  /* @noflip */
  margin-right: 8px;
}

[dir="rtl"] .mdc-button--raised .mdc-button__icon, .mdc-button--raised .mdc-button__icon[dir="rtl"], [dir="rtl"]
.mdc-button--unelevated .mdc-button__icon,
.mdc-button--unelevated .mdc-button__icon[dir="rtl"], [dir="rtl"]
.mdc-button--outlined .mdc-button__icon,
.mdc-button--outlined .mdc-button__icon[dir="rtl"] {
  /* @noflip */
  margin-left: 8px;
  /* @noflip */
  margin-right: -4px;
}

.mdc-button--raised .mdc-button__label + .mdc-button__icon,
.mdc-button--unelevated .mdc-button__label + .mdc-button__icon,
.mdc-button--outlined .mdc-button__label + .mdc-button__icon {
  /* @noflip */
  margin-left: 8px;
  /* @noflip */
  margin-right: -4px;
}

[dir="rtl"] .mdc-button--raised .mdc-button__label + .mdc-button__icon, .mdc-button--raised .mdc-button__label + .mdc-button__icon[dir="rtl"], [dir="rtl"]
.mdc-button--unelevated .mdc-button__label + .mdc-button__icon,
.mdc-button--unelevated .mdc-button__label + .mdc-button__icon[dir="rtl"], [dir="rtl"]
.mdc-button--outlined .mdc-button__label + .mdc-button__icon,
.mdc-button--outlined .mdc-button__label + .mdc-button__icon[dir="rtl"] {
  /* @noflip */
  margin-left: -4px;
  /* @noflip */
  margin-right: 8px;
}

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

.mdc-button--raised:disabled,
.mdc-button--unelevated:disabled {
  background-color: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.37);
}

.mdc-button--raised:not(:disabled),
.mdc-button--unelevated:not(:disabled) {
  background-color: #6200ee;
}

@supports not (-ms-ime-align: auto) {
  .mdc-button--raised:not(:disabled),
  .mdc-button--unelevated:not(:disabled) {
    /* @alternate */
    background-color: var(--mdc-theme-primary, #6200ee);
  }
}

.mdc-button--raised:not(:disabled),
.mdc-button--unelevated:not(:disabled) {
  color: #fff;
  /* @alternate */
  color: var(--mdc-theme-on-primary, #fff);
}

.mdc-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);
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
}

.mdc-button--raised:hover, .mdc-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);
}

.mdc-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);
}

.mdc-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);
}

.mdc-button--outlined {
  border-style: solid;
  padding: 0 15px 0 15px;
  border-width: 1px;
}

.mdc-button--outlined:disabled {
  border-color: rgba(0, 0, 0, 0.37);
}

.mdc-button--outlined:not(:disabled) {
  border-color: #6200ee;
  /* @alternate */
  border-color: var(--mdc-theme-primary, #6200ee);
}

.mdc-button--dense {
  height: 32px;
  font-size: .8125rem;
}

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

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

@keyframes mdc-ripple-fg-opacity-out {
  from {
    animation-timing-function: linear;
    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);
}

.mdc-button {
  --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);
}

.mdc-button::before, .mdc-button::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-button::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-button.mdc-ripple-upgraded::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-button.mdc-ripple-upgraded::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-button.mdc-ripple-upgraded--unbounded::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-button.mdc-ripple-upgraded--foreground-activation::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-button.mdc-ripple-upgraded--foreground-deactivation::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-button::before, .mdc-button::after {
  top: calc(50% - 100%);
  /* @noflip */
  left: calc(50% - 100%);
  width: 200%;
  height: 200%;
}

.mdc-button.mdc-ripple-upgraded::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-button::before, .mdc-button::after {
  background-color: #6200ee;
}

@supports not (-ms-ime-align: auto) {
  .mdc-button::before, .mdc-button::after {
    /* @alternate */
    background-color: var(--mdc-theme-primary, #6200ee);
  }
}

.mdc-button:hover::before {
  opacity: 0.04;
}

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

.mdc-button:not(.mdc-ripple-upgraded)::after {
  transition: opacity 150ms linear;
}

.mdc-button:not(.mdc-ripple-upgraded):active::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-button.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

.mdc-button--raised::before, .mdc-button--raised::after,
.mdc-button--unelevated::before,
.mdc-button--unelevated::after {
  background-color: #fff;
}

@supports not (-ms-ime-align: auto) {
  .mdc-button--raised::before, .mdc-button--raised::after,
  .mdc-button--unelevated::before,
  .mdc-button--unelevated::after {
    /* @alternate */
    background-color: var(--mdc-theme-on-primary, #fff);
  }
}

.mdc-button--raised:hover::before,
.mdc-button--unelevated:hover::before {
  opacity: 0.08;
}

.mdc-button--raised.mdc-ripple-upgraded--background-focused::before, .mdc-button--raised:not(.mdc-ripple-upgraded):focus::before,
.mdc-button--unelevated.mdc-ripple-upgraded--background-focused::before,
.mdc-button--unelevated:not(.mdc-ripple-upgraded):focus::before {
  transition-duration: 75ms;
  opacity: 0.24;
}

.mdc-button--raised:not(.mdc-ripple-upgraded)::after,
.mdc-button--unelevated:not(.mdc-ripple-upgraded)::after {
  transition: opacity 150ms linear;
}

.mdc-button--raised:not(.mdc-ripple-upgraded):active::after,
.mdc-button--unelevated:not(.mdc-ripple-upgraded):active::after {
  transition-duration: 75ms;
  opacity: 0.24;
}

.mdc-button--raised.mdc-ripple-upgraded,
.mdc-button--unelevated.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.24;
}

html,
body {
  margin: 0;
  padding: 0;
}

a {
  text-decoration: none;
}

h1, h2 {
  font-family: "PT Serif", "Times New Roman", serif;
}

h1 {
  font-size: 2.5em;
  color: #573D1C;
  text-transform: uppercase;
  font-weight: normal;
}

h2 {
  font-size: 2em;
  color: #573D1C;
  font-weight: normal;
}

h3 {
  font-size: 1.3em;
  font-family: 'Montserrat', sans-serif;
  color: #666;
  margin-bottom: 0;
  font-weight: 400;
}

p,
ul > li {
  font-family: "Open Sans", sans-serif;
}

p {
  line-height: 1.5em;
  text-align: justify;
}

main {
  min-height: 600px;
}

.flex-row, .header_logo, .header_nav-bar .nav-bar_items, .header_basket .count, .footer_nav-bar .footer_logo, .footer_nav-bar .nav-bar_items, .footer_nav-bar .nav-bar_payment-methods, .form_input-group, .shop, .file_ariane, .foalting-basket .count, .product, .product_images .list-photo, .product-details.product-details__simple, .product-details.product-details__simple .product-details_choices {
  display: flex;
  flex-direction: row;
}

.flex-column, .form, .form_radio-group, .shop_nav ul, .product_images, .product-details.product-details__simple .product-details_option {
  display: flex;
  flex-direction: column;
}

.flex-center-center, .header_logo, .header_basket .count, .footer_nav-bar .footer_logo, .footer_nav-bar .nav-bar_items, .footer_nav-bar .nav-bar_payment-methods, .form .choice-simple, .foalting-basket .count {
  justify-content: center;
  align-items: center;
}

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

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

.text-justify h1, .text-justify h2, .text-justify h3 {
  text-align: initial;
}

.container_center, .file_ariane {
  width: 90%;
  max-width: 850px;
  margin: 0 auto 3em;
}

.separateur {
  display: block;
  width: 100%;
  border-bottom: solid 1px lightgray;
}

.separateur.separateur__vertical {
  height: 200px;
  width: 0;
  border-left: solid 1px lightgray;
}

.main__header-padding {
  padding-top: 120px;
}

@media (max-width: 767px) {
  .main__header-padding {
    padding-top: 72px;
  }
}

/**
   Background center cover
 */
.container-background, .header-banniere, .product_images .cover, .product_images .list-photo li, .product-details .choice-buckle_img, .product-details .choice-color_img {
  position: relative;
  overflow: hidden;
}

.container-background img, .header-banniere img, .product_images .cover img, .product_images .list-photo li img, .product-details .choice-buckle_img img, .product-details .choice-color_img img {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  object-fit: cover;
  object-position: center;
}

/**
   Header avec le fond et la catch phrase
 */
.header-banniere_content {
  font-size: 2.5em;
  text-transform: uppercase;
  font-weight: normal;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 100px 0;
  margin: 0;
  color: #fff;
}

/**
   Loader Spinner
 */
.spinner-dual-ring {
  display: inline-block;
  width: 64px;
  height: 64px;
}

.spinner-dual-ring:after {
  content: " ";
  display: block;
  width: 46px;
  height: 46px;
  margin: 1px;
  border-radius: 50%;
  border: 5px solid #CC6600;
  border-color: #CC6600 transparent #CC6600 transparent;
  animation: lds-dual-ring 1.2s linear infinite;
}

@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/**
   Style du bouton
 */
.mdc-button:not(:disabled) {
  color: #CC6600;
}

.mdc-button--outlined:not(:disabled) {
  border-color: #CC6600;
}

.mdc-button::before, .mdc-button::after {
  background-color: #CC6600;
}

.mdc-button--raised {
  background-color: #CC6600 !important;
  color: white !important;
}

/**
   Bandeau Alert Cookies
 */
.alert-cookies {
  z-index: 10;
  display: none;
  position: fixed;
  bottom: 0;
  width: 100%;
  background-color: white;
  color: #573D1C;
  border-top: solid 2px #CC6600;
  padding: 15px 20px;
  box-sizing: border-box;
}

.alert-cookies p {
  flex: 4;
}

.alert-cookies_actions {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 767px) {
  .alert-cookies {
    flex-direction: column;
  }
}

/**
   ToolTip
 */
.tooltip {
  position: relative;
}

.tooltip .tooltiptext {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  z-index: 1;
  top: calc(100% + 10px);
  left: 50%;
  transform: translate(-50%);
  width: 120px;
  padding: 5px;
  border-radius: 6px;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.9em;
  color: #fff;
  text-align: center;
  background-color: #78909C;
}

.tooltip .tooltiptext:after {
  content: " ";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #78909C transparent;
}

.tooltip:hover .tooltiptext {
  animation: tooltip-animation ease-in-out 0.3s;
  visibility: visible;
  opacity: 1;
}

@keyframes tooltip-animation {
  from {
    visibility: hidden;
    opacity: 0;
  }
  to {
    visibility: visible;
    opacity: 1;
  }
}

/**
    HEADER
 */
header {
  position: fixed;
  background-color: white;
  width: 100%;
  z-index: 2;
}

/**
   Logo Jollet dans le header
*/
.header_logo {
  height: 70px;
}

.header_logo svg {
  height: 40px;
}

.header_logo label {
  display: none;
  cursor: pointer;
  padding: 5px;
  position: absolute;
  right: 35px;
}

.header_logo label span {
  display: block;
  width: 25px;
  margin: 5px 0;
}

.header_logo label span:after {
  content: '';
  display: block;
  width: 25px;
  height: 2px;
  background-color: #573D1C;
}

/**
   Burger menu du mode téléphone
*/
#header_toggle {
  display: none;
}

#header_toggle:checked + .header_logo label span:nth-child(1):after {
  transform: translateY(-50%) rotate(45deg);
  top: 50%;
  position: absolute;
}

#header_toggle:checked + .header_logo label span:nth-child(2):after {
  visibility: hidden;
}

#header_toggle:checked + .header_logo label span:nth-child(3):after {
  transform: translateY(-50%) rotate(-45deg);
  top: 50%;
  position: absolute;
}

/**
   Menu de navigation
*/
.header_nav-bar {
  display: flex;
  justify-content: center;
  border-bottom: solid 2px #573D1C;
}

.header_nav-bar .nav-bar_items {
  list-style: none;
  margin: 0 0 25px 0;
  padding: 0;
}

.header_nav-bar .nav-bar_items li {
  min-width: 150px;
  text-align: center;
  text-transform: uppercase;
  font-family: "PT Serif", "Times New Roman", serif;
}

.header_nav-bar .nav-bar_items li a {
  color: #573D1C;
  font-size: 1.1em;
  background: linear-gradient(to top, #573D1C 0%, #573D1C 2px, transparent 2px) no-repeat;
  background-size: 0 100%;
  transition: background-size 0.3s;
}

.header_nav-bar .nav-bar_items li a.active, .header_nav-bar .nav-bar_items li a:hover {
  background-size: 100% 100%;
}

/**
   Panier de la boutique 
   (visible que dans la boutique)
*/
.header_basket {
  margin: 0 15px;
  position: absolute;
  right: 0;
  bottom: 5px;
}

.header_basket .count {
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background-color: #d63030;
  border-radius: 50%;
  color: white;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  font-size: 0.8em;
}

.header_basket_empty .count {
  display: none;
}

.header_basket_up .count {
  animation: count-zoom 3s forwards 1;
}

@media (max-width: 767px) {
  .header_basket {
    display: none;
  }
}

@keyframes count-zoom {
  0% {
    transform: scale(1);
  }
  10% {
    transform: scale(1.5);
  }
  30% {
    transform: scale(1);
  }
}

/**
   SPECIAL POUR LA HOME PAGE
 */
header.header__home-page {
  position: absolute;
  background-color: transparent;
  width: 600px;
  right: 0;
}

header.header__home-page .header_logo {
  display: none;
}

header.header__home-page .header_nav-bar {
  border: none;
}

header.header__home-page .header_nav-bar .nav-bar_items {
  margin: 30px 0 0;
}

header.header__home-page .header_nav-bar .nav-bar_items a {
  color: white;
  background: linear-gradient(to top, #fff 0%, #fff 2px, transparent 2px) no-repeat;
  background-size: 0 100%;
}

header.header__home-page .header_nav-bar .nav-bar_items a:hover {
  background-size: 100% 100%;
}

@media (max-width: 767px) {
  header.header__home-page {
    position: fixed;
    background-color: white;
    width: 100%;
    z-index: 2;
  }
  header.header__home-page .header_logo {
    display: flex;
  }
  header.header__home-page .header_nav-bar {
    border: none;
  }
  header.header__home-page .header_nav-bar .nav-bar_items {
    margin: 0 0 25px 0;
  }
  header.header__home-page .header_nav-bar .nav-bar_items a {
    color: #573D1C;
    background: linear-gradient(to top, #573D1C 0%, #573D1C 2px, transparent 2px) no-repeat;
    background-size: 0 100%;
    transition: background-size 0.3s;
  }
  header.header__home-page .header_nav-bar .nav-bar_items a.active, header.header__home-page .header_nav-bar .nav-bar_items a:hover {
    background-size: 100% 100%;
  }
}

/**
   RESPONSIVE
 */
@media (max-width: 767px) {
  .header_logo label {
    display: block;
  }
  .header_nav-bar {
    overflow: hidden;
    height: 0px;
    transition: height 0.3s ease-out;
  }
  .header_nav-bar .nav-bar_items {
    flex-direction: column;
    justify-content: space-around;
    margin: 0;
    margin-bottom: 10px;
  }
  .header_nav-bar .nav-bar_items li {
    margin: 10px 0;
  }
  #header_toggle:checked ~ .header_nav-bar {
    height: 215px;
  }
}

footer {
  background-color: #573D1C;
  padding: 20px 0;
  margin-top: 30px;
}

footer .text-center {
  color: white;
  font-family: Montserrat, "Open Sans", sans-serif;
}

.footer_nav-bar .footer_logo svg {
  height: 59px;
}

.footer_nav-bar .footer_logo svg * {
  fill: white !important;
}

.footer_nav-bar .nav-bar_items {
  list-style: none;
  margin: 25px 0;
  padding: 0;
}

.footer_nav-bar .nav-bar_items li {
  min-width: 150px;
  text-align: center;
  font-family: Montserrat, "Open Sans", sans-serif;
}

.footer_nav-bar .nav-bar_items li a {
  color: white;
}

.footer_nav-bar .nav-bar_items li a:hover {
  text-decoration: underline;
}

.footer_nav-bar .nav-bar_items li svg {
  max-width: 30px;
}

.footer_nav-bar .nav-bar_items li:nth-child(1) a:hover * {
  fill: cornflowerblue !important;
}

.footer_nav-bar .nav-bar_items li:nth-child(2) a:hover * {
  fill: beige !important;
}

.footer_nav-bar .nav-bar_payment-methods {
  margin-bottom: 10px;
}

.footer_nav-bar .nav-bar_payment-methods img {
  max-height: 50px;
  max-width: 120px;
}

@media (max-width: 767px) {
  .footer_nav-bar .nav-bar_payment-methods {
    margin-bottom: 20px;
  }
}

/**
   RESPONSIVE
 */
@media (max-width: 767px) {
  .footer_nav-bar .nav-bar_items:nth-child(2) {
    flex-direction: column;
  }
  .footer_nav-bar .nav-bar_items:nth-child(2) li {
    margin-bottom: 15px;
  }
}

.mdc-touch-target-wrapper {
  display: inline;
}

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

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

@keyframes mdc-checkbox-checked-unchecked-checkmark-path {
  from {
    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-indeterminate-checkmark {
  from {
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transform: rotate(0deg);
    opacity: 1;
  }
  to {
    transform: rotate(45deg);
    opacity: 0;
  }
}

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

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

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

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

.mdc-checkbox {
  display: inline-block;
  position: relative;
  flex: 0 0 18px;
  box-sizing: content-box;
  width: 18px;
  height: 18px;
  line-height: 0;
  white-space: nowrap;
  cursor: pointer;
  vertical-align: bottom;
  padding: 11px;
}

.mdc-checkbox .mdc-checkbox__native-control:checked ~ .mdc-checkbox__background::before,
.mdc-checkbox .mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background::before {
  background-color: #018786;
}

@supports not (-ms-ime-align: auto) {
  .mdc-checkbox .mdc-checkbox__native-control:checked ~ .mdc-checkbox__background::before,
  .mdc-checkbox .mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background::before {
    /* @alternate */
    background-color: var(--mdc-theme-secondary, #018786);
  }
}

.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before, .mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after {
  background-color: #018786;
}

@supports not (-ms-ime-align: auto) {
  .mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before, .mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after {
    /* @alternate */
    background-color: var(--mdc-theme-secondary, #018786);
  }
}

.mdc-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before {
  opacity: 0.04;
}

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

.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after {
  transition: opacity 150ms linear;
}

.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before,
.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after {
  background-color: #018786;
}

@supports not (-ms-ime-align: auto) {
  .mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before,
  .mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after {
    /* @alternate */
    background-color: var(--mdc-theme-secondary, #018786);
  }
}

.mdc-checkbox .mdc-checkbox__background {
  top: 11px;
  left: 11px;
}

.mdc-checkbox .mdc-checkbox__background::before {
  top: -13px;
  left: -13px;
  width: 40px;
  height: 40px;
}

.mdc-checkbox .mdc-checkbox__native-control {
  top: 0px;
  right: 0px;
  left: 0px;
  width: 40px;
  height: 40px;
}

.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: #018786;
  /* @alternate */
  border-color: var(--mdc-theme-secondary, #018786);
  background-color: #018786;
  /* @alternate */
  background-color: var(--mdc-theme-secondary, #018786);
}

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

@keyframes mdc-checkbox-fade-out-background-ufaee0d04 {
  0%,
  80% {
    border-color: #018786;
    /* @alternate */
    border-color: var(--mdc-theme-secondary, #018786);
    background-color: #018786;
    /* @alternate */
    background-color: var(--mdc-theme-secondary, #018786);
  }
  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 {
  animation-name: mdc-checkbox-fade-in-background-ufaee0d04;
}

.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 {
  animation-name: mdc-checkbox-fade-out-background-ufaee0d04;
}

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

.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);
}

.mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background .mdc-checkbox__checkmark {
  color: #fff;
}

.mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {
  border-color: #fff;
}

.mdc-checkbox__native-control:disabled ~ .mdc-checkbox__background .mdc-checkbox__checkmark {
  color: #fff;
}

.mdc-checkbox__native-control:disabled ~ .mdc-checkbox__background .mdc-checkbox__mixedmark {
  border-color: #fff;
}

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

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

.mdc-checkbox__background {
  display: inline-flex;
  position: absolute;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 18px;
  height: 18px;
  border: 2px solid currentColor;
  border-radius: 2px;
  background-color: transparent;
  pointer-events: none;
  will-change: background-color, border-color;
  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);
}

.mdc-checkbox__background .mdc-checkbox__background::before {
  background-color: #000;
}

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

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

.mdc-checkbox--upgraded .mdc-checkbox__checkmark {
  opacity: 1;
}

.mdc-checkbox__checkmark-path {
  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;
  transform: scaleX(0) rotate(0deg);
  border-width: 1px;
  border-style: solid;
  opacity: 0;
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.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 {
  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 {
  animation-duration: 180ms;
  animation-timing-function: linear;
}

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

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

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

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

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

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

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

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

.mdc-checkbox__native-control:checked ~ .mdc-checkbox__background,
.mdc-checkbox__native-control:indeterminate ~ .mdc-checkbox__background {
  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;
  transform: scale(0, 0);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
  will-change: opacity, transform;
  transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

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

.mdc-checkbox__native-control {
  position: absolute;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: inherit;
}

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

.mdc-checkbox--touch {
  margin-top: 4px;
  margin-bottom: 4px;
  margin-right: 4px;
  margin-left: 4px;
}

.mdc-checkbox--touch .mdc-checkbox__native-control {
  top: -4px;
  right: -4px;
  left: -4px;
  width: 48px;
  height: 48px;
}

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

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

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

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

.mdc-checkbox {
  --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);
}

.mdc-checkbox .mdc-checkbox__ripple::before,
.mdc-checkbox .mdc-checkbox__ripple::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-checkbox .mdc-checkbox__ripple::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-checkbox.mdc-ripple-upgraded--unbounded .mdc-checkbox__ripple::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-checkbox.mdc-ripple-upgraded--foreground-activation .mdc-checkbox__ripple::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-checkbox.mdc-ripple-upgraded--foreground-deactivation .mdc-checkbox__ripple::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-checkbox .mdc-checkbox__ripple::before,
.mdc-checkbox .mdc-checkbox__ripple::after {
  background-color: #000;
}

@supports not (-ms-ime-align: auto) {
  .mdc-checkbox .mdc-checkbox__ripple::before,
  .mdc-checkbox .mdc-checkbox__ripple::after {
    /* @alternate */
    background-color: var(--mdc-theme-on-surface, #000);
  }
}

.mdc-checkbox:hover .mdc-checkbox__ripple::before {
  opacity: 0.04;
}

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

.mdc-checkbox:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after {
  transition: opacity 150ms linear;
}

.mdc-checkbox:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-checkbox.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

.mdc-checkbox .mdc-checkbox__ripple::before,
.mdc-checkbox .mdc-checkbox__ripple::after {
  top: calc(50% - 50%);
  /* @noflip */
  left: calc(50% - 50%);
  width: 100%;
  height: 100%;
}

.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::before,
.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after {
  top: var(--mdc-ripple-top, calc(50% - 50%));
  /* @noflip */
  left: var(--mdc-ripple-left, calc(50% - 50%));
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-checkbox__ripple {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

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

.mdc-form-field, .form_checkbox-group {
  font-family: Roboto, 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: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
}

.mdc-form-field > label, .form_checkbox-group > label {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: auto;
  /* @noflip */
  padding-left: 4px;
  /* @noflip */
  padding-right: 0;
  order: 0;
}

[dir="rtl"] .mdc-form-field > label, [dir="rtl"] .form_checkbox-group > label, .mdc-form-field > label[dir="rtl"], .form_checkbox-group > label[dir="rtl"] {
  /* @noflip */
  margin-left: auto;
  /* @noflip */
  margin-right: 0;
}

[dir="rtl"] .mdc-form-field > label, [dir="rtl"] .form_checkbox-group > label, .mdc-form-field > label[dir="rtl"], .form_checkbox-group > label[dir="rtl"] {
  /* @noflip */
  padding-left: 0;
  /* @noflip */
  padding-right: 4px;
}

.mdc-form-field--align-end > label {
  /* @noflip */
  margin-left: auto;
  /* @noflip */
  margin-right: 0;
  /* @noflip */
  padding-left: 0;
  /* @noflip */
  padding-right: 4px;
  order: -1;
}

[dir="rtl"] .mdc-form-field--align-end > label, .mdc-form-field--align-end > label[dir="rtl"] {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: auto;
}

[dir="rtl"] .mdc-form-field--align-end > label, .mdc-form-field--align-end > label[dir="rtl"] {
  /* @noflip */
  padding-left: 4px;
  /* @noflip */
  padding-right: 0;
}

.mdc-icon-button {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  border: none;
  outline: none;
  background-color: transparent;
  fill: currentColor;
  color: inherit;
  font-size: 24px;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  width: 48px;
  height: 48px;
  padding: 12px;
}

.mdc-icon-button svg,
.mdc-icon-button img {
  width: 24px;
  height: 24px;
}

.mdc-icon-button:disabled {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
  cursor: default;
  pointer-events: none;
}

.mdc-icon-button__icon {
  display: inline-block;
}

.mdc-icon-button__icon.mdc-icon-button__icon--on {
  display: none;
}

.mdc-icon-button--on .mdc-icon-button__icon {
  display: none;
}

.mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on {
  display: inline-block;
}

.mdc-icon-button {
  --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);
}

.mdc-icon-button::before, .mdc-icon-button::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-icon-button::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-icon-button.mdc-ripple-upgraded::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-icon-button.mdc-ripple-upgraded::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-icon-button.mdc-ripple-upgraded--unbounded::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-icon-button.mdc-ripple-upgraded--foreground-activation::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-icon-button.mdc-ripple-upgraded--foreground-deactivation::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-icon-button::before, .mdc-icon-button::after {
  top: calc(50% - 50%);
  /* @noflip */
  left: calc(50% - 50%);
  width: 100%;
  height: 100%;
}

.mdc-icon-button.mdc-ripple-upgraded::before, .mdc-icon-button.mdc-ripple-upgraded::after {
  top: var(--mdc-ripple-top, calc(50% - 50%));
  /* @noflip */
  left: var(--mdc-ripple-left, calc(50% - 50%));
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-icon-button.mdc-ripple-upgraded::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-icon-button::before, .mdc-icon-button::after {
  background-color: #000;
}

.mdc-icon-button:hover::before {
  opacity: 0.04;
}

.mdc-icon-button.mdc-ripple-upgraded--background-focused::before, .mdc-icon-button:not(.mdc-ripple-upgraded):focus::before {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-icon-button:not(.mdc-ripple-upgraded)::after {
  transition: opacity 150ms linear;
}

.mdc-icon-button:not(.mdc-ripple-upgraded):active::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-icon-button.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

.mdc-radio {
  padding: 10px;
  display: inline-block;
  position: relative;
  flex: 0 0 auto;
  box-sizing: content-box;
  width: 20px;
  height: 20px;
  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 {
  border-color: rgba(0, 0, 0, 0.54);
}

.mdc-radio .mdc-radio__native-control:enabled:checked + .mdc-radio__background .mdc-radio__outer-circle {
  border-color: #018786;
  /* @alternate */
  border-color: var(--mdc-theme-secondary, #018786);
}

.mdc-radio .mdc-radio__native-control:enabled + .mdc-radio__background .mdc-radio__inner-circle {
  border-color: #018786;
  /* @alternate */
  border-color: var(--mdc-theme-secondary, #018786);
}

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

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

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

.mdc-radio .mdc-radio__background::before {
  background-color: #018786;
}

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

.mdc-radio .mdc-radio__background::before {
  top: -10px;
  left: -10px;
  width: 40px;
  height: 40px;
}

.mdc-radio .mdc-radio__native-control {
  top: 0px;
  right: 0px;
  left: 0px;
  width: 40px;
  height: 40px;
}

.mdc-radio__background {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
}

.mdc-radio__background::before {
  position: absolute;
  transform: scale(0, 0);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
  transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-radio__outer-circle {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border-width: 2px;
  border-style: solid;
  border-radius: 50%;
  transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-radio__inner-circle {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  transform: scale(0, 0);
  border-width: 10px;
  border-style: solid;
  border-radius: 50%;
  transition: transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-radio__native-control {
  position: absolute;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: inherit;
  z-index: 1;
}

.mdc-radio--touch {
  margin-top: 4px;
  margin-bottom: 4px;
  margin-right: 4px;
  margin-left: 4px;
}

.mdc-radio--touch .mdc-radio__native-control {
  top: -4px;
  right: -4px;
  left: -4px;
  width: 48px;
  height: 48px;
}

.mdc-radio__native-control:checked + .mdc-radio__background,
.mdc-radio__native-control:disabled + .mdc-radio__background {
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), 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 {
  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 {
  transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 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 {
  transform: scale(0.5);
  transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), border-color 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:focus + .mdc-radio__background::before {
  transform: scale(1);
  opacity: 0.12;
  transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-radio {
  --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);
}

.mdc-radio .mdc-radio__ripple::before,
.mdc-radio .mdc-radio__ripple::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-radio .mdc-radio__ripple::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-radio.mdc-ripple-upgraded--unbounded .mdc-radio__ripple::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-radio.mdc-ripple-upgraded--foreground-activation .mdc-radio__ripple::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-radio.mdc-ripple-upgraded--foreground-deactivation .mdc-radio__ripple::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-radio .mdc-radio__ripple::before,
.mdc-radio .mdc-radio__ripple::after {
  top: calc(50% - 50%);
  /* @noflip */
  left: calc(50% - 50%);
  width: 100%;
  height: 100%;
}

.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::before,
.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::after {
  top: var(--mdc-ripple-top, calc(50% - 50%));
  /* @noflip */
  left: var(--mdc-ripple-left, calc(50% - 50%));
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-radio.mdc-ripple-upgraded .mdc-radio__ripple::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-radio .mdc-radio__ripple::before,
.mdc-radio .mdc-radio__ripple::after {
  background-color: #018786;
}

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

.mdc-radio:hover .mdc-radio__ripple::before {
  opacity: 0.04;
}

.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__ripple::before, .mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__ripple::before {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-radio:not(.mdc-ripple-upgraded) .mdc-radio__ripple::after {
  transition: opacity 150ms linear;
}

.mdc-radio:not(.mdc-ripple-upgraded):active .mdc-radio__ripple::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-radio.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

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

.mdc-radio__ripple {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

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

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

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

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

.mdc-notched-outline {
  display: flex;
  position: absolute;
  right: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  height: 100%;
  /* @noflip */
  text-align: left;
  pointer-events: none;
}

[dir="rtl"] .mdc-notched-outline, .mdc-notched-outline[dir="rtl"] {
  /* @noflip */
  text-align: right;
}

.mdc-notched-outline__leading, .mdc-notched-outline__notch, .mdc-notched-outline__trailing {
  box-sizing: border-box;
  height: 100%;
  transition: border 150ms cubic-bezier(0.4, 0, 0.2, 1);
  border-top: 1px solid;
  border-bottom: 1px solid;
  pointer-events: none;
}

.mdc-notched-outline__leading {
  /* @noflip */
  border-left: 1px solid;
  /* @noflip */
  border-right: none;
  width: 12px;
}

[dir="rtl"] .mdc-notched-outline__leading, .mdc-notched-outline__leading[dir="rtl"] {
  /* @noflip */
  border-left: none;
  /* @noflip */
  border-right: 1px solid;
}

.mdc-notched-outline__trailing {
  /* @noflip */
  border-left: none;
  /* @noflip */
  border-right: 1px solid;
  flex-grow: 1;
}

[dir="rtl"] .mdc-notched-outline__trailing, .mdc-notched-outline__trailing[dir="rtl"] {
  /* @noflip */
  border-left: 1px solid;
  /* @noflip */
  border-right: none;
}

.mdc-notched-outline__notch {
  flex: 0 0 auto;
  width: auto;
  max-width: calc(100% - 12px * 2);
}

.mdc-notched-outline .mdc-floating-label {
  display: inline-block;
  position: relative;
  top: 17px;
  bottom: auto;
  max-width: 100%;
}

.mdc-notched-outline .mdc-floating-label--float-above {
  text-overflow: clip;
}

.mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  max-width: calc(100% / .75);
}

.mdc-notched-outline--notched .mdc-notched-outline__notch {
  /* @noflip */
  padding-left: 0;
  /* @noflip */
  padding-right: 8px;
  border-top: none;
}

[dir="rtl"] .mdc-notched-outline--notched .mdc-notched-outline__notch, .mdc-notched-outline--notched .mdc-notched-outline__notch[dir="rtl"] {
  /* @noflip */
  padding-left: 8px;
  /* @noflip */
  padding-right: 0;
}

.mdc-notched-outline--no-label .mdc-notched-outline__notch {
  padding: 0;
}

.mdc-floating-label {
  font-family: Roboto, 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;
  /* @noflip */
  left: 0;
  /* @noflip */
  transform-origin: left top;
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1), color 150ms cubic-bezier(0.4, 0, 0.2, 1);
  /* @alternate */
  line-height: 1.15rem;
  text-align: left;
  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 */
  transform-origin: right top;
  /* @noflip */
  text-align: right;
}

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

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

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

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

.mdc-select--with-leading-icon:not(.mdc-select--disabled) .mdc-select__icon {
  color: #000;
  /* @alternate */
  color: var(--mdc-theme-on-surface, #000);
}

.mdc-select--with-leading-icon .mdc-select__icon {
  display: inline-block;
  position: absolute;
  bottom: 16px;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  border: none;
  background-color: transparent;
  fill: currentColor;
  opacity: 0.54;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
}

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

.mdc-select-helper-text {
  font-family: Roboto, 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;
  /* @alternate */
  line-height: normal;
  margin: 0;
  transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  will-change: opacity;
}

.mdc-select-helper-text::before {
  display: inline-block;
  width: 0;
  height: 16px;
  content: "";
  vertical-align: 0;
}

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

.mdc-select {
  --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);
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 56px;
  overflow: hidden;
  /* @alternate */
  will-change: opacity, transform, color;
}

.mdc-select:not(.mdc-select--disabled) {
  background-color: whitesmoke;
}

.mdc-select::before, .mdc-select::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-select::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-select.mdc-ripple-upgraded::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-select.mdc-ripple-upgraded::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-select.mdc-ripple-upgraded--unbounded::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-select.mdc-ripple-upgraded--foreground-activation::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-select.mdc-ripple-upgraded--foreground-deactivation::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-select::before, .mdc-select::after {
  top: calc(50% - 100%);
  /* @noflip */
  left: calc(50% - 100%);
  width: 200%;
  height: 200%;
}

.mdc-select.mdc-ripple-upgraded::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-select::before, .mdc-select::after {
  background-color: rgba(0, 0, 0, 0.87);
}

.mdc-select:hover::before {
  opacity: 0.04;
}

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

.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control,
.mdc-select:not(.mdc-select--disabled) .mdc-select__selected-text {
  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,
.mdc-select:not(.mdc-select--disabled) .mdc-select__selected-text {
  border-bottom-color: rgba(0, 0, 0, 0.42);
}

.mdc-select:not(.mdc-select--disabled) + .mdc-select-helper-text {
  color: rgba(0, 0, 0, 0.6);
}

.mdc-select, .mdc-select__native-control {
  border-radius: 4px 4px 0 0;
}

.mdc-select:not(.mdc-select--disabled).mdc-select--focused .mdc-line-ripple {
  background-color: #6200ee;
  /* @alternate */
  background-color: var(--mdc-theme-primary, #6200ee);
}

.mdc-select:not(.mdc-select--disabled).mdc-select--focused .mdc-floating-label {
  color: rgba(98, 0, 238, 0.87);
}

.mdc-select:not(.mdc-select--disabled) .mdc-select__native-control:hover {
  border-bottom-color: rgba(0, 0, 0, 0.87);
}

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

.mdc-select .mdc-floating-label {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: initial;
  top: 21px;
  pointer-events: none;
}

[dir="rtl"] .mdc-select .mdc-floating-label, .mdc-select .mdc-floating-label[dir="rtl"] {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 16px;
}

.mdc-select.mdc-select--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 48px;
  /* @noflip */
  right: initial;
}

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

.mdc-select.mdc-select--outlined .mdc-floating-label {
  /* @noflip */
  left: 4px;
  /* @noflip */
  right: initial;
  top: 17px;
}

[dir="rtl"] .mdc-select.mdc-select--outlined .mdc-floating-label, .mdc-select.mdc-select--outlined .mdc-floating-label[dir="rtl"] {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 4px;
}

.mdc-select.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 36px;
  /* @noflip */
  right: initial;
}

[dir="rtl"] .mdc-select.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label, .mdc-select.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label[dir="rtl"] {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 36px;
}

.mdc-select.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above {
  /* @noflip */
  left: 36px;
  /* @noflip */
  right: initial;
}

[dir="rtl"] .mdc-select.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above, .mdc-select.mdc-select--outlined.mdc-select--with-leading-icon .mdc-floating-label--float-above[dir="rtl"] {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 36px;
}

.mdc-select__dropdown-icon {
  background: 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%23000%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") no-repeat center;
  /* @noflip */
  left: auto;
  /* @noflip */
  right: 8px;
  position: absolute;
  bottom: 16px;
  width: 24px;
  height: 24px;
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

[dir="rtl"] .mdc-select__dropdown-icon, .mdc-select__dropdown-icon[dir="rtl"] {
  /* @noflip */
  left: 8px;
  /* @noflip */
  right: auto;
}

.mdc-select--focused .mdc-select__dropdown-icon {
  background: 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%236200ee%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") no-repeat center;
}

.mdc-select--activated .mdc-select__dropdown-icon {
  transform: rotate(180deg) translateY(-5px);
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.mdc-select__native-control {
  padding-top: 20px;
}

.mdc-select.mdc-select--focused .mdc-line-ripple::after {
  transform: scale(1, 2);
  opacity: 1;
}

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

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

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

.mdc-select__selected-text {
  min-width: 200px;
  padding-top: 22px;
}

.mdc-select__native-control,
.mdc-select__selected-text {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 52px;
  font-family: Roboto, 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;
  box-sizing: border-box;
  width: 100%;
  height: 56px;
  padding-top: 20px;
  padding-bottom: 4px;
  border: none;
  border-bottom: 1px solid;
  outline: none;
  background-color: transparent;
  color: inherit;
  white-space: nowrap;
  cursor: pointer;
  appearance: none;
}

[dir="rtl"] .mdc-select__native-control, .mdc-select__native-control[dir="rtl"], [dir="rtl"]
.mdc-select__selected-text,
.mdc-select__selected-text[dir="rtl"] {
  /* @noflip */
  padding-left: 52px;
  /* @noflip */
  padding-right: 16px;
}

.mdc-select__native-control::-ms-expand,
.mdc-select__selected-text::-ms-expand {
  display: none;
}

.mdc-select__native-control::-ms-value,
.mdc-select__selected-text::-ms-value {
  background-color: transparent;
  color: inherit;
}

@-moz-document url-prefix("") {
  .mdc-select__native-control,
  .mdc-select__selected-text {
    text-indent: -2px;
  }
}

.mdc-select--outlined {
  border: none;
  overflow: visible;
}

.mdc-select--outlined:not(.mdc-select--disabled) {
  background-color: transparent;
}

.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__leading,
.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__notch,
.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.38);
}

.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__trailing,
.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__selected-text:hover ~ .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__selected-text:hover ~ .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__selected-text:hover ~ .mdc-notched-outline .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.87);
}

.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {
  border-width: 2px;
}

.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {
  border-color: #6200ee;
  /* @alternate */
  border-color: var(--mdc-theme-primary, #6200ee);
}

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

.mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading {
  /* @noflip */
  border-radius: 4px 0 0 4px;
}

[dir="rtl"] .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading, .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__leading[dir="rtl"] {
  /* @noflip */
  border-radius: 0 4px 4px 0;
}

.mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__trailing {
  /* @noflip */
  border-radius: 0 4px 4px 0;
}

[dir="rtl"] .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__trailing, .mdc-select--outlined .mdc-notched-outline .mdc-notched-outline__trailing[dir="rtl"] {
  /* @noflip */
  border-radius: 4px 0 0 4px;
}

.mdc-select--outlined .mdc-select__native-control {
  border-radius: 4px;
}

.mdc-select--outlined::before, .mdc-select--outlined::after {
  content: none;
}

.mdc-select--outlined:not(.mdc-select--disabled) {
  background-color: transparent;
}

.mdc-select--outlined .mdc-floating-label--float-above {
  transform: translateY(-144%) scale(1);
}

.mdc-select--outlined .mdc-floating-label--float-above {
  font-size: 0.75rem;
}

.mdc-select--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-select--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-130%) scale(0.75);
}

.mdc-select--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-select--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

.mdc-select--outlined .mdc-select__native-control,
.mdc-select--outlined .mdc-select__selected-text {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 52px;
  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"], [dir="rtl"]
.mdc-select--outlined .mdc-select__selected-text,
.mdc-select--outlined .mdc-select__selected-text[dir="rtl"] {
  /* @noflip */
  padding-left: 52px;
  /* @noflip */
  padding-right: 16px;
}

.mdc-select--outlined .mdc-select__selected-text {
  padding-top: 14px;
}

.mdc-select--outlined .mdc-select__icon {
  z-index: 2;
}

.mdc-select--outlined .mdc-floating-label {
  line-height: 1.15rem;
  pointer-events: auto;
}

.mdc-select--invalid:not(.mdc-select--disabled) .mdc-floating-label {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid:not(.mdc-select--disabled) .mdc-select__native-control,
.mdc-select--invalid:not(.mdc-select--disabled) .mdc-select__selected-text {
  border-bottom-color: #b00020;
  /* @alternate */
  border-bottom-color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--focused .mdc-line-ripple {
  background-color: #b00020;
  /* @alternate */
  background-color: var(--mdc-theme-error, #b00020);
}

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

.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--invalid + .mdc-select-helper-text--validation-msg {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid:not(.mdc-select--disabled) .mdc-select__native-control:hover {
  border-bottom-color: #b00020;
  /* @alternate */
  border-bottom-color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__leading,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__notch,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled) .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__native-control:hover ~ .mdc-notched-outline .mdc-notched-outline__trailing,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__selected-text:hover ~ .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__selected-text:hover ~ .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled):not(.mdc-select--focused) .mdc-select__selected-text:hover ~ .mdc-notched-outline .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {
  border-width: 2px;
}

.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--invalid.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-select--invalid .mdc-select__dropdown-icon {
  background: 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%23b00020%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") no-repeat center;
}

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

.mdc-select--required .mdc-floating-label::after {
  content: "*";
}

.mdc-select--disabled {
  background-color: #fafafa;
  cursor: default;
  pointer-events: none;
}

.mdc-select--disabled .mdc-floating-label {
  color: rgba(0, 0, 0, 0.37);
}

.mdc-select--disabled .mdc-select__dropdown-icon {
  background: 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%23000%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.37%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E") no-repeat center;
}

.mdc-select--disabled .mdc-line-ripple {
  display: none;
}

.mdc-select--disabled .mdc-select__icon {
  color: rgba(0, 0, 0, 0.37);
}

.mdc-select--disabled .mdc-select__native-control,
.mdc-select--disabled .mdc-select__selected-text {
  color: rgba(0, 0, 0, 0.37);
  border-bottom-style: dotted;
}

.mdc-select--disabled .mdc-select__selected-text {
  pointer-events: none;
}

.mdc-select--disabled.mdc-select--outlined {
  background-color: transparent;
}

.mdc-select--disabled.mdc-select--outlined .mdc-select__native-control,
.mdc-select--disabled.mdc-select--outlined .mdc-select__selected-text {
  border-bottom-style: none;
}

.mdc-select--disabled.mdc-select--outlined .mdc-notched-outline__leading,
.mdc-select--disabled.mdc-select--outlined .mdc-notched-outline__notch,
.mdc-select--disabled.mdc-select--outlined .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.16);
}

.mdc-select--with-leading-icon .mdc-select__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: initial;
}

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

.mdc-select--with-leading-icon .mdc-select__native-control,
.mdc-select--with-leading-icon .mdc-select__selected-text {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 32px;
}

[dir="rtl"] .mdc-select--with-leading-icon .mdc-select__native-control, .mdc-select--with-leading-icon .mdc-select__native-control[dir="rtl"], [dir="rtl"]
.mdc-select--with-leading-icon .mdc-select__selected-text,
.mdc-select--with-leading-icon .mdc-select__selected-text[dir="rtl"] {
  /* @noflip */
  padding-left: 32px;
  /* @noflip */
  padding-right: 48px;
}

.mdc-select--with-leading-icon.mdc-select--outlined .mdc-floating-label--float-above {
  transform: translateY(-144%) translateX(-32px) scale(1);
}

[dir="rtl"] .mdc-select--with-leading-icon.mdc-select--outlined .mdc-floating-label--float-above, .mdc-select--with-leading-icon.mdc-select--outlined .mdc-floating-label--float-above[dir="rtl"] {
  transform: translateY(-144%) translateX(32px) scale(1);
}

.mdc-select--with-leading-icon.mdc-select--outlined .mdc-floating-label--float-above {
  font-size: 0.75rem;
}

.mdc-select--with-leading-icon.mdc-select--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-select--with-leading-icon.mdc-select--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-130%) translateX(-32px) scale(0.75);
}

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

.mdc-select--with-leading-icon.mdc-select--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-select--with-leading-icon.mdc-select--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

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

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

.mdc-select--with-leading-icon.mdc-select__menu .mdc-list-item__text {
  /* @noflip */
  padding-left: 32px;
  /* @noflip */
  padding-right: 32px;
}

[dir="rtl"] .mdc-select--with-leading-icon.mdc-select__menu .mdc-list-item__text, .mdc-select--with-leading-icon.mdc-select__menu .mdc-list-item__text[dir="rtl"] {
  /* @noflip */
  padding-left: 32px;
  /* @noflip */
  padding-right: 32px;
}

.mdc-select__menu .mdc-list .mdc-list-item--selected {
  color: #000;
  /* @alternate */
  color: var(--mdc-theme-on-surface, #000);
}

.mdc-select__menu .mdc-list .mdc-list-item--selected::before, .mdc-select__menu .mdc-list .mdc-list-item--selected::after {
  background-color: #000;
}

@supports not (-ms-ime-align: auto) {
  .mdc-select__menu .mdc-list .mdc-list-item--selected::before, .mdc-select__menu .mdc-list .mdc-list-item--selected::after {
    /* @alternate */
    background-color: var(--mdc-theme-on-surface, #000);
  }
}

.mdc-select__menu .mdc-list .mdc-list-item--selected:hover::before {
  opacity: 0.04;
}

.mdc-select__menu .mdc-list .mdc-list-item--selected.mdc-ripple-upgraded--background-focused::before, .mdc-select__menu .mdc-list .mdc-list-item--selected:not(.mdc-ripple-upgraded):focus::before {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-select__menu .mdc-list .mdc-list-item--selected:not(.mdc-ripple-upgraded)::after {
  transition: opacity 150ms linear;
}

.mdc-select__menu .mdc-list .mdc-list-item--selected:not(.mdc-ripple-upgraded):active::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-select__menu .mdc-list .mdc-list-item--selected.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

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

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

.mdc-text-field-helper-text {
  font-family: Roboto, 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;
  /* @alternate */
  line-height: normal;
  margin: 0;
  transition: opacity 150ms 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 {
  transition: none;
  opacity: 1;
  will-change: initial;
}

.mdc-text-field-character-counter {
  font-family: Roboto, 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;
  /* @alternate */
  line-height: normal;
  /* @noflip */
  margin-left: auto;
  /* @noflip */
  margin-right: 0;
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 0;
  white-space: nowrap;
}

.mdc-text-field-character-counter::before {
  display: inline-block;
  width: 0;
  height: 16px;
  content: "";
  vertical-align: 0;
}

[dir="rtl"] .mdc-text-field-character-counter, .mdc-text-field-character-counter[dir="rtl"] {
  /* @noflip */
  margin-left: 0;
  /* @noflip */
  margin-right: auto;
}

[dir="rtl"] .mdc-text-field-character-counter, .mdc-text-field-character-counter[dir="rtl"] {
  /* @noflip */
  padding-left: 0;
  /* @noflip */
  padding-right: 16px;
}

.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);
  border-radius: 4px 4px 0 0;
  display: inline-flex;
  position: relative;
  box-sizing: border-box;
  height: 56px;
  overflow: hidden;
  /* @alternate */
  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 {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-text-field.mdc-ripple-upgraded::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-text-field.mdc-ripple-upgraded::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-text-field.mdc-ripple-upgraded--unbounded::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-text-field.mdc-ripple-upgraded--foreground-activation::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-text-field.mdc-ripple-upgraded--foreground-deactivation::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  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.mdc-ripple-upgraded--background-focused::before, .mdc-text-field:not(.mdc-ripple-upgraded):focus::before {
  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: var(--mdc-ripple-fg-size, 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 {
  color: rgba(0, 0, 0, 0.87);
}

.mdc-text-field .mdc-text-field__input {
  caret-color: #6200ee;
  /* @alternate */
  caret-color: var(--mdc-theme-primary, #6200ee);
}

.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: #6200ee;
  /* @alternate */
  background-color: var(--mdc-theme-primary, #6200ee);
}

.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-line .mdc-text-field-helper-text {
  color: rgba(0, 0, 0, 0.6);
}

.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field-character-counter,
.mdc-text-field:not(.mdc-text-field--disabled) + .mdc-text-field-helper-line .mdc-text-field-character-counter {
  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: initial;
  top: 18px;
  pointer-events: none;
}

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

.mdc-text-field--textarea .mdc-floating-label {
  /* @noflip */
  left: 4px;
  /* @noflip */
  right: initial;
}

[dir="rtl"] .mdc-text-field--textarea .mdc-floating-label, .mdc-text-field--textarea .mdc-floating-label[dir="rtl"] {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 4px;
}

.mdc-text-field--outlined .mdc-floating-label {
  /* @noflip */
  left: 4px;
  /* @noflip */
  right: initial;
  top: 17px;
}

[dir="rtl"] .mdc-text-field--outlined .mdc-floating-label, .mdc-text-field--outlined .mdc-floating-label[dir="rtl"] {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 4px;
}

.mdc-text-field--outlined--with-leading-icon .mdc-floating-label {
  /* @noflip */
  left: 36px;
  /* @noflip */
  right: initial;
}

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

.mdc-text-field--outlined--with-leading-icon .mdc-floating-label--float-above {
  /* @noflip */
  left: 40px;
  /* @noflip */
  right: initial;
}

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

.mdc-text-field__input {
  font-family: Roboto, 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;
  align-self: flex-end;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 20px 16px 6px;
  transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
  border-bottom: 1px solid;
  border-radius: 0;
  background: none;
  appearance: none;
}

.mdc-text-field__input::placeholder {
  transition: opacity 67ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  color: rgba(0, 0, 0, 0.54);
}

.mdc-text-field__input:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.54) !important;
}

.mdc-text-field--fullwidth .mdc-text-field__input::placeholder,
.mdc-text-field--no-label .mdc-text-field__input::placeholder,
.mdc-text-field--focused .mdc-text-field__input::placeholder {
  transition-delay: 40ms;
  transition-duration: 110ms;
  opacity: 1;
}

.mdc-text-field__input:focus {
  outline: none;
}

.mdc-text-field__input:invalid {
  box-shadow: none;
}

.mdc-text-field__input:-webkit-autofill {
  z-index: auto !important;
}

.mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mdc-text-field__input {
  padding-top: 16px;
  padding-bottom: 16px;
}

.mdc-text-field__input:-webkit-autofill + .mdc-floating-label {
  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__leading,
.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,
.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.38);
}

.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__leading,
.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__notch,
.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__trailing,
.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__leading,
.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__notch,
.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__trailing {
  border-color: rgba(0, 0, 0, 0.87);
}

.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {
  border-color: #6200ee;
  /* @alternate */
  border-color: var(--mdc-theme-primary, #6200ee);
}

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

.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading {
  /* @noflip */
  border-radius: 4px 0 0 4px;
}

[dir="rtl"] .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading, .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading[dir="rtl"] {
  /* @noflip */
  border-radius: 0 4px 4px 0;
}

.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing {
  /* @noflip */
  border-radius: 0 4px 4px 0;
}

[dir="rtl"] .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing, .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing[dir="rtl"] {
  /* @noflip */
  border-radius: 4px 0 0 4px;
}

.mdc-text-field--outlined .mdc-floating-label--float-above {
  transform: translateY(-144%) scale(1);
}

.mdc-text-field--outlined .mdc-floating-label--float-above {
  font-size: 0.75rem;
}

.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-130%) scale(0.75);
}

.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

.mdc-text-field--outlined::before, .mdc-text-field--outlined::after {
  content: none;
}

.mdc-text-field--outlined:not(.mdc-text-field--disabled) {
  background-color: transparent;
}

.mdc-text-field--outlined .mdc-text-field__input {
  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-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--outlined.mdc-text-field--focused .mdc-notched-outline__trailing {
  border-width: 2px;
}

.mdc-text-field--outlined.mdc-text-field--disabled {
  background-color: transparent;
}

.mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__leading,
.mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__notch,
.mdc-text-field--outlined.mdc-text-field--disabled .mdc-notched-outline__trailing {
  border-color: 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 {
  transform: translateY(-134%) scale(1);
}

.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  font-size: 0.8rem;
}

.mdc-text-field--outlined.mdc-text-field--dense.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--outlined.mdc-text-field--dense .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-120%) scale(0.8);
}

.mdc-text-field--outlined.mdc-text-field--dense.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--outlined.mdc-text-field--dense .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
  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 {
  top: 14px;
}

.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: 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: 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: 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: initial;
  /* @noflip */
  right: 48px;
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-text-field__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: initial;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-text-field__input {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 16px;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {
  transform: translateY(-144%) translateX(-32px) scale(1);
}

[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"] {
  transform: translateY(-144%) translateX(32px) scale(1);
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--float-above {
  font-size: 0.75rem;
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-130%) translateX(-32px) scale(0.75);
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined .mdc-floating-label--shake {
  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 {
  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-floating-label {
  /* @noflip */
  left: 36px;
  /* @noflip */
  right: initial;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  transform: translateY(-134%) translateX(-21px) scale(1);
}

[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"] {
  transform: translateY(-134%) translateX(21px) scale(1);
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--float-above {
  font-size: 0.8rem;
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-120%) translateX(-21px) scale(0.8);
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label--shake {
  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 {
  animation: mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl 250ms 1;
}

.mdc-text-field--with-leading-icon.mdc-text-field--outlined.mdc-text-field--dense .mdc-floating-label {
  /* @noflip */
  left: 32px;
  /* @noflip */
  right: initial;
}

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

.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
  /* @noflip */
  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: initial;
}

.mdc-text-field--with-trailing-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 16px;
  /* @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: 16px;
}

.mdc-text-field--with-trailing-icon.mdc-text-field--outlined .mdc-text-field__icon {
  /* @noflip */
  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: 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--with-trailing-icon .mdc-text-field__icon {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: auto;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon .mdc-text-field__icon ~ .mdc-text-field__icon {
  /* @noflip */
  right: 12px;
  /* @noflip */
  left: auto;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon .mdc-text-field__input {
  /* @noflip */
  padding-left: 48px;
  /* @noflip */
  padding-right: 48px;
}

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

.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;
  transform: scale(0.8);
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: 12px;
  /* @noflip */
  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: initial;
  /* @noflip */
  right: 12px;
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 44px;
  /* @noflip */
  padding-right: 16px;
}

[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: 16px;
  /* @noflip */
  padding-right: 44px;
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-floating-label {
  /* @noflip */
  left: 44px;
  /* @noflip */
  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: initial;
  /* @noflip */
  right: 44px;
}

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  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: initial;
}

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 16px;
  /* @noflip */
  padding-right: 44px;
}

[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: 44px;
  /* @noflip */
  padding-right: 16px;
}

.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
  /* @noflip */
  left: 12px;
  /* @noflip */
  right: auto;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon ~ .mdc-text-field__icon {
  /* @noflip */
  right: 12px;
  /* @noflip */
  left: auto;
}

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

.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
  /* @noflip */
  padding-left: 44px;
  /* @noflip */
  padding-right: 44px;
}

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

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

.mdc-text-field--dense .mdc-floating-label--shake {
  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--dense .mdc-floating-label--float-above {
  font-size: .813rem;
}

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

.mdc-text-field--textarea {
  display: inline-flex;
  width: auto;
  height: auto;
  transition: none;
  overflow: visible;
}

.mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-notched-outline__leading,
.mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,
.mdc-text-field--textarea:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.38);
}

.mdc-text-field--textarea:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-text-field--textarea:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-text-field--textarea:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__input:hover ~ .mdc-notched-outline .mdc-notched-outline__trailing,
.mdc-text-field--textarea:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-text-field--textarea:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-text-field--textarea:not(.mdc-text-field--disabled):not(.mdc-text-field--focused) .mdc-text-field__icon:hover ~ .mdc-notched-outline .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.87);
}

.mdc-text-field--textarea:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--textarea:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--textarea:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {
  border-color: #6200ee;
  /* @alternate */
  border-color: var(--mdc-theme-primary, #6200ee);
}

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

.mdc-text-field--textarea .mdc-notched-outline .mdc-notched-outline__leading {
  /* @noflip */
  border-radius: 4px 0 0 4px;
}

[dir="rtl"] .mdc-text-field--textarea .mdc-notched-outline .mdc-notched-outline__leading, .mdc-text-field--textarea .mdc-notched-outline .mdc-notched-outline__leading[dir="rtl"] {
  /* @noflip */
  border-radius: 0 4px 4px 0;
}

.mdc-text-field--textarea .mdc-notched-outline .mdc-notched-outline__trailing {
  /* @noflip */
  border-radius: 0 4px 4px 0;
}

[dir="rtl"] .mdc-text-field--textarea .mdc-notched-outline .mdc-notched-outline__trailing, .mdc-text-field--textarea .mdc-notched-outline .mdc-notched-outline__trailing[dir="rtl"] {
  /* @noflip */
  border-radius: 4px 0 0 4px;
}

.mdc-text-field--textarea::before, .mdc-text-field--textarea::after {
  content: none;
}

.mdc-text-field--textarea:not(.mdc-text-field--disabled) {
  background-color: transparent;
}

.mdc-text-field--textarea .mdc-floating-label--float-above {
  transform: translateY(-144%) scale(1);
}

.mdc-text-field--textarea .mdc-floating-label--float-above {
  font-size: 0.75rem;
}

.mdc-text-field--textarea.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--textarea .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  transform: translateY(-130%) scale(0.75);
}

.mdc-text-field--textarea.mdc-notched-outline--upgraded .mdc-floating-label--float-above,
.mdc-text-field--textarea .mdc-notched-outline--upgraded .mdc-floating-label--float-above {
  font-size: 1rem;
}

.mdc-text-field--textarea .mdc-text-field-character-counter {
  /* @noflip */
  left: initial;
  /* @noflip */
  right: 16px;
  position: absolute;
  bottom: 13px;
}

[dir="rtl"] .mdc-text-field--textarea .mdc-text-field-character-counter, .mdc-text-field--textarea .mdc-text-field-character-counter[dir="rtl"] {
  /* @noflip */
  left: 16px;
  /* @noflip */
  right: initial;
}

.mdc-text-field--textarea .mdc-text-field__input {
  align-self: auto;
  box-sizing: border-box;
  height: auto;
  margin: 8px 1px 1px 0;
  padding: 0 16px 16px;
  border: none;
}

.mdc-text-field--textarea .mdc-text-field-character-counter + .mdc-text-field__input {
  margin-bottom: 28px;
  padding-bottom: 0;
}

.mdc-text-field--textarea .mdc-floating-label {
  top: 17px;
  bottom: auto;
  width: auto;
  pointer-events: none;
}

.mdc-text-field--textarea.mdc-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--textarea.mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--textarea.mdc-text-field--focused .mdc-notched-outline__trailing {
  border-width: 2px;
}

.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 {
  content: none;
}

.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--textarea .mdc-text-field__input {
  resize: vertical;
}

.mdc-text-field--fullwidth.mdc-text-field--invalid:not(.mdc-text-field--disabled):not(.mdc-text-field--textarea) {
  border-bottom-color: #b00020;
  /* @alternate */
  border-bottom-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field-helper-line {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
}

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

.mdc-text-field + .mdc-text-field-helper-line {
  padding-right: 16px;
  padding-left: 16px;
}

.mdc-form-field > .mdc-text-field + label, .form_checkbox-group > .mdc-text-field + label {
  align-self: flex-start;
}

.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: rgba(98, 0, 238, 0.87);
}

.mdc-text-field--focused .mdc-text-field__input:required ~ .mdc-floating-label::after,
.mdc-text-field--focused .mdc-text-field__input:required ~ .mdc-notched-outline .mdc-floating-label::after {
  color: rgba(98, 0, 238, 0.87);
}

.mdc-text-field--focused + .mdc-text-field-helper-line .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) .mdc-notched-outline__leading,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {
  border-color: #6200ee;
  /* @alternate */
  border-color: var(--mdc-theme-primary, #6200ee);
}

.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;
  /* @alternate */
  border-bottom-color: var(--mdc-theme-error, #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;
  /* @alternate */
  border-bottom-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple {
  background-color: #b00020;
  /* @alternate */
  background-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-floating-label {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--invalid + .mdc-text-field-helper-line .mdc-text-field-helper-text--validation-msg {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid .mdc-text-field__input {
  caret-color: #b00020;
  /* @alternate */
  caret-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:required ~ .mdc-floating-label::after,
.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input:required ~ .mdc-notched-outline .mdc-floating-label::after {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid.mdc-text-field--with-trailing-icon:not(.mdc-text-field--with-leading-icon):not(.mdc-text-field--disabled) .mdc-text-field__icon {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--invalid.mdc-text-field--with-trailing-icon.mdc-text-field--with-leading-icon:not(.mdc-text-field--disabled) .mdc-text-field__icon ~ .mdc-text-field__icon {
  color: #b00020;
  /* @alternate */
  color: var(--mdc-theme-error, #b00020);
}

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

.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__leading,
.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,
.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--textarea.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__leading,
.mdc-text-field--textarea.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__notch,
.mdc-text-field--textarea.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__trailing,
.mdc-text-field--textarea.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__leading,
.mdc-text-field--textarea.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__notch,
.mdc-text-field--textarea.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__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--textarea.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__leading,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #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__leading,
.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__notch,
.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__trailing,
.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__leading,
.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__notch,
.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__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #b00020);
}

.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {
  border-color: #b00020;
  /* @alternate */
  border-color: var(--mdc-theme-error, #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-helper-line .mdc-text-field-helper-text {
  color: rgba(0, 0, 0, 0.37);
}

.mdc-text-field--disabled .mdc-text-field-character-counter,
.mdc-text-field--disabled + .mdc-text-field-helper-line .mdc-text-field-character-counter {
  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 {
  background-color: transparent;
  /* @alternate */
  background-color: #f9f9f9;
}

.mdc-text-field--textarea.mdc-text-field--disabled .mdc-notched-outline__leading,
.mdc-text-field--textarea.mdc-text-field--disabled .mdc-notched-outline__notch,
.mdc-text-field--textarea.mdc-text-field--disabled .mdc-notched-outline__trailing {
  border-color: rgba(0, 0, 0, 0.06);
}

.mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__input {
  border-bottom: none;
}

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

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

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

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

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

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

@keyframes mdc-floating-label-shake-float-above-text-field-outlined-leading-icon-dense-rtl {
  0% {
    transform: translateX(calc(0 - -21px)) translateY(-120%) scale(0.8);
  }
  33% {
    animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
    transform: translateX(calc(4% - -21px)) translateY(-120%) scale(0.8);
  }
  66% {
    animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
    transform: translateX(calc(-4% - -21px)) translateY(-120%) scale(0.8);
  }
  100% {
    transform: translateX(calc(0 - -21px)) translateY(-120%) scale(0.8);
  }
}

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

/**
   Style Color Focus des Input
 */
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-floating-label,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-floating-label:after,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label:after,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label:after {
  color: rgba(204, 102, 0, 0.87) !important;
}

.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__leading,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__notch,
.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused .mdc-notched-outline .mdc-notched-outline__trailing,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-notched-outline__leading,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-notched-outline__notch,
.mdc-text-field--textarea.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing {
  border-color: #CC6600;
}

/**
   Style TextField
 */
.mdc-text-field .mdc-text-field__input {
  caret-color: #000;
}

.mdc-text-field--textarea .mdc-text-field__input {
  resize: vertical;
  min-height: 250px;
  padding: 10px 25px 16px;
}

/**
   Style Select
 */
.mdc-select .mdc-select__native-control {
  -webkit-appearance: none;
  -moz-appearance: none;
}

.mdc-select i.material-icons {
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translate(-50%, -50%);
  transition: transform 0.15s ease-out;
}

.mdc-select.mdc-select--focused i.material-icons {
  transform: translate(-50%, -50%) rotate(180deg);
  color: #CC6600;
}

/**
   Form Global
 */
.mdc-text-field,
.mdc-select {
  width: 100%;
  margin-bottom: 20px;
}

.form h3 {
  margin-bottom: 20px;
}

@media (max-width: 767px) {
  .form_input-group {
    flex-direction: column;
  }
}

.form_input-group > div:first-child {
  margin-right: 10px;
}

@media (max-width: 767px) {
  .form_input-group > div:first-child {
    margin-right: 0;
  }
}

.form_input-group > div:last-child {
  margin-left: 10px;
}

@media (max-width: 767px) {
  .form_input-group > div:last-child {
    margin-left: 0;
  }
}

.form_input-group > div:not(:first-child):not(:last-child) {
  margin-left: 10px;
  margin-right: 10px;
}

@media (max-width: 767px) {
  .form_input-group > div:not(:first-child):not(:last-child) {
    margin-left: 0;
    margin-right: 0;
  }
}

.form_checkbox-group {
  margin-bottom: 20px;
}

.form_checkbox-group label {
  margin-right: 10px;
}

.form_radio-group {
  margin-bottom: 20px;
  font-family: "Open Sans", sans-serif;
}

.form_notif {
  padding: 15px;
  margin: 15px 0;
  border-radius: 4px;
  border: solid 1px;
  font-family: "Open Sans", sans-serif;
  font-size: 0.9em;
}

.form_notif.form_notif_valid {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.form_notif.form_notif_error {
  color: #ab2e46;
  background-color: #f5dddd;
  border-color: #f5dddd;
}

.form_notif.form_notif_warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.form_notif ul {
  margin: 5px 0;
  padding-left: 30px;
}

.form .choice-simple {
  margin: 15px 0;
}

.form .choice-simple input[type=radio] {
  display: none;
}

.form .choice-simple label {
  display: inline-flex;
  padding: 13px 17px;
  border: 1px solid #573D1C;
  font-family: 'Montserrat', sans-serif;
  color: #573D1C;
  cursor: pointer;
}

.form .choice-simple label:hover {
  background-color: rgba(204, 102, 0, 0.1);
}

.form .choice-simple label:nth-child(2) {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.form .choice-simple label:last-child {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.form .choice-simple input[type=radio]:checked + label {
  background-color: #573D1C;
  color: white;
}

@media (max-width: 767px) {
  .form .choice-simple {
    display: flex;
    flex-wrap: wrap;
  }
  .form .choice-simple label {
    margin: 10px;
    border-radius: 4px;
  }
}

@font-face {
  font-family: 'lg';
  src: url(/build/fonts/lg.a53dcc5e.ttf) format("truetype"), url(/build/fonts/lg.0add5958.woff) format("woff"), url(/build/images/lg.adb7aeef.svg) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.lg-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'lg' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lg-actions .lg-next, .lg-actions .lg-prev {
  background-color: rgba(0, 0, 0, 0.45);
  border-radius: 2px;
  color: #999;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 1080;
  outline: none;
  border: none;
  background-color: transparent;
}

.lg-actions .lg-next.disabled, .lg-actions .lg-prev.disabled {
  pointer-events: none;
  opacity: 0.5;
}

.lg-actions .lg-next:hover, .lg-actions .lg-prev:hover {
  color: #FFF;
}

.lg-actions .lg-next {
  right: 20px;
}

.lg-actions .lg-next:before {
  content: "\e095";
}

.lg-actions .lg-prev {
  left: 20px;
}

.lg-actions .lg-prev:after {
  content: "\e094";
}

@-webkit-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@-moz-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@-ms-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}

@-webkit-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

@-moz-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

@-ms-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

@keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}

.lg-outer.lg-right-end .lg-object {
  -webkit-animation: lg-right-end 0.3s;
  -o-animation: lg-right-end 0.3s;
  animation: lg-right-end 0.3s;
  position: relative;
}

.lg-outer.lg-left-end .lg-object {
  -webkit-animation: lg-left-end 0.3s;
  -o-animation: lg-left-end 0.3s;
  animation: lg-left-end 0.3s;
  position: relative;
}

.lg-toolbar {
  z-index: 1082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.45);
}

.lg-toolbar .lg-icon {
  color: #999;
  cursor: pointer;
  float: right;
  font-size: 24px;
  height: 47px;
  line-height: 27px;
  padding: 10px 0;
  text-align: center;
  width: 50px;
  text-decoration: none !important;
  outline: medium none;
  background: none;
  border: none;
  box-shadow: none;
  -webkit-transition: color 0.2s linear;
  -o-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

.lg-toolbar .lg-icon:hover {
  color: #FFF;
}

.lg-toolbar .lg-close:after {
  content: "\e070";
}

.lg-toolbar .lg-download:after {
  content: "\e0f2";
}

.lg-sub-html {
  background-color: rgba(0, 0, 0, 0.45);
  bottom: 0;
  color: #EEE;
  font-size: 16px;
  left: 0;
  padding: 10px 40px;
  position: fixed;
  right: 0;
  text-align: center;
  z-index: 1080;
}

.lg-sub-html h4 {
  margin: 0;
  font-size: 13px;
  font-weight: bold;
}

.lg-sub-html p {
  font-size: 12px;
  margin: 5px 0 0;
}

#lg-counter {
  color: #999;
  display: inline-block;
  font-size: 16px;
  padding-left: 20px;
  padding-top: 12px;
  vertical-align: middle;
}

.lg-toolbar, .lg-prev, .lg-next {
  opacity: 1;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, color 0.2s linear;
  -moz-transition: -moz-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, color 0.2s linear;
  -o-transition: -o-transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, color 0.2s linear;
  transition: transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, color 0.2s linear;
}

.lg-hide-items .lg-prev {
  opacity: 0;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0);
}

.lg-hide-items .lg-next {
  opacity: 0;
  -webkit-transform: translate3d(10px, 0, 0);
  transform: translate3d(10px, 0, 0);
}

.lg-hide-items .lg-toolbar {
  opacity: 0;
  -webkit-transform: translate3d(0, -10px, 0);
  transform: translate3d(0, -10px, 0);
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object {
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
  -webkit-transition: -webkit-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -moz-transition: -moz-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -o-transition: -o-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  opacity: 1;
}

.lg-outer .lg-thumb-outer {
  background-color: #0D0A0A;
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 1080;
  max-height: 350px;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}

.lg-outer.lg-thumb-open .lg-thumb-outer {
  -webkit-transform: translate3d(0, 0%, 0);
  transform: translate3d(0, 0%, 0);
}

.lg-outer .lg-thumb {
  padding: 10px 0;
  height: 100%;
  margin-bottom: -5px;
}

.lg-outer .lg-thumb-item {
  border-radius: 5px;
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border: 2px solid #FFF;
  border-radius: 4px;
  margin-bottom: 5px;
}

@media (min-width: 1025px) {
  .lg-outer .lg-thumb-item {
    -webkit-transition: border-color 0.25s ease;
    -o-transition: border-color 0.25s ease;
    transition: border-color 0.25s ease;
  }
}

.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
  border-color: #a90707;
}

.lg-outer .lg-thumb-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lg-outer.lg-has-thumb .lg-item {
  padding-bottom: 120px;
}

.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0;
}

.lg-outer.lg-pull-caption-up .lg-sub-html {
  -webkit-transition: bottom 0.25s ease;
  -o-transition: bottom 0.25s ease;
  transition: bottom 0.25s ease;
}

.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html {
  bottom: 100px;
}

.lg-outer .lg-toggle-thumb {
  background-color: #0D0A0A;
  border-radius: 2px 2px 0 0;
  color: #999;
  cursor: pointer;
  font-size: 24px;
  height: 39px;
  line-height: 27px;
  padding: 5px 0;
  position: absolute;
  right: 20px;
  text-align: center;
  top: -39px;
  width: 50px;
  outline: medium none;
  border: none;
}

.lg-outer .lg-toggle-thumb:after {
  content: "\e1ff";
}

.lg-outer .lg-toggle-thumb:hover {
  color: #FFF;
}

.lg-outer .lg-video-cont {
  display: inline-block;
  vertical-align: middle;
  max-width: 1140px;
  max-height: 100%;
  width: 100%;
  padding: 0 5px;
}

.lg-outer .lg-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative;
}

.lg-outer .lg-video .lg-object {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.lg-outer .lg-video .lg-video-play {
  width: 84px;
  height: 59px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -42px;
  margin-top: -30px;
  z-index: 1080;
  cursor: pointer;
}

.lg-outer .lg-has-vimeo .lg-video-play {
  background: url(/build/images/vimeo-play.6c87992d.png) no-repeat scroll 0 0 transparent;
}

.lg-outer .lg-has-vimeo:hover .lg-video-play {
  background: url(/build/images/vimeo-play.6c87992d.png) no-repeat scroll 0 -58px transparent;
}

.lg-outer .lg-has-html5 .lg-video-play {
  background: transparent url(/build/images/video-play.53bb7d07.png) no-repeat scroll 0 0;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  width: 64px;
  opacity: 0.8;
}

.lg-outer .lg-has-html5:hover .lg-video-play {
  opacity: 1;
}

.lg-outer .lg-has-youtube .lg-video-play {
  background: url(/build/images/youtube-play.8921bc9c.png) no-repeat scroll 0 0 transparent;
}

.lg-outer .lg-has-youtube:hover .lg-video-play {
  background: url(/build/images/youtube-play.8921bc9c.png) no-repeat scroll 0 -60px transparent;
}

.lg-outer .lg-video-object {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

.lg-outer .lg-has-video .lg-video-object {
  visibility: hidden;
}

.lg-outer .lg-has-video.lg-video-playing .lg-object, .lg-outer .lg-has-video.lg-video-playing .lg-video-play {
  display: none;
}

.lg-outer .lg-has-video.lg-video-playing .lg-video-object {
  visibility: visible;
}

.lg-progress-bar {
  background-color: #333;
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1083;
  opacity: 0;
  -webkit-transition: opacity 0.08s ease 0s;
  -moz-transition: opacity 0.08s ease 0s;
  -o-transition: opacity 0.08s ease 0s;
  transition: opacity 0.08s ease 0s;
}

.lg-progress-bar .lg-progress {
  background-color: #a90707;
  height: 5px;
  width: 0;
}

.lg-progress-bar.lg-start .lg-progress {
  width: 100%;
}

.lg-show-autoplay .lg-progress-bar {
  opacity: 1;
}

.lg-autoplay-button:after {
  content: "\e01d";
}

.lg-show-autoplay .lg-autoplay-button:after {
  content: "\e01a";
}

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap, .lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer.lg-use-left-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -moz-transition: -moz-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -o-transition: -o-transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  transition: transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

#lg-zoom-in:after {
  content: "\e311";
}

#lg-actual-size {
  font-size: 20px;
}

#lg-actual-size:after {
  content: "\e033";
}

#lg-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}

#lg-zoom-out:after {
  content: "\e312";
}

.lg-zoomed #lg-zoom-out {
  opacity: 1;
  pointer-events: auto;
}

.lg-outer .lg-pager-outer {
  bottom: 60px;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: 1080;
  height: 10px;
}

.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
  overflow: visible;
}

.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px;
}

.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
  box-shadow: 0 0 0 2px white inset;
}

.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #FFF;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  -webkit-transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  -moz-transition: opacity 0.15s ease 0s, -moz-transform 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s, -o-transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
}

.lg-outer .lg-pager-thumb-cont img {
  width: 100%;
  height: 100%;
}

.lg-outer .lg-pager {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
  display: block;
  height: 12px;
  -webkit-transition: box-shadow 0.3s ease 0s;
  -o-transition: box-shadow 0.3s ease 0s;
  transition: box-shadow 0.3s ease 0s;
  width: 12px;
}

.lg-outer .lg-pager:hover, .lg-outer .lg-pager:focus {
  box-shadow: 0 0 0 8px white inset;
}

.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

.lg-fullscreen:after {
  content: "\e20c";
}

.lg-fullscreen-on .lg-fullscreen:after {
  content: "\e20d";
}

.lg-outer #lg-dropdown-overlay {
  background-color: rgba(0, 0, 0, 0.25);
  bottom: 0;
  cursor: default;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1081;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  -o-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
}

.lg-outer.lg-dropdown-active .lg-dropdown, .lg-outer.lg-dropdown-active #lg-dropdown-overlay {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -moz-transform: translate3d(0, 0px, 0);
  -o-transform: translate3d(0, 0px, 0);
  -ms-transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  transform: translate3d(0, 0px, 0);
  opacity: 1;
  visibility: visible;
}

.lg-outer.lg-dropdown-active #lg-share {
  color: #FFF;
}

.lg-outer .lg-dropdown {
  background-color: #fff;
  border-radius: 2px;
  font-size: 14px;
  list-style-type: none;
  margin: 0;
  padding: 10px 0;
  position: absolute;
  right: 0;
  text-align: left;
  top: 50px;
  opacity: 0;
  visibility: hidden;
  -moz-transform: translate3d(0, 5px, 0);
  -o-transform: translate3d(0, 5px, 0);
  -ms-transform: translate3d(0, 5px, 0);
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
  -webkit-transition: -webkit-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  -moz-transition: -moz-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  -o-transition: -o-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  transition: transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
}

.lg-outer .lg-dropdown:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  border: 8px solid transparent;
  border-bottom-color: #FFF;
  right: 16px;
  top: -16px;
}

.lg-outer .lg-dropdown > li:last-child {
  margin-bottom: 0px;
}

.lg-outer .lg-dropdown > li:hover a, .lg-outer .lg-dropdown > li:hover .lg-icon {
  color: #333;
}

.lg-outer .lg-dropdown a {
  color: #333;
  display: block;
  white-space: pre;
  padding: 4px 12px;
  font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size: 12px;
}

.lg-outer .lg-dropdown a:hover {
  background-color: rgba(0, 0, 0, 0.07);
}

.lg-outer .lg-dropdown .lg-dropdown-text {
  display: inline-block;
  line-height: 1;
  margin-top: -3px;
  vertical-align: middle;
}

.lg-outer .lg-dropdown .lg-icon {
  color: #333;
  display: inline-block;
  float: none;
  font-size: 20px;
  height: auto;
  line-height: 1;
  margin-right: 8px;
  padding: 0;
  vertical-align: middle;
  width: auto;
}

.lg-outer #lg-share {
  position: relative;
}

.lg-outer #lg-share:after {
  content: "\e80d";
}

.lg-outer #lg-share-facebook .lg-icon {
  color: #3b5998;
}

.lg-outer #lg-share-facebook .lg-icon:after {
  content: "\e904";
}

.lg-outer #lg-share-twitter .lg-icon {
  color: #00aced;
}

.lg-outer #lg-share-twitter .lg-icon:after {
  content: "\e907";
}

.lg-outer #lg-share-googleplus .lg-icon {
  color: #dd4b39;
}

.lg-outer #lg-share-googleplus .lg-icon:after {
  content: "\e905";
}

.lg-outer #lg-share-pinterest .lg-icon {
  color: #cb2027;
}

.lg-outer #lg-share-pinterest .lg-icon:after {
  content: "\e906";
}

.lg-outer .lg-img-rotate {
  position: absolute;
  padding: 0 5px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
  -moz-transition: -moz-transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
  -o-transition: -o-transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
  transition: transform 0.3s cubic-bezier(0.32, 0, 0.67, 0) 0s;
}

.lg-rotate-left:after {
  content: "\e900";
}

.lg-rotate-right:after {
  content: "\e901";
}

.lg-icon.lg-flip-hor, .lg-icon.lg-flip-ver {
  font-size: 26px;
}

.lg-flip-hor:after {
  content: "\e902";
}

.lg-flip-ver:after {
  content: "\e903";
}

.lg-group {
  *zoom: 1;
}

.lg-group:before, .lg-group:after {
  display: table;
  content: "";
  line-height: 0;
}

.lg-group:after {
  clear: both;
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  opacity: 0;
  outline: none;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.lg-outer.lg-visible {
  opacity: 1;
}

.lg-outer.lg-css3 .lg-item.lg-prev-slide, .lg-outer.lg-css3 .lg-item.lg-next-slide, .lg-outer.lg-css3 .lg-item.lg-current {
  -webkit-transition-duration: inherit !important;
  transition-duration: inherit !important;
  -webkit-transition-timing-function: inherit !important;
  transition-timing-function: inherit !important;
}

.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}

.lg-outer.lg-grab img.lg-object {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.lg-outer.lg-grabbing img.lg-object {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.lg-outer .lg {
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  max-height: 100%;
}

.lg-outer .lg-inner {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
}

.lg-outer .lg-item {
  background: url(/build/images/loading.621cc8ad.gif) no-repeat scroll center center transparent;
  display: none !important;
}

.lg-outer.lg-css3 .lg-prev-slide, .lg-outer.lg-css3 .lg-current, .lg-outer.lg-css3 .lg-next-slide {
  display: inline-block !important;
}

.lg-outer.lg-css .lg-current {
  display: inline-block !important;
}

.lg-outer .lg-item, .lg-outer .lg-img-wrap {
  display: inline-block;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
}

.lg-outer .lg-item:before, .lg-outer .lg-img-wrap:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

.lg-outer .lg-img-wrap {
  position: absolute;
  padding: 0 5px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.lg-outer .lg-item.lg-complete {
  background-image: none;
}

.lg-outer .lg-item.lg-current {
  z-index: 1060;
}

.lg-outer .lg-image {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto !important;
  height: auto !important;
}

.lg-outer.lg-show-after-load .lg-item .lg-object, .lg-outer.lg-show-after-load .lg-item .lg-video-play {
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object, .lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play {
  opacity: 1;
}

.lg-outer .lg-empty-html {
  display: none;
}

.lg-outer.lg-hide-download #lg-download {
  display: none;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}

.lg-backdrop.in {
  opacity: 1;
}

.lg-css3.lg-no-trans .lg-prev-slide, .lg-css3.lg-no-trans .lg-next-slide, .lg-css3.lg-no-trans .lg-current {
  -webkit-transition: none 0s ease 0s !important;
  -moz-transition: none 0s ease 0s !important;
  -o-transition: none 0s ease 0s !important;
  transition: none 0s ease 0s !important;
}

.lg-css3.lg-use-css3 .lg-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-css3.lg-use-left .lg-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-css3.lg-fade .lg-item {
  opacity: 0;
}

.lg-css3.lg-fade .lg-item.lg-current {
  opacity: 1;
}

.lg-css3.lg-fade .lg-item.lg-prev-slide, .lg-css3.lg-fade .lg-item.lg-next-slide, .lg-css3.lg-fade .lg-item.lg-current {
  -webkit-transition: opacity 0.1s ease 0s;
  -moz-transition: opacity 0.1s ease 0s;
  -o-transition: opacity 0.1s ease 0s;
  transition: opacity 0.1s ease 0s;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}

.lg-css3.lg-slide.lg-use-left .lg-item {
  opacity: 0;
  position: absolute;
  left: 0;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide {
  left: -100%;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide {
  left: 100%;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
  left: 0;
  opacity: 1;
}

.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
  -webkit-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -moz-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -o-transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}

.mdc-card {
  border-radius: 4px;
  background-color: #fff;
  /* @alternate */
  background-color: var(--mdc-theme-surface, #fff);
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  display: flex;
  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-width: 1px;
  border-style: solid;
  border-color: #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 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-sizing: border-box;
}

.mdc-card__primary-action {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  position: relative;
  outline: none;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  overflow: hidden;
}

.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: flex;
  flex-direction: row;
  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: flex;
  flex-direction: row;
  align-items: center;
  box-sizing: border-box;
}

.mdc-card__action-icons {
  color: rgba(0, 0, 0, 0.6);
  flex-grow: 1;
  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: inline-flex;
  flex-direction: row;
  align-items: center;
  box-sizing: border-box;
  justify-content: center;
  cursor: pointer;
  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 {
  justify-content: space-between;
  width: 100%;
  height: auto;
  max-height: none;
  margin: 0;
  padding: 8px 16px;
  /* @noflip */
  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"] {
  /* @noflip */
  text-align: right;
}

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

.mdc-card__action--icon:not(:disabled) {
  color: rgba(0, 0, 0, 0.6);
}

.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);
}

.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 {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-card__primary-action.mdc-ripple-upgraded::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-card__primary-action.mdc-ripple-upgraded::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-card__primary-action.mdc-ripple-upgraded--unbounded::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-card__primary-action.mdc-ripple-upgraded--foreground-activation::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-card__primary-action.mdc-ripple-upgraded--foreground-deactivation::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  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: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-card__primary-action::before, .mdc-card__primary-action::after {
  background-color: #000;
}

.mdc-card__primary-action:hover::before {
  opacity: 0.04;
}

.mdc-card__primary-action.mdc-ripple-upgraded--background-focused::before, .mdc-card__primary-action:not(.mdc-ripple-upgraded):focus::before {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-card__primary-action:not(.mdc-ripple-upgraded)::after {
  transition: opacity 150ms linear;
}

.mdc-card__primary-action:not(.mdc-ripple-upgraded):active::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-card__primary-action.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

.mdc-elevation--z0 {
  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-elevation--z1 {
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z2 {
  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);
}

.mdc-elevation--z3 {
  box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z4, .product_images .list-photo li:hover {
  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-elevation--z5 {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z6 {
  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);
}

.mdc-elevation--z7 {
  box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z8 {
  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);
}

.mdc-elevation--z9 {
  box-shadow: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z10 {
  box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z11 {
  box-shadow: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z12 {
  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);
}

.mdc-elevation--z13 {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z14 {
  box-shadow: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z15 {
  box-shadow: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z16 {
  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);
}

.mdc-elevation--z17 {
  box-shadow: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z18 {
  box-shadow: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z19 {
  box-shadow: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z20 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z21 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z22 {
  box-shadow: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z23 {
  box-shadow: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z24 {
  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);
}

.mdc-elevation-transition {
  transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
  will-change: box-shadow;
}

.mdc-icon-button {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  border: none;
  outline: none;
  background-color: transparent;
  fill: currentColor;
  color: inherit;
  font-size: 24px;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  width: 48px;
  height: 48px;
  padding: 12px;
}

.mdc-icon-button svg,
.mdc-icon-button img {
  width: 24px;
  height: 24px;
}

.mdc-icon-button:disabled {
  color: rgba(0, 0, 0, 0.38);
  /* @alternate */
  color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
  cursor: default;
  pointer-events: none;
}

.mdc-icon-button__icon {
  display: inline-block;
}

.mdc-icon-button__icon.mdc-icon-button__icon--on {
  display: none;
}

.mdc-icon-button--on .mdc-icon-button__icon {
  display: none;
}

.mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on {
  display: inline-block;
}

.mdc-icon-button {
  --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);
}

.mdc-icon-button::before, .mdc-icon-button::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-icon-button::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-icon-button.mdc-ripple-upgraded::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-icon-button.mdc-ripple-upgraded::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-icon-button.mdc-ripple-upgraded--unbounded::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-icon-button.mdc-ripple-upgraded--foreground-activation::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-icon-button.mdc-ripple-upgraded--foreground-deactivation::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-icon-button::before, .mdc-icon-button::after {
  top: calc(50% - 50%);
  /* @noflip */
  left: calc(50% - 50%);
  width: 100%;
  height: 100%;
}

.mdc-icon-button.mdc-ripple-upgraded::before, .mdc-icon-button.mdc-ripple-upgraded::after {
  top: var(--mdc-ripple-top, calc(50% - 50%));
  /* @noflip */
  left: var(--mdc-ripple-left, calc(50% - 50%));
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-icon-button.mdc-ripple-upgraded::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-icon-button::before, .mdc-icon-button::after {
  background-color: #000;
}

.mdc-icon-button:hover::before {
  opacity: 0.04;
}

.mdc-icon-button.mdc-ripple-upgraded--background-focused::before, .mdc-icon-button:not(.mdc-ripple-upgraded):focus::before {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-icon-button:not(.mdc-ripple-upgraded)::after {
  transition: opacity 150ms linear;
}

.mdc-icon-button:not(.mdc-ripple-upgraded):active::after {
  transition-duration: 75ms;
  opacity: 0.12;
}

.mdc-icon-button.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.12;
}

.mdc-fab {
  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: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 56px;
  height: 56px;
  padding: 0;
  border: none;
  fill: currentColor;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  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);
  background-color: #018786;
  color: #fff;
  /* @alternate */
  color: var(--mdc-theme-on-secondary, #fff);
}

.mdc-fab:not(.mdc-fab--extended) {
  border-radius: 50%;
}

.mdc-fab:not(.mdc-fab--extended) .mdc-fab__ripple {
  border-radius: 50%;
}

.mdc-fab::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mdc-fab:hover, .mdc-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);
}

.mdc-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);
}

.mdc-fab:active, .mdc-fab:focus {
  outline: none;
}

.mdc-fab:hover {
  cursor: pointer;
}

.mdc-fab > svg {
  width: 100%;
}

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

.mdc-fab .mdc-fab__icon {
  width: 24px;
  height: 24px;
  font-size: 24px;
}

.mdc-fab--mini {
  width: 40px;
  height: 40px;
}

.mdc-fab--extended {
  font-family: Roboto, 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;
  border-radius: 24px;
  padding: 0 20px;
  width: auto;
  max-width: 100%;
  height: 48px;
}

.mdc-fab--extended .mdc-fab__ripple {
  border-radius: 24px;
}

.mdc-fab--extended .mdc-fab__icon {
  /* @noflip */
  margin-left: -8px;
  /* @noflip */
  margin-right: 12px;
}

[dir="rtl"] .mdc-fab--extended .mdc-fab__icon, .mdc-fab--extended .mdc-fab__icon[dir="rtl"] {
  /* @noflip */
  margin-left: 12px;
  /* @noflip */
  margin-right: -8px;
}

.mdc-fab--extended .mdc-fab__label + .mdc-fab__icon {
  /* @noflip */
  margin-left: 12px;
  /* @noflip */
  margin-right: -8px;
}

[dir="rtl"] .mdc-fab--extended .mdc-fab__label + .mdc-fab__icon, .mdc-fab--extended .mdc-fab__label + .mdc-fab__icon[dir="rtl"] {
  /* @noflip */
  margin-left: -8px;
  /* @noflip */
  margin-right: 12px;
}

.mdc-fab__label {
  justify-content: flex-start;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.mdc-fab__icon {
  transition: transform 180ms 90ms cubic-bezier(0, 0, 0.2, 1);
  fill: currentColor;
  will-change: transform;
}

.mdc-fab .mdc-fab__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.mdc-fab--exited {
  transform: scale(0);
  opacity: 0;
  transition: opacity 15ms linear 150ms, transform 180ms 0ms cubic-bezier(0.4, 0, 1, 1);
}

.mdc-fab--exited .mdc-fab__icon {
  transform: scale(0);
  transition: transform 135ms 0ms cubic-bezier(0.4, 0, 1, 1);
}

.mdc-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);
}

.mdc-fab .mdc-fab__ripple::before,
.mdc-fab .mdc-fab__ripple::after {
  position: absolute;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  content: "";
}

.mdc-fab .mdc-fab__ripple::before {
  transition: opacity 15ms linear, background-color 15ms linear;
  z-index: 1;
}

.mdc-fab.mdc-ripple-upgraded .mdc-fab__ripple::before {
  transform: scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-fab.mdc-ripple-upgraded .mdc-fab__ripple::after {
  top: 0;
  /* @noflip */
  left: 0;
  transform: scale(0);
  transform-origin: center center;
}

.mdc-fab.mdc-ripple-upgraded--unbounded .mdc-fab__ripple::after {
  top: var(--mdc-ripple-top, 0);
  /* @noflip */
  left: var(--mdc-ripple-left, 0);
}

.mdc-fab.mdc-ripple-upgraded--foreground-activation .mdc-fab__ripple::after {
  animation: mdc-ripple-fg-radius-in 225ms forwards, mdc-ripple-fg-opacity-in 75ms forwards;
}

.mdc-fab.mdc-ripple-upgraded--foreground-deactivation .mdc-fab__ripple::after {
  animation: mdc-ripple-fg-opacity-out 150ms;
  transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-fab .mdc-fab__ripple::before,
.mdc-fab .mdc-fab__ripple::after {
  top: calc(50% - 100%);
  /* @noflip */
  left: calc(50% - 100%);
  width: 200%;
  height: 200%;
}

.mdc-fab.mdc-ripple-upgraded .mdc-fab__ripple::after {
  width: var(--mdc-ripple-fg-size, 100%);
  height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-fab .mdc-fab__ripple::before,
.mdc-fab .mdc-fab__ripple::after {
  background-color: #fff;
}

@supports not (-ms-ime-align: auto) {
  .mdc-fab .mdc-fab__ripple::before,
  .mdc-fab .mdc-fab__ripple::after {
    /* @alternate */
    background-color: var(--mdc-theme-on-secondary, #fff);
  }
}

.mdc-fab:hover .mdc-fab__ripple::before {
  opacity: 0.08;
}

.mdc-fab.mdc-ripple-upgraded--background-focused .mdc-fab__ripple::before, .mdc-fab:not(.mdc-ripple-upgraded):focus .mdc-fab__ripple::before {
  transition-duration: 75ms;
  opacity: 0.24;
}

.mdc-fab:not(.mdc-ripple-upgraded) .mdc-fab__ripple::after {
  transition: opacity 150ms linear;
}

.mdc-fab:not(.mdc-ripple-upgraded):active .mdc-fab__ripple::after {
  transition-duration: 75ms;
  opacity: 0.24;
}

.mdc-fab.mdc-ripple-upgraded {
  --mdc-ripple-fg-opacity: 0.24;
}

.mdc-fab .mdc-fab__ripple {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
}

/**
   Boutique
 */
.container_center, .file_ariane {
  max-width: 950px;
}

/**
   Répartition de la boutique
*/
.shop_nav {
  flex: 2;
}

.shop_content {
  flex: 7;
}

@media (max-width: 992px) {
  .shop {
    flex-direction: column;
  }
  .shop_nav {
    display: none;
  }
}

/**
   Aside de la boutique
*/
.shop_nav h2 {
  padding: 5px 0px 5px 0;
  margin: 0 0 10px;
  font-size: 1.4em;
  font-family: "Open Sans", sans-serif;
}

.shop_nav ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

@media (max-width: 992px) {
  .shop_nav ul {
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 20px;
    justify-content: space-evenly;
  }
}

.shop_nav .category {
  font-family: "Open Sans", sans-serif;
  display: contents;
  font-size: 0.9em;
}

.shop_nav .category a {
  margin-bottom: 5px;
  padding: 10px;
  color: #000;
  border-radius: 0 50px 50px 0;
}

.shop_nav .category.active a {
  color: white;
  background-color: #CC6600;
}

.shop_nav .category:hover:not(.active) a {
  background-color: rgba(204, 102, 0, 0.15);
}

/* 
   File d'arine
   présent sur les pages /{categorie} et /{categorie}/{product} 
*/
.file_ariane {
  flex-wrap: wrap;
  font-family: "Open Sans", sans-serif;
  margin: 15px auto;
  padding: 5px 0;
  color: #573D1C;
  background-color: #ebebeb;
}

.file_ariane a,
.file_ariane span {
  padding: 0 10px;
  margin: 5px 0;
  font-size: 0.9em;
}

.file_ariane a {
  color: gray;
  border-right: solid 1px gray;
}

.file_ariane span {
  color: #CC6600;
}

/**
   Contenu de la page
   (à coté de l'aside)
*/
.shop_content {
  margin: 0 10px 10px 20px;
}

@media (max-width: 767px) {
  .shop_content {
    width: 100%;
    margin: 0 0 10px 0;
  }
}

/**
   FAB Panier
   (visible qu'en mode mobile)
*/
.foalting-basket {
  display: none;
  position: fixed;
  bottom: 35px;
  right: 35px;
  background-color: #CC6600;
  z-index: 10;
}

@media (max-width: 767px) {
  .foalting-basket {
    display: inline-flex;
  }
}

.foalting-basket .count {
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background-color: #d63030;
  border-radius: 50%;
  color: white;
  font-family: 'Montserrat', 'Open Sans', sans-serif;
  font-size: 0.8em;
}

.foalting-basket__empty .count {
  display: none;
}

.foalting-basket__up .count {
  animation: count-zoom 3s forwards 1;
}

/* Page d'un prduit */
.product {
  width: 100%;
  min-height: 380px;
}

.product_images, .product_details {
  flex: 1;
  padding: 0 15px;
}

.product_images .cover {
  height: 350px;
  padding-left: 0;
}

.product_images .cover img {
  max-width: 100%;
}

.product_images .list-photo {
  list-style: none;
  padding: 0;
  flex-wrap: wrap;
  margin: 10px 0 0 0;
  justify-content: space-around;
}

.product_images .list-photo li {
  width: 60px;
  height: 60px;
  margin: 5px;
  border-radius: 2px;
  cursor: pointer;
  transition: ease-in-out box-shadow 0.3s;
}

.product_details {
  padding-right: 0;
}

.product_details h1 {
  margin: 0;
  font-size: 2.2em;
  text-transform: none;
}

.product_details .price_start,
.product_details h3 {
  display: block;
  font-family: Montserrat, sans-serif;
  margin-top: 10px;
  color: #666;
}

.product_details .price_start {
  font-size: 12px;
  font-weight: 400;
}

.product_details .price_start + h3 {
  margin-top: 0;
}

.product_details h3 {
  font-size: 1.6em;
  font-weight: 500;
}

.product_details .product_status {
  font-family: "Open Sans", sans-serif;
  display: inline-block;
  padding: 4px 7px;
  font-size: 80%;
  line-height: 1;
  text-align: center;
  border-radius: 5px;
  margin-top: 5px;
}

.product_details .product_status_0 {
  color: #fff;
  background-color: #28a745;
}

.product_details .product_status_1, .product_details .product_status_2, .product_details .product_status_3 {
  color: #fff;
  background-color: #ffc107;
}

.product_details .product_status_4 {
  color: #fff;
  background-color: #dc3545;
}

.product_details p {
  font-size: 0.9em;
}

@media (max-width: 767px) {
  .product {
    flex-direction: column;
  }
  .product_images {
    max-height: initial;
  }
  .product_images img {
    max-height: 500px;
    position: relative;
  }
  .product_details {
    padding: 0;
  }
}

/* Détails du produit - Options */
.product-details.product-details__simple .product-details_option {
  flex: 1;
  margin: 0 10px;
}

.product-details.product-details__simple .product-details_title {
  text-align: center;
  color: #777;
  font-size: 1.2em;
  font-family: "Open Sans", sans-serif;
}

.product-details.product-details__simple .product-details_choices {
  justify-content: center;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .product-details.product-details__simple {
    flex-direction: column;
  }
  .product-details.product-details__simple .product-details_option {
    margin: 15px 0;
  }
}

.product-details .choice-buckle_buckle {
  width: 80px;
  height: 80px;
  margin: 10px 5px 0;
  cursor: pointer;
}

.product-details .choice-buckle_img {
  border: solid 1px lightgray;
  width: 100%;
  height: 100%;
}

.product-details .choice-buckle_img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.product-details .choice-color {
  /* surcharge des tooltips */
}

.product-details .choice-color_color {
  width: 50px;
  height: 50px;
  margin: 10px 5px 0;
  cursor: pointer;
}

.product-details .choice-color_img {
  border: solid 1px lightgray;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.product-details .choice-color_img:hover {
  border-color: #CC6600;
}

.product-details .choice-color_img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.product-details .choice-color_img.noir {
  background-color: #000;
}

.product-details .choice-color_img.blanc {
  background-color: #fff;
}

.product-details .choice-color_img.marron {
  background-color: #3d1901;
}

.product-details .choice-color_img.havane {
  background-color: #995320;
}

.product-details .choice-color_img.rouge {
  background-color: #cd0303;
}

.product-details .choice-color_img.jaune {
  background-color: #ffc700;
}

.product-details .choice-color_img.bleu-turquoise {
  background-color: #0000f8;
}

.product-details .choice-color_img.null {
  position: relative;
}

.product-details .choice-color_img.null:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: red;
  width: 124px;
  height: 2px;
  transform: translate(-50%, -50%) rotateZ(-31deg);
}

.product-details .choice-color_color input[type=radio]:checked + .product-details .choice-color_img {
  border-color: #573D1C;
}

.product-details .choice-color_color input[type=radio]:checked + .choice-color_img:after {
  content: '\2714';
  color: white;
  text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9wcm9kdWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2J1dHRvbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90eXBvZ3JhcGh5L19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3R5cG9ncmFwaHkvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdHlwb2dyYXBoeS9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9idXR0b24vX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc2hhcGUvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc2hhcGUvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGhlbWUvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGhlbWUvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvcnRsL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2VsZXZhdGlvbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9lbGV2YXRpb24vX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvcmlwcGxlL19rZXlmcmFtZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2FuaW1hdGlvbi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9yaXBwbGUvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvcmlwcGxlL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9fZ2xvYmFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RvdWNoLXRhcmdldC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9jaGVja2JveC9fa2V5ZnJhbWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9jaGVja2JveC9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9jaGVja2JveC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9kZW5zaXR5L19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RvdWNoLXRhcmdldC9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9mb3JtLWZpZWxkL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2ljb24tYnV0dG9uL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2ljb24tYnV0dG9uL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3JhZGlvL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3JhZGlvL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3NlbGVjdC9fa2V5ZnJhbWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9saW5lLXJpcHBsZS9tZGMtbGluZS1yaXBwbGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL25vdGNoZWQtb3V0bGluZS9tZGMtbm90Y2hlZC1vdXRsaW5lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9ub3RjaGVkLW91dGxpbmUvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvZmxvYXRpbmctbGFiZWwvbWRjLWZsb2F0aW5nLWxhYmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9mbG9hdGluZy1sYWJlbC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9zZWxlY3QvaWNvbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9zZWxlY3QvaWNvbi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9zZWxlY3QvaWNvbi9tZGMtc2VsZWN0LWljb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3NlbGVjdC9oZWxwZXItdGV4dC9tZGMtc2VsZWN0LWhlbHBlci10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9zZWxlY3QvbWRjLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvc2VsZWN0L192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3NoYXBlL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3NlbGVjdC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9ub3RjaGVkLW91dGxpbmUvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGV4dGZpZWxkL2hlbHBlci10ZXh0L21kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90ZXh0ZmllbGQvY2hhcmFjdGVyLWNvdW50ZXIvbWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RleHRmaWVsZC9pY29uL21kYy10ZXh0LWZpZWxkLWljb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RleHRmaWVsZC9tZGMtdGV4dC1maWVsZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvdGV4dGZpZWxkL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RleHRmaWVsZC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC90ZXh0ZmllbGQvY2hhcmFjdGVyLWNvdW50ZXIvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL19mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2xpZ2h0Z2FsbGVyeS5qcy9kaXN0L2Nzcy9saWdodGdhbGxlcnkuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zY3NzL3Nob3AvcHJvZHVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWwvY2FyZC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9jYXJkL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL2ZhYi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbC9mYWIvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL19iYXNlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGdCQUFnQjtBQ0NiO0VBQ0cseUJBTW9CO0VBTHBCLCtEQUFnRDtFQUNoRCxtQkFBbUI7RUFDbkIsa0JBQWtCO0FERXhCOztBQ05HO0VBQ0csd0JBT21CO0VBTm5CLCtEQUFnRDtFQUNoRCxtQkFBbUI7RUFDbkIsa0JBQWtCO0FEU3hCOztBQ2JHO0VBQ0csdUJBUWtCO0VBUGxCLCtEQUFnRDtFQUNoRCxtQkFBbUI7RUFDbkIsa0JBQWtCO0FEZ0J4Qjs7QUVwQkE7O0NGd0JDO0FHeEJEOztFSDJCRTtBSWtCQTtFQ1lJLCtCQ2xDb0Q7RURrQ3BELGtDQzlCOEI7RUQ4QjlCLG1DQzdCK0I7RUQ2Qi9CLG1CQzJFa0I7RUQzRWxCLG9CQzRFb0I7RUQ1RXBCLGdCQ3RCTztFRHNCUCx5QkVnQnVDO0VGaEJ2QyxxQkMrRXFCO0VEL0VyQix5QkNnRnlCO0VGMkUzQixvQkk5TCtCO0VKME4vQixvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZixZSWpPb0I7RUprT3BCLFlBQVk7RUFDWixhQUFhO0VBQ2I7RUFDQSxvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLHdCQUF3QjtFQUN4QixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VLek50QixrQkNma0M7QVZpQ3RDOztBSVZFO0VBc05JLFVBQVU7RUFDVixTQUFTO0FKeE1mOztBSWZFO0VBOE5JLGFBQWE7QUozTW5COztBSW5CRTtFQW9PSSxlQUFlO0FKN01yQjs7QUl2QkU7RU9zQ0ksNkJQb01xRDtFQUVyRCwwQlFqUCtFO0VScVAvRSxlQUFlO0VBQ2Ysb0JBQW9CO0FKbk4xQjs7QUk5QkU7RUtSRSxrQkNma0M7QVZ5RHRDOztBSWxDRTtFT3NDSSw2QlBuQ2tEO0FKbUN4RDs7QUl0Q0U7RVMwT0U7RUFHRixjQUFjO0VBSFo7RUFHRixpQkFBYztFVFlkLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGVBQWU7RUFDZixtQkFBbUI7QUozTXJCOztBQUVBO0Vhc0xJO0VBR0YsZ0JBQWM7RUFIWjtFQUdGLGVBQWM7QWJwTGhCOztBSXpERTtFT3VFSSxjQ3ZGcUI7RUQwR25CO0VBQ0Esd0NBQTREO0FYNUJwRTs7QUk3Q0U7RVN3TkU7RUFHRixnQkFBYztFQUhaO0VBR0YsZUFBYztBYnZLaEI7O0FBRUE7RWFrS0k7RUFHRixjQUFjO0VBSFo7RUFHRixpQkFBYztBYmhLaEI7O0FJcERFO0VBNE9BLGtCQUFrQjtBSnBMcEI7O0FJbERFOzs7RVMyTUU7RUFHRixpQkFBYztFQUhaO0VBR0YsaUJBQWM7QWJuSmhCOztBQUVBOzs7OztFYThJSTtFQUdGLGdCQUFjO0VBSFo7RUFHRixrQkFBYztBYnhJaEI7O0FJdEVFOzs7RVMyTUU7RUFHRixnQkFBYztFQUhaO0VBR0Ysa0JBQWM7QWIvSGhCOztBQUVBOzs7OztFYTBISTtFQUdGLGlCQUFjO0VBSFo7RUFHRixpQkFBYztBYnBIaEI7O0FJekVFOztFQXVIRSxzQkk3TDBDO0FSb0o5Qzs7QUk5RUU7O0VBdVBJLHFDUTVTK0U7RVI2Uy9FLDBCUTdTK0U7QVp5SXJGOztBSXBGRTs7RU91QkkseUJDdkZxQjtBWnlKM0I7O0FXMUQ2QztFUC9CM0M7O0lPa0NZO0lBQ0EsbURBQTREO0VYNkR4RTtBQUNGOztBSWpHRTs7RU91QkksV0N0RnFGO0VEeUduRjtFQUNBLHdDQUE0RDtBWDZEcEU7O0FJakdFO0VVM0JFLHlIQ2xEZ0M7RVh1VmhDLHlEVWhSd0Q7QWQ0RzVEOztBSXRHRTtFVTNCRSwwSENsRGdDO0FmdUxwQzs7QUkxR0U7RVUzQkUsMkhDbERnQztBZjJMcEM7O0FJOUdFO0VVM0JFLHdIQ2xEZ0M7QWYrTHBDOztBSTlHRTtFQTBORSxtQkFBbUI7RUE5R25CLHNCQVcyQztFQUszQyxpQkkzTWtDO0FSbU10Qzs7QUlwSEU7RUErTkksaUNRL1IrRTtBWndMckY7O0FJeEhFO0VPWUkscUJDdkZxQjtFRDBHbkI7RUFDQSwrQ0FBNEQ7QVg4RnBFOztBSXhIRTtFQXFRQSxZSTNWNEI7RUo0VjVCLG1CQUFtQjtBSnpJckI7O0FnQmhORTtFQUNFO0lBQ0UsdURDUG1FO0lEWW5FLHNFQUFzRTtFaEIrTTFFO0VnQjVNRTtJQUNFLGdHQUFnRztFaEI4TXBHO0FBQ0Y7O0FnQjNNRTtFQUNFO0lBQ0UsaUNBQWlDO0lBQ2pDLFVBQVU7RWhCOE1kO0VnQjNNRTtJQUNFLHdDQUF3QztFaEI2TTVDO0FBQ0Y7O0FnQjFNRTtFQUNFO0lBQ0UsaUNBQWlDO0lBQ2pDLHdDQUF3QztFaEI2TTVDO0VnQjFNRTtJQUNFLFVBQVU7RWhCNE1kO0FBQ0Y7O0FrQm5MTTtFQUNFLGtEQUFtQztFQUVuQyxrQkFBa0I7QWxCcUwxQjs7QWtCeExNO0VBTUksK0NBQStDO0FsQnNMekQ7O0FJck9FO0VjMkRFLHVCQUFxQjtFQUNyQixvQkFBa0I7RUFDbEIsbUJBQWlCO0VBQ2pCLHdCQUFzQjtFQUN0QixnQ0FBOEI7RUFDOUIsa0NBQWdDO0VBRWhDLDZDQUE2QztBbEI2S2pEOztBSWpLRTtFY0xJLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLG9CQUFvQjtFQUNwQixXQUFXO0FsQjBLakI7O0FJektFO0VjTUksNkRBRW1EO0VBSW5ELFVBQVU7QWxCa0toQjs7QUk5S0U7RWNxQk0sK0NBQStDO0FsQjZKdkQ7O0FJbExFO0VjMkJNLE1BQU07RUFDTjtFQUNBLE9BQU87RUFDUCxtQkFBbUI7RUFDbkIsK0JBQStCO0FsQjJKdkM7O0FJMUxFO0VjdUNNLDZCQUE2QjtFQUM3QjtFQUNBLCtCQUErQjtBbEJ1SnZDOztBSWhNRTtFY2lETSx5RkFFZ0U7QWxCaUp4RTs7QUlwTUU7RWMyRE0sMENDaEs0QjtFRHFLNUIsZ0dBQWdHO0FsQnlJeEc7O0FJek1FO0VjNlJJLHFCQUEyQjtFQUMzQjtFQUNBLHNCQUE0QjtFQUM1QixXQUFrQjtFQUNsQixZQUFtQjtBbEJoRnpCOztBSWpORTtFY3dTTSxzQ0FBeUM7RUFDekMsdUNBQTBDO0FsQm5GbEQ7O0FJdE5FO0VPUEkseUJDdkZxQjtBWndUM0I7O0FXek42QztFUEQzQztJT0lZO0lBQ0EsbURBQTREO0VYMk54RTtBQUNGOztBSWpPRTtFY3FITSxhQ2hOSTtBbkJnVVo7O0FJck9FO0Vjc0tFLHlCQUF5QjtFQUl6QixhQ3BRUTtBbkJvVVo7O0FJMU9FO0Vjd0xNLGdDQUF3RDtBbEJzRGhFOztBSTlPRTtFYytMUSx5QkNyU3dCO0VEMFN4QixhQzdSRTtBbkI0VVo7O0FJblBFO0VjNE1JLDZCQUF3QjtBbEIyQzlCOztBSWpQRTs7O0VPYkksc0JDdEZxRjtBWjBWM0Y7O0FXNVA2QztFUEszQzs7O0lPRlk7SUFDQSxtREFBNEQ7RVhnUXhFO0FBQ0Y7O0FJaFFFOztFYytHTSxhQ3hNSTtBbkI4Vlo7O0FJclFFOzs7RWNnS0UseUJBQXlCO0VBSXpCLGFDNVBRO0FuQm9XWjs7QUk1UUU7O0Vja0xNLGdDQUF3RDtBbEIrRmhFOztBSWpSRTs7RWN5TFEseUJDclN3QjtFRDBTeEIsYUNyUkU7QW5COFdaOztBSXZSRTs7RWNzTUksNkJBQXdCO0FsQnNGOUI7O0FvQjNaQTs7RUFFRyxTQUFTO0VBQ1QsVUFBVTtBcEI4WmI7O0FvQjNaQTtFQUNHLHFCQUFxQjtBcEI4WnhCOztBb0IzWkE7RUFDRyxpREFBaUQ7QXBCOFpwRDs7QW9CM1pBO0VBQ0csZ0JBQWdCO0VBQ2hCLGNsQmRxQjtFa0JlckIseUJBQXlCO0VBQ3pCLG1CQUFtQjtBcEI4WnRCOztBb0IzWkE7RUFDRyxjQUFjO0VBQ2QsY2xCckJxQjtFa0JzQnJCLG1CQUFtQjtBcEI4WnRCOztBb0IzWkE7RUFDRyxnQkFBZ0I7RUFDaEIscUNBQXFDO0VBQ3JDLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FwQjhabkI7O0FvQjNaQTs7RUFFRyxvQ0FBb0M7QXBCOFp2Qzs7QW9CM1pBO0VBQ0csa0JBQWtCO0VBQ2xCLG1CQUFtQjtBcEI4WnRCOztBb0IzWkE7RUFDRyxpQkFBaUI7QXBCOFpwQjs7QW9CM1pBO0VBQ0csYUFBYTtFQUNiLG1CQUFtQjtBcEI4WnRCOztBb0IzWkE7RUFDRyxhQUFhO0VBQ2Isc0JBQXNCO0FwQjhaekI7O0FvQjNaQTtFQUNHLHVCQUF1QjtFQUN2QixtQkFBbUI7QXBCOFp0Qjs7QW9CM1pBO0VBQ0csa0JBQWtCO0FwQjhackI7O0FvQjNaQTtFQUNHLG1CQUFtQjtBcEI4WnRCOztBb0IvWkE7RUFJTSxtQkFBbUI7QXBCK1p6Qjs7QW9CM1pBO0VBQ0csVUFBVTtFQUNWLGdCbEJ4RXNCO0VrQnlFdEIsa0JBQWtCO0FwQjhackI7O0FvQjNaQTtFQUNHLGNBQWM7RUFDZCxXQUFXO0VBQ1gsa0NBQWtDO0FwQjhackM7O0FvQmphQTtFQU1NLGFBQWE7RUFDYixRQUFRO0VBQ1IsZ0NBQWdDO0FwQitadEM7O0FvQnpaQTtFQUNHLGtCQUFrQjtBcEI0WnJCOztBR3pmTTtFaUI0Rk47SUFJTSxpQkFBaUI7RXBCOFpyQjtBQUNGOztBb0IzWkE7O0VwQitaRTtBb0I1WkY7RUFDRyxrQkFBa0I7RUFDbEIsZ0JBQWdCO0FwQjhabkI7O0FvQmhhQTtFQUtNLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsdUJBQXVCO0FwQitaN0I7O0FvQjNaQTs7RXBCK1pFO0FvQnpaQztFQUNHLGdCQUFnQjtFQUNoQix5QkFBeUI7RUFDekIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixvQ0FBMkI7RUFDM0IsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxXQUFXO0FwQjJaakI7O0FvQnRaQTs7RXBCMFpFO0FvQnZaRjtFQUNHLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsWUFBWTtBcEJ5WmY7O0FvQjVaQTtFQU1NLFlBQVk7RUFDWixjQUFjO0VBQ2QsV0FBVztFQUNYLFlBQVk7RUFDWixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHlCbEJ4Sm9CO0VrQnlKcEIscURBQXlFO0VBQ3pFLDZDQUE2QztBcEIwWm5EOztBb0J2WkE7RUFDRztJQUNHLHVCQUF1QjtFcEIwWjNCO0VvQnhaQztJQUNHLHlCQUF5QjtFcEIwWjdCO0FBQ0Y7O0FvQnZaQTs7RXBCMlpFO0FJemhCQTtFZ0JtSUMsY2xCM0t1QjtBRm9rQjFCOztBSWplRTtFZ0I0RUMscUJsQi9LdUI7QUZ3a0IxQjs7QUlsZEU7RWdCOERDLHlCbEJwTHVCO0FGNGtCMUI7O0FJN2VFO0VnQnlGQyxvQ0FBOEM7RUFDOUMsdUJBQXVCO0FwQndaMUI7O0FvQnJaQTs7RXBCeVpFO0FvQnRaRjtFQUNHLFdBQVc7RUFDWCxhQUFhO0VBQ2IsZUFBZTtFQUNmLFNBQVM7RUFDVCxXQUFXO0VBQ1gsdUJBQXVCO0VBQ3ZCLGNsQnZNcUI7RWtCd01yQiw2QmxCdk11QjtFa0J3TXZCLGtCQUFrQjtFQUNsQixzQkFBc0I7QXBCd1p6Qjs7QW9CbGFBO0VBYU0sT0FBTztBcEJ5WmI7O0FvQnRaRztFQUNHLE9BQU87RUFDUCxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHVCQUF1QjtBcEJ5WjdCOztBRzNtQk07RWlCOExOO0lBeUJNLHNCQUFzQjtFcEJ5WjFCO0FBQ0Y7O0FvQnJaQTs7RXBCeVpFO0FvQnRaRjtFQUNHLGtCQUFrQjtBcEJ3WnJCOztBb0J6WkE7RUFLTSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCwwQkFBMEI7RUFDMUIsWUFBWTtFQUNaLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIscUNBQXFDO0VBQ3JDLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHlCQUF5QjtBcEJ3Wi9COztBb0IzYUE7RUF3QlMsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osU0FBUztFQUNULGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLHlEQUF5RDtBcEJ1WmxFOztBb0J0YkE7RUFvQ00sNkNBQTZDO0VBQzdDLG1CQUFtQjtFQUNuQixVQUFVO0FwQnNaaEI7O0FvQmxaQTtFQUNHO0lBQ0csa0JBQWtCO0lBQ2xCLFVBQVU7RXBCcVpkO0VvQm5aQztJQUNHLG1CQUFtQjtJQUNuQixVQUFVO0VwQnFaZDtBQUNGOztBcUI3cUJBOztFckJpckJFO0FxQjdxQkY7RUFDRyxlQUFlO0VBQ2YsdUJBQXVCO0VBQ3ZCLFdBQVc7RUFDWCxVQUFVO0FyQitxQmI7O0FxQjVxQkE7O0NyQmdyQkM7QXFCN3FCRDtFQUdHLFlBQVk7QXJCNnFCZjs7QXFCaHJCQTtFQU1NLFlBQVk7QXJCOHFCbEI7O0FxQnByQkE7RUFTTSxhQUFhO0VBQ2IsZUFBZTtFQUNmLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsV0FBVztBckIrcUJqQjs7QXFCNXJCQTtFQWdCUyxjQUFjO0VBQ2QsV0FBVztFQUNYLGFBQWE7QXJCZ3JCdEI7O0FxQmxzQkE7RUFxQlksV0FBVztFQUNYLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztFQUNYLHlCbkJsQ1k7QUZtdEJ4Qjs7QXFCM3FCQTs7Q3JCK3FCQztBcUI1cUJEO0VBQ0csYUFBYTtBckI4cUJoQjs7QXFCL3FCQTtFQU1TLHlDQUF5QztFQUN6QyxRQUFRO0VBQ1Isa0JBQWtCO0FyQjZxQjNCOztBcUJyckJBO0VBV1Msa0JBQWtCO0FyQjhxQjNCOztBcUJ6ckJBO0VBY1MsMENBQTBDO0VBQzFDLFFBQVE7RUFDUixrQkFBa0I7QXJCK3FCM0I7O0FxQnpxQkE7O0NyQjZxQkM7QXFCMXFCRDtFQUNHLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsZ0NuQnZFcUI7QUZtdkJ4Qjs7QXFCL3FCQTtFQU9NLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsVUFBVTtBckI0cUJoQjs7QXFCcnJCQTtFQVlTLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLGlEQUFpRDtBckI2cUIxRDs7QXFCNXJCQTtFQWtCWSxjbkJ0Rlk7RW1CdUZaLGdCQUFnQjtFQUVoQix1RkFBdUc7RUFDdkcsdUJBQXVCO0VBQ3ZCLGdDQUFnQztBckI2cUI1Qzs7QXFCcHNCQTtFQTJCZSwwQkFBMEI7QXJCNnFCekM7O0FxQnJxQkE7OztDckIwcUJDO0FxQnRxQkQ7RUFDRyxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixXQUFXO0FyQndxQmQ7O0FxQjVxQkE7RUFTTSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixXQUFXO0VBQ1gsWUFBWTtFQUNaLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGtEQUFrRDtFQUNsRCxnQkFBZ0I7QXJCdXFCdEI7O0FxQnBxQkc7RUFDTSxhQUFhO0FyQnVxQnRCOztBcUJwcUJHO0VBQ0csbUNBQW1DO0FyQnVxQnpDOztBRzF5Qk07RWtCeUdOO0lBOEJNLGFBQWE7RXJCd3FCakI7QUFDRjs7QXFCbnFCQTtFQUNHO0lBQUssbUJBQW1CO0VyQnVxQnpCO0VxQnRxQkM7SUFBTSxxQkFBcUI7RXJCeXFCNUI7RXFCeHFCQztJQUFNLG1CQUFtQjtFckIycUIxQjtBQUNGOztBcUJ6cUJBOztFckI2cUJFO0FxQjFxQkY7RUFDRyxrQkFBa0I7RUFDbEIsNkJBQTZCO0VBQzdCLFlBQVk7RUFDWixRQUFRO0FyQjRxQlg7O0FxQmhyQkE7RUFPTSxhQUFhO0FyQjZxQm5COztBcUJwckJBO0VBV00sWUFBWTtBckI2cUJsQjs7QXFCeHJCQTtFQWNTLGdCQUFnQjtBckI4cUJ6Qjs7QXFCNXJCQTtFQWlCWSxZQUFZO0VBQ1osaUZBQWlGO0VBQ2pGLHVCQUF1QjtBckIrcUJuQzs7QXFCbHNCQTtFQXNCZSwwQkFBMEI7QXJCZ3JCekM7O0FHNTFCTTtFa0JzSk47SUE0Qk0sZUFBZTtJQUNmLHVCQUF1QjtJQUN2QixXQUFXO0lBQ1gsVUFBVTtFckIrcUJkO0VxQjlzQkY7SUFrQ1MsYUFBYTtFckIrcUJwQjtFcUJqdEJGO0lBc0NTLFlBQVk7RXJCOHFCbkI7RXFCcHRCRjtJQXlDWSxrQkFBa0I7RXJCOHFCNUI7RXFCdnRCRjtJQTRDZSxjbkJwTVM7SW1CcU1ULHVGQUF1RztJQUN2Ryx1QkFBdUI7SUFDdkIsZ0NBQWdDO0VyQjhxQjdDO0VxQjd0QkY7SUFtRGtCLDBCQUEwQjtFckI2cUIxQztBQUNGOztBcUJ0cUJBOztFckIwcUJFO0FHMzNCSTtFa0JPTjtJQXNOUyxjQUFjO0VyQmtxQnJCO0VxQjd6QkY7SUErSk0sZ0JBQWdCO0lBQ2hCLFdBQVc7SUFDWCxnQ0FBZ0M7RXJCaXFCcEM7RXFCbDBCRjtJQW9LUyxzQkFBc0I7SUFDdEIsNkJBQTZCO0lBQzdCLFNBQVM7SUFDVCxtQkFBbUI7RXJCaXFCMUI7RXFCeDBCRjtJQTBLWSxjQUFjO0VyQmlxQnhCO0VxQjVwQkM7SUFDRyxhQUF5RTtFckI4cEI3RTtBQUNGOztBc0J2NUJBO0VBQ0cseUJwQkdxQjtFb0JGckIsZUFBZTtFQUNmLGdCQUFnQjtBdEIwNUJuQjs7QXNCNzVCQTtFQU1NLFlBQVk7RUFDWixnREFBZ0Q7QXRCMjVCdEQ7O0FzQnQ1QkE7RUFPUyxZQUFZO0F0Qm01QnJCOztBc0IxNUJBO0VBVVksc0JBQXNCO0F0Qm81QmxDOztBc0I5NUJBO0VBa0JNLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsVUFBVTtBdEJnNUJoQjs7QXNCcDZCQTtFQXVCUyxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGdEQUFnRDtBdEJpNUJ6RDs7QXNCMTZCQTtFQTRCWSxZQUFZO0F0Qms1QnhCOztBc0I5NkJBO0VBK0JlLDBCQUEwQjtBdEJtNUJ6Qzs7QXNCbDdCQTtFQW1DWSxlQUFlO0F0Qm01QjNCOztBc0J0N0JBO0VBd0NlLCtCQUErQjtBdEJrNUI5Qzs7QXNCMTdCQTtFQThDZSxzQkFBc0I7QXRCZzVCckM7O0FzQjk3QkE7RUF5RE0sbUJBQW1CO0F0Qnk0QnpCOztBc0JsOEJBO0VBNERTLGdCQUFnQjtFQUNoQixnQkFBZ0I7QXRCMDRCekI7O0FHNzhCTTtFbUJNTjtJQWlFUyxtQkFBbUI7RXRCMjRCMUI7QUFDRjs7QXNCdjRCQTs7RXRCMjRCRTtBR3Y5Qkk7RW1CZ0ZIO0lBR00sc0JBQXNCO0V0Qnc0QjdCO0VzQjM0QkM7SUFNUyxtQkFBbUI7RXRCdzRCN0I7QUFDRjs7QXVCdjhCRTtFQU9NLGVBQWU7QXZCbzhCdkI7O0F3Qi82QkU7RUFDRTs7SUFFRSwyQkNYcUM7RXpCNjdCekM7RXdCLzZCRTtJQUNFLHFEUDVDc0U7RWpCNjlCMUU7RXdCOTZCRTtJQUNFLG9CQUFvQjtFeEJnN0J4QjtBQUNGOztBd0I3NkJFO0VBQ0U7O0lBRUUsb0JBQW9CO0V4Qmc3QnhCO0V3Qjc2QkU7SUFDRSxtREFBbUQ7RXhCKzZCdkQ7RXdCNTZCRTtJQUNFLG9CQUFvQjtFeEI4NkJ4QjtBQUNGOztBd0IzNkJFO0VBQ0U7SUFDRSxxRFBuRXNFO0lPb0V0RSxVQUFVO0lBQ1Ysb0JBQW9CO0V4Qjg2QnhCO0V3QjM2QkU7SUFDRSxVQUFVO0lBQ1YsNEJDL0NxQztFekI0OUJ6QztBQUNGOztBd0IxNkJFO0VBQ0U7SUFDRSxxRFBsRnNFO0lPbUZ0RSx1QkFBdUI7SUFDdkIsVUFBVTtFeEI2NkJkO0V3QjE2QkU7SUFDRSx3QkFBd0I7SUFDeEIsVUFBVTtFeEI0NkJkO0FBQ0Y7O0F3Qno2QkU7RUFDRTtJQUNFLHNEQ2pFMEU7SURrRTFFLHdCQUF3QjtJQUN4QixVQUFVO0V4QjQ2QmQ7RXdCejZCRTtJQUNFLHlCQUF5QjtJQUN6QixVQUFVO0V4QjI2QmQ7QUFDRjs7QXdCeDZCRTtFQUNFO0lBQ0UsMkVBQTJFO0lBQzNFLHlCQUF5QjtJQUN6QixVQUFVO0V4QjI2QmQ7RXdCeDZCRTtJQUNFLHVCQUF1QjtJQUN2QixVQUFVO0V4QjA2QmQ7QUFDRjs7QXdCdjZCRTtFQUNFO0lBQ0Usc0RDM0YwRTtJRDRGMUUsdUJBQXVCO0lBQ3ZCLFVBQVU7RXhCMDZCZDtFd0J2NkJFO0lBQ0UseUJBQXlCO0lBQ3pCLFVBQVU7RXhCeTZCZDtBQUNGOztBd0J0NkJFO0VBQ0U7SUFDRSxpQ0FBaUM7SUFDakMsb0JBQW9CO0lBQ3BCLFVBQVU7RXhCeTZCZDtFd0J0NkJFOztJQUVFLG9CQUFvQjtJQUNwQixVQUFVO0V4Qnc2QmQ7QUFDRjs7QTBCbmhDRTtFQTZXQSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGNEelkyQjtFQzBZM0IsdUJBQXVCO0VBQ3ZCLFdEM1kyQjtFQzRZM0IsWUQ1WTJCO0VDNlkzQixjQUFjO0VBQ2QsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixzQkFBc0I7RUFqTXBCLGFBSDZEO0ExQisyQmpFOztBMEJqaUNFOztFZjJESSx5QkNsRm9CO0FaNmpDMUI7O0FXbitCNkM7RWVuRTNDOztJZnNFWTtJQUNBLHFEQUE0RDtFWHMrQnhFO0FBQ0Y7O0FrQmw2QkU7RVBqRkkseUJDbEZvQjtBWnlrQzFCOztBVy8rQjZDO0VPeUUzQztJUHRFWTtJQUNBLHFEQUE0RDtFWGkvQnhFO0FBQ0Y7O0FrQnI0Qkk7RUFHSSxhQ2hOSTtBbkJzbENaOztBa0JwMkJNO0VBZUYseUJBQXlCO0VBSXpCLGFDcFFRO0FuQjBsQ1o7O0FrQjEwQkk7RUFFSSxnQ0FBd0Q7QWxCNDBCaEU7O0FrQnYwQk07RUFFSSx5QkNyU3dCO0VEMFN4QixhQzdSRTtBbkJrbUNaOztBa0IvekJFO0VBRUksNkJBQXdCO0FsQmkwQjlCOztBa0JuOEJFOztFUGpGSSx5QkNsRm9CO0FaMm1DMUI7O0FXamhDNkM7RU95RTNDOztJUHRFWTtJQUNBLHFEQUE0RDtFWG9oQ3hFO0FBQ0Y7O0EwQjVsQ0U7RUEwTEksU0FSMkQ7RUFTM0QsVUFUMkQ7QTFCKzZCakU7O0EwQmptQ0U7RUFpTUksVUFBb0Q7RUFDcEQsV0FBcUQ7RUFDckQsV0M5Sm9GO0VEK0pwRixZQy9Kb0Y7QTNCbWtDMUY7O0EwQnhtQ0U7RUErVkksUUFKK0I7RUFLL0IsVUFMK0I7RUFNL0IsU0FOK0I7RUFPL0IsV0M3VG9GO0VEOFRwRixZQzlUb0Y7QTNCMmtDMUY7O0EwQi9uQkU7RWZ2ZEksaUNDM0MrRTtFRDJDL0UsNkJlNEw2QjtBMUIrNUJuQzs7QTBCM21CRTs7RWYvY0kscUJDbEZvQjtFRHFHbEI7RUFDQSxpREFBNEQ7RUFwQjlELHlCQ2xGb0I7RURxR2xCO0VBQ0EscURBQTREO0FYZ2pDcEU7O0F3QnpwQ0U7RUFDRTtJYm1ERSxpQ0MzQytFO0lEMkMvRSw2QmU0TDZCO0UxQis2QmpDO0V3QnpwQ0U7SWIrRUUscUJDbEZvQjtJRHFHbEI7SUFDQSxpREFBNEQ7SUFwQjlELHlCQ2xGb0I7SURxR2xCO0lBQ0EscURBQTREO0VYOGpDbEU7QUFDRjs7QXdCNXBDRTtFQUNFOztJYndFRSxxQkNsRm9CO0lEcUdsQjtJQUNBLGlEQUE0RDtJQXBCOUQseUJDbEZvQjtJRHFHbEI7SUFDQSxxREFBNEQ7RVgwa0NsRTtFd0JocUNFO0liaUNFLGlDQzNDK0U7SUQyQy9FLDZCZTRMNkI7RTFCdThCakM7QUFDRjs7QTBCdDZCTztFQUlLLHlEQUFnQjtBMUJzNkI1Qjs7QTBCajZCTztFQUlLLDBEQUFnQjtBMUJpNkI1Qjs7QTBCdnFCRTtFZnJlSSxpQ0MzQytFO0VEMkMvRSw2QmU4UDZCO0ExQm01Qm5DOztBMEJocEJFOztFZmpnQkkseUJlK1A2QjtFZi9QN0IscUNDM0MrRTtBWmtzQ3JGOztBMEJ0dEJFO0VmamNJLFdDckRxRjtBWmd0QzNGOztBMEIxdEJFO0VmamNJLGtCQ3JEcUY7QVpvdEMzRjs7QTBCbnRCRTtFZjVjSSxXQ3JEcUY7QVp3dEMzRjs7QTBCdnRCRTtFZjVjSSxrQkNyRHFGO0FaNHRDM0Y7O0EwQm5yQ0U7RUFDRTtJQUVJLGFBQWE7RTFCcXJDbkI7QUFDRjs7QTBCaHJDRTtFQW1XQSxlQUFlO0VBQ2Ysb0JBQW9CO0ExQmkxQnRCOztBMEIvcUNFO0VBNGdCRSxvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLFdEeGtCeUI7RUN5a0J6QixZRHprQnlCO0VDMmtCekIsOEJBQXFEO0VBQ3JELGtCQUFrQjtFQUNsQiw2QkFBNkI7RUFDN0Isb0JBQW9CO0VBQ3BCLDJDQUEyQztFQVUzQyxzSFRobUJrRTtBakI2dkN0RTs7QTBCL3JDRTtFZjhCSSxzQkM1RStFO0FaaXZDckY7O0FXN3BDNkM7RWV0QzNDO0lmeUNZO0lBQ0EsbURBQTREO0VYK3BDeEU7QUFDRjs7QTBCdHNDRTtFQW1uQkUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCxXQUFXO0VBQ1gsVUFBVTtFQUlWLDBEVC9yQmtFO0FqQm14Q3RFOztBMEJqbEJFO0VBRUksVUFBVTtBMUJtbEJoQjs7QTBCanRDRTtFQWlzQkUsb0VUdndCa0U7RVMyd0JsRSxvQkFBb0I7RUFDcEIsb0JBQWtEO0VBQ2xELDJCRG52QnVDO0VDb3ZCdkMsMEJEcHZCdUM7QXpCcXdDM0M7O0EwQi91Q0k7RUE2dUJBLFdBQVc7RUFDWCxTQUFTO0VBQ1QsaUNBQWlDO0VBQ2pDLGlCQUF1RDtFQUN2RCxtQkFBbUI7RUFDbkIsVUFBVTtFQUlWLDBHVHR5QmtFO0FqQnl5Q3RFOztBMEIxdENFOzs7O0VBcVZBLDJCQUEyQjtBMUI0NEI3Qjs7QTBCbDRCRztFQUtHLHlCQUF5RDtFQUN6RCxpQ0FBaUM7QTFCaTRCdkM7O0EwQjczQkc7RUFLRyx3RUFBd0c7RUFDeEcsZ0JBQWdCO0ExQjQzQnRCOztBMEJ4M0JHO0VBRUcsd0VBQXFHO0VBQ3JHLGdCQUFnQjtBMUIwM0J0Qjs7QTBCdDNCRztFQUVHLHVFQUFvRztFQUNwRyxnQkFBZ0I7QTFCdzNCdEI7O0EwQnAzQkc7RUFFRyxzRUFBbUc7RUFDbkcsZ0JBQWdCO0ExQnMzQnRCOztBMEJ6M0JHO0VBT0csc0VBQW1HO0VBQ25HLGdCQUFnQjtBMUJzM0J0Qjs7QTBCbDNCRztFQUVHLHVFQUE4RztFQUM5RyxnQkFBZ0I7QTFCbzNCdEI7O0EwQnYzQkc7RUFPRyx1RUFBOEc7RUFDOUcsZ0JBQWdCO0ExQm8zQnRCOztBMEJoM0JHO0VBR0cseUVBQzRHO0VBQzVHLGdCQUFnQjtBMUJnM0J0Qjs7QTBCN3ZDRTs7RUF1Z0JBLGtIVDFtQjBFO0FqQnEyQzVFOztBMEJsd0NFOztFQW1yQkEsb0JBQW9CO0ExQm9sQnRCOztBMEJ6dkNFO0VBc2hCRSxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCwrQkFBK0I7RUFJL0IsMEdUOW9Ca0U7QWpCazNDdEU7O0EwQmh3Q0U7RUF1aUJFLG1CQUFtQjtFQUNuQixhUGpwQlE7RU9xcEJSLHNHVGpxQndFO0FqQjIzQzVFOztBMEJsd0NFO0VBaWpCQSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixVQUFVO0VBQ1YsZUFBZTtBMUJxdEJqQjs7QTBCMXdDRTtFQXFTQSxlQUFlO0VBQ2Ysb0JBQW9CO0ExQnkrQnRCOztBMEJud0NFO0VIMUZFLGVBSHdFO0VBSXhFLGtCQUp3RTtFQVd0RSxpQkFId0U7RUFJeEUsZ0JBSndFO0F2QisxQzlFOztBMEIxd0NFO0VBOFBJLFNBSitCO0VBSy9CLFdBTCtCO0VBTS9CLFVBTitCO0VBTy9CLFdFdFl3QjtFRnVZeEIsWUV2WXdCO0E1QnU1QzlCOztBMEIxd0NFO0VBb2tCRSx3R1RqdEJ3RTtFU3V0QnhFLFVBQVU7QTFCcXNCZDs7QTBCL3dDRTtFQW1xQkEsbUNBQW1DO0ExQmduQnJDOztBMEJ2d0NFO0VBdWtCRSx3QkFBd0I7RUFDeEIsVUFBVTtFQUlWLDBHVGx1QmtFO0FqQm02Q3RFOztBMEI3d0NFO0VBMnBCQSxpQ0FBaUM7RUFDakMsVUFBVTtBMUJzbkJaOztBMEJ2NENFO0VSK0NFLHVCQUFxQjtFQUNyQixvQkFBa0I7RUFDbEIsbUJBQWlCO0VBQ2pCLHdCQUFzQjtFQUN0QixnQ0FBOEI7RUFDOUIsa0NBQWdDO0VBRWhDLDZDQUE2QztBbEIyMUNqRDs7QWtCdjFDRTs7RUFHSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixvQkFBb0I7RUFDcEIsV0FBVztBbEJ5MUNqQjs7QWtCcjFDRTtFQUdJLDZEQUVtRDtFQUluRCxVQUFVO0FsQmkxQ2hCOztBa0IxMENJO0VBRUksK0NBQStDO0FsQjQwQ3ZEOztBa0J4MENJO0VBRUksTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLG1CQUFtQjtFQUNuQiwrQkFBK0I7QWxCMDBDdkM7O0FrQnAwQ0k7RUFFSSw2QkFBNkI7RUFDN0I7RUFDQSwrQkFBK0I7QWxCczBDdkM7O0FrQmgwQ0k7RUFFSSx5RkFFZ0U7QWxCZzBDeEU7O0FrQjF6Q0k7RUFFSSwwQ0NoSzRCO0VEcUs1QixnR0FBZ0c7QWxCd3pDeEc7O0FrQmg0Q0U7O0VQQ0ksc0JDNUUrRTtBWmc5Q3JGOztBVzUzQzZDO0VPVDNDOztJUFlZO0lBQ0EsbURBQTREO0VYKzNDeEU7QUFDRjs7QWtCbnhDSTtFQUdJLGFDaE5JO0FuQm8rQ1o7O0FrQmx2Q007RUFlRix5QkFBeUI7RUFJekIsYUNwUVE7QW5CdytDWjs7QWtCeHRDSTtFQUVJLGdDQUF3RDtBbEIwdENoRTs7QWtCcnRDTTtFQUVJLHlCQ3JTd0I7RUQwU3hCLGFDN1JFO0FuQmcvQ1o7O0FrQjdzQ0U7RUFFSSw2QkFBd0I7QWxCK3NDOUI7O0FrQm42Q0U7O0VBOFRJLG9CQUErQjtFQUMvQjtFQUNBLHFCQUFnQztFQUNoQyxXQVRTO0VBVVQsWUFWUztBbEJvbkNmOztBa0JybUNJOztFQUdJLDJDQUFzRDtFQUN0RDtFQUNBLDZDQUF3RDtFQUN4RCxzQ0FBeUM7RUFDekMsdUNBQTBDO0FsQnVtQ2xEOztBa0JwNUNJO0VBbVRJLHNDQUF5QztFQUN6Qyx1Q0FBMEM7QWxCcW1DbEQ7O0EwQm4yQ0U7RVJnVEUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7RUFHWixvQkFBb0I7QWxCcWpDeEI7O0EwQngyQ0U7RUFFSSxhQUFhO0ExQjAyQ25COztBNkIxaERFO0V4QnlCSSwrQkNsQ29EO0VEa0NwRCxrQ0M5QjhCO0VEOEI5QixtQ0M3QitCO0VENkIvQixtQkMyRGtCO0VEM0RsQixvQkM0RG9CO0VENURwQixnQkN2QlE7RUR1QlIseUJFZ0J1QztFRmhCdkMsd0JDK0R3QjtFRC9EeEIsdUJDZ0V1QjtFS0x2QiwwQkNqRWlCO0VEb0ZmO0VBQ0EsdUVBQTREO0VrQmhHOUQsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixzQkFBc0I7QTdCa2lENUI7O0E2QjVpREU7RWhCdVBFO0VBR0YsY0FBYztFQUhaO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLGlCQUFjO0VBSFo7RUFHRixnQkFBYztFZ0J2T1IsUUFBUTtBN0JxaURoQjs7QUFFQTtFYW4wQ0k7RUFHRixpQkFBYztFQUhaO0VBR0YsZUFBYztBYnEwQ2hCOztBQUVBO0VhMTBDSTtFQUdGLGVBQWM7RUFIWjtFQUdGLGtCQUFjO0FiNDBDaEI7O0E2QjlpREU7RWhCK05FO0VBR0YsaUJBQWM7RUFIWjtFQUdGLGVBQWM7RUFIWjtFQUdGLGVBQWM7RUFIWjtFQUdGLGtCQUFjO0VnQjNOUixTQUFTO0E3Qm1qRGpCOztBQUVBO0VhNzFDSTtFQUdGLGNBQWM7RUFIWjtFQUdGLGtCQUFjO0FiKzFDaEI7O0FBRUE7RWFwMkNJO0VBR0YsaUJBQWM7RUFIWjtFQUdGLGdCQUFjO0FiczJDaEI7O0E4QjNsREU7RUEySEUscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLGFBQWE7RUFDYiw2QkFBNkI7RUFDN0Isa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxlQ2pKNEI7RURrSjVCLHFCQUFxQjtFQUNyQixlQUFlO0VBQ2YsaUJBQWlCO0VBL0RqQixXSGRzRjtFR2V0RixZSGZzRjtFR2dCdEYsYUFBaUQ7QTlCb2lEckQ7O0E4QjdtREU7O0VBNklJLFdDM0owQjtFRDRKMUIsWUM1SjBCO0EvQmlvRGhDOztBOEJubkRFO0VuQitFSSwwQkM5RGtCO0VEaUZoQjtFQUNBLG1FQUE0RDtFbUJxRDlELGVBQWU7RUFDZixvQkFBb0I7QTlCaytDMUI7O0E4QnRuREU7RUFFSSxxQkFBcUI7QTlCd25EM0I7O0E4QjFuREU7RUFRTSxhQUFhO0E5QnNuRHJCOztBOEJqbkRFO0VBR00sYUFBYTtBOUJrbkRyQjs7QThCcm5ERTtFQVNRLHFCQUFxQjtBOUJnbkQvQjs7QThCM29ERTtFWm1FRSx1QkFBcUI7RUFDckIsb0JBQWtCO0VBQ2xCLG1CQUFpQjtFQUNqQix3QkFBc0I7RUFDdEIsZ0NBQThCO0VBQzlCLGtDQUFnQztFQUVoQyw2Q0FBNkM7QWxCMmtEakQ7O0FrQnZrREU7RUFHSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixvQkFBb0I7RUFDcEIsV0FBVztBbEJ3a0RqQjs7QWtCcGtERTtFQUdJLDZEQUVtRDtFQUluRCxVQUFVO0FsQmdrRGhCOztBa0J6akRJO0VBRUksK0NBQStDO0FsQjJqRHZEOztBa0J2akRJO0VBRUksTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLG1CQUFtQjtFQUNuQiwrQkFBK0I7QWxCeWpEdkM7O0FrQm5qREk7RUFFSSw2QkFBNkI7RUFDN0I7RUFDQSwrQkFBK0I7QWxCcWpEdkM7O0FrQi9pREk7RUFFSSx5RkFFZ0U7QWxCK2lEeEU7O0FrQnppREk7RUFFSSwwQ0NoSzRCO0VEcUs1QixnR0FBZ0c7QWxCdWlEeEc7O0FrQi9tREU7RUE4VEksb0JBQStCO0VBQy9CO0VBQ0EscUJBQWdDO0VBQ2hDLFdBVFM7RUFVVCxZQVZTO0FsQit6Q2Y7O0FrQmh6Q0k7RUFHSSwyQ0FBc0Q7RUFDdEQ7RUFDQSw2Q0FBd0Q7RUFDeEQsc0NBQXlDO0VBQ3pDLHVDQUEwQztBbEJpekNsRDs7QWtCOWxESTtFQW1USSxzQ0FBeUM7RUFDekMsdUNBQTBDO0FsQit5Q2xEOztBa0Jwb0RFO0VQaENJLHNCQzNDK0U7QVptdERyRjs7QWtCOWdESTtFQUdJLGFDaE5JO0FuQit0RFo7O0FrQjcrQ007RUFlRix5QkFBeUI7RUFJekIsYUNwUVE7QW5CbXVEWjs7QWtCbjlDSTtFQUVJLGdDQUF3RDtBbEJxOUNoRTs7QWtCaDlDTTtFQUVJLHlCQ3JTd0I7RUQwU3hCLGFDN1JFO0FuQjJ1RFo7O0FrQng4Q0U7RUFFSSw2QkFBd0I7QWxCMDhDOUI7O0FnQzd0REU7RUFnVkUsYUFIMEM7RUFsVXhDLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHVCQUF1QjtFQUN2QixXQzFDb0I7RUQyQ3BCLFlDM0NvQjtFRDRDcEIsZUFBZTtFQUNmO0VBQ0Esb0RBQW9EO0FoQ3V0RDFEOztBZ0MxdURFO0VyQitCSSxpQ0MzQytFO0FaMHZEckY7O0FnQzl1REU7RXJCZ0VJLHFCQ2xGb0I7RURxR2xCO0VBQ0EsaURBQTREO0FYZ3FEcEU7O0FnQ3B2REU7RXJCZ0VJLHFCQ2xGb0I7RURxR2xCO0VBQ0EsaURBQTREO0FYc3FEcEU7O0FnQzF2REU7O0VyQitCSSxpQ0MzQytFO0FaMndEckY7O0FnQy92REU7O0VyQitCSSxpQ0MzQytFO0FaZ3hEckY7O0FnQ3B3REU7O0VyQitCSSxpQ0MzQytFO0FacXhEckY7O0FnQ3p3REU7RXJCZ0VJLHlCQ2xGb0I7QVoreEQxQjs7QVdyc0Q2QztFcUJ4RTNDO0lyQjJFWTtJQUNBLHFEQUE0RDtFWHVzRHhFO0FBQ0Y7O0FnQ3B4REU7RUFxVkksVUFSd0M7RUFTeEMsV0FUd0M7RUFVeEMsV0w3U29GO0VLOFNwRixZTDlTb0Y7QTNCaXZEMUY7O0FnQzN4REU7RUF1U0ksUUFKK0I7RUFLL0IsVUFMK0I7RUFNL0IsU0FOK0I7RUFPL0IsV0xoUW9GO0VLaVFwRixZTGpRb0Y7QTNCeXZEMUY7O0FnQzV3REk7RUFFSSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixXQ3ZEa0I7RUR3RGxCLFlDeERrQjtBakNzMEQxQjs7QWdDcHhESztFQVdLLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixvQkFBb0I7RUFDcEIsV0FBVztFQUlYLDRHZnZFNEQ7QWpCaTFEdEU7O0FnQ3J3REk7RUFFSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxzQkFBc0I7RUFDdEIsV0FBVztFQUNYLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUlsQiwrRGYxRjhEO0FqQjgxRHRFOztBZ0Nod0RJO0VBRUksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1Asc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBSWxCLGlIZjdHOEQ7QWpCNDJEdEU7O0FnQ3p2REk7RUFFSSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixVQUFVO0VBQ1YsZUFBZTtFQUNmLFVBQVU7QWhDMnZEbEI7O0FnQ3Z2REk7RVR0RkEsZUFId0U7RUFJeEUsa0JBSndFO0VBV3RFLGlCQUh3RTtFQUl4RSxnQkFKd0U7QXZCKzBEOUU7O0FnQzl2REs7RUFxTUMsU0FKK0I7RUFLL0IsV0FMK0I7RUFNL0IsVUFOK0I7RUFPL0IsV0p6VXdCO0VJMFV4QixZSjFVd0I7QTVCdTREOUI7O0FnQzd2REU7O0VBSU0sd0dmOUlvRTtBakI0NEQ1RTs7QWdDbHdERTs7RUFXUSw2RGZySmtFO0FqQmk1RDVFOztBZ0N2d0RFOztFQWlCUSw2R2YzSmtFO0FqQnM1RDVFOztBZ0NudkRFO0VBRUksZUFBZTtFQUNmLG9CQUFvQjtBaENxdkQxQjs7QWdDanZERTtFQUlRLHFCQUFvQjtFQUlwQiw2R2ZsTGtFO0FqQmc2RDVFOztBZ0N0dURFOztFQUlNLGVBQWU7QWhDdXVEdkI7O0FnQ2x1REU7RUFHTSxtQkFBbUI7RUFDbkIsYWIzTEk7RWErTEosd0dmM01vRTtBakIyNkQ1RTs7QWdDNTRERTtFZG9ERSx1QkFBcUI7RUFDckIsb0JBQWtCO0VBQ2xCLG1CQUFpQjtFQUNqQix3QkFBc0I7RUFDdEIsZ0NBQThCO0VBQzlCLGtDQUFnQztFQUVoQyw2Q0FBNkM7QWxCMjFEakQ7O0FrQnYxREU7O0VBR0ksa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysb0JBQW9CO0VBQ3BCLFdBQVc7QWxCeTFEakI7O0FrQnIxREU7RUFHSSw2REFFbUQ7RUFJbkQsVUFBVTtBbEJpMURoQjs7QWtCMTBESTtFQUVJLCtDQUErQztBbEI0MER2RDs7QWtCeDBESTtFQUVJLE1BQU07RUFDTjtFQUNBLE9BQU87RUFDUCxtQkFBbUI7RUFDbkIsK0JBQStCO0FsQjAwRHZDOztBa0JwMERJO0VBRUksNkJBQTZCO0VBQzdCO0VBQ0EsK0JBQStCO0FsQnMwRHZDOztBa0JoMERJO0VBRUkseUZBRWdFO0FsQmcwRHhFOztBa0IxekRJO0VBRUksMENDaEs0QjtFRHFLNUIsZ0dBQWdHO0FsQnd6RHhHOztBa0JoNERFOztFQThUSSxvQkFBK0I7RUFDL0I7RUFDQSxxQkFBZ0M7RUFDaEMsV0FUUztFQVVULFlBVlM7QWxCaWxEZjs7QWtCbGtESTs7RUFHSSwyQ0FBc0Q7RUFDdEQ7RUFDQSw2Q0FBd0Q7RUFDeEQsc0NBQXlDO0VBQ3pDLHVDQUEwQztBbEJva0RsRDs7QWtCajNESTtFQW1USSxzQ0FBeUM7RUFDekMsdUNBQTBDO0FsQmtrRGxEOztBa0J2NURFOztFUENJLHlCQ2xGb0I7QVo2K0QxQjs7QVduNUQ2QztFT1QzQzs7SVBZWTtJQUNBLHFEQUE0RDtFWHM1RHhFO0FBQ0Y7O0FrQjF5REk7RUFHSSxhQ2hOSTtBbkIyL0RaOztBa0J6d0RNO0VBZUYseUJBQXlCO0VBSXpCLGFDcFFRO0FuQisvRFo7O0FrQi91REk7RUFFSSxnQ0FBd0Q7QWxCaXZEaEU7O0FrQjV1RE07RUFFSSx5QkNyU3dCO0VEMFN4QixhQzdSRTtBbkJ1Z0VaOztBa0JwdURFO0VBRUksNkJBQXdCO0FsQnN1RDlCOztBZ0M1ekRFO0VBU1EsYUFBYTtBaEN1ekR2Qjs7QWdDanpERTtFZDBQRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxXQUFXO0VBQ1gsWUFBWTtFQUdaLG9CQUFvQjtBbEJ5akR4Qjs7QWtDcmlFQTtFQUNFO0lBQ0UsMEJBQTBCO0lBQzFCLFVBQVU7RWxDd2lFWjtFa0NyaUVBO0lBQ0Usd0JBQXdCO0lBQ3hCLFVBQVU7RWxDdWlFWjtBQUNGOztBbUN4aUVFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFdBQVc7RUFDWCxvQkFBb0I7RUFDcEIsb0dsQmRxRTtFa0JlckUsVUFBVTtFQUNWLFVBQVU7QW5DMmlFZDs7QW1DeGlFRTtFQUNFLG9CQUFvQjtFQUNwQixVQUFVO0FuQzJpRWQ7O0FtQ3hpRUU7RUFDRSxVQUFVO0FuQzJpRWQ7O0FvQzdqRUU7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixPQUFPO0VBQ1Asc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxlQUFlO0VBQ2YsWUFBWTtFQUNaO0VBQ0EsZ0JBQWdCO0VBQ2hCLG9CQUFvQjtBcENna0V4Qjs7QUFFQTtFb0MvakVNO0VBQ0EsaUJBQWlCO0FwQ2lrRXZCOztBb0M5akVJO0VBR0Usc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixxRG5COUJtRTtFbUIrQm5FLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFDeEIsb0JBQW9CO0FwQytqRTFCOztBb0M1akVJO0V2QjZOQTtFQUdGLHNCQUFjO0VBSFo7RUFHRixrQkFBYztFdUI3TlYsV0NsQ2tDO0FyQ21tRXhDOztBQUVBO0VhejJESTtFQUdGLGlCQUFjO0VBSFo7RUFHRix1QkFBYztBYjIyRGhCOztBb0Nya0VJO0V2QnVOQTtFQUdGLGlCQUFjO0VBSFo7RUFHRix1QkFBYztFdUJ2TlYsWUFBWTtBcEMwa0VsQjs7QUFFQTtFYXgzREk7RUFHRixzQkFBYztFQUhaO0VBR0Ysa0JBQWM7QWIwM0RoQjs7QW9DOWtFSTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZ0NBQWlFO0FwQ2lsRXZFOztBb0M3bkVFO0VBZ0RJLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsU0FBUztFQUNULFlBQVk7RUFDWixlQUFlO0FwQ2lsRXJCOztBb0Nyb0VFO0VBd0RJLG1CQUFtQjtBcENpbEV6Qjs7QW9DOWtFSTtFQUNFLDJCQUEyQjtBcENpbEVqQzs7QW9DN2tFRTtFdkIwTEU7RUFHRixlQUFjO0VBSFo7RUFHRixrQkFBYztFdUJ6TFYsZ0JBQWdCO0FwQ2lsRXRCOztBQUVBO0VhNzVESTtFQUdGLGlCQUFjO0VBSFo7RUFHRixnQkFBYztBYis1RGhCOztBb0NwbEVFO0VBRUksVUFBVTtBcENzbEVoQjs7QXNDNXBFRTtFakN3QkksK0JDbENvRDtFRGtDcEQsa0NDOUI4QjtFRDhCOUIsbUNDN0IrQjtFRDZCL0IsZUNtQ2U7RURuQ2Ysb0JDb0NvQjtFRHBDcEIsZ0JDdkJRO0VEdUJSLHlCRWdCdUM7RUZoQnZDLHdCQ3VDd0I7RUR2Q3hCLHVCQ3dDdUI7RWdDN0R6QixrQkFBa0I7RUFDbEI7RUFDQSxPQUFPO0VBQ1A7RUFDQSwwQkFBMEI7RUFDMUIsa0dyQm5CcUU7RXFCc0JyRTtFQUNBLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osZ0JBQWdCO0VBR2hCLHNCQUFzQjtBdENrcUUxQjs7QUFFQTtFc0NqcUVNO0VBQ0EsUUFBUTtFQUNSO0VBQ0EsVUFBVTtFQUNWO0VBQ0EsMkJBQTJCO0VBQzNCO0VBQ0EsaUJBQWlCO0F0Q21xRXZCOztBc0MvcEVFO0VBQ0UsWUFBWTtBdENrcUVoQjs7QXNDbnFFRTtFQ0ZJLHVDQUFvRDtBdkN5cUUxRDs7QXVDbnFFRTtFQUNFLGdFQUF5RztBdkNzcUU3Rzs7QXVDM3NFRTtFQUNFO0lBQ0UsZ0VBQTJGO0V2QzhzRS9GO0V1QzNzRUU7SUFDRSxpRUFBZ0U7SUFDaEUsaUVBQTRGO0V2QzZzRWhHO0V1QzFzRUU7SUFDRSx3RUFBdUU7SUFDdkUsa0VBQTZGO0V2QzRzRWpHO0V1Q3pzRUU7SUFDRSxnRUFBMkY7RXZDMnNFL0Y7QUFDRjs7QXdDenNFRTtFN0I4REksV0M1RStFO0VEK0Y3RTtFQUNBLHdDQUE0RDtBWDZuRXBFOztBd0NqdUVFO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLFdDckJ1QjtFRHNCdkIsWUN0QnVCO0VEdUJ2QixZQUFZO0VBQ1osNkJBQTZCO0VBQzdCLGtCQUFrQjtFQUNsQixhQ3pCeUI7RUQwQnpCLHFCQUFxQjtFQUNyQixlQUFlO0VBQ2YsaUJBQWlCO0F4Q291RXJCOztBMEMzdkVBOztFQUVFLGVBQWU7RUFDZixvQkFBb0I7QTFDOHZFdEI7O0EyQ2x3RUE7RXRDZ0NNLCtCQ2xDb0Q7RURrQ3BELGtDQzlCOEI7RUQ4QjlCLG1DQzdCK0I7RUQ2Qi9CLGtCQ21FaUI7RURuRWpCLG9CQ29Fb0I7RURwRXBCLGdCQ3ZCUTtFRHVCUix5QkVnQnVDO0VGaEJ2Qyx3QkN1RXdCO0VEdkV4Qix1QkN3RXVCO0VEcER6QixjQUFjO0VBQ2QsYUFBYTtFQUNiO0VBQ0EsbUJBQW1CO0VzQ25EckIsU0FBUztFQUNULHNEMUJSdUU7RTBCU3ZFLFVBQVU7RUFDVixvQkFBb0I7QTNDK3dFdEI7O0FLNXRFRTtFQTBCQSxxQkFBcUI7RUFDckIsUUFBUTtFQUNSLFlzQ3BGeUM7RXRDcUZ6QyxXQUFXO0VBekJQLGlCQUFpQjtBTGd1RXZCOztBMkNweEVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixvQkFBb0I7QTNDdXhFdEI7O0E0Q3h4RUE7RTFCbUVJLHVCQUFxQjtFQUNyQixvQkFBa0I7RUFDbEIsbUJBQWlCO0VBQ2pCLHdCQUFzQjtFQUN0QixnQ0FBOEI7RUFDOUIsa0NBQWdDO0VBRWhDLDZDQUE2QztFMEJuRC9DLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLFlDckNzQjtFRHNDdEIsZ0JBQWdCO0VBQ2hCO0VBQ0Esc0NBQXNDO0E1QzR3RXhDOztBNEN6eUVBO0VqQzhDTSw0QmtDN0MwRjtBN0M0eUVoRzs7QWtCL3RFRTtFQUdJLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLG9CQUFvQjtFQUNwQixXQUFXO0FsQmd1RWpCOztBa0I1dEVFO0VBR0ksNkRBRW1EO0VBSW5ELFVBQVU7QWxCd3RFaEI7O0FrQmp0RUk7RUFFSSwrQ0FBK0M7QWxCbXRFdkQ7O0FrQi9zRUk7RUFFSSxNQUFNO0VBQ047RUFDQSxPQUFPO0VBQ1AsbUJBQW1CO0VBQ25CLCtCQUErQjtBbEJpdEV2Qzs7QWtCM3NFSTtFQUVJLDZCQUE2QjtFQUM3QjtFQUNBLCtCQUErQjtBbEI2c0V2Qzs7QWtCdnNFSTtFQUVJLHlGQUVnRTtBbEJ1c0V4RTs7QWtCanNFSTtFQUVJLDBDQ2hLNEI7RURxSzVCLGdHQUFnRztBbEIrckV4Rzs7QWtCdndFRTtFQXFTSSxxQkFBMkI7RUFDM0I7RUFDQSxzQkFBNEI7RUFDNUIsV0FBa0I7RUFDbEIsWUFBbUI7QWxCcytEekI7O0FrQjl1RUk7RUErUUksc0NBQXlDO0VBQ3pDLHVDQUEwQztBbEJtK0RsRDs7QWtCcHhFRTtFUGhDSSxxQ0MzQytFO0FabTJFckY7O0FrQjlwRUk7RUFHSSxhQ2hOSTtBbkIrMkVaOztBa0I3bkVNO0VBZUYseUJBQXlCO0VBSXpCLGFDcFFRO0FuQm0zRVo7O0E0Qy8yRUE7O0VqQzhDTSwwQkMzQytFO0FaaTNFckY7O0E0Q3AzRUE7RWpDOENNLHlCQzNDK0U7QVpxM0VyRjs7QTRDeDNFQTs7RWpDOENNLHdDQzNDK0U7QVowM0VyRjs7QTRDNzNFQTtFakM4Q00seUJDM0MrRTtBWjgzRXJGOztBNENqNEVBO0VuQ0FJLDBCcUNzR21EO0E5Qyt4RXZEOztBNENyNEVBO0VqQytFTSx5QkN2RnFCO0VEMEduQjtFQUNBLG1EQUE0RDtBWHd5RXBFOztBNEMzNEVBO0VqQzhDTSw2QkN0RHFCO0FadTVFM0I7O0E0Qy80RUE7RWpDOENNLHdDQzNDK0U7QVpnNUVyRjs7QTRDbjVFQTtFTDRCTSx1Q0FBb0Q7QXZDMjNFMUQ7O0E0Q3Y1RUE7RS9Ca1BJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztFa0N4RFosU0FBUztFQUNULG9CQUFvQjtBL0NrdUV4Qjs7QUFFQTtFYWhyRUk7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0Fia3JFaEI7O0E0Q3Y2RUE7RS9Ca1BJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztBYnlyRWhCOztBQUVBO0VhOXJFSTtFQUdGLGFBQWM7RUFIWjtFQUdGLFdBQWM7QWJnc0VoQjs7QTRDcjdFQTtFL0JrUEk7RUFHRixTQUFjO0VBSFo7RUFHRixjQUFjO0VrQzFDVixTQUFTO0EvQ2t2RWY7O0FBRUE7RWE3c0VJO0VBR0YsYUFBYztFQUhaO0VBR0YsVUFBYztBYitzRWhCOztBNENwOEVBO0UvQmtQSTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWJzdEVoQjs7QUFFQTtFYTN0RUk7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FiNnRFaEI7O0E0Q2w5RUE7RS9Ca1BJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztBYm91RWhCOztBQUVBO0VhenVFSTtFQUdGLGFBQWM7RUFIWjtFQUdGLFdBQWM7QWIydUVoQjs7QTRDajhFRTtFR2dJQSwrZUFHUTtFbENnRk47RUFHRixVQUFjO0VBSFo7RUFHRixVQUFjO0UrQmxOWixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0VBQ1osd0QzQnREcUU7RTJCdURyRSxvQkFBb0I7QTVDczhFeEI7O0FBRUE7RWE5dkVJO0VBR0YsU0FBYztFQUhaO0VBR0YsV0FBYztBYmd3RWhCOztBNEMzOEVJO0VHcUhGLCtlQUdRO0EvQ3UxRVY7O0E0QzM4RUk7RUFDRSwwQ0FBMEM7RUFDMUMsd0QzQi9EbUU7QWpCNmdGekU7O0E0QzE4RUU7RUFDRSxpQkFBaUI7QTVDNjhFckI7O0E0Q2xnRkE7RUEwRE0sc0JBQXNCO0VBQ3RCLFVBQVU7QTVDNDhFaEI7O0ErQ3hwRUk7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCO0EvQzJwRXZCOztBK0N4cEVJO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjtBL0MycEV2Qjs7QStDdHBFRTtFQUNFLFVBQVU7QS9DeXBFZDs7QStDdHlFRTtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7QS9DeXlFckI7O0ErQ3R5RUU7O0VsQ0ZFO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0VSak9WLCtCQ2xDb0Q7RURrQ3BELGtDQzlCOEI7RUQ4QjlCLG1DQzdCK0I7RUQ2Qi9CLGVDbUNlO0VEbkNmLG9CQ29Db0I7RURwQ3BCLGdCQ3ZCUTtFRHVCUix5QkVnQnVDO0VGaEJ2Qyx3QkN1Q3dCO0VEdkN4Qix1QkN3Q3VCO0V5QzJNekIsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxZRnBSb0I7RUVxUnBCLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLHdCQUF3QjtFQUN4QixhQUFhO0VBQ2IsNkJBQTZCO0VBQzdCLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGdCQUFnQjtBL0NxeUVwQjs7QUFFQTs7O0VheDBFSTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYjQwRWhCOztBK0M3MEVFOztFQU1JLGFBQWE7QS9DNDBFbkI7O0ErQ2wxRUU7O0VBVUksNkJBQTZCO0VBQzdCLGNBQWM7QS9DNjBFcEI7O0ErQ3owRUk7RUFmRjs7SUFnQkksaUJBQWlCO0UvQzgwRXJCO0FBQ0Y7O0E0Q2hoRkE7RUc0UUUsWUFBWTtFQUNaLGlCQUFpQjtBL0N3d0VuQjs7QTRDcmhGQTtFakNyQk0sNkJvQ3VSZ0Q7QS9DdXhFdEQ7O0E0Q3poRkE7OztFakNyQk0saUNDM0MrRTtBWitsRnJGOztBNEMvaEZBOzs7Ozs7RWpDckJNLGlDQzNDK0U7QVp3bUZyRjs7QTRDeGlGQTs7O0VJakVJLGlCRGlINkM7QS9DOC9FakQ7O0E0QzlpRkE7OztFakNZTSxxQkN2RnFCO0VEMEduQjtFQUNBLCtDQUE0RDtBWHNoRnBFOztBNEN0akZBO0VMaENJLDJFQUF5RztBdkMwbEY3Rzs7QTRDMWpGQTtFbkN0RU07RUFHRiwwQkNma0M7QVZpcEZ0Qzs7QUFFQTtFU2hvRlE7RUFDQSwwQnFDZ0crQztBOUNraUZ2RDs7QTRDcGtGQTtFbkN0RU07RUFHRiwwQnFDc0dtRDtBOUNzaUZ2RDs7QUFFQTtFUzFvRlE7RUFDQSwwQkNwQjhCO0FWZ3FGdEM7O0E0QzlrRkE7RW5DbkVJLGtCQ2ZrQztBVm9xRnRDOztBa0JyL0VFO0VBUU0sYUFBYTtBbEJpL0VyQjs7QTRDdGxGQTtFakNyQk0sNkJvQzhSZ0Q7QS9DaTFFdEQ7O0E0QzFsRkE7RUx2Q00scUNBQW9EO0F2Q3FvRjFEOztBNEM5bEZBO0VJNUJJLGtCQUEwQjtBaEQ4bkY5Qjs7QTRDbG1GQTs7RUx2Q00sd0NBQW9EO0F2QzhvRjFEOztBNEN2bUZBOztFSWxCTSxlQUFlO0FoRDhuRnJCOztBNEM1bUZBOztFL0IrS0k7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7RWtDaUdaLGFBQWE7RUFDYixpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IsVUFBVTtBL0NrMkVkOztBQUVBOzs7RWE3OEVJO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0FiaTlFaEI7O0E0Q25vRkE7RUc0UkksaUJBQWlCO0EvQzIyRXJCOztBNEN2b0ZBO0VHZ1NJLFVBQVU7QS9DMjJFZDs7QTRDM29GQTtFR29TSSxvQkFBb0I7RUFDcEIsb0JBQW9CO0EvQzIyRXhCOztBNEM1b0ZBO0VqQ1FNLGNDMUVtQjtFRDZGakI7RUFDQSxzQ0FBNEQ7QVhzbkZwRTs7QTRDbHBGQTs7RWpDUU0sNEJDMUVtQjtFRDZGakI7RUFDQSxvREFBNEQ7QVg2bkZwRTs7QTRDenBGQTtFakNRTSx5QkMxRW1CO0VENkZqQjtFQUNBLGlEQUE0RDtBWG1vRnBFOztBNEMvcEZBO0VqQ3pCTSxjQ3pDbUI7QVpxdUZ6Qjs7QTRDbnFGQTtFakNRTSxjQzFFbUI7RUQ2RmpCO0VBQ0Esc0NBQTREO0FYNm9GcEU7O0E0Q3pxRkE7RWpDUU0sNEJDMUVtQjtFRDZGakI7RUFDQSxvREFBNEQ7QVhtcEZwRTs7QTRDL3FGQTs7O0VqQ1FNLHFCQzFFbUI7RUQ2RmpCO0VBQ0EsNkNBQTREO0FYMnBGcEU7O0E0Q3ZyRkE7Ozs7OztFakNRTSxxQkMxRW1CO0VENkZqQjtFQUNBLDZDQUE0RDtBWHNxRnBFOztBNENsc0ZBOzs7RUlyRUksaUJEaUg2QztBL0M0cEZqRDs7QTRDeHNGQTs7O0VqQ1FNLHFCQzFFbUI7RUQ2RmpCO0VBQ0EsNkNBQTREO0FYb3JGcEU7O0E0Q2h0RkE7RUd3RkUsK2VBR1E7QS9DeW5GVjs7QTRDcHRGQTtFQXNCSSxVQUFVO0E1Q2tzRmQ7O0E0QzlyRkE7RUFHSSxZQUFZO0E1QytyRmhCOztBd0M5eUZHO0U3QnlERyx5QmtDckNtRztFRXVUdkcsZUFBZTtFQUNmLG9CQUFvQjtBL0N3K0V0Qjs7QTRDanNGQTtFakMxRE0sMEJDM0MrRTtBWjB5RnJGOztBNENyc0ZBO0VHdURFLCtlQUdRO0EvQytvRlY7O0E0Q3pzRkE7RUcyTEksYUFBYTtBL0NraEZqQjs7QTRDN3NGQTtFakMxRE0sMEJDM0MrRTtBWnN6RnJGOztBNENqdEZBOztFakMxRE0sMEJDM0MrRTtFbUMyU2pGLDJCQUEyQjtBL0NpaEYvQjs7QTRDdnRGQTtFRzBNSSxvQkFBb0I7QS9DaWhGeEI7O0E0QzN0RkE7RWpDMURNLDZCb0N3UW1EO0EvQ2loRnpEOztBNEMvdEZBOztFR2tOTSx5QkFBeUI7QS9Da2hGL0I7O0E0Q3B1RkE7OztFakMxRE0saUNDM0MrRTtBWiswRnJGOztBd0NuMUZFO0UzQm1QRTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWJvbUZoQjs7QUFFQTtFYXptRkk7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FiMm1GaEI7O0E0Q3B2RkE7O0UvQnNJSTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYm1uRmhCOztBQUVBOzs7RWF4bkZJO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0FiNG5GaEI7O0E0Q3J3RkE7RUx0Rk0sdURBQWdGO0F2QysxRnRGOztBQUVBO0V1QzkxRlEsc0RBQTJFO0F2Q2cyRm5GOztBNEM3d0ZBO0VJckVJLGtCQUEwQjtBaERzMUY5Qjs7QTRDanhGQTs7RUx0Rk0sMERBQWdGO0F2QzQyRnRGOztBQUVBOzs7RXVDMzJGUSx5REFBMkU7QXZDKzJGbkY7O0E0QzV4RkE7O0VJM0RNLGVBQWU7QWhENDFGckI7O0E0Q2p5RkE7RUx6RUksb0ZBQXlHO0F2QzgyRjdHOztBQUVBO0V1Q2gzRkksd0ZBQXlHO0F2Q2szRjdHOztBNEN6eUZBO0UvQnNJSTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYnVxRmhCOztBQUVBO0VhNXFGSTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYjhxRmhCOztBNENuekZBO0VqQ2pDTSxXQzVFK0U7RUQrRjdFO0VBQ0Esd0NBQTREO0FYczBGcEU7O0FrQnp3RkU7RVBqRkksc0JDNUUrRTtBWjA2RnJGOztBV3QxRjZDO0VPeUUzQztJUHRFWTtJQUNBLG1EQUE0RDtFWHcxRnhFO0FBQ0Y7O0FrQjV1Rkk7RUFHSSxhQ2hOSTtBbkI2N0ZaOztBa0Izc0ZNO0VBZUYseUJBQXlCO0VBSXpCLGFDcFFRO0FuQmk4Rlo7O0FrQmpyRkk7RUFFSSxnQ0FBd0Q7QWxCbXJGaEU7O0FrQjlxRk07RUFFSSx5QkNyU3dCO0VEMFN4QixhQzdSRTtBbkJ5OEZaOztBa0J0cUZFO0VBRUksNkJBQXdCO0FsQndxRjlCOztBdUM1OEZFO0VBQ0U7SUFDRSxtRUFBMkY7RXZDKzhGL0Y7RXVDNThGRTtJQUNFLGlFQUFnRTtJQUNoRSxvRUFBNEY7RXZDODhGaEc7RXVDMzhGRTtJQUNFLHdFQUF1RTtJQUN2RSxxRUFBNkY7RXZDNjhGakc7RXVDMThGRTtJQUNFLG1FQUEyRjtFdkM0OEYvRjtBQUNGOztBdUM3OUZFO0VBQ0U7SUFDRSxvRUFBMkY7RXZDZytGL0Y7RXVDNzlGRTtJQUNFLGlFQUFnRTtJQUNoRSxxRUFBNEY7RXZDKzlGaEc7RXVDNTlGRTtJQUNFLHdFQUF1RTtJQUN2RSxzRUFBNkY7RXZDODlGakc7RXVDMzlGRTtJQUNFLG9FQUEyRjtFdkM2OUYvRjtBQUNGOztBaUR0L0ZBO0U1QzhCTSwrQkNsQ29EO0VEa0NwRCxrQ0M5QjhCO0VEOEI5QixtQ0M3QitCO0VENkIvQixrQkNtRWlCO0VEbkVqQixvQkNvRW9CO0VEcEVwQixnQkN2QlE7RUR1QlIseUJFZ0J1QztFRmhCdkMsd0JDdUV3QjtFRHZFeEIsdUJDd0V1QjtFRHBEekIsY0FBYztFQUNkLGFBQWE7RUFDYjtFQUNBLG1CQUFtQjtFNENqRHJCLFNBQVM7RUFDVCxzRGhDVnVFO0VnQ1d2RSxVQUFVO0VBQ1Ysb0JBQW9CO0FqRG1nR3RCOztBS2w5RkU7RUEwQkEscUJBQXFCO0VBQ3JCLFFBQVE7RUFDUixZNENsRnlDO0U1Q21GekMsV0FBVztFQXpCUCxpQkFBaUI7QUxzOUZ2Qjs7QWlEeGdHQTtFQUNFLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1Ysb0JBQW9CO0FqRDJnR3RCOztBa0R4aEdBO0U3QzhCTSwrQkNsQ29EO0VEa0NwRCxrQ0M5QjhCO0VEOEI5QixtQ0M3QitCO0VENkIvQixrQkNtRWlCO0VEbkVqQixvQkNvRW9CO0VEcEVwQixnQkN2QlE7RUR1QlIseUJFZ0J1QztFRmhCdkMsd0JDdUV3QjtFRHZFeEIsdUJDd0V1QjtFRHBEekIsY0FBYztFQUNkLGFBQWE7RUFDYjtFQUNBLG1CQUFtQjtFUXVNbkI7RUFHRixpQkFBYztFQUhaO0VBR0YsZUFBYztFQUhaO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLGdCQUFjO0VxQ3hQZCxtQkFBbUI7QWxEMGlHckI7O0FLei9GRTtFQTBCQSxxQkFBcUI7RUFDckIsUUFBUTtFQUNSLFk2Q2xGeUM7RTdDbUZ6QyxXQUFXO0VBekJQLGlCQUFpQjtBTDYvRnZCOztBQUVBO0VhL3pGSTtFQUdGLGNBQWM7RUFIWjtFQUdGLGtCQUFjO0FiaTBGaEI7O0FBRUE7RWF0MEZJO0VBR0YsZUFBYztFQUhaO0VBR0YsbUJBQWM7QWJ3MEZoQjs7QW1EMWtHQTs7RUFFRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGVBQWU7QW5ENmtHakI7O0FtRDFrR0E7O0VBRUUsZUFBZTtFQUNmLG9CQUFvQjtBbkQ2a0d0Qjs7QW9EdmtHQTtFbENnRUksdUJBQXFCO0VBQ3JCLG9CQUFrQjtFQUNsQixtQkFBaUI7RUFDakIsd0JBQXNCO0VBQ3RCLGdDQUE4QjtFQUM5QixrQ0FBZ0M7RUFFaEMsNkNBQTZDO0VUMUU3QywwQnFDc0dtRDtFTXhFckQsb0JBQW9CO0VBQ3BCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsWUNqQjBCO0VEa0IxQixnQkFBZ0I7RUFDaEI7RUFDQSxzQ0FBc0M7QXBEd2pHeEM7O0FrQjlnR0U7RUFHSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixvQkFBb0I7RUFDcEIsV0FBVztBbEIrZ0dqQjs7QWtCM2dHRTtFQUdJLDZEQUVtRDtFQUluRCxVQUFVO0FsQnVnR2hCOztBa0JoZ0dJO0VBRUksK0NBQStDO0FsQmtnR3ZEOztBa0I5L0ZJO0VBRUksTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLG1CQUFtQjtFQUNuQiwrQkFBK0I7QWxCZ2dHdkM7O0FrQjEvRkk7RUFFSSw2QkFBNkI7RUFDN0I7RUFDQSwrQkFBK0I7QWxCNC9GdkM7O0FrQnQvRkk7RUFFSSx5RkFFZ0U7QWxCcy9GeEU7O0FrQmgvRkk7RUFFSSwwQ0NoSzRCO0VEcUs1QixnR0FBZ0c7QWxCOCtGeEc7O0FrQnRqR0U7RVBoQ0kscUNDM0MrRTtBWnFvR3JGOztBa0JoOEZJO0VBR0ksYUNoTkk7QW5CaXBHWjs7QWtCLzVGTTtFQWVGLHlCQUF5QjtFQUl6QixhQ3BRUTtBbkJxcEdaOztBa0Jua0dFO0VBcVNJLHFCQUEyQjtFQUMzQjtFQUNBLHNCQUE0QjtFQUM1QixXQUFrQjtFQUNsQixZQUFtQjtBbEJreUZ6Qjs7QWtCMWlHSTtFQStRSSxzQ0FBeUM7RUFDekMsdUNBQTBDO0FsQit4RmxEOztBb0QzcEdBO0V6QzJDTSx5QkMzQytFO0FaK3BHckY7O0FvRC9wR0E7RXpDMkNNLDBCQzNDK0U7QVptcUdyRjs7QW9EbnFHQTtFekM0RU0sb0JDdkZxQjtFRDBHbkI7RUFDQSw4Q0FBNEQ7QVh5a0dwRTs7QW9EenFHQTtFekMyQ00sd0NDM0MrRTtBWjZxR3JGOztBb0Q3cUdBO0V6QzJDTSx3Q0MzQytFO0FaaXJHckY7O0FvRGpyR0E7RXpDNEVNLHlCQ3ZGcUI7RUQwR25CO0VBQ0EsbURBQTREO0FYdWxHcEU7O0FvRHZyR0E7RXpDMkNNLHdDQzNDK0U7QVoyckdyRjs7QW9EM3JHQTtFekMyQ00seUJDM0MrRTtBWityR3JGOztBb0QvckdBOztFekMyQ00seUJDM0MrRTtBWm9zR3JGOztBb0Rwc0dBO0V6QzJDTSwwQkMzQytFO0Fad3NHckY7O0FvRHhzR0E7RXpDMkNNLDRCMEM3QzhGO0FyRDhzR3BHOztBb0Q1c0dBO0V2QytPSTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7RXlDaENaLFNBQVM7RUFDVCxvQkFBb0I7QXREa2dHeEI7O0FBRUE7RWF4K0ZJO0VBR0YsYUFBYztFQUhaO0VBR0YsV0FBYztBYjArRmhCOztBc0R0Z0dHO0V6Q3lCQztFQUdGLFNBQWM7RUFIWjtFQUdGLGNBQWM7QWJpL0ZoQjs7QUFFQTtFYXQvRkk7RUFHRixhQUFjO0VBSFo7RUFHRixVQUFjO0Fidy9GaEI7O0FzRDlnR0c7RXpDbUJDO0VBR0YsU0FBYztFQUhaO0VBR0YsY0FBYztFeUNsQlYsU0FBUztBdERraEdmOztBQUVBO0VhcmdHSTtFQUdGLGFBQWM7RUFIWjtFQUdGLFVBQWM7QWJ1Z0doQjs7QXNEdGhHSztFekNZRDtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWI4Z0doQjs7QUFFQTtFYW5oR0k7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FicWhHaEI7O0FzRHBpR0s7RXpDWUQ7RUFHRixVQUFjO0VBSFo7RUFHRixjQUFjO0FiNGhHaEI7O0FBRUE7RWFqaUdJO0VBR0YsYUFBYztFQUhaO0VBR0YsV0FBYztBYm1pR2hCOztBb0RqdkdBO0UvQ25CTSwrQkNsQ29EO0VEa0NwRCxrQ0M5QjhCO0VEOEI5QixtQ0M3QitCO0VENkIvQixlQ21DZTtFRG5DZixvQkNvQ29CO0VEcENwQixnQkN2QlE7RUR1QlIseUJFZ0J1QztFRmhCdkMsd0JDdUN3QjtFRHZDeEIsdUJDd0N1QjtFOENsQjNCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLFlBQVk7RUFDWixzQkFBc0I7RUFDdEIsc0RuQzlEdUU7RW1DK0R2RSxZQUFZO0VBQ1osd0JBQXdCO0VBQ3hCLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FwRDJ2R2xCOztBb0R4d0dBO0VBZ0JJLHFEbkN0RXFFO0VtQ3VFckUsVUFBVTtFQUNWLDBCeEN0RGlGO0Faa3pHckY7O0FvRDl3R0E7RUF3QkkscUNBQXVEO0FwRDB2RzNEOztBb0R0dkdFOzs7RUFHRSxzQkFBc0I7RUFDdEIsMEJBQTBCO0VBQzFCLFVBQVU7QXBEeXZHZDs7QW9EMXhHQTtFQXFDSSxhQUFhO0FwRHl2R2pCOztBb0Q5eEdBO0VBMENJLGdCQUFnQjtBcER3dkdwQjs7QW9EbHlHQTtFQStDSSx3QkFBd0I7QXBEdXZHNUI7O0FvRG52R0U7RUFDRSxpQkFBaUI7RUFDakIsb0JBQW9CO0FwRHN2R3hCOztBb0RqdkdBO0VBQ0UsdUNBQXNDO0VBQ3RDLFlBQVk7QXBEb3ZHZDs7QXNEenlHa0M7RUE2UGhDLFlBQVk7RUFDWixpQkFBaUI7QXREZ2pHbkI7O0FnRHIyR0U7OztFckN1REksaUNDM0MrRTtBWisxR3JGOztBZ0QzMkdFOzs7Ozs7RXJDdURJLGlDQzNDK0U7QVp3MkdyRjs7QWdEcDNHRTs7O0VyQ3dGSSxxQkN2RnFCO0VEMEduQjtFQUNBLCtDQUE0RDtBWGd4R3BFOztBdUNqMUdFO0VBQ0UsMkVBQXlHO0F2Q28xRzdHOztBZ0R2MkdFO0V2Q25CSTtFQUdGLDBCQ2ZrQztBVjI0R3RDOztBQUVBO0VTMTNHUTtFQUNBLDBCcUNnRytDO0E5QzR4R3ZEOztBZ0RuMkdFO0V2Q2pDSTtFQUdGLDBCcUNzR21EO0E5Q2d5R3ZEOztBQUVBO0VTcDRHUTtFQUNBLDBCQ3BCOEI7QVYwNUd0Qzs7QXVDdjNHRTtFQVFJLHFDQUFvRDtBdkNtM0cxRDs7QXVDMzNHRTtFU21CRSxrQkFBMEI7QWhENDJHOUI7O0F1Qy8zR0U7O0VBUUksd0NBQW9EO0F2QzQzRzFEOztBdUNwNEdFOztFUzZCSSxlQUFlO0FoRDQyR3JCOztBa0I3dkdFO0VBUU0sYUFBYTtBbEJ5dkdyQjs7QW9EM3pHQTtFekN4RE0sNkIyQzJQMEM7QXRENG5HaEQ7O0FvRC96R0E7RUV5TUksYUFBYTtFQUNiLHVCQUF1QjtFQUN2Qix1QkFBdUI7RUFDdkIsNkJBQTZCO0VBQzdCLFVBQVU7QXREMG5HZDs7QW9EdjBHQTtFRWlOSSxVQUFVO0F0RDBuR2Q7O0FnRGw3R0U7OztFQUdFLGlCTXFRMkM7QXREZ3JHL0M7O0FvRHowR0E7RXpDaEVNLDZCMkMyTTJDO0F0RGtzR2pEOztBZ0RwOEdFOzs7RXJDdURJLGlDQzNDK0U7QVo4N0dyRjs7QW9EbjFHQTtFRThJSSxtQkFBbUI7QXREeXNHdkI7O0FvRG4xR0E7RUVnS0UsWUFBWTtBdER1ckdkOztBdUNyN0dFO0VBUUkscUNBQW9EO0F2Q2k3RzFEOztBdUN6N0dFO0VTbUJFLGlCQUEwQjtBaEQwNkc5Qjs7QXVDNzdHRTs7RUFRSSx1Q0FBb0Q7QXZDMDdHMUQ7O0F1Q2w4R0U7O0VTNkJJLGVBQWU7QWhEMDZHckI7O0F1Q3o3R0U7RUFDRSxpRkFBeUc7QXZDNDdHN0c7O0FvRDcyR0E7RUVtS0ksc0JBQXNCO0F0RDhzRzFCOztBb0RqM0dBO0VFdUtJLFNBQVM7QXREOHNHYjs7QW9EcjNHQTtFRTJLSSxTQUFTO0F0RDhzR2I7O0FvRHIzR0E7RXZDNEhJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztBYjZ2R2hCOztBQUVBO0VhbHdHSTtFQUdGLGFBQWM7RUFIWjtFQUdGLFdBQWM7QWJvd0doQjs7QW9EbjRHQTtFdkM0SEk7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWIyd0doQjs7QUFFQTtFYWh4R0k7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWJreEdoQjs7QW9EajVHQTtFdkM0SEk7RUFHRixVQUFjO0VBSFo7RUFHRixjQUFjO0FieXhHaEI7O0FBRUE7RWE5eEdJO0VBR0YsYUFBYztFQUhaO0VBR0YsV0FBYztBYmd5R2hCOztBb0QzNUdBO0V2Q3dISTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWJ1eUdoQjs7QUFFQTtFYTV5R0k7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FiOHlHaEI7O0FvRHo2R0E7RXZDd0hJO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0FicXpHaEI7O0FBRUE7RWExekdJO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0FiNHpHaEI7O0F1QzdoSEU7RUFFSSx1REFBZ0Y7QXZDK2hIdEY7O0FBRUE7RXVDOWhIUSxzREFBMkU7QXZDZ2lIbkY7O0F1Q3JpSEU7RVNtQkUsa0JBQTBCO0FoRHNoSDlCOztBdUN6aUhFOztFQUVJLDBEQUFnRjtBdkM0aUh0Rjs7QUFFQTs7O0V1QzNpSFEseURBQTJFO0F2QytpSG5GOztBdUNwakhFOztFUzZCSSxlQUFlO0FoRDRoSHJCOztBdUMzaUhFO0VBQ0Usd0ZBQXlHO0F2QzhpSDdHOztBQUVBO0V1Q2hqSEksNEZBQXlHO0F2Q2tqSDdHOztBb0QzOUdBO0V2Q3dISTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWJ1MkdoQjs7QUFFQTtFYTUyR0k7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FiODJHaEI7O0F1Qy9rSEU7RUFFSSx1REFBZ0Y7QXZDaWxIdEY7O0FBRUE7RXVDaGxIUSxzREFBMkU7QXZDa2xIbkY7O0F1Q3ZsSEU7RVNtQkUsaUJBQTBCO0FoRHdrSDlCOztBdUMzbEhFOztFQUVJLHlEQUFnRjtBdkM4bEh0Rjs7QUFFQTs7O0V1QzdsSFEsd0RBQTJFO0F2Q2ltSG5GOztBdUN0bUhFOztFUzZCSSxlQUFlO0FoRDhrSHJCOztBdUM3bEhFO0VBQ0UsOEZBQXlHO0F2Q2dtSDdHOztBQUVBO0V1Q2xtSEksa0dBQXlHO0F2Q29tSDdHOztBb0R6Z0hBO0V2Q29ISTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWJ5NUdoQjs7QUFFQTtFYTk1R0k7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FiZzZHaEI7O0FvRG5oSEE7RXZDZ0hJO0VBR0YsYUFBYztFQUhaO0VBR0YsV0FBYztBYnU2R2hCOztBQUVBO0VhNTZHSTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWI4NkdoQjs7QW9EamlIQTtFdkNnSEk7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWJxN0doQjs7QUFFQTtFYTE3R0k7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWI0N0doQjs7QW9EL2lIQTtFdkNnSEk7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FibThHaEI7O0FBRUE7RWF4OEdJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztBYjA4R2hCOztBb0Q3akhBO0V2Q2dISTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYmk5R2hCOztBQUVBO0VhdDlHSTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYnc5R2hCOztBb0R2a0hBO0V2QzRHSTtFQUdGLFVBQWM7RUFIWjtFQUdGLFdBQWM7QWIrOUdoQjs7QUFFQTtFYXArR0k7RUFHRixVQUFjO0VBSFo7RUFHRixXQUFjO0FicytHaEI7O0FvRHJsSEE7RXZDNEdJO0VBR0YsV0FBYztFQUhaO0VBR0YsVUFBYztBYjYrR2hCOztBQUVBO0VhbC9HSTtFQUdGLFdBQWM7RUFIWjtFQUdGLFVBQWM7QWJvL0doQjs7QW9Ebm1IQTtFdkM0R0k7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWIyL0doQjs7QUFFQTtFYWhnSEk7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWJrZ0hoQjs7QW9ENW1IQTs7RUFFRSxZQUFZO0VBQ1oscUJBQW9CO0FwRCttSHRCOztBb0QzbUhBO0V2Q2dHSTtFQUdGLFVBQWM7RUFIWjtFQUdGLGNBQWM7QWIrZ0hoQjs7QUFFQTtFYXBoSEk7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0Fic2hIaEI7O0FvRHpuSEE7RXZDZ0dJO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0FiNmhIaEI7O0FBRUE7RWFsaUhJO0VBR0Ysa0JBQWM7RUFIWjtFQUdGLG1CQUFjO0Fib2lIaEI7O0FvRHZvSEE7RXZDZ0dJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztBYjJpSGhCOztBQUVBO0VhaGpISTtFQUdGLGFBQWM7RUFIWjtFQUdGLFdBQWM7QWJrakhoQjs7QW9EanBIQTtFdkM0Rkk7RUFHRixhQUFjO0VBSFo7RUFHRixXQUFjO0FieWpIaEI7O0FBRUE7RWE5akhJO0VBR0YsVUFBYztFQUhaO0VBR0YsY0FBYztBYmdrSGhCOztBb0QvcEhBO0V2QzRGSTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYnVrSGhCOztBQUVBO0VhNWtISTtFQUdGLGtCQUFjO0VBSFo7RUFHRixtQkFBYztBYjhrSGhCOztBb0R6cUhBO0V2Q3dGSTtFQUdGLFVBQWM7RUFIWjtFQUdGLFdBQWM7QWJxbEhoQjs7QUFFQTtFYTFsSEk7RUFHRixVQUFjO0VBSFo7RUFHRixXQUFjO0FiNGxIaEI7O0FvRHZySEE7RXZDd0ZJO0VBR0YsV0FBYztFQUhaO0VBR0YsVUFBYztBYm1tSGhCOztBQUVBO0VheG1ISTtFQUdGLFdBQWM7RUFIWjtFQUdGLFVBQWM7QWIwbUhoQjs7QW9EcnNIQTtFdkN3Rkk7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWJpbkhoQjs7QUFFQTtFYXRuSEk7RUFHRixrQkFBYztFQUhaO0VBR0YsbUJBQWM7QWJ3bkhoQjs7QXVDejFIRTtFQVFJLHNDQUFvRDtBdkNxMUgxRDs7QXVDLzBIRTtFQUNFLHdFQUF5RztBdkNrMUg3Rzs7QW9EdnRIQTtFRU9JLG9CQUFvQjtBdERvdEh4Qjs7QW9EM3RIQTtFRVdJLGtCQUFrQjtBdERvdEh0Qjs7QXVDejJIRTtFZXdKSSxrQkFBa0I7QXREcXRIeEI7O0FzRC9zSEU7O0VGZkEsZ0JBQWdCO0VBQ2hCLFlBQVk7QXBEbXVIZDs7QXNEejFIaUU7RUFpYy9ELG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixpQkFBaUI7QXRENDVHbkI7O0FnRHg1SEU7OztFckN1REksaUNDM0MrRTtBWms1SHJGOztBZ0Q5NUhFOzs7Ozs7RXJDdURJLGlDQzNDK0U7QVoyNUhyRjs7QWdEdjZIRTs7O0VyQ3dGSSxxQkN2RnFCO0VEMEduQjtFQUNBLCtDQUE0RDtBWG0wSHBFOztBdUNwNEhFO0VBQ0UsMkVBQXlHO0F2Q3U0SDdHOztBZ0QxNUhFO0V2Q25CSTtFQUdGLDBCQ2ZrQztBVjg3SHRDOztBQUVBO0VTNzZIUTtFQUNBLDBCcUNnRytDO0E5QyswSHZEOztBZ0R0NUhFO0V2Q2pDSTtFQUdGLDBCcUNzR21EO0E5Q20xSHZEOztBQUVBO0VTdjdIUTtFQUNBLDBCQ3BCOEI7QVY2OEh0Qzs7QWtCOXhIRTtFQVFNLGFBQWE7QWxCMHhIckI7O0FvRDN4SEE7RXpDekhNLDZCMkMyYjBDO0F0RDY5R2hEOztBdUNsN0hFO0VBUUkscUNBQW9EO0F2Qzg2SDFEOztBdUN0N0hFO0VTbUJFLGtCQUEwQjtBaER1Nkg5Qjs7QXVDMTdIRTs7RUFRSSx3Q0FBb0Q7QXZDdTdIMUQ7O0F1Qy83SEU7O0VTNkJJLGVBQWU7QWhEdTZIckI7O0FvRGp6SEE7RXZDMkVJO0VBR0YsYUFBYztFQUhaO0VBR0YsV0FBYztFMEN2UFosa0JBQWtCO0VBQ2xCLFlENGUyRDtBdERzL0cvRDs7QUFFQTtFYWp2SEk7RUFHRixVQUFjO0VBSFo7RUFHRixjQUFjO0FibXZIaEI7O0FvRGowSEE7RUUrVUksZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1oscUJBQWtDO0VBQ2xDLG9CQWJrQjtFQWNsQixZQUFZO0F0RHMvR2hCOztBb0QxMEhBO0VFd1ZJLG1CQUFtQjtFQUNuQixpQkFBaUI7QXREcy9HckI7O0FzRDd4SEc7RUEyU0MsU0FBUztFQUNULFlBQVk7RUFDWixXQUFXO0VBQ1gsb0JBQW9CO0F0RHMvR3hCOztBZ0Q5L0hFOzs7RUFHRSxpQk1xUTJDO0F0RDR2SC9DOztBb0R4MUhBO0VFa1JFLFdBQVc7QXREMGtIYjs7QW9ENTFIQTtFRXdSSSxjQUFjO0F0RHdrSGxCOztBa0IzMkhFO0VBUU0sYUFBYTtBbEJ1MkhyQjs7QW9EcDJIQTtFekM3SE0sNkIyQ21aNEM7QXREa2xIbEQ7O0FvRHgySEE7RUUyUk0sVUFBVTtBdERpbEhoQjs7QW9ENTJIQTtFRWdTSSxnQkFBZ0I7QXREZ2xIcEI7O0FvRDUySEE7RXpDaEdNLDRCQzFFbUI7RUQ2RmpCO0VBQ0Esb0RBQTREO0FYODdIcEU7O0FvRDUySEE7RUFDRSxhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLHNCQUFzQjtBcEQrMkh4Qjs7QW9ENzJIRTtFQUNFLGtCQUFrQjtBcERnM0h0Qjs7QW9ENzJIRTtFQUNFLG1CQ3JLcUM7RURzS3JDLGtCQ3RLcUM7QXJEc2hJekM7O0FvRHgySEE7RUFDRSxzQkFBc0I7QXBEMjJIeEI7O0FvRHYySEE7RXpDL0pNLDZCQ3REcUI7QVpna0kzQjs7QW9EMzJIQTs7RXpDL0pNLDZCQ3REcUI7QVpxa0kzQjs7QW9EaDNIQTtFRXJESSxVQUFVO0F0RHk2SGQ7O0FnRDFrSUU7OztFckN3RkkscUJDdkZxQjtFRDBHbkI7RUFDQSwrQ0FBNEQ7QVhzK0hwRTs7QW9EcDNIQTtFekN0SU0sNEJDMUVtQjtFRDZGakI7RUFDQSxvREFBNEQ7QVg0K0hwRTs7QW9EMTNIQTtFekN0SU0sNEJDMUVtQjtFRDZGakI7RUFDQSxvREFBNEQ7QVhrL0hwRTs7QW9EaDRIQTtFekN0SU0seUJDMUVtQjtFRDZGakI7RUFDQSxpREFBNEQ7QVh3L0hwRTs7QW9EdDRIQTtFekN0SU0sY0MxRW1CO0VENkZqQjtFQUNBLHNDQUE0RDtBWDgvSHBFOztBb0Q1NEhBO0V6Q3RJTSxjQzFFbUI7RUQ2RmpCO0VBQ0Esc0NBQTREO0FYb2dJcEU7O0FvRGw1SEE7RXpDdElNLG9CQzFFbUI7RUQ2RmpCO0VBQ0EsNENBQTREO0FYMGdJcEU7O0FvRHg1SEE7O0V6Q3RJTSxjQzFFbUI7RUQ2RmpCO0VBQ0Esc0NBQTREO0FYaWhJcEU7O0FvRC81SEE7RXpDdElNLGNDMUVtQjtFRDZGakI7RUFDQSxzQ0FBNEQ7QVh1aElwRTs7QW9EcjZIQTtFekN0SU0sY0MxRW1CO0VENkZqQjtFQUNBLHNDQUE0RDtBWDZoSXBFOztBb0QzNkhBO0VFekVJLFVBQVU7QXREdy9IZDs7QWdEN29JRTs7O0VyQ3dGSSxxQkMxRW1CO0VENkZqQjtFQUNBLDZDQUE0RDtBWHlpSXBFOztBZ0RycElFOzs7Ozs7RXJDd0ZJLHFCQzFFbUI7RUQ2RmpCO0VBQ0EsNkNBQTREO0FYb2pJcEU7O0FnRGhxSUU7OztFckN3RkkscUJDMUVtQjtFRDZGakI7RUFDQSw2Q0FBNEQ7QVg0aklwRTs7QWdEeHFJRTs7O0VyQ3dGSSxxQkMxRW1CO0VENkZqQjtFQUNBLDZDQUE0RDtBWG9rSXBFOztBZ0RocklFOzs7Ozs7RXJDd0ZJLHFCQzFFbUI7RUQ2RmpCO0VBQ0EsNkNBQTREO0FYK2tJcEU7O0FnRDNySUU7OztFckN3RkkscUJDMUVtQjtFRDZGakI7RUFDQSw2Q0FBNEQ7QVh1bElwRTs7QXNEMW5JRztFM0NsQkcseUIwQzVDdUc7RUN5RzNHLG1CQUFtQjtFQUNuQixvQkFBb0I7QXREb2xJdEI7O0FvRC85SEE7RXpDbkxNLHdDQzNDK0U7QVppc0lyRjs7QW9EbitIQTtFekNuTE0sMEJDM0MrRTtBWnFzSXJGOztBb0R2K0hBO0V6Q25MTSwwQkMzQytFO0FaeXNJckY7O0FvRDMrSEE7RXpDbkxNLDBCQzNDK0U7QVo2c0lyRjs7QW9ELytIQTs7RXpDbkxNLDBCQzNDK0U7QVprdElyRjs7QW9EcC9IQTtFekNuTE0seUJDM0MrRTtBWnN0SXJGOztBb0R4L0hBO0V6Q25MTSx3Q0MzQytFO0FaMHRJckY7O0FvRDUvSEE7RUVsSEksZUFBZTtBdERrbkluQjs7QW9ENS9IQTtFekN2TE0sNkIyQzJNMkM7RUE2Ti9DO0UzQ3hhSSx5QjBDaENtRDtBckR5dEl6RDs7QWdEaHZJRTs7O0VyQ3VESSxpQ0MzQytFO0FaMHVJckY7O0FvRHhnSUE7RUV1QkksbUJBQW1CO0F0RHEvSHZCOztBdUNudklFO0VBQ0U7SUFDRSwrREFBMkY7RXZDc3ZJL0Y7RXVDbnZJRTtJQUNFLGlFQUFnRTtJQUNoRSxnRUFBNEY7RXZDcXZJaEc7RXVDbHZJRTtJQUNFLHdFQUF1RTtJQUN2RSxpRUFBNkY7RXZDb3ZJakc7RXVDanZJRTtJQUNFLCtEQUEyRjtFdkNtdkkvRjtBQUNGOztBdUNwd0lFO0VBQ0U7SUFDRSxpRUFBMkY7RXZDdXdJL0Y7RXVDcHdJRTtJQUNFLGlFQUFnRTtJQUNoRSxrRUFBNEY7RXZDc3dJaEc7RXVDbndJRTtJQUNFLHdFQUF1RTtJQUN2RSxtRUFBNkY7RXZDcXdJakc7RXVDbHdJRTtJQUNFLGlFQUEyRjtFdkNvd0kvRjtBQUNGOztBdUNyeElFO0VBQ0U7SUFDRSxnRUFBMkY7RXZDd3hJL0Y7RXVDcnhJRTtJQUNFLGlFQUFnRTtJQUNoRSxpRUFBNEY7RXZDdXhJaEc7RXVDcHhJRTtJQUNFLHdFQUF1RTtJQUN2RSxrRUFBNkY7RXZDc3hJakc7RXVDbnhJRTtJQUNFLGdFQUEyRjtFdkNxeEkvRjtBQUNGOztBdUN0eUlFO0VBQ0U7SUFDRSxnRUFBMkY7RXZDeXlJL0Y7RXVDdHlJRTtJQUNFLGlFQUFnRTtJQUNoRSxpRUFBNEY7RXZDd3lJaEc7RXVDcnlJRTtJQUNFLHdFQUF1RTtJQUN2RSxrRUFBNkY7RXZDdXlJakc7RXVDcHlJRTtJQUNFLGdFQUEyRjtFdkNzeUkvRjtBQUNGOztBdUN2eklFO0VBQ0U7SUFDRSxrRUFBMkY7RXZDMHpJL0Y7RXVDdnpJRTtJQUNFLGlFQUFnRTtJQUNoRSxtRUFBNEY7RXZDeXpJaEc7RXVDdHpJRTtJQUNFLHdFQUF1RTtJQUN2RSxvRUFBNkY7RXZDd3pJakc7RXVDcnpJRTtJQUNFLGtFQUEyRjtFdkN1ekkvRjtBQUNGOztBdUN4MElFO0VBQ0U7SUFDRSxnRUFBMkY7RXZDMjBJL0Y7RXVDeDBJRTtJQUNFLGlFQUFnRTtJQUNoRSxpRUFBNEY7RXZDMDBJaEc7RXVDdjBJRTtJQUNFLHdFQUF1RTtJQUN2RSxrRUFBNkY7RXZDeTBJakc7RXVDdDBJRTtJQUNFLGdFQUEyRjtFdkN3MEkvRjtBQUNGOztBdUN6MUlFO0VBQ0U7SUFDRSxtRUFBMkY7RXZDNDFJL0Y7RXVDejFJRTtJQUNFLGlFQUFnRTtJQUNoRSxvRUFBNEY7RXZDMjFJaEc7RXVDeDFJRTtJQUNFLHdFQUF1RTtJQUN2RSxxRUFBNkY7RXZDMDFJakc7RXVDdjFJRTtJQUNFLG1FQUEyRjtFdkN5MUkvRjtBQUNGOztBdUMxMklFO0VBQ0U7SUFDRSxpRUFBMkY7RXZDNjJJL0Y7RXVDMTJJRTtJQUNFLGlFQUFnRTtJQUNoRSxrRUFBNEY7RXZDNDJJaEc7RXVDejJJRTtJQUNFLHdFQUF1RTtJQUN2RSxtRUFBNkY7RXZDMjJJakc7RXVDeDJJRTtJQUNFLGlFQUEyRjtFdkMwMkkvRjtBQUNGOztBd0R0NUlBOztFeEQwNUlFO0F3RHY1SUY7Ozs7OztFQU1NLHlDQUErQztBeER5NUlyRDs7QXdELzVJQTs7Ozs7Ozs7O0VBWU0scUJ0RGxCb0I7QUZpN0kxQjs7QXdEMzVJQTs7RXhEKzVJRTtBb0RsNUlGO0VJVEcsaUJBQWlCO0F4RDg1SXBCOztBb0RqdklBO0VJektHLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsdUJBQXVCO0F4RDg1STFCOztBd0QzNUlBOztFeEQrNUlFO0F3RDU1SUY7RUFFTSx3QkFBd0I7RUFDeEIscUJBQXFCO0F4RDY1STNCOztBd0RoNklBO0VBTU0sa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixVQUFVO0VBQ1YsZ0NBQWdDO0VBQ2hDLG9DQUFvQztBeEQ4NUkxQzs7QXdEeDZJQTtFQWdCUywrQ0FBK0M7RUFDL0MsY3REdkRpQjtBRm05STFCOztBd0R0NUlBOztFeEQwNUlFO0F3RHY1SUY7O0VBRUcsV0FBVztFQUNYLG1CQUFtQjtBeER5NUl0Qjs7QXdEdDVJQTtFQUlNLG1CQUFtQjtBeERzNUl6Qjs7QUcvOUlNO0VxRDRFSDtJQUlNLHNCQUFzQjtFeERvNUk3QjtBQUNGOztBd0R6NUlJO0VBUUssa0JBQWtCO0F4RHE1STNCOztBR3orSU07RXFENEVGO0lBV1EsZUFBZTtFeER1NUl6QjtBQUNGOztBd0RuNklJO0VBZUssaUJBQWlCO0F4RHc1STFCOztBR24vSU07RXFENEVGO0lBa0JRLGNBQWM7RXhEMDVJeEI7QUFDRjs7QXdENzZJSTtFQXNCSyxpQkFBaUI7RUFDakIsa0JBQWtCO0F4RDI1STNCOztBRzkvSU07RXFENEVGO0lBMEJRLGNBQWM7SUFDZCxlQUFlO0V4RDY1SXpCO0FBQ0Y7O0F3RHg1SUc7RUFFRyxtQkFBbUI7QXhEMDVJekI7O0F3RDU1SUk7RUFLSyxrQkFBa0I7QXhEMjVJM0I7O0F3RHY1SUc7RUFFRyxtQkFBbUI7RUFDbkIsb0NBQW9DO0F4RHk1STFDOztBd0R0NUlHO0VBQ0csYUFBYTtFQUNiLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLG9DQUFvQztFQUNwQyxnQkFBZ0I7QXhEeTVJdEI7O0F3RC81SUk7RUFTSyxjQUFjO0VBQ2QseUJBQXlCO0VBQ3pCLHFCQUFxQjtBeEQwNUk5Qjs7QXdEcjZJSTtFQWNLLGNBQWM7RUFDZCx5QkFBeUI7RUFDekIscUJBQXFCO0F4RDI1STlCOztBd0QzNklJO0VBbUJLLGNBQWM7RUFDZCx5QkFBeUI7RUFDekIscUJBQXFCO0F4RDQ1STlCOztBd0RqN0lJO0VBeUJLLGFBQWE7RUFDYixrQkFBa0I7QXhENDVJM0I7O0F3RDcrSUE7RUF5Rk0sY0FBYztBeER3NUlwQjs7QXdEai9JQTtFQTRGUyxhQUFhO0F4RHk1SXRCOztBd0RyL0lBO0VBZ0dTLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIseUJ0RHpLZTtFc0QwS2YscUNBQXFDO0VBQ3JDLGN0RDNLZTtFc0Q0S2YsZUFBZTtBeER5NUl4Qjs7QXdEOS9JQTtFQXdHWSx3Q3REOUtjO0FGd2tKMUI7O0F3RGxnSkE7RUE4R1MsMkJBQTJCO0VBQzNCLDhCQUE4QjtBeER3NUl2Qzs7QXdEdmdKQTtFQW1IUyw0QkFBNEI7RUFDNUIsK0JBQStCO0F4RHc1SXhDOztBd0Q1Z0pBO0VBd0hTLHlCdEQvTGU7RXNEZ01mLFlBQVk7QXhEdzVJckI7O0FHdGxKTTtFcURxRU47SUE4SFMsYUFBYTtJQUNiLGVBQWU7RXhEdzVJdEI7RXdEdmhKRjtJQWtJWSxZQUFZO0lBQ1osa0JBQWtCO0V4RHc1STVCO0FBQ0Y7O0F5RHhtSkE7RUFDRSxpQkFBaUI7RUFDakIsK0pBQW9KO0VBQ3BKLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsbUJBQW1CO0F6RDJtSnJCOztBeUR4bUpBO0VBQ0U7RUFDQSw0QkFBNEI7RUFDNUIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2Q7RUFDQSxtQ0FBbUM7RUFDbkMsa0NBQWtDO0F6RDJtSnBDOztBeUR4bUpBO0VBQ0UscUNBQXFDO0VBQ3JDLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsZUFBZTtFQUNmLGNBQWM7RUFDZCxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGFBQWE7RUFDYixhQUFhO0VBQ2IsWUFBWTtFQUNaLDZCQUE2QjtBekQybUovQjs7QXlEeG1KQTtFQUNFLG9CQUFvQjtFQUNwQixZQUFZO0F6RDJtSmQ7O0F5RHhtSkE7RUFDRSxXQUFXO0F6RDJtSmI7O0F5RHhtSkE7RUFDRSxXQUFXO0F6RDJtSmI7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRSxVQUFVO0F6RDJtSlo7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRTtJQUNFLE9BQU87RXpEMm1KVDtFeUR6bUpBO0lBQ0UsV0FBVztFekQybUpiO0V5RHptSkE7SUFDRSxPQUFPO0V6RDJtSlQ7QUFDRjs7QXlEeG1KQTtFQUNFO0lBQ0UsT0FBTztFekQybUpUO0V5RHptSkE7SUFDRSxXQUFXO0V6RDJtSmI7RXlEem1KQTtJQUNFLE9BQU87RXpEMm1KVDtBQUNGOztBeUR4bUpBO0VBQ0U7SUFDRSxPQUFPO0V6RDJtSlQ7RXlEem1KQTtJQUNFLFdBQVc7RXpEMm1KYjtFeUR6bUpBO0lBQ0UsT0FBTztFekQybUpUO0FBQ0Y7O0F5RHhtSkE7RUFDRTtJQUNFLE9BQU87RXpEMm1KVDtFeUR6bUpBO0lBQ0UsV0FBVztFekQybUpiO0V5RHptSkE7SUFDRSxPQUFPO0V6RDJtSlQ7QUFDRjs7QXlEeG1KQTtFQUNFO0lBQ0UsT0FBTztFekQybUpUO0V5RHptSkE7SUFDRSxVQUFVO0V6RDJtSlo7RXlEem1KQTtJQUNFLE9BQU87RXpEMm1KVDtBQUNGOztBeUR4bUpBO0VBQ0U7SUFDRSxPQUFPO0V6RDJtSlQ7RXlEem1KQTtJQUNFLFVBQVU7RXpEMm1KWjtFeUR6bUpBO0lBQ0UsT0FBTztFekQybUpUO0FBQ0Y7O0F5RHhtSkE7RUEvQ0U7SUFpREUsT0FBTztFekQybUpUO0V5RHpwSkE7SUFpREUsVUFBVTtFekQybUpaO0V5RHpwSkE7SUFpREUsT0FBTztFekQybUpUO0FBQ0Y7O0F5RHhtSkE7RUFDRTtJQUNFLE9BQU87RXpEMm1KVDtFeUR6bUpBO0lBQ0UsVUFBVTtFekQybUpaO0V5RHptSkE7SUFDRSxPQUFPO0V6RDJtSlQ7QUFDRjs7QXlEeG1KQTtFQUNFLG9DQUFvQztFQUNwQywrQkFBK0I7RUFDL0IsNEJBQTRCO0VBQzVCLGtCQUFrQjtBekQybUpwQjs7QXlEeG1KQTtFQUNFLG1DQUFtQztFQUNuQyw4QkFBOEI7RUFDOUIsMkJBQTJCO0VBQzNCLGtCQUFrQjtBekQybUpwQjs7QXlEeG1KQTtFQUNFLGFBQWE7RUFDYixPQUFPO0VBQ1Asa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixXQUFXO0VBQ1gscUNBQXFDO0F6RDJtSnZDOztBeUR4bUpBO0VBQ0UsV0FBVztFQUNYLGVBQWU7RUFDZixZQUFZO0VBQ1osZUFBZTtFQUNmLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsZ0NBQWdDO0VBQ2hDLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixxQ0FBcUM7RUFDckMsZ0NBQWdDO0VBQ2hDLDZCQUE2QjtBekQybUovQjs7QXlEeG1KQTtFQUNFLFdBQVc7QXpEMm1KYjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLHFDQUFxQztFQUNyQyxTQUFTO0VBQ1QsV0FBVztFQUNYLGVBQWU7RUFDZixPQUFPO0VBQ1Asa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixRQUFRO0VBQ1Isa0JBQWtCO0VBQ2xCLGFBQWE7QXpEMm1KZjs7QXlEeG1KQTtFQUNFLFNBQVM7RUFDVCxlQUFlO0VBQ2YsaUJBQWlCO0F6RDJtSm5COztBeUR4bUpBO0VBQ0UsZUFBZTtFQUNmLGVBQWU7QXpEMm1KakI7O0F5RHhtSkE7RUFDRSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLHNCQUFzQjtBekQybUp4Qjs7QXlEeG1KQTtFQUNFLFVBQVU7RUFDViwySUFBMkk7RUFDM0kscUlBQXFJO0VBQ3JJLGlJQUFpSTtFQUNqSSwySEFBMkg7QXpEMm1KN0g7O0F5RHhtSkE7RUFDRSxVQUFVO0VBQ1YsMkNBQTJDO0VBQzNDLG1DQUFtQztBekQybUpyQzs7QXlEeG1KQTtFQUNFLFVBQVU7RUFDViwwQ0FBMEM7RUFDMUMsa0NBQWtDO0F6RDJtSnBDOztBeUR4bUpBO0VBQ0UsVUFBVTtFQUNWLDJDQUEyQztFQUMzQyxtQ0FBbUM7QXpEMm1KckM7O0F5RHhtSkE7RUFDRSx5Q0FBeUM7RUFDekMsaUNBQWlDO0VBQ2pDLFVBQVU7RUFDVixnSUFBZ0k7RUFDaEksMEhBQTBIO0VBQzFILHNIQUFzSDtFQUN0SCxnSEFBZ0g7RUFDaEgsaUNBQWlDO0VBQ2pDLDhCQUE4QjtFQUM5Qiw2QkFBNkI7RUFDN0IseUJBQXlCO0F6RDJtSjNCOztBeUR4bUpBO0VBQ0UsbUNBQW1DO0VBQ25DLDJCQUEyQjtFQUMzQixVQUFVO0F6RDJtSlo7O0F5RHhtSkE7RUFDRSx5QkFBeUI7RUFDekIsU0FBUztFQUNULGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsYUFBYTtFQUNiLGlCQUFpQjtFQUNqQiwwQ0FBMEM7RUFDMUMsa0NBQWtDO0VBQ2xDLDBFQUEwRTtFQUMxRSxvRUFBb0U7RUFDcEUsZ0VBQWdFO0VBQ2hFLDBEQUEwRDtBekQybUo1RDs7QXlEeG1KQTtFQUNFLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixZQUFZO0F6RDJtSmQ7O0F5RHhtSkE7RUFDRSxZQUFZO0VBQ1osd0JBQXdCO0VBQ3hCLHFCQUFxQjtFQUNyQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLDBDQUEwQztFQUMxQyxrQ0FBa0M7QXpEMm1KcEM7O0F5RHhtSkE7RUFDRSx3Q0FBd0M7RUFDeEMsZ0NBQWdDO0F6RDJtSmxDOztBeUR4bUpBO0VBQ0UsZUFBZTtFQUNmLFlBQVk7RUFDWixtQkFBbUI7QXpEMm1KckI7O0F5RHhtSkE7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsa0JBQWtCO0F6RDJtSnBCOztBeUR4bUpBO0VBWEE7SUFhSSwyQ0FBMkM7SUFDM0Msc0NBQXNDO0lBQ3RDLG1DQUFtQztFekQybUpyQztBQUNGOztBeUR4bUpBO0VBQ0UscUJBQXFCO0F6RDJtSnZCOztBeUR4bUpBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixpQkFBaUI7QXpEMm1KbkI7O0F5RHhtSkE7RUFDRSxxQkFBcUI7QXpEMm1KdkI7O0F5RHhtSkE7RUFDRSxpQkFBaUI7QXpEMm1KbkI7O0F5RHhtSkE7RUFDRSxxQ0FBcUM7RUFDckMsZ0NBQWdDO0VBQ2hDLDZCQUE2QjtBekQybUovQjs7QXlEeG1KQTtFQUNFLGFBQWE7QXpEMm1KZjs7QXlEeG1KQTtFQUNFLHlCQUF5QjtFQUN6QiwwQkFBMEI7RUFDMUIsV0FBVztFQUNYLGVBQWU7RUFDZixlQUFlO0VBQ2YsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxvQkFBb0I7RUFDcEIsWUFBWTtBekQybUpkOztBeUR4bUpBO0VBQ0UsZ0JBQWdCO0F6RDJtSmxCOztBeUR4bUpBO0VBQ0UsV0FBVztBekQybUpiOztBeUR4bUpBO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxjQUFjO0F6RDJtSmhCOztBeUR4bUpBO0VBQ0UsV0FBVztFQUNYLFNBQVM7RUFDVCxzQkFBc0I7RUFDdEIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBekQybUpwQjs7QXlEeG1KQTtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxzQkFBc0I7RUFDdEIsdUJBQXVCO0F6RDJtSnpCOztBeUR4bUpBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsU0FBUztFQUNULFFBQVE7RUFDUixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLGFBQWE7RUFDYixlQUFlO0F6RDJtSmpCOztBeUR4bUpBO0VBQ0Usb0ZBQXlFO0F6RDJtSjNFOztBeUR4bUpBO0VBQ0Usd0ZBQTZFO0F6RDJtSi9FOztBeUR4bUpBO0VBQ0Usb0ZBQXlFO0VBQ3pFLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCxZQUFZO0F6RDJtSmQ7O0F5RHhtSkE7RUFDRSxVQUFVO0F6RDJtSlo7O0F5RHhtSkE7RUFDRSxvRkFBMkU7QXpEMm1KN0U7O0F5RHhtSkE7RUFDRSx3RkFBK0U7QXpEMm1KakY7O0F5RHhtSkE7RUFDRSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztBekQybUpUOztBeUR4bUpBO0VBQ0Usa0JBQWtCO0F6RDJtSnBCOztBeUR4bUpBO0VBQ0UsYUFBYTtBekQybUpmOztBeUR4bUpBO0VBQ0UsbUJBQW1CO0F6RDJtSnJCOztBeUR4bUpBO0VBQ0Usc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxPQUFPO0VBQ1Asa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixXQUFXO0VBQ1gsYUFBYTtFQUNiLFVBQVU7RUFDVix5Q0FBeUM7RUFDekMsc0NBQXNDO0VBQ3RDLG9DQUFvQztFQUNwQyxpQ0FBaUM7QXpEMm1KbkM7O0F5RHhtSkE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztFQUNYLFFBQVE7QXpEMm1KVjs7QXlEeG1KQTtFQUNFLFdBQVc7QXpEMm1KYjs7QXlEeG1KQTtFQUNFLFVBQVU7QXpEMm1KWjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLCtCQUErQjtFQUMvQix1QkFBdUI7QXpEMm1KekI7O0F5RHhtSkE7RUFDRSx5RUFBeUU7RUFDekUsbUVBQW1FO0VBQ25FLCtEQUErRDtFQUMvRCx5REFBeUQ7QXpEMm1KM0Q7O0F5RHhtSkE7RUFDRSxxR0FBcUc7RUFDckcsa0dBQWtHO0VBQ2xHLGdHQUFnRztFQUNoRyw2RkFBNkY7QXpEMm1KL0Y7O0F5RHhtSkE7RUFDRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0VBQy9CLG1DQUFtQztFQUNuQyxnQ0FBZ0M7RUFDaEMsMkJBQTJCO0F6RDJtSjdCOztBeUR4bUpBO0VBQ0UsbUNBQW1DO0VBQ25DLDJCQUEyQjtFQUMzQixtR0FBbUc7RUFDbkcsNkZBQTZGO0VBQzdGLHlGQUF5RjtFQUN6RixtRkFBbUY7RUFDbkYsNkJBQTZCO0VBQzdCLDBCQUEwQjtFQUMxQix5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLG1DQUFtQztFQUNuQyxnQ0FBZ0M7RUFDaEMsMkJBQTJCO0F6RDJtSjdCOztBeUR4bUpBO0VBQ0UsZ0JBQWdCO0F6RDJtSmxCOztBeUR4bUpBO0VBQ0UsZUFBZTtBekQybUpqQjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLFlBQVk7RUFDWixvQkFBb0I7QXpEMm1KdEI7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRSxVQUFVO0VBQ1Ysb0JBQW9CO0F6RDJtSnRCOztBeUR4bUpBO0VBQ0UsWUFBWTtFQUNaLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsWUFBWTtBekQybUpkOztBeUR4bUpBO0VBQ0UsaUJBQWlCO0F6RDJtSm5COztBeUR4bUpBO0VBQ0UsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixhQUFhO0F6RDJtSmY7O0F5RHhtSkE7RUFDRSxVQUFVO0VBQ1YsdUNBQXVDO0VBQ3ZDLCtCQUErQjtBekQybUpqQzs7QXlEeG1KQTtFQUNFLGlDQUFpQztBekQybUpuQzs7QXlEeG1KQTtFQUNFLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsWUFBWTtFQUNaLFlBQVk7RUFDWixPQUFPO0VBQ1AsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLDBFQUEwRTtFQUMxRSxvRUFBb0U7RUFDcEUsZ0VBQWdFO0VBQ2hFLDBEQUEwRDtFQUMxRCx5Q0FBeUM7RUFDekMsaUNBQWlDO0F6RDJtSm5DOztBeUR4bUpBO0VBQ0UsV0FBVztFQUNYLFlBQVk7QXpEMm1KZDs7QXlEeG1KQTtFQUNFLDBDQUEwQztFQUMxQyxrQkFBa0I7RUFDbEIsb0RBQW9EO0VBQ3BELGNBQWM7RUFDZCxZQUFZO0VBQ1osMkNBQTJDO0VBQzNDLHNDQUFzQztFQUN0QyxtQ0FBbUM7RUFDbkMsV0FBVztBekQybUpiOztBeUR4bUpBO0VBQ0UsaUNBQWlDO0F6RDJtSm5DOztBeUR4bUpBO0VBQ0UsbUNBQW1DO0VBQ25DLG9DQUFvQztFQUNwQyx1QkFBdUI7RUFDdkIsYUFBYTtFQUNiLHFCQUFxQjtFQUNyQixTQUFTO0VBQ1QsU0FBUztFQUNULGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLFFBQVE7QXpEMm1KVjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLHFDQUFxQztFQUNyQyxTQUFTO0VBQ1QsZUFBZTtFQUNmLE9BQU87RUFDUCxlQUFlO0VBQ2YsUUFBUTtFQUNSLE1BQU07RUFDTixhQUFhO0VBQ2IsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQix1RUFBdUU7RUFDdkUsa0VBQWtFO0VBQ2xFLCtEQUErRDtBekQybUpqRTs7QXlEeG1KQTtFQUNFLDRCQUE0QjtFQUM1QixvQkFBb0I7RUFDcEIsc0NBQXNDO0VBQ3RDLG9DQUFvQztFQUNwQyxxQ0FBcUM7RUFDckMseUNBQXlDO0VBQ3pDLGlDQUFpQztFQUNqQyxVQUFVO0VBQ1YsbUJBQW1CO0F6RDJtSnJCOztBeUR4bUpBO0VBQ0UsV0FBVztBekQybUpiOztBeUR4bUpBO0VBQ0Usc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLFNBQVM7RUFDVCxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsc0NBQXNDO0VBQ3RDLG9DQUFvQztFQUNwQyxxQ0FBcUM7RUFDckMseUNBQXlDO0VBQ3pDLGlDQUFpQztFQUNqQyx5R0FBeUc7RUFDekcsbUdBQW1HO0VBQ25HLCtGQUErRjtFQUMvRix5RkFBeUY7QXpEMm1KM0Y7O0F5RHhtSkE7RUFDRSxXQUFXO0VBQ1gsY0FBYztFQUNkLFNBQVM7RUFDVCxRQUFRO0VBQ1Isa0JBQWtCO0VBQ2xCLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsV0FBVztFQUNYLFVBQVU7QXpEMm1KWjs7QXlEeG1KQTtFQUNFLGtCQUFrQjtBekQybUpwQjs7QXlEeG1KQTtFQUNFLFdBQVc7QXpEMm1KYjs7QXlEeG1KQTtFQUNFLFdBQVc7RUFDWCxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixvRUFBb0U7RUFDcEUsZUFBZTtBekQybUpqQjs7QXlEeG1KQTtFQUNFLHFDQUFxQztBekQybUp2Qzs7QXlEeG1KQTtFQUNFLHFCQUFxQjtFQUNyQixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtBekQybUp4Qjs7QXlEeG1KQTtFQUNFLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsV0FBVztFQUNYLGVBQWU7RUFDZixZQUFZO0VBQ1osY0FBYztFQUNkLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1Ysc0JBQXNCO0VBQ3RCLFdBQVc7QXpEMm1KYjs7QXlEeG1KQTtFQUNFLGtCQUFrQjtBekQybUpwQjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLGNBQWM7QXpEMm1KaEI7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRSxjQUFjO0F6RDJtSmhCOztBeUR4bUpBO0VBQ0UsZ0JBQWdCO0F6RDJtSmxCOztBeUR4bUpBO0VBQ0UsY0FBYztBekQybUpoQjs7QXlEeG1KQTtFQUNFLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLGNBQWM7QXpEMm1KaEI7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLE9BQU87RUFDUCxRQUFRO0VBQ1IsTUFBTTtFQUNOLFNBQVM7RUFDVCw0RUFBNEU7RUFDNUUsc0VBQXNFO0VBQ3RFLGtFQUFrRTtFQUNsRSw0REFBNEQ7QXpEMm1KOUQ7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRSxnQkFBZ0I7QXpEMm1KbEI7O0F5RHhtSkE7RUFDRSxlQUFlO0F6RDJtSmpCOztBeUR4bUpBO0VBQ0UsZ0JBQWdCO0F6RDJtSmxCOztBeUR4bUpBO0VBQ0UsZ0JBQWdCO0F6RDJtSmxCOztBeUR4bUpBO0dDMm1KRSxPRDFtSlE7QXpEMm1KVjs7QXlEeG1KQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsY0FBYztBekQybUpoQjs7QXlEeG1KQTtFQUNFLFdBQVc7QXpEMm1KYjs7QXlEeG1KQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VBQ1AsYUFBYTtFQUNiLFVBQVU7RUFDVixhQUFhO0VBQ2IseUNBQXlDO0VBQ3pDLG9DQUFvQztFQUNwQyxpQ0FBaUM7QXpEMm1KbkM7O0F5RHhtSkE7RUFDRSw4QkFBOEI7RUFDOUIsMkJBQTJCO0VBQzNCLHNCQUFzQjtBekQybUp4Qjs7QXlEeG1KQTtFQUNFLFVBQVU7QXpEMm1KWjs7QXlEeG1KQTtFQUNFLCtDQUErQztFQUMvQyx1Q0FBdUM7RUFDdkMsc0RBQXNEO0VBQ3RELDhDQUE4QztBekQybUpoRDs7QXlEeG1KQTtFQUNFLDBDQUEwQztFQUMxQyxrQ0FBa0M7RUFDbEMsVUFBVTtBekQybUpaOztBeUR4bUpBO0VBQ0Usb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVk7QXpEMm1KZDs7QXlEeG1KQTtFQUNFLFlBQVk7RUFDWix3QkFBd0I7RUFDeEIscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsZ0JBQWdCO0F6RDJtSmxCOztBeUR4bUpBO0VBQ0UsWUFBWTtFQUNaLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLGdCQUFnQjtBekQybUpsQjs7QXlEeG1KQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxNQUFNO0VBQ04sbUJBQW1CO0F6RDJtSnJCOztBeUR4bUpBO0VBQ0UsOEZBQWdGO0VBQ2hGLHdCQUF3QjtBekQybUoxQjs7QXlEeG1KQTtFQUNFLGdDQUFnQztBekQybUpsQzs7QXlEeG1KQTtFQUNFLGdDQUFnQztBekQybUpsQzs7QXlEeG1KQTtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxZQUFZO0F6RDJtSmQ7O0F5RHhtSkE7RUFDRSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxVQUFVO0VBQ1Ysa0JBQWtCO0F6RDJtSnBCOztBeUR4bUpBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxPQUFPO0VBQ1AsUUFBUTtFQUNSLE1BQU07RUFDTixTQUFTO0F6RDJtSlg7O0F5RHhtSkE7RUFDRSxzQkFBc0I7QXpEMm1KeEI7O0F5RHhtSkE7RUFDRSxhQUFhO0F6RDJtSmY7O0F5RHhtSkE7RUFDRSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLHVCQUF1QjtBekQybUp6Qjs7QXlEeG1KQTtFQUNFLFVBQVU7RUFDVix5Q0FBeUM7RUFDekMsb0NBQW9DO0VBQ3BDLGlDQUFpQztBekQybUpuQzs7QXlEeG1KQTtFQUNFLFVBQVU7QXpEMm1KWjs7QXlEeG1KQTtFQUNFLGFBQWE7QXpEMm1KZjs7QXlEeG1KQTtFQUNFLGFBQWE7QXpEMm1KZjs7QXlEeG1KQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RUFDUixTQUFTO0VBQ1QsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixVQUFVO0VBQ1YseUNBQXlDO0VBQ3pDLG9DQUFvQztFQUNwQyxpQ0FBaUM7QXpEMm1KbkM7O0F5RHhtSkE7RUFDRSxVQUFVO0F6RDJtSlo7O0F5RHhtSkE7RUFDRSw4Q0FBOEM7RUFDOUMsMkNBQTJDO0VBQzNDLHlDQUF5QztFQUN6QyxzQ0FBc0M7QXpEMm1KeEM7O0F5RHhtSkE7RUFDRSxtQ0FBbUM7RUFDbkMsZ0NBQWdDO0VBQ2hDLDJCQUEyQjtBekQybUo3Qjs7QXlEeG1KQTtFQUNFLG1DQUFtQztFQUNuQyxnQ0FBZ0M7RUFDaEMsMkJBQTJCO0F6RDJtSjdCOztBeUR4bUpBO0VBQ0UsVUFBVTtBekQybUpaOztBeUR4bUpBO0VBQ0UsVUFBVTtBekQybUpaOztBeUR4bUpBO0VBQ0Usd0NBQXdDO0VBQ3hDLHFDQUFxQztFQUNyQyxtQ0FBbUM7RUFDbkMsZ0NBQWdDO0F6RDJtSmxDOztBeUR4bUpBO0VBQ0UsVUFBVTtBekQybUpaOztBeUR4bUpBO0VBQ0UsMkNBQTJDO0VBQzNDLG1DQUFtQztBekQybUpyQzs7QXlEeG1KQTtFQUNFLDBDQUEwQztFQUMxQyxrQ0FBa0M7QXpEMm1KcEM7O0F5RHhtSkE7RUFDRSx1Q0FBdUM7RUFDdkMsK0JBQStCO0VBQy9CLFVBQVU7QXpEMm1KWjs7QXlEeG1KQTtFQUNFLDZGQUE2RjtFQUM3Rix1RkFBdUY7RUFDdkYsbUZBQW1GO0VBQ25GLDZFQUE2RTtBekQybUovRTs7QXlEeG1KQTtFQUNFLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsT0FBTztBekQybUpUOztBeUR4bUpBO0VBQ0UsV0FBVztBekQybUpiOztBeUR4bUpBO0VBQ0UsVUFBVTtBekQybUpaOztBeUR4bUpBO0VBQ0UsT0FBTztFQUNQLFVBQVU7QXpEMm1KWjs7QXlEeG1KQTtFQUNFLGdGQUFnRjtFQUNoRiw2RUFBNkU7RUFDN0UsMkVBQTJFO0VBQzNFLHdFQUF3RTtBekQybUoxRTs7QTJEMXJMRTtFbERWRSxrQkNkbUM7RUM2RmpDLHNCQzdFa0I7RURnR2hCO0VBQ0EsZ0RBQTREO0VHL0RoRSx5SENsRGdDO0U0QytTbEMsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixzQkFBc0I7QTNENDZLeEI7O0EyRDNyTEU7RTdDZ0JFLHdIQ2xEZ0M7RTRDa1JoQyxpQkMvUXdCO0VEZ1J4QixtQkFBbUI7RUFJbkIscUJDclI4RjtBNURrdUxsRzs7QTJEenJMRTtFQUVJLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsNEJBQTRCO0VBQzVCLDJCQUEyQjtFQUMzQixzQkFBc0I7QTNEMnJMNUI7O0EyRGpzTEU7RUFXTSxjQUFjO0VBQ2QsV0FBVztBM0QwckxuQjs7QTJEcnJMRTtFQUVJLCtCQUErQjtFQUMvQixnQ0FBZ0M7QTNEdXJMdEM7O0EyRG5yTEU7RUFFSSxrQ0FBa0M7RUFDbEMsbUNBQW1DO0EzRHFyTHpDOztBMkRqckxFO0VBMk5JLGdCQUErQjtBM0QwOUtyQzs7QTJEanJMRTtFQXVOSSxrQkFBK0I7QTNEODlLckM7O0EyRGpyTEU7RUFFSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLHNCQUFzQjtBM0Rtckw1Qjs7QTJEM3FMRTtFQThNQSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHNCQUFzQjtFQTVNbEIsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLGVBQWU7RUFDZixnQkFBZ0I7QTNEOHFMdEI7O0EyRDFxTEU7RUFFSSwrQkFBK0I7RUFDL0IsZ0NBQWdDO0EzRDRxTHRDOztBMkR4cUxFO0VBRUksa0NBQWtDO0VBQ2xDLG1DQUFtQztBM0QwcUx6Qzs7QTJEbHFMRTtFQXFMQSxhQUQ0QztFQUU1QyxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLHNCQUFzQjtFQXBMbEIsZ0JBQWdCO0VBQ2hCLFlBQVk7QTNEc3FMbEI7O0EyRGxxTEU7RUFFSSxVQUFVO0EzRG9xTGhCOztBMkRocUxFOztFQXNLQSxhQUQ0QztFQUU1QyxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLHNCQUFzQjtBM0QrL0t4Qjs7QTJEanFMRTtFaEQxRkkseUJDM0MrRTtFK0MySS9FLFlBQVk7RUFDWix5QkFBeUI7QTNEZ3FML0I7O0EyRDVwTEU7RTlDK0ZFO0VBR0YsaUJBQWM7RUFIWjtFQUdGLGVBQWM7QWJpa0xoQjs7QUFFQTtFYXRrTEk7RUFHRixjQUFjO0VBSFo7RUFHRixrQkFBYztBYndrTGhCOztBMkRocUxFO0VBMElBLG9CQXhJaUQ7RUF5SWpELG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsc0JBQXNCO0VBeklsQix1QkFBdUI7RUFDdkIsZUFBZTtFQUNmLGlCQUFpQjtBM0RvcUx2Qjs7QTJEMXFMRTtFQVdNLGFBQWE7QTNEbXFMckI7O0EyRDFwTEU7RTlDaUVFO0VBR0YsY0FBYztFQUhaO0VBR0YsaUJBQWM7RThDaEVWLGNBQWM7QTNEOHBMcEI7O0FBRUE7RWFubUxJO0VBR0YsZ0JBQWM7RUFIWjtFQUdGLGVBQWM7QWJxbUxoQjs7QTJEenFMRTtFOUNpRUU7RUFHRixjQUFjO0VBSFo7RUFHRixlQUFjO0FiNG1MaEI7O0FBRUE7RWFqbkxJO0VBR0YsY0FBYztFQUhaO0VBR0YsZUFBYztBYm1uTGhCOztBMkR6cUxFO0VBRUksOEJBQThCO0VBQzlCLFdBQVc7RUFDWCxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxpQkFBaUI7RUFDakI7RUFDQSxnQkFBZ0I7QTNEMnFMdEI7O0FBRUE7RTJEeHFMUTtFQUNBLGlCQUFpQjtBM0QwcUx6Qjs7QTJEanFMRTtFQUlJLGNBQWM7RUFHZCxhQUFhO0EzRCtwTG5COztBMkQzcExFO0VoRHBMSSx5QkMzQytFO0FaODNMckY7O0EyRDl5TEU7RXpDaEJFLHVCQUFxQjtFQUNyQixvQkFBa0I7RUFDbEIsbUJBQWlCO0VBQ2pCLHdCQUFzQjtFQUN0QixnQ0FBOEI7RUFDOUIsa0NBQWdDO0VBRWhDLDZDQUE2QztBbEJpMExqRDs7QWtCN3pMRTtFQUdJLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLG9CQUFvQjtFQUNwQixXQUFXO0FsQjh6TGpCOztBa0IxekxFO0VBR0ksNkRBRW1EO0VBSW5ELFVBQVU7QWxCc3pMaEI7O0FrQi95TEk7RUFFSSwrQ0FBK0M7QWxCaXpMdkQ7O0FrQjd5TEk7RUFFSSxNQUFNO0VBQ047RUFDQSxPQUFPO0VBQ1AsbUJBQW1CO0VBQ25CLCtCQUErQjtBbEIreUx2Qzs7QWtCenlMSTtFQUVJLDZCQUE2QjtFQUM3QjtFQUNBLCtCQUErQjtBbEIyeUx2Qzs7QWtCcnlMSTtFQUVJLHlGQUVnRTtBbEJxeUx4RTs7QWtCL3hMSTtFQUVJLDBDQ2hLNEI7RURxSzVCLGdHQUFnRztBbEI2eEx4Rzs7QWtCcjJMRTtFQXFTSSxxQkFBMkI7RUFDM0I7RUFDQSxzQkFBNEI7RUFDNUIsV0FBa0I7RUFDbEIsWUFBbUI7QWxCb2tMekI7O0FrQjUwTEk7RUErUUksc0NBQXlDO0VBQ3pDLHVDQUEwQztBbEJpa0xsRDs7QWtCbDNMRTtFUGhDSSxzQkMzQytFO0FaaThMckY7O0FrQjV2TEk7RUFHSSxhQ2hOSTtBbkI2OExaOztBa0IzdExNO0VBZUYseUJBQXlCO0VBSXpCLGFDcFFRO0FuQmk5TFo7O0FrQmpzTEk7RUFFSSxnQ0FBd0Q7QWxCbXNMaEU7O0FrQjlyTE07RUFFSSx5QkNyU3dCO0VEMFN4QixhQzdSRTtBbkJ5OUxaOztBa0J0ckxFO0VBRUksNkJBQXdCO0FsQndyTDlCOztBY2grTEk7RUEwQ0Esd0hDbERnQztBZjQrTHBDOztBY3ArTEk7RUEwQ0EseUhDbERnQztBZmcvTHBDOztBY3grTEk7RUEwQ0EseUhDbERnQztBZm8vTHBDOztBYzUrTEk7RUEwQ0EseUhDbERnQztBZncvTHBDOztBY2gvTEk7RUEwQ0EsMEhDbERnQztBZjQvTHBDOztBY3AvTEk7RUEwQ0EsMEhDbERnQztBZmdnTXBDOztBY3gvTEk7RUEwQ0EsMkhDbERnQztBZm9nTXBDOztBYzUvTEk7RUEwQ0EsMkhDbERnQztBZndnTXBDOztBY2hnTUk7RUEwQ0EsMkhDbERnQztBZjRnTXBDOztBY3BnTUk7RUEwQ0EsMkhDbERnQztBZmdoTXBDOztBY3hnTUk7RUEwQ0EsNEhDbERnQztBZm9oTXBDOztBYzVnTUk7RUEwQ0EsNEhDbERnQztBZndoTXBDOztBY2hoTUk7RUEwQ0EsNEhDbERnQztBZjRoTXBDOztBY3BoTUk7RUEwQ0EsNEhDbERnQztBZmdpTXBDOztBY3hoTUk7RUEwQ0EsNEhDbERnQztBZm9pTXBDOztBYzVoTUk7RUEwQ0EsNEhDbERnQztBZndpTXBDOztBY2hpTUk7RUEwQ0EsNkhDbERnQztBZjRpTXBDOztBY3BpTUk7RUEwQ0EsNkhDbERnQztBZmdqTXBDOztBY3hpTUk7RUEwQ0EsNkhDbERnQztBZm9qTXBDOztBYzVpTUk7RUEwQ0EsNkhDbERnQztBZndqTXBDOztBY2hqTUk7RUEwQ0EsOEhDbERnQztBZjRqTXBDOztBY3BqTUk7RUEwQ0EsOEhDbERnQztBZmdrTXBDOztBY3hqTUk7RUEwQ0EsOEhDbERnQztBZm9rTXBDOztBYzVqTUk7RUEwQ0EsOEhDbERnQztBZndrTXBDOztBY2hrTUk7RUEwQ0EsOEhDbERnQztBZjRrTXBDOztBYy9qTUU7RUFFSSx5REF3RHNEO0VBcER0RCx1QkN5RTZCO0FmcS9MbkM7O0E4Qm5rTUU7RUEySEUscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLGFBQWE7RUFDYiw2QkFBNkI7RUFDN0Isa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxlQ2pKNEI7RURrSjVCLHFCQUFxQjtFQUNyQixlQUFlO0VBQ2YsaUJBQWlCO0VBL0RqQixXSGRzRjtFR2V0RixZSGZzRjtFR2dCdEYsYUFBaUQ7QTlCNGdNckQ7O0E4QnJsTUU7O0VBNklJLFdDM0owQjtFRDRKMUIsWUM1SjBCO0EvQnltTWhDOztBOEIzbE1FO0VuQitFSSwwQkM5RGtCO0VEaUZoQjtFQUNBLG1FQUE0RDtFbUJxRDlELGVBQWU7RUFDZixvQkFBb0I7QTlCMDhMMUI7O0E4QjlsTUU7RUFFSSxxQkFBcUI7QTlCZ21NM0I7O0E4QmxtTUU7RUFRTSxhQUFhO0E5QjhsTXJCOztBOEJ6bE1FO0VBR00sYUFBYTtBOUIwbE1yQjs7QThCN2xNRTtFQVNRLHFCQUFxQjtBOUJ3bE0vQjs7QThCbm5NRTtFWm1FRSx1QkFBcUI7RUFDckIsb0JBQWtCO0VBQ2xCLG1CQUFpQjtFQUNqQix3QkFBc0I7RUFDdEIsZ0NBQThCO0VBQzlCLGtDQUFnQztFQUVoQyw2Q0FBNkM7QWxCbWpNakQ7O0FrQi9pTUU7RUFHSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixvQkFBb0I7RUFDcEIsV0FBVztBbEJnak1qQjs7QWtCNWlNRTtFQUdJLDZEQUVtRDtFQUluRCxVQUFVO0FsQndpTWhCOztBa0JqaU1JO0VBRUksK0NBQStDO0FsQm1pTXZEOztBa0IvaE1JO0VBRUksTUFBTTtFQUNOO0VBQ0EsT0FBTztFQUNQLG1CQUFtQjtFQUNuQiwrQkFBK0I7QWxCaWlNdkM7O0FrQjNoTUk7RUFFSSw2QkFBNkI7RUFDN0I7RUFDQSwrQkFBK0I7QWxCNmhNdkM7O0FrQnZoTUk7RUFFSSx5RkFFZ0U7QWxCdWhNeEU7O0FrQmpoTUk7RUFFSSwwQ0NoSzRCO0VEcUs1QixnR0FBZ0c7QWxCK2dNeEc7O0FrQnZsTUU7RUE4VEksb0JBQStCO0VBQy9CO0VBQ0EscUJBQWdDO0VBQ2hDLFdBVFM7RUFVVCxZQVZTO0FsQnV5TGY7O0FrQnh4TEk7RUFHSSwyQ0FBc0Q7RUFDdEQ7RUFDQSw2Q0FBd0Q7RUFDeEQsc0NBQXlDO0VBQ3pDLHVDQUEwQztBbEJ5eExsRDs7QWtCdGtNSTtFQW1USSxzQ0FBeUM7RUFDekMsdUNBQTBDO0FsQnV4TGxEOztBa0I1bU1FO0VQaENJLHNCQzNDK0U7QVoyck1yRjs7QWtCdC9MSTtFQUdJLGFDaE5JO0FuQnVzTVo7O0FrQnI5TE07RUFlRix5QkFBeUI7RUFJekIsYUNwUVE7QW5CMnNNWjs7QWtCMzdMSTtFQUVJLGdDQUF3RDtBbEI2N0xoRTs7QWtCeDdMTTtFQUVJLHlCQ3JTd0I7RUQwU3hCLGFDN1JFO0FuQm10TVo7O0FrQmg3TEU7RUFFSSw2QkFBd0I7QWxCazdMOUI7O0E2RDdzTUU7RS9DNkJFLDJIQ2xEZ0M7RThDNE1oQyxvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLFdDak5pQjtFRGtOakIsWUNsTmlCO0VEbU5qQixVQUFVO0VBQ1YsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsd0JBQXdCO0VBSXhCLG1JNUNoT3dFO0VOK0Z0RSx5QkNsRm9CO0VEa0ZwQixXQ2hGeUY7RURtR3ZGO0VBQ0EsMENBQTREO0FYeW9NcEU7O0E2RHJ1TUU7RXBEUEUsa0JvRHdMK0I7QTdEd2pNbkM7O0E2RHp1TUU7RXBEUEUsa0JvRHdMK0I7QTdENGpNbkM7O0E2RDd1TUU7RUFpTkksVUFBVTtFQUNWLFNBQVM7QTdEZ2lNZjs7QTZEbHZNRTtFL0M2QkUsMkhDbERnQztBZjJ3TXBDOztBNkR0dk1FO0UvQzZCRSw0SENsRGdDO0FmK3dNcEM7O0E2RDF2TUU7RUFzT0ksYUFBYTtBN0R3aE1uQjs7QTZEOXZNRTtFQTRPSSxlQUFlO0E3RHNoTXJCOztBNkRsd01FO0VBdVBJLFdBQVc7QTdEK2dNakI7O0FXdHJNNkM7RWtEaEYzQztJbERtRlk7SUFDQSxxREFBNEQ7RVh3ck14RTtBQUNGOztBNkQ3d01FO0VBK0ZJLFdBNUY2QjtFQTZGN0IsWUE3RjZCO0VBOEY3QixlQTlGNkI7QTdEZ3hNbkM7O0E2RDV3TUU7RUEwUEUsV0NyUnNCO0VEc1J0QixZQ3RSc0I7QTlENHlNMUI7O0E2RHJvTUc7RXhEdElHLCtCQ2xDb0Q7RURrQ3BELGtDQzlCOEI7RUQ4QjlCLG1DQzdCK0I7RUQ2Qi9CLG1CQzJFa0I7RUQzRWxCLG9CQzRFb0I7RUQ1RXBCLGdCQ3RCTztFRHNCUCx5QkVnQnVDO0VGaEJ2QyxxQkMrRXFCO0VEL0VyQix5QkNnRnlCO0VHcEczQixtQnFDeUkrQztFZVkvQyxlQ3BLaUM7RURvU2pDLFdBQVc7RUFDWCxlQUFlO0VBQ2YsWUNuUzBCO0E5RDR6TTlCOztBNkQ5eE1FO0VwRGxCRSxtQnFDeUkrQztBOUMycU1uRDs7QTZEbHlNRTtFaERnT0U7RUFHRixpQkFBYztFQUhaO0VBR0Ysa0JBQWM7QWJza01oQjs7QUFFQTtFYTNrTUk7RUFHRixpQkFBYztFQUhaO0VBR0Ysa0JBQWM7QWI2a01oQjs7QTZEaHpNRTtFaERnT0U7RUFHRixpQkFBYztFQUhaO0VBR0Ysa0JBQWM7QWJvbE1oQjs7QUFFQTtFYXpsTUk7RUFHRixpQkFBYztFQUhaO0VBR0Ysa0JBQWM7QWIybE1oQjs7QTZEMXpNRTtFQXVSRSwyQkFBMkI7RUFDM0IsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixnQkFBZ0I7QTdEdWlNcEI7O0E2RDd6TUU7RUFzUUUsMkQ1Q2hUd0U7RTRDb1R4RSxrQkFBa0I7RUFDbEIsc0JBQXNCO0E3RHdqTTFCOztBNkR0MU1FO0VBaVRFLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsdUJBQXVCO0E3RHlpTTNCOztBNkQvek1FO0VBK1JFLG1CQUFtQjtFQUNuQixVQUFVO0VBSVYscUY1Q3RWd0U7QWpCdTNNNUU7O0E2RHIwTUU7RUEyU0ksbUJBQW1CO0VBSW5CLDBENUNqV3NFO0FqQjQzTTVFOztBNkR2Mk1FO0UzQzRERSx1QkFBcUI7RUFDckIsb0JBQWtCO0VBQ2xCLG1CQUFpQjtFQUNqQix3QkFBc0I7RUFDdEIsZ0NBQThCO0VBQzlCLGtDQUFnQztFQUVoQyw2Q0FBNkM7QWxCOHlNakQ7O0FrQjF5TUU7O0VBR0ksa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysb0JBQW9CO0VBQ3BCLFdBQVc7QWxCNHlNakI7O0FrQnh5TUU7RUFHSSw2REFFbUQ7RUFJbkQsVUFBVTtBbEJveU1oQjs7QWtCN3hNSTtFQUVJLCtDQUErQztBbEIreE12RDs7QWtCM3hNSTtFQUVJLE1BQU07RUFDTjtFQUNBLE9BQU87RUFDUCxtQkFBbUI7RUFDbkIsK0JBQStCO0FsQjZ4TXZDOztBa0J2eE1JO0VBRUksNkJBQTZCO0VBQzdCO0VBQ0EsK0JBQStCO0FsQnl4TXZDOztBa0JueE1JO0VBRUkseUZBRWdFO0FsQm14TXhFOztBa0I3d01JO0VBRUksMENDaEs0QjtFRHFLNUIsZ0dBQWdHO0FsQjJ3TXhHOztBa0JuMU1FOztFQXFTSSxxQkFBMkI7RUFDM0I7RUFDQSxzQkFBNEI7RUFDNUIsV0FBa0I7RUFDbEIsWUFBbUI7QWxCbWpNekI7O0FrQjN6TUk7RUErUUksc0NBQXlDO0VBQ3pDLHVDQUEwQztBbEJnak1sRDs7QWtCajJNRTs7RVBDSSxzQkNoRnlGO0FacTdNL0Y7O0FXNzFNNkM7RU9UM0M7O0lQWVk7SUFDQSxxREFBNEQ7RVhnMk14RTtBQUNGOztBa0Jwdk1JO0VBR0ksYUN4TUk7QW5CNjdNWjs7QWtCbnRNTTtFQWVGLHlCQUF5QjtFQUl6QixhQzVQUTtBbkJpOE1aOztBa0J6ck1JO0VBRUksZ0NBQXdEO0FsQjJyTWhFOztBa0J0ck1NO0VBRUkseUJDclN3QjtFRDBTeEIsYUNyUkU7QW5CeThNWjs7QWtCOXFNRTtFQUVJLDZCQUF3QjtBbEJnck05Qjs7QTZEaDZNRTtFM0NtYUUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7RUFHWixvQkFBb0I7RTJDOVpsQixnQkFBZ0I7QTdEODVNdEI7O0ErRHgvTUE7O0UvRDQvTUU7QW9CdjdNRjtFMkNqRUcsZ0I3REoyQjtBRisvTTlCOztBK0R4L01BOztDL0Q0L01DO0ErRHIvTUU7RUFDRyxPQUFPO0EvRHUvTWI7O0ErRG4vTUc7RUFDRyxPQUFPO0EvRHMvTWI7O0FHcmdOTTtFNERLTjtJQWNNLHNCQUFzQjtFL0R1L00xQjtFK0RqZ05DO0lBYU0sYUFBYTtFL0R1L01wQjtBQUNGOztBK0RsL01BOztDL0RzL01DO0ErRG4vTUQ7RUFHTSxzQkFBc0I7RUFDdEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixvQ0FBb0M7QS9EbS9NMUM7O0ErRHovTUE7RUFXTSxTQUFTO0VBQ1QsVUFBVTtFQUNWLHFCQUFxQjtBL0RrL00zQjs7QUc5aE5NO0U0RCtCTjtJQWdCUyxtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQiw2QkFBNkI7RS9Eby9NcEM7QUFDRjs7QStEeGdOQTtFQXlCTSxvQ0FBb0M7RUFDcEMsaUJBQWlCO0VBQ2pCLGdCQUFnQjtBL0RtL010Qjs7QStEOWdOQTtFQThCUyxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFc3RGxFUTtFNkRtRVIsNEJBQTRCO0EvRG8vTXJDOztBK0RyaE5BO0VBc0NZLFlBQVk7RUFDWix5QjdEL0VjO0FGa2tOMUI7O0ErRDFoTkE7RUE2Q1kseUM3RHJGYztBRnNrTjFCOztBK0R6K01BOzs7Qy9EOCtNQztBK0QxK01EO0VBR0csZUFBZTtFQUNmLG9DQUFvQztFQUNwQyxpQkFBaUI7RUFDakIsY0FBYztFQUNkLGM3RHpHcUI7RTZEMEdyQix5QkFBeUI7QS9EMCtNNUI7O0ErRGwvTUE7O0VBWU0sZUFBZTtFQUNmLGFBQWE7RUFDYixnQkFBZ0I7QS9EMitNdEI7O0ErRHovTUE7RUFpQk0sV0FBVztFQUNYLDRCQUE0QjtBL0Q0K01sQzs7QStEOS9NQTtFQXFCTSxjN0R0SG9CO0FGbW1OMUI7O0ErRHorTUE7OztDL0Q4K01DO0ErRGpsTkU7RUF3R0Esd0JBQXdCO0EvRDQrTTNCOztBRzFtTk07RTREc0JIO0lBMkdHLFdBQVc7SUFDWCxrQkFBa0I7RS9EOCtNdEI7QUFDRjs7QStEMStNQTs7O0MvRCsrTUM7QStEMytNRDtFQUNHLGFBQWE7RUFDYixlQUFlO0VBQ2YsWUFBWTtFQUNaLFdBQVc7RUFDWCx5QjdEakp1QjtFNkRrSnZCLFdBQVc7QS9ENitNZDs7QUc5bk5NO0U0RDJJTjtJQVNNLG9CQUFvQjtFL0QrK014QjtBQUNGOztBK0R6L01BO0VBZU0sa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsV0FBVztFQUNYLFlBQVk7RUFDWix5QkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixrREFBa0Q7RUFDbEQsZ0JBQWdCO0EvRDgrTXRCOztBK0QzK01HO0VBQ0csYUFBYTtBL0Q4K01uQjs7QStEMytNRztFQUVHLG1DQUFtQztBL0Q2K016Qzs7QUE3cE5BO0FBQ0E7RUFFRSxXQUFXO0VBQ1gsaUJBQWlCO0FBK3BObkI7O0FBN3BORTtFQUVFLE9BQU87RUFDUCxlQUFlO0FBK3BObkI7O0FBNXBORztFQUtHLGFBQWE7RUFDYixlQUFlO0FBMnBOckI7O0FBanFORztFQVNLLGVBQWU7QUE0cE52Qjs7QUFycU5HO0VBZUcsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLDZCQUE2QjtBQTBwTm5DOztBQTdxTkc7RUF1QkssV0FBVztFQUNYLFlBQVk7RUFDWixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZix1Q0FBdUM7QUEwcE4vQzs7QUFqcE5FO0VBQ0UsZ0JBQWdCO0FBb3BOcEI7O0FBcnBORztFQUlHLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsb0JBQW9CO0FBcXBOMUI7O0FBM3BORzs7RUFXRyxjQUFjO0VBQ2QsbUNBQW1DO0VBQ25DLGdCQUFnQjtFQUNoQixXQUFXO0FBcXBOakI7O0FBbnFORztFQWtCRyxlQUFlO0VBQ2YsZ0JBQWdCO0FBcXBOdEI7O0FBeHFORztFQXNCSyxhQUFhO0FBc3BOckI7O0FBNXFORztFQTJCRyxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FBcXBOdEI7O0FBanJORztFQWdDRyxvQ0FBb0M7RUFDcEMscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsZUFBZTtBQXFwTnJCOztBQTVyTkc7RUEwQ0ssV0FBVztFQUNYLHlCQUF5QjtBQXNwTmpDOztBQWpzTkc7RUFpREssV0FBVztFQUNYLHlCQUF5QjtBQW9wTmpDOztBQXRzTkc7RUFzREssV0FBVztFQUNYLHlCQUF5QjtBQW9wTmpDOztBQTNzTkc7RUE0REcsZ0JBQWdCO0FBbXBOdEI7O0FHNXZOTTtFSEhOO0lBaUhJLHNCQUFzQjtFQW1wTnhCO0VBanBORTtJQUNFLG1CQUFtQjtFQW1wTnZCO0VBcHBORztJQUlHLGlCQUFpQjtJQUNqQixrQkFBa0I7RUFtcE54QjtFQTN0TkE7SUE2RUksVUFDRjtFQWdwTkY7QUFDRjs7QUE1b05BO0FBRUE7RUFTTSxPQUFPO0VBQ1AsY0FBYztBQXNvTnBCOztBQWhwTkE7RUFlTSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixvQ0FBb0M7QUFxb04xQzs7QUF2cE5BO0VBd0JNLHVCQUF1QjtFQUN2QixlQUFlO0FBbW9OckI7O0FHOXhOTTtFSGtJTjtJQThCTSxzQkFBc0I7RUFtb04xQjtFQWpxTkY7SUFpQ1EsY0FBYztFQW1vTnBCO0FBQ0Y7O0FBcnFOQTtFQTJDTSxXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixlQUFlO0FBOG5OckI7O0FBNXFOQTtFQW1ETSwyQkFBMkI7RUFDM0IsV0FBVztFQUNYLFlBQVk7QUE2bk5sQjs7QUFsck5BO0VBd0RRLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULGdDQUFnQztBQThuTnhDOztBQXpyTkE7RUEySEk7QUFra05KOztBQTdyTkE7RUFzRU0sV0FBVztFQUNYLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZUFBZTtBQTJuTnJCOztBQXBzTkE7RUE4RU0sMkJBQTJCO0VBQzNCLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtBQTBuTnRCOztBQTVzTkE7RUFxRlEscUJFeE5rQjtBRm0xTjFCOztBQWh0TkE7RUF5RlEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsZ0NBQWdDO0FBMm5OeEM7O0FBdnROQTtFQStGZSxzQkU1TkU7QUZ3MU5qQjs7QUEzdE5BO0VBZ0dnQixzQkU1TkU7QUYyMU5sQjs7QUEvdE5BO0VBaUdpQix5QkU1Tks7QUY4MU50Qjs7QUFudU5BO0VBa0dpQix5QkU1Tks7QUZpMk50Qjs7QUF2dU5BO0VBbUdnQix5QkU1Tks7QUZvMk5yQjs7QUEzdU5BO0VBb0dnQix5QkU1Tks7QUZ1Mk5yQjs7QUEvdU5BO0VBcUd5Qix5QkU1Tks7QUYwMk45Qjs7QUFudk5BO0VBdUdRLGtCQUFrQjtBQWdwTjFCOztBQXZ2TkE7RUEwR1UsV0FBVztFQUNYLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxxQkFBcUI7RUFDckIsWUFBWTtFQUNaLFdBQVc7RUFDWCxnREFBZ0Q7QUFpcE4xRDs7QUFud05BO0VBd0hNLHFCRTVQa0I7QUYyNE54Qjs7QUF2d05BO0VBNkhNLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osaUVBQWlFO0VBQ2pFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsU0FBUztFQUNULGdDQUFnQztBQThvTnRDIiwiZmlsZSI6Ii9jc3Mvc2hvcC9wcm9kdWN0LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9pY29uP2ZhbWlseT1NYXRlcmlhbCtJY29uc3xNYXRlcmlhbCtJY29ucytPdXRsaW5lZFwiKTtcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udC1mYW1pbHkvTW9udHNlcnJhdC9Nb250c2VycmF0LVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250LWZhbWlseS9PcGVuX1NhbnMvT3BlblNhbnMtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNlcmlmXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udC1mYW1pbHkvUFRfU2VyaWYvUFRTZXJpZi1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKipcclxuICAgQ09VTEVVUlNcclxuKi9cbi8qKlxyXG4gICBSZXNwb25zaXZlXHJcbiAqL1xuLm1kYy1idXR0b24ge1xuICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4OTI5ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMCA4cHggMCA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4td2lkdGg6IDY0cHg7XG4gIGhlaWdodDogMzZweDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5tZGMtYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4ubWRjLWJ1dHRvbjphY3RpdmUge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubWRjLWJ1dHRvbjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1kYy1idXR0b246ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1idXR0b24tLWRlbnNlIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4ubWRjLWJ1dHRvbjpub3QoOmRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLWJ1dHRvbiAubWRjLWJ1dHRvbl9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtYnV0dG9uIC5tZGMtYnV0dG9uX19pY29uLCAubWRjLWJ1dHRvbiAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ubWRjLWJ1dHRvbjpub3QoOmRpc2FibGVkKSB7XG4gIGNvbG9yOiAjNjIwMGVlO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbiwgLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuc3ZnLm1kYy1idXR0b25fX2ljb24ge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQgLm1kYy1idXR0b25fX2ljb24sXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCAubWRjLWJ1dHRvbl9faWNvbixcbi5tZGMtYnV0dG9uLS1vdXRsaW5lZCAubWRjLWJ1dHRvbl9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1idXR0b24tLXJhaXNlZCAubWRjLWJ1dHRvbl9faWNvbiwgLm1kYy1idXR0b24tLXJhaXNlZCAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0sIFtkaXI9XCJydGxcIl1cbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkIC5tZGMtYnV0dG9uX19pY29uLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQgLm1kYy1idXR0b25fX2ljb25bZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQgLm1kYy1idXR0b25fX2ljb24sXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQgLm1kYy1idXR0b25fX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogLTRweDtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZCAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbixcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uLFxuLm1kYy1idXR0b24tLW91dGxpbmVkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogLTRweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWJ1dHRvbi0tcmFpc2VkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uLCAubWRjLWJ1dHRvbi0tcmFpc2VkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQgLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb24sXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0sIFtkaXI9XCJydGxcIl1cbi5tZGMtYnV0dG9uLS1vdXRsaW5lZCAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbixcbi5tZGMtYnV0dG9uLS1vdXRsaW5lZCAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQge1xuICBwYWRkaW5nOiAwIDE2cHggMCAxNnB4O1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOmRpc2FibGVkLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQ6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZDpub3QoOmRpc2FibGVkKSxcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYyMDBlZTtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWJ1dHRvbi0tcmFpc2VkOm5vdCg6ZGlzYWJsZWQpLFxuICAubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpub3QoOmRpc2FibGVkKSB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbiAgfVxufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOm5vdCg6ZGlzYWJsZWQpLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQ6bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogI2ZmZjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLW9uLXByaW1hcnksICNmZmYpO1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAycHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyODBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOmhvdmVyLCAubWRjLWJ1dHRvbi0tcmFpc2VkOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA0cHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOmRpc2FibGVkIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBwYWRkaW5nOiAwIDE1cHggMCAxNXB4O1xuICBib3JkZXItd2lkdGg6IDFweDtcbn1cblxuLm1kYy1idXR0b24tLW91dGxpbmVkOmRpc2FibGVkIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xufVxuXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQ6bm90KDpkaXNhYmxlZCkge1xuICBib3JkZXItY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtYnV0dG9uLS1kZW5zZSB7XG4gIGhlaWdodDogMzJweDtcbiAgZm9udC1zaXplOiAuODEyNXJlbTtcbn1cblxuQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQsIDApKSBzY2FsZSgxKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IHZhcigtLW1kYy1yaXBwbGUtZmctb3BhY2l0eSwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIG9wYWNpdHk6IHZhcigtLW1kYy1yaXBwbGUtZmctb3BhY2l0eSwgMCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLm1kYy1yaXBwbGUtc3VyZmFjZS0tdGVzdC1lZGdlLXZhci1idWcge1xuICAtLW1kYy1yaXBwbGUtc3VyZmFjZS10ZXN0LWVkZ2UtdmFyOiAxcHggc29saWQgIzAwMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubWRjLXJpcHBsZS1zdXJmYWNlLS10ZXN0LWVkZ2UtdmFyLWJ1Zzo6YmVmb3JlIHtcbiAgYm9yZGVyOiB2YXIoLS1tZGMtcmlwcGxlLXN1cmZhY2UtdGVzdC1lZGdlLXZhcik7XG59XG5cbi5tZGMtYnV0dG9uIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5tZGMtYnV0dG9uOjpiZWZvcmUsIC5tZGMtYnV0dG9uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1idXR0b246OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gMjI1bXMgZm9yd2FyZHMsIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiA3NW1zIGZvcndhcmRzO1xufVxuXG4ubWRjLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1idXR0b246OmJlZm9yZSwgLm1kYy1idXR0b246OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIHdpZHRoOiAyMDAlO1xuICBoZWlnaHQ6IDIwMCU7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1idXR0b246OmJlZm9yZSwgLm1kYy1idXR0b246OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYyMDBlZTtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWJ1dHRvbjo6YWZ0ZXIge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG4gIH1cbn1cblxuLm1kYy1idXR0b246aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6OmJlZm9yZSwgLm1kYy1idXR0b24tLXJhaXNlZDo6YWZ0ZXIsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDo6YmVmb3JlLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWJ1dHRvbi0tcmFpc2VkOjpiZWZvcmUsIC5tZGMtYnV0dG9uLS1yYWlzZWQ6OmFmdGVyLFxuICAubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDo6YmVmb3JlLFxuICAubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDo6YWZ0ZXIge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tcHJpbWFyeSwgI2ZmZik7XG4gIH1cbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZDpob3Zlcjo6YmVmb3JlLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQ6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDg7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtYnV0dG9uLS1yYWlzZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjI0O1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjI0O1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkLm1kYy1yaXBwbGUtdXBncmFkZWQsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZC5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMjQ7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5oMSwgaDIge1xuICBmb250LWZhbWlseTogXCJQVCBTZXJpZlwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBzZXJpZjtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDIuNWVtO1xuICBjb2xvcjogIzU3M0QxQztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDJlbTtcbiAgY29sb3I6ICM1NzNEMUM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICM2NjY7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbnAsXG51bCA+IGxpIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbnAge1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbm1haW4ge1xuICBtaW4taGVpZ2h0OiA2MDBweDtcbn1cblxuLmZsZXgtcm93LCAuaGVhZGVyX2xvZ28sIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcywgLmhlYWRlcl9iYXNrZXQgLmNvdW50LCAuZm9vdGVyX25hdi1iYXIgLmZvb3Rlcl9sb2dvLCAuZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMsIC5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9wYXltZW50LW1ldGhvZHMsIC5mb3JtX2lucHV0LWdyb3VwLCAuc2hvcCwgLmZpbGVfYXJpYW5lLCAuZm9hbHRpbmctYmFza2V0IC5jb3VudCwgLnByb2R1Y3QsIC5wcm9kdWN0X2ltYWdlcyAubGlzdC1waG90bywgLnByb2R1Y3QtZGV0YWlscy5wcm9kdWN0LWRldGFpbHNfX3NpbXBsZSwgLnByb2R1Y3QtZGV0YWlscy5wcm9kdWN0LWRldGFpbHNfX3NpbXBsZSAucHJvZHVjdC1kZXRhaWxzX2Nob2ljZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uZmxleC1jb2x1bW4sIC5mb3JtLCAuZm9ybV9yYWRpby1ncm91cCwgLnNob3BfbmF2IHVsLCAucHJvZHVjdF9pbWFnZXMsIC5wcm9kdWN0LWRldGFpbHMucHJvZHVjdC1kZXRhaWxzX19zaW1wbGUgLnByb2R1Y3QtZGV0YWlsc19vcHRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZmxleC1jZW50ZXItY2VudGVyLCAuaGVhZGVyX2xvZ28sIC5oZWFkZXJfYmFza2V0IC5jb3VudCwgLmZvb3Rlcl9uYXYtYmFyIC5mb290ZXJfbG9nbywgLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zLCAuZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfcGF5bWVudC1tZXRob2RzLCAuZm9ybSAuY2hvaWNlLXNpbXBsZSwgLmZvYWx0aW5nLWJhc2tldCAuY291bnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLnRleHQtanVzdGlmeSBoMSwgLnRleHQtanVzdGlmeSBoMiwgLnRleHQtanVzdGlmeSBoMyB7XG4gIHRleHQtYWxpZ246IGluaXRpYWw7XG59XG5cbi5jb250YWluZXJfY2VudGVyLCAuZmlsZV9hcmlhbmUge1xuICB3aWR0aDogOTAlO1xuICBtYXgtd2lkdGg6IDg1MHB4O1xuICBtYXJnaW46IDAgYXV0byAzZW07XG59XG5cbi5zZXBhcmF0ZXVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggbGlnaHRncmF5O1xufVxuXG4uc2VwYXJhdGV1ci5zZXBhcmF0ZXVyX192ZXJ0aWNhbCB7XG4gIGhlaWdodDogMjAwcHg7XG4gIHdpZHRoOiAwO1xuICBib3JkZXItbGVmdDogc29saWQgMXB4IGxpZ2h0Z3JheTtcbn1cblxuLm1haW5fX2hlYWRlci1wYWRkaW5nIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1haW5fX2hlYWRlci1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogNzJweDtcbiAgfVxufVxuXG4vKipcclxuICAgQmFja2dyb3VuZCBjZW50ZXIgY292ZXJcclxuICovXG4uY29udGFpbmVyLWJhY2tncm91bmQsIC5oZWFkZXItYmFubmllcmUsIC5wcm9kdWN0X2ltYWdlcyAuY292ZXIsIC5wcm9kdWN0X2ltYWdlcyAubGlzdC1waG90byBsaSwgLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWJ1Y2tsZV9pbWcsIC5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb250YWluZXItYmFja2dyb3VuZCBpbWcsIC5oZWFkZXItYmFubmllcmUgaW1nLCAucHJvZHVjdF9pbWFnZXMgLmNvdmVyIGltZywgLnByb2R1Y3RfaW1hZ2VzIC5saXN0LXBob3RvIGxpIGltZywgLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWJ1Y2tsZV9pbWcgaW1nLCAucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLyoqXHJcbiAgIEhlYWRlciBhdmVjIGxlIGZvbmQgZXQgbGEgY2F0Y2ggcGhyYXNlXHJcbiAqL1xuLmhlYWRlci1iYW5uaWVyZV9jb250ZW50IHtcbiAgZm9udC1zaXplOiAyLjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qKlxyXG4gICBMb2FkZXIgU3Bpbm5lclxyXG4gKi9cbi5zcGlubmVyLWR1YWwtcmluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbn1cblxuLnNwaW5uZXItZHVhbC1yaW5nOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNDZweDtcbiAgaGVpZ2h0OiA0NnB4O1xuICBtYXJnaW46IDFweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDVweCBzb2xpZCAjQ0M2NjAwO1xuICBib3JkZXItY29sb3I6ICNDQzY2MDAgdHJhbnNwYXJlbnQgI0NDNjYwMCB0cmFuc3BhcmVudDtcbiAgYW5pbWF0aW9uOiBsZHMtZHVhbC1yaW5nIDEuMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGxkcy1kdWFsLXJpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vKipcclxuICAgU3R5bGUgZHUgYm91dG9uXHJcbiAqL1xuLm1kYy1idXR0b246bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogI0NDNjYwMDtcbn1cblxuLm1kYy1idXR0b24tLW91dGxpbmVkOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYm9yZGVyLWNvbG9yOiAjQ0M2NjAwO1xufVxuXG4ubWRjLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWJ1dHRvbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0M2NjAwO1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NDNjYwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLyoqXHJcbiAgIEJhbmRlYXUgQWxlcnQgQ29va2llc1xyXG4gKi9cbi5hbGVydC1jb29raWVzIHtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjNTczRDFDO1xuICBib3JkZXItdG9wOiBzb2xpZCAycHggI0NDNjYwMDtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uYWxlcnQtY29va2llcyBwIHtcbiAgZmxleDogNDtcbn1cblxuLmFsZXJ0LWNvb2tpZXNfYWN0aW9ucyB7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmFsZXJ0LWNvb2tpZXMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLyoqXHJcbiAgIFRvb2xUaXBcclxuICovXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRvb2x0aXAgLnRvb2x0aXB0ZXh0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogY2FsYygxMDAlICsgMTBweCk7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gIHdpZHRoOiAxMjBweDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ODkwOUM7XG59XG5cbi50b29sdGlwIC50b29sdGlwdGV4dDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzc4OTA5QyB0cmFuc3BhcmVudDtcbn1cblxuLnRvb2x0aXA6aG92ZXIgLnRvb2x0aXB0ZXh0IHtcbiAgYW5pbWF0aW9uOiB0b29sdGlwLWFuaW1hdGlvbiBlYXNlLWluLW91dCAwLjNzO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG5Aa2V5ZnJhbWVzIHRvb2x0aXAtYW5pbWF0aW9uIHtcbiAgZnJvbSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKipcclxuICAgIEhFQURFUlxyXG4gKi9cbmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyO1xufVxuXG4vKipcclxuICAgTG9nbyBKb2xsZXQgZGFucyBsZSBoZWFkZXJcclxuKi9cbi5oZWFkZXJfbG9nbyB7XG4gIGhlaWdodDogNzBweDtcbn1cblxuLmhlYWRlcl9sb2dvIHN2ZyB7XG4gIGhlaWdodDogNDBweDtcbn1cblxuLmhlYWRlcl9sb2dvIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDM1cHg7XG59XG5cbi5oZWFkZXJfbG9nbyBsYWJlbCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyNXB4O1xuICBtYXJnaW46IDVweCAwO1xufVxuXG4uaGVhZGVyX2xvZ28gbGFiZWwgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTczRDFDO1xufVxuXG4vKipcclxuICAgQnVyZ2VyIG1lbnUgZHUgbW9kZSB0w6lsw6lwaG9uZVxyXG4qL1xuI2hlYWRlcl90b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jaGVhZGVyX3RvZ2dsZTpjaGVja2VkICsgLmhlYWRlcl9sb2dvIGxhYmVsIHNwYW46bnRoLWNoaWxkKDEpOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gIHRvcDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbiNoZWFkZXJfdG9nZ2xlOmNoZWNrZWQgKyAuaGVhZGVyX2xvZ28gbGFiZWwgc3BhbjpudGgtY2hpbGQoMik6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNoZWFkZXJfdG9nZ2xlOmNoZWNrZWQgKyAuaGVhZGVyX2xvZ28gbGFiZWwgc3BhbjpudGgtY2hpbGQoMyk6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gIHRvcDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8qKlxyXG4gICBNZW51IGRlIG5hdmlnYXRpb25cclxuKi9cbi5oZWFkZXJfbmF2LWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggIzU3M0QxQztcbn1cblxuLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkge1xuICBtaW4td2lkdGg6IDE1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNlcmlmXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xufVxuXG4uaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkgYSB7XG4gIGNvbG9yOiAjNTczRDFDO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjNTczRDFDIDAlLCAjNTczRDFDIDJweCwgdHJhbnNwYXJlbnQgMnB4KSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMCAxMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgMC4zcztcbn1cblxuLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpIGEuYWN0aXZlLCAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vKipcclxuICAgUGFuaWVyIGRlIGxhIGJvdXRpcXVlIFxyXG4gICAodmlzaWJsZSBxdWUgZGFucyBsYSBib3V0aXF1ZSlcclxuKi9cbi5oZWFkZXJfYmFza2V0IHtcbiAgbWFyZ2luOiAwIDE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogNXB4O1xufVxuXG4uaGVhZGVyX2Jhc2tldCAuY291bnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNjMwMzA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cblxuLmhlYWRlcl9iYXNrZXRfZW1wdHkgLmNvdW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhlYWRlcl9iYXNrZXRfdXAgLmNvdW50IHtcbiAgYW5pbWF0aW9uOiBjb3VudC16b29tIDNzIGZvcndhcmRzIDE7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGVhZGVyX2Jhc2tldCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNvdW50LXpvb20ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLyoqXHJcbiAgIFNQRUNJQUwgUE9VUiBMQSBIT01FIFBBR0VcclxuICovXG5oZWFkZXIuaGVhZGVyX19ob21lLXBhZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogNjAwcHg7XG4gIHJpZ2h0OiAwO1xufVxuXG5oZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9sb2dvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbmF2LWJhciB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyB7XG4gIG1hcmdpbjogMzBweCAwIDA7XG59XG5cbmhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgI2ZmZiAwJSwgI2ZmZiAycHgsIHRyYW5zcGFyZW50IDJweCkgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDAgMTAwJTtcbn1cblxuaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoZWFkZXIuaGVhZGVyX19ob21lLXBhZ2Uge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG4gIGhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX2xvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbmF2LWJhciB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIGhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMge1xuICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgfVxuICBoZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGEge1xuICAgIGNvbG9yOiAjNTczRDFDO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICM1NzNEMUMgMCUsICM1NzNEMUMgMnB4LCB0cmFuc3BhcmVudCAycHgpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDAgMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgMC4zcztcbiAgfVxuICBoZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGEuYWN0aXZlLCBoZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICB9XG59XG5cbi8qKlxyXG4gICBSRVNQT05TSVZFXHJcbiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oZWFkZXJfbG9nbyBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmhlYWRlcl9uYXYtYmFyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMHB4O1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2Utb3V0O1xuICB9XG4gIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkge1xuICAgIG1hcmdpbjogMTBweCAwO1xuICB9XG4gICNoZWFkZXJfdG9nZ2xlOmNoZWNrZWQgfiAuaGVhZGVyX25hdi1iYXIge1xuICAgIGhlaWdodDogMjE1cHg7XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU3M0QxQztcbiAgcGFkZGluZzogMjBweCAwO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG5mb290ZXIgLnRleHQtY2VudGVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCwgXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5mb290ZXJfbG9nbyBzdmcge1xuICBoZWlnaHQ6IDU5cHg7XG59XG5cbi5mb290ZXJfbmF2LWJhciAuZm9vdGVyX2xvZ28gc3ZnICoge1xuICBmaWxsOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDI1cHggMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpIHtcbiAgbWluLXdpZHRoOiAxNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCwgXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpIGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaSBzdmcge1xuICBtYXgtd2lkdGg6IDMwcHg7XG59XG5cbi5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaTpudGgtY2hpbGQoMSkgYTpob3ZlciAqIHtcbiAgZmlsbDogY29ybmZsb3dlcmJsdWUgIWltcG9ydGFudDtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpOm50aC1jaGlsZCgyKSBhOmhvdmVyICoge1xuICBmaWxsOiBiZWlnZSAhaW1wb3J0YW50O1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfcGF5bWVudC1tZXRob2RzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX3BheW1lbnQtbWV0aG9kcyBpbWcge1xuICBtYXgtaGVpZ2h0OiA1MHB4O1xuICBtYXgtd2lkdGg6IDEyMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX3BheW1lbnQtbWV0aG9kcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4vKipcclxuICAgUkVTUE9OU0lWRVxyXG4gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXM6bnRoLWNoaWxkKDIpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtczpudGgtY2hpbGQoMikgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cblxuLm1kYy10b3VjaC10YXJnZXQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWNoZWNrZWQtY2hlY2ttYXJrLXBhdGgge1xuICAwJSxcbiAgNTAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjkuNzgzMzQ7XG4gIH1cbiAgNTAlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgfVxuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsge1xuICAwJSxcbiAgNjguMiUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB9XG4gIDY4LjIlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMCwgMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtY2hlY2tlZC11bmNoZWNrZWQtY2hlY2ttYXJrLXBhdGgge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAtMjkuNzgzMzQ7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtY2hlY2tlZC1pbmRldGVybWluYXRlLWNoZWNrbWFyayB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hlY2tlZC1jaGVja21hcmsge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNCwgMCwgMCwgMSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtbWl4ZWRtYXJrIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbWRjLWFuaW1hdGlvbi1kZWNlbGVyYXRpb24tY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtbWl4ZWRtYXJrIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTQsIDAsIDAsIDEpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDMxNWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLXVuY2hlY2tlZC1taXhlZG1hcmsge1xuICAwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMzIuOCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDAgMThweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIHBhZGRpbmc6IDExcHg7XG59XG5cbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSxcbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTg3ODY7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlLFxuICAubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsIC5tZGMtY2hlY2tib3gubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4Njtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsIC5tZGMtY2hlY2tib3gubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkOmhvdmVyIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wNDtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSwgLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXMgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKSAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLWNoZWNrYm94LS1zZWxlY3RlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZSAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkLm1kYy1jaGVja2JveC0tc2VsZWN0ZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTg3ODY7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSxcbiAgLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgdG9wOiAxMXB4O1xuICBsZWZ0OiAxMXB4O1xufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHRvcDogLTEzcHg7XG4gIGxlZnQ6IC0xM3B4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sIHtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpub3QoOmNoZWNrZWQpOm5vdCg6aW5kZXRlcm1pbmF0ZSkgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBib3JkZXItY29sb3I6ICMwMTg3ODY7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4NjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtZmFkZS1pbi1iYWNrZ3JvdW5kLXVmYWVlMGQwNCB7XG4gIDAlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgNTAlIHtcbiAgICBib3JkZXItY29sb3I6ICMwMTg3ODY7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4NjtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtZmFkZS1vdXQtYmFja2dyb3VuZC11ZmFlZTBkMDQge1xuICAwJSxcbiAgODAlIHtcbiAgICBib3JkZXItY29sb3I6ICMwMTg3ODY7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4NjtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tdW5jaGVja2VkLWNoZWNrZWQgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsIC5tZGMtY2hlY2tib3gtLWFuaW0tdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBhbmltYXRpb24tbmFtZTogbWRjLWNoZWNrYm94LWZhZGUtaW4tYmFja2dyb3VuZC11ZmFlZTBkMDQ7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tY2hlY2tlZC11bmNoZWNrZWQgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsIC5tZGMtY2hlY2tib3gtLWFuaW0taW5kZXRlcm1pbmF0ZS11bmNoZWNrZWQgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBhbmltYXRpb24tbmFtZTogbWRjLWNoZWNrYm94LWZhZGUtb3V0LWJhY2tncm91bmQtdWZhZWUwZDA0O1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbFtkaXNhYmxlZF06bm90KDpjaGVja2VkKTpub3QoOmluZGV0ZXJtaW5hdGUpIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sW2Rpc2FibGVkXTpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sW2Rpc2FibGVkXTppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBib3JkZXItY29sb3I6ICNmZmY7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmRpc2FibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICBtYXJnaW46IDAgMXB4O1xuICB9XG59XG5cbi5tZGMtY2hlY2tib3gtLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWxsLWNoYW5nZTogYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyLWNvbG9yO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSksIGJvcmRlci1jb2xvciA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuXG4ubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tc3VyZmFjZSwgIzAwMCk7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuXG4ubWRjLWNoZWNrYm94LS11cGdyYWRlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gIHRyYW5zaXRpb246IHN0cm9rZS1kYXNob2Zmc2V0IDE4MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgc3Ryb2tlLXdpZHRoOiAzLjEycHg7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAyOS43ODMzNDtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMjkuNzgzMzQ7XG59XG5cbi5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApIHJvdGF0ZSgwZGVnKTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgdHJhbnNmb3JtIDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG59XG5cbi5tZGMtY2hlY2tib3gtLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4ubWRjLWNoZWNrYm94LS11cGdyYWRlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmssXG4ubWRjLWNoZWNrYm94LS11cGdyYWRlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCxcbi5tZGMtY2hlY2tib3gtLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtY2hlY2tlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAubWRjLWNoZWNrYm94LS1hbmltLXVuY2hlY2tlZC1pbmRldGVybWluYXRlIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsIC5tZGMtY2hlY2tib3gtLWFuaW0tY2hlY2tlZC11bmNoZWNrZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxODBtcztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLXVuY2hlY2tlZC1jaGVja2VkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWNoZWNrZWQtY2hlY2ttYXJrLXBhdGggMTgwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLXVuY2hlY2tlZC1pbmRldGVybWluYXRlIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIGFuaW1hdGlvbjogbWRjLWNoZWNrYm94LXVuY2hlY2tlZC1pbmRldGVybWluYXRlLW1peGVkbWFyayA5MG1zIGxpbmVhciAwcztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gIGFuaW1hdGlvbjogbWRjLWNoZWNrYm94LWNoZWNrZWQtdW5jaGVja2VkLWNoZWNrbWFyay1wYXRoIDkwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWNoZWNrZWQtaW5kZXRlcm1pbmF0ZSAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICBhbmltYXRpb246IG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtY2hlY2ttYXJrIDkwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWNoZWNrZWQtaW5kZXRlcm1pbmF0ZSAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBhbmltYXRpb246IG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtbWl4ZWRtYXJrIDkwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWluZGV0ZXJtaW5hdGUtY2hlY2tlZCAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICBhbmltYXRpb246IG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtY2hlY2ttYXJrIDUwMG1zIGxpbmVhciAwcztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLWNoZWNrZWQgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLW1peGVkbWFyayA1MDBtcyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0taW5kZXRlcm1pbmF0ZS11bmNoZWNrZWQgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS11bmNoZWNrZWQtbWl4ZWRtYXJrIDMwMG1zIGxpbmVhciAwcztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgYmFja2dyb3VuZC1jb2xvciA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgsXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xufVxuXG4ubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgdHJhbnNmb3JtIDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmZvY3VzIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMC4xMjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA4MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgdHJhbnNmb3JtIDgwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IGluaGVyaXQ7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1jaGVja2JveC0tdG91Y2gge1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG59XG5cbi5tZGMtY2hlY2tib3gtLXRvdWNoIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sIHtcbiAgdG9wOiAtNHB4O1xuICByaWdodDogLTRweDtcbiAgbGVmdDogLTRweDtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogNDhweDtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxODBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIHRyYW5zZm9ybSAxODBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgdHJhbnNmb3JtIDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy1jaGVja2JveCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAxNW1zIGxpbmVhcjtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbiAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcywgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIDc1bXMgZm9yd2FyZHM7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb24gLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dCAxNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuICAubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tc3VyZmFjZSwgIzAwMCk7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveDpob3ZlciAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLCAubWRjLWNoZWNrYm94Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXMgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNoZWNrYm94Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCkgLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWNoZWNrYm94Om5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogY2FsYyg1MCUgLSA1MCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCBjYWxjKDUwJSAtIDUwJSkpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgY2FsYyg1MCUgLSA1MCUpKTtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWNoZWNrYm94X19yaXBwbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1kYy1mb3JtLWZpZWxkLCAuZm9ybV9jaGVja2JveC1ncm91cCB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE3ODZlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWRjLWZvcm0tZmllbGQgPiBsYWJlbCwgLmZvcm1fY2hlY2tib3gtZ3JvdXAgPiBsYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIG9yZGVyOiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtZm9ybS1maWVsZCA+IGxhYmVsLCBbZGlyPVwicnRsXCJdIC5mb3JtX2NoZWNrYm94LWdyb3VwID4gbGFiZWwsIC5tZGMtZm9ybS1maWVsZCA+IGxhYmVsW2Rpcj1cInJ0bFwiXSwgLmZvcm1fY2hlY2tib3gtZ3JvdXAgPiBsYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWZvcm0tZmllbGQgPiBsYWJlbCwgW2Rpcj1cInJ0bFwiXSAuZm9ybV9jaGVja2JveC1ncm91cCA+IGxhYmVsLCAubWRjLWZvcm0tZmllbGQgPiBsYWJlbFtkaXI9XCJydGxcIl0sIC5mb3JtX2NoZWNrYm94LWdyb3VwID4gbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuXG4ubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbiAgb3JkZXI6IC0xO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtZm9ybS1maWVsZC0tYWxpZ24tZW5kID4gbGFiZWwsIC5tZGMtZm9ybS1maWVsZC0tYWxpZ24tZW5kID4gbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkLS1hbGlnbi1lbmQgPiBsYWJlbCwgLm1kYy1mb3JtLWZpZWxkLS1hbGlnbi1lbmQgPiBsYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDEycHg7XG59XG5cbi5tZGMtaWNvbi1idXR0b24gc3ZnLFxuLm1kYy1pY29uLWJ1dHRvbiBpbWcge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG4ubWRjLWljb24tYnV0dG9uOmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LWRpc2FibGVkLW9uLWxpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1kYy1pY29uLWJ1dHRvbl9faWNvbi5tZGMtaWNvbi1idXR0b25fX2ljb24tLW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi0tb24gLm1kYy1pY29uLWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZGMtaWNvbi1idXR0b24tLW9uIC5tZGMtaWNvbi1idXR0b25fX2ljb24ubWRjLWljb24tYnV0dG9uX19pY29uLS1vbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1kYy1pY29uLWJ1dHRvbiB7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gMjI1bXMgZm9yd2FyZHMsIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiA3NW1zIGZvcndhcmRzO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dCAxNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDUwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSA1MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSwgLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIGNhbGMoNTAlIC0gNTAlKSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCBjYWxjKDUwJSAtIDUwJSkpO1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWljb24tYnV0dG9uOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi5tZGMtaWNvbi1idXR0b246aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLXJhZGlvIHtcbiAgcGFkZGluZzogMTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGJvcmRlci1jb2xvciwgY29sb3I7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpub3QoOmNoZWNrZWQpICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6ICMwMTg3ODY7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6ICMwMTg3ODY7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbn1cblxuLm1kYy1yYWRpbyBbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6bm90KDpjaGVja2VkKSArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLFxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG59XG5cbi5tZGMtcmFkaW8gW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSxcbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQ6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xufVxuXG4ubWRjLXJhZGlvIFthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlLFxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xufVxuXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTg3ODY7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1yYWRpbyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxufVxuXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHRvcDogLTEwcHg7XG4gIGxlZnQ6IC0xMHB4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sIHtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbn1cblxuLm1kYy1yYWRpb19fYmFja2dyb3VuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuXG4ubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSksIHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cblxuLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cblxuLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIGJvcmRlci13aWR0aDogMTBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTIwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSksIGJvcmRlci1jb2xvciAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBpbmhlcml0O1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLXJhZGlvLS10b3VjaCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cblxuLm1kYy1yYWRpby0tdG91Y2ggLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wge1xuICB0b3A6IC00cHg7XG4gIHJpZ2h0OiAtNHB4O1xuICBsZWZ0OiAtNHB4O1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCxcbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCB0cmFuc2Zvcm0gMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUsXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbn1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlLFxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIGJvcmRlci1jb2xvciAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG59XG5cbi5tZGMtcmFkaW8tLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBib3JkZXItY29sb3IgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQsXG5bYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpmb2N1cyArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDAuMTI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCB0cmFuc2Zvcm0gMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLXJhZGlvIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1yYWRpb19fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQgLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG59XG5cbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbiAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gNTAlKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBjYWxjKDUwJSAtIDUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgY2FsYyg1MCUgLSA1MCUpKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIGNhbGMoNTAlIC0gNTAlKSk7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTg3ODY7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSxcbiAgLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gIH1cbn1cblxuLm1kYy1yYWRpbzpob3ZlciAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkIC5tZGMtcmFkaW9fX3JpcHBsZTo6YmVmb3JlLCAubWRjLXJhZGlvOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXMgLm1kYy1yYWRpb19fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLXJhZGlvOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCkgLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLXJhZGlvOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1kYy1yYWRpb19fcmlwcGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5Aa2V5ZnJhbWVzIG1kYy1zZWxlY3QtZmxvYXQtbmF0aXZlLWNvbnRyb2wge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ubWRjLWxpbmUtcmlwcGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxODBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLCBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5tZGMtbGluZS1yaXBwbGUtLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWRjLWxpbmUtcmlwcGxlLS1kZWFjdGl2YXRpbmcge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLyogQG5vZmxpcCAqL1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLW5vdGNoZWQtb3V0bGluZSwgLm1kYy1ub3RjaGVkLW91dGxpbmVbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCwgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIHdpZHRoOiAxMnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmdbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEycHggKiAyKTtcbn1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDE3cHg7XG4gIGJvdHRvbTogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG59XG5cbi5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC8gLjc1KTtcbn1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmUtLW5vdGNoZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS1ub3RjaGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCwgLm1kYy1ub3RjaGVkLW91dGxpbmUtLW5vdGNoZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmUtLW5vLWxhYmVsIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLCBjb2xvciAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiB0ZXh0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgLyogQG5vZmxpcCAqL1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXN0YW5kYXJkIDI1MG1zIDE7XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXN0YW5kYXJkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb246bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX2ljb24ge1xuICBjb2xvcjogIzAwMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLW9uLXN1cmZhY2UsICMwMDApO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6IDAuNTQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLm1kYy1zZWxlY3RfX2ljb246bm90KFt0YWJpbmRleF0pLFxuLm1kYy1zZWxlY3RfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0LWhlbHBlci10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bywgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzMzMzZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxODBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBvcGFjaXR5OiAwO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLm1kYy1zZWxlY3QtaGVscGVyLXRleHQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTZweDtcbiAgY29udGVudDogXCJcIjtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5tZGMtc2VsZWN0LWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7XG59XG5cbi5tZGMtc2VsZWN0IHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogNTZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtLCBjb2xvcjtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xufVxuXG4ubWRjLXNlbGVjdDo6YmVmb3JlLCAubWRjLXNlbGVjdDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tZGMtc2VsZWN0OjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG59XG5cbi5tZGMtc2VsZWN0Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy1zZWxlY3QubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtc2VsZWN0OjpiZWZvcmUsIC5tZGMtc2VsZWN0OjphZnRlciB7XG4gIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBjYWxjKDUwJSAtIDEwMCUpO1xuICB3aWR0aDogMjAwJTtcbiAgaGVpZ2h0OiAyMDAlO1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtc2VsZWN0OjpiZWZvcmUsIC5tZGMtc2VsZWN0OjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtc2VsZWN0OmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0O1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLm1kYy1zZWxlY3Q6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbi5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgKyAubWRjLXNlbGVjdC1oZWxwZXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi5tZGMtc2VsZWN0LCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYyMDBlZTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDk4LCAwLCAyMzgsIDAuODcpO1xufVxuXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6aG92ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4ubWRjLXNlbGVjdCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjc1KTtcbn1cblxuLm1kYy1zZWxlY3QgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbiAgdG9wOiAyMXB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdCAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXNlbGVjdCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogNDhweDtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xuICB0b3A6IDE3cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDRweDtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMzZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMzZweDtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDM2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMzZweDtcbn1cblxuLm1kYy1zZWxlY3RfX2Ryb3Bkb3duLWljb24ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMHB4JTIyJTIwaGVpZ2h0JTNEJTIyNXB4JTIyJTIwdmlld0JveCUzRCUyMjclMjAxMCUyMDEwJTIwNSUyMiUyMHZlcnNpb24lM0QlMjIxLjElMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHhtbG5zJTNBeGxpbmslM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBpZCUzRCUyMlNoYXBlJTIyJTIwc3Ryb2tlJTNEJTIybm9uZSUyMiUyMGZpbGwlM0QlMjIlMjMwMDAlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwb3BhY2l0eSUzRCUyMjAuNTQlMjIlMjBwb2ludHMlM0QlMjI3JTIwMTAlMjAxMiUyMDE1JTIwMTclMjAxMCUyMiUzRSUzQyUyRnBvbHlnb24lM0UlMEElM0MlMkZzdmclM0VcIikgbm8tcmVwZWF0IGNlbnRlcjtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiA4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNnB4O1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3RfX2Ryb3Bkb3duLWljb24sIC5tZGMtc2VsZWN0X19kcm9wZG93bi1pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4ubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLXNlbGVjdF9fZHJvcGRvd24taWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMzYyMDBlZSUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBvcGFjaXR5JTNEJTIyMSUyMiUyMHBvaW50cyUzRCUyMjclMjAxMCUyMDEyJTIwMTUlMjAxNyUyMDEwJTIyJTNFJTNDJTJGcG9seWdvbiUzRSUwQSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgY2VudGVyO1xufVxuXG4ubWRjLXNlbGVjdC0tYWN0aXZhdGVkIC5tZGMtc2VsZWN0X19kcm9wZG93bi1pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKC01cHgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbn1cblxuLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG5cbi5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1saW5lLXJpcHBsZTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIDIpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWRjLXNlbGVjdCArIC5tZGMtc2VsZWN0LWhlbHBlci10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBtYXJnaW4tbGVmdDogMTJweDtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkICsgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQge1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xufVxuXG4ubWRjLXNlbGVjdC0tZm9jdXNlZCArIC5tZGMtc2VsZWN0LWhlbHBlci10ZXh0Om5vdCgubWRjLXNlbGVjdC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cpIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nLXRvcDogMjJweDtcbn1cblxuLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA1MnB4O1xuICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDA5MzdlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTZweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbFtkaXI9XCJydGxcIl0sIFtkaXI9XCJydGxcIl1cbi5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0LFxuLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDUycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOjotbXMtZXhwYW5kLFxuLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Oi1tcy12YWx1ZSxcbi5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0OjotbXMtdmFsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoXCJcIikge1xuICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4gIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgICB0ZXh0LWluZGVudDogLTJweDtcbiAgfVxufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQge1xuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjIwMGVlO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICM2MjAwZWUpO1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLCAubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmdbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZywgLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6OmJlZm9yZSwgLm1kYy1zZWxlY3QtLW91dGxpbmVkOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0NCUpIHNjYWxlKDEpO1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNTJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2xbZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDUycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9faWNvbiB7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbGluZS1yaXBwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiAjYjAwMDIwO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1pbnZhbGlkICsgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cblxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZCAubWRjLXNlbGVjdF9fZHJvcGRvd24taWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyM2IwMDAyMCUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBvcGFjaXR5JTNEJTIyMSUyMiUyMHBvaW50cyUzRCUyMjclMjAxMCUyMDEyJTIwMTUlMjAxNyUyMDEwJTIyJTNFJTNDJTJGcG9seWdvbiUzRSUwQSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgY2VudGVyO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZCArIC5tZGMtc2VsZWN0LWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtc2VsZWN0LS1yZXF1aXJlZCAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiKlwiO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQgLm1kYy1zZWxlY3RfX2Ryb3Bkb3duLWljb24ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMHB4JTIyJTIwaGVpZ2h0JTNEJTIyNXB4JTIyJTIwdmlld0JveCUzRCUyMjclMjAxMCUyMDEwJTIwNSUyMiUyMHZlcnNpb24lM0QlMjIxLjElMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHhtbG5zJTNBeGxpbmslM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBpZCUzRCUyMlNoYXBlJTIyJTIwc3Ryb2tlJTNEJTIybm9uZSUyMiUyMGZpbGwlM0QlMjIlMjMwMDAlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwb3BhY2l0eSUzRCUyMjAuMzclMjIlMjBwb2ludHMlM0QlMjI3JTIwMTAlMjAxMiUyMDE1JTIwMTclMjAxMCUyMiUzRSUzQyUyRnBvbHlnb24lM0UlMEElM0MlMkZzdmclM0VcIikgbm8tcmVwZWF0IGNlbnRlcjtcbn1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkIC5tZGMtbGluZS1yaXBwbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQgLm1kYy1zZWxlY3RfX2ljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTtcbn1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQubWRjLXNlbGVjdC0tb3V0bGluZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbi5tZGMtc2VsZWN0LS1kaXNhYmxlZC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1kaXNhYmxlZC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTYpO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtc2VsZWN0X19pY29uLCAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMzJweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLCAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0LFxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ0JSkgdHJhbnNsYXRlWCgtMzJweCkgc2NhbGUoMSk7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDQlKSB0cmFuc2xhdGVYKDMycHgpIHNjYWxlKDEpO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHRyYW5zbGF0ZVgoLTMycHgpIHNjYWxlKDAuNzUpO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKDMycHgpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS1zZWxlY3Qtb3V0bGluZWQtbGVhZGluZy1pY29uIDI1MG1zIDE7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlLCAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWRbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtc2VsZWN0LW91dGxpbmVkLWxlYWRpbmctaWNvbi1ydGwgMjUwbXMgMTtcbn1cblxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0LWl0ZW1fX3RleHQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdC1pdGVtX190ZXh0LCAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QtaXRlbV9fdGV4dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xufVxuXG4ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkIHtcbiAgY29sb3I6ICMwMDA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zdXJmYWNlLCAjMDAwKTtcbn1cblxuLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0IC5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDo6YmVmb3JlLCAubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0IC5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDo6YmVmb3JlLCAubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjphZnRlciB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zdXJmYWNlLCAjMDAwKTtcbiAgfVxufVxuXG4ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0O1xufVxuXG4ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cblxuLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0IC5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtc2VsZWN0LW91dGxpbmVkLWxlYWRpbmctaWNvbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAzMnB4KSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAzMnB4KSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtc2VsZWN0LW91dGxpbmVkLWxlYWRpbmctaWNvbi1ydGwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIC0zMnB4KSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIC0zMnB4KSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDMzMzNlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTZweDtcbiAgY29udGVudDogXCJcIjtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tcGVyc2lzdGVudCB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpbGwtY2hhbmdlOiBpbml0aWFsO1xufVxuXG4ubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIge1xuICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDMzMzNlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlcjo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIsIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlcltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIsIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlcltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbixcbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXRleHQtZmllbGRfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLXRleHQtZmllbGQubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLXRleHQtZmllbGQubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcywgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIDc1bXMgZm9yd2FyZHM7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtdGV4dC1maWVsZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIHdpZHRoOiAyMDAlO1xuICBoZWlnaHQ6IDIwMCU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjNjIwMGVlO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNhcmV0LWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQgLm1kYy1saW5lLXJpcHBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICM2MjAwZWUpO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIsXG4ubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xufVxuXG4ubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbiAgdG9wOiAxOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDRweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDRweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiA0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG4gIHRvcDogMTdweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDRweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMzZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMzZweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDQwcHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogNDBweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMDkzN2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweCAxNnB4IDZweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDY3bXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgb3BhY2l0eTogMDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCkgIWltcG9ydGFudDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGggLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIsXG4ubWRjLXRleHQtZmllbGQtLW5vLWxhYmVsIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVyLFxuLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNDBtcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTEwbXM7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0OmludmFsaWQge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICB6LWluZGV4OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tbm8tbGFiZWw6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwgKyAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQge1xuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmdbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLCAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDQlKSBzY2FsZSgxKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMTJweCAxNnB4IDE0cHg7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICB6LWluZGV4OiAyO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci13aWR0aDogMnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIHtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTM0JSkgc2NhbGUoMSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZS5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlIDI1MG1zIDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBwYWRkaW5nOiAxMnB4IDEycHggN3B4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdG9wOiAxNHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICB0b3A6IDEycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDhweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogNDhweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ0JSkgdHJhbnNsYXRlWCgtMzJweCkgc2NhbGUoMSk7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlW2Rpcj1cInJ0bFwiXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ0JSkgdHJhbnNsYXRlWCgzMnB4KSBzY2FsZSgxKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgwLjc1KTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKSB0cmFuc2xhdGVYKDMycHgpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbiAyNTBtcyAxO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZFtkaXI9XCJydGxcIl0gLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1ydGwgMjUwbXMgMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMzZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMzZweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzQlKSB0cmFuc2xhdGVYKC0yMXB4KSBzY2FsZSgxKTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzNCUpIHRyYW5zbGF0ZVgoMjFweCkgc2NhbGUoMSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAlKSB0cmFuc2xhdGVYKC0yMXB4KSBzY2FsZSgwLjgpO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZS5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAlKSB0cmFuc2xhdGVYKDIxcHgpIHNjYWxlKDAuOCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZS5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlIDI1MG1zIDE7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2VbZGlyPVwicnRsXCJdIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UtcnRsIDI1MG1zIDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDMycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDEycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBhdXRvO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uIH4gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBhdXRvO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24gfiAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24gfiAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogYXV0bztcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbixcbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBib3R0b206IDE2cHg7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0NHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0NHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiA0NHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiA0NHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ0cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0NHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBhdXRvO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDEycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIH4gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBhdXRvO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIH4gLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiB+IC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDEycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0NHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ0cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDRweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjgpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1kZW5zZSAyNTBtcyAxO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBwYWRkaW5nOiAxMnB4IDEycHggMDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZm9udC1zaXplOiAuODEzcmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAuODEzcmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkIH4gLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIsXG4ubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBjb250ZW50OiBcIipcIjtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjIwMGVlO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICM2MjAwZWUpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZCAyNTBtcyAxO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZywgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmdbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0NCUpIHNjYWxlKDEpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTNweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciwgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXJbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBhbGlnbi1zZWxmOiBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogOHB4IDFweCAxcHggMDtcbiAgcGFkZGluZzogMCAxNnB4IDE2cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIgKyAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIHRvcDogMTdweDtcbiAgYm90dG9tOiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIHtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xufVxuXG4ubWRjLWZvcm0tZmllbGQgPiAubWRjLXRleHQtZmllbGQgKyBsYWJlbCwgLmZvcm1fY2hlY2tib3gtZ3JvdXAgPiAubWRjLXRleHQtZmllbGQgKyBsYWJlbCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDk4LCAwLCAyMzgsIDAuODcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpyZXF1aXJlZCB+IC5tZGMtZmxvYXRpbmctbGFiZWw6OmFmdGVyLFxuLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDk4LCAwLCAyMzgsIDAuODcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0Om5vdCgubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnKSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjIwMGVlO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICM2MjAwZWUpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1saW5lLXJpcHBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWludmFsaWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZyB7XG4gIGNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNhcmV0LWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgfiAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlcixcbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpyZXF1aXJlZCB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtZmxvYXRpbmctbGFiZWw6OmFmdGVyIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uOm5vdCgubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uIH4gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlcixcbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNik7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC03MCUpIHNjYWxlKDAuOCk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC03MCUpIHNjYWxlKDAuOCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAyMXB4KSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAyMXB4KSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDApKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAwKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDApKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1kZW5zZS1ydGwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIC0yMXB4KSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIC0yMXB4KSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHRhcmVhIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbn1cblxuLyoqXHJcbiAgIFN0eWxlIENvbG9yIEZvY3VzIGRlcyBJbnB1dFxyXG4gKi9cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtZmxvYXRpbmctbGFiZWwsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLWZsb2F0aW5nLWxhYmVsOmFmdGVyLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWw6YWZ0ZXIsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLWZsb2F0aW5nLWxhYmVsLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1mbG9hdGluZy1sYWJlbDphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDIwNCwgMTAyLCAwLCAwLjg3KSAhaW1wb3J0YW50O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNDQzY2MDA7XG59XG5cbi8qKlxyXG4gICBTdHlsZSBUZXh0RmllbGRcclxuICovXG4ubWRjLXRleHQtZmllbGQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGNhcmV0LWNvbG9yOiAjMDAwO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICByZXNpemU6IHZlcnRpY2FsO1xuICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgcGFkZGluZzogMTBweCAyNXB4IDE2cHg7XG59XG5cbi8qKlxyXG4gICBTdHlsZSBTZWxlY3RcclxuICovXG4ubWRjLXNlbGVjdCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLm1kYy1zZWxlY3QgaS5tYXRlcmlhbC1pY29ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA1cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1vdXQ7XG59XG5cbi5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLWZvY3VzZWQgaS5tYXRlcmlhbC1pY29ucyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICBjb2xvcjogI0NDNjYwMDtcbn1cblxuLyoqXHJcbiAgIEZvcm0gR2xvYmFsXHJcbiAqL1xuLm1kYy10ZXh0LWZpZWxkLFxuLm1kYy1zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmZvcm0gaDMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvcm1faW5wdXQtZ3JvdXAge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmZvcm1faW5wdXQtZ3JvdXAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZm9ybV9pbnB1dC1ncm91cCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5mb3JtX2lucHV0LWdyb3VwID4gZGl2Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mb3JtX2lucHV0LWdyb3VwID4gZGl2Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5mb3JtX2lucHV0LWdyb3VwID4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvcm1faW5wdXQtZ3JvdXAgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5mb3JtX2NoZWNrYm94LWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmZvcm1fY2hlY2tib3gtZ3JvdXAgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5mb3JtX3JhZGlvLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbi5mb3JtX25vdGlmIHtcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luOiAxNXB4IDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHg7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG4uZm9ybV9ub3RpZi5mb3JtX25vdGlmX3ZhbGlkIHtcbiAgY29sb3I6ICMxNTU3MjQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XG4gIGJvcmRlci1jb2xvcjogI2MzZTZjYjtcbn1cblxuLmZvcm1fbm90aWYuZm9ybV9ub3RpZl9lcnJvciB7XG4gIGNvbG9yOiAjYWIyZTQ2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVkZGRkO1xuICBib3JkZXItY29sb3I6ICNmNWRkZGQ7XG59XG5cbi5mb3JtX25vdGlmLmZvcm1fbm90aWZfd2FybmluZyB7XG4gIGNvbG9yOiAjODU2NDA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xuICBib3JkZXItY29sb3I6ICNmZmVlYmE7XG59XG5cbi5mb3JtX25vdGlmIHVsIHtcbiAgbWFyZ2luOiA1cHggMDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4uZm9ybSAuY2hvaWNlLXNpbXBsZSB7XG4gIG1hcmdpbjogMTVweCAwO1xufVxuXG4uZm9ybSAuY2hvaWNlLXNpbXBsZSBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3JtIC5jaG9pY2Utc2ltcGxlIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBhZGRpbmc6IDEzcHggMTdweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU3M0QxQztcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICM1NzNEMUM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZvcm0gLmNob2ljZS1zaW1wbGUgbGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMTAyLCAwLCAwLjEpO1xufVxuXG4uZm9ybSAuY2hvaWNlLXNpbXBsZSBsYWJlbDpudGgtY2hpbGQoMikge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbn1cblxuLmZvcm0gLmNob2ljZS1zaW1wbGUgbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG59XG5cbi5mb3JtIC5jaG9pY2Utc2ltcGxlIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NzNEMUM7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mb3JtIC5jaG9pY2Utc2ltcGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuZm9ybSAuY2hvaWNlLXNpbXBsZSBsYWJlbCB7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdsZyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbGcudHRmPzIydDE5bVwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvbGcud29mZj8yMnQxOW1cIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvbGcuc3ZnPzIydDE5bSNsZ1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbn1cblxuLmxnLWljb24ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ2xnJyAhaW1wb3J0YW50O1xuICBzcGVhazogbmV2ZXI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4ubGctYWN0aW9ucyAubGctbmV4dCwgLmxnLWFjdGlvbnMgLmxnLXByZXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDIycHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBwYWRkaW5nOiA4cHggMTBweCA5cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHotaW5kZXg6IDEwODA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0LmRpc2FibGVkLCAubGctYWN0aW9ucyAubGctcHJldi5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0OmhvdmVyLCAubGctYWN0aW9ucyAubGctcHJldjpob3ZlciB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubGctYWN0aW9ucyAubGctbmV4dCB7XG4gIHJpZ2h0OiAyMHB4O1xufVxuXG4ubGctYWN0aW9ucyAubGctbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA5NVwiO1xufVxuXG4ubGctYWN0aW9ucyAubGctcHJldiB7XG4gIGxlZnQ6IDIwcHg7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1wcmV2OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwOTRcIjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxnLXJpZ2h0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogLTMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGxnLXJpZ2h0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogLTMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxnLXJpZ2h0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogLTMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGctbGVmdC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxuICA1MCUge1xuICAgIGxlZnQ6IDMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgbGctbGVmdC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxuICA1MCUge1xuICAgIGxlZnQ6IDMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5ALW1zLWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGctbGVmdC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxuICA1MCUge1xuICAgIGxlZnQ6IDMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4ubGctb3V0ZXIubGctcmlnaHQtZW5kIC5sZy1vYmplY3Qge1xuICAtd2Via2l0LWFuaW1hdGlvbjogbGctcmlnaHQtZW5kIDAuM3M7XG4gIC1vLWFuaW1hdGlvbjogbGctcmlnaHQtZW5kIDAuM3M7XG4gIGFuaW1hdGlvbjogbGctcmlnaHQtZW5kIDAuM3M7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxnLW91dGVyLmxnLWxlZnQtZW5kIC5sZy1vYmplY3Qge1xuICAtd2Via2l0LWFuaW1hdGlvbjogbGctbGVmdC1lbmQgMC4zcztcbiAgLW8tYW5pbWF0aW9uOiBsZy1sZWZ0LWVuZCAwLjNzO1xuICBhbmltYXRpb246IGxnLWxlZnQtZW5kIDAuM3M7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxnLXRvb2xiYXIge1xuICB6LWluZGV4OiAxMDgyO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40NSk7XG59XG5cbi5sZy10b29sYmFyIC5sZy1pY29uIHtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGhlaWdodDogNDdweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogNTBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGNvbG9yIDAuMnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbn1cblxuLmxnLXRvb2xiYXIgLmxnLWljb246aG92ZXIge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLmxnLXRvb2xiYXIgLmxnLWNsb3NlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwNzBcIjtcbn1cblxuLmxnLXRvb2xiYXIgLmxnLWRvd25sb2FkOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwZjJcIjtcbn1cblxuLmxnLXN1Yi1odG1sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogI0VFRTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogMTA4MDtcbn1cblxuLmxnLXN1Yi1odG1sIGg0IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubGctc3ViLWh0bWwgcCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luOiA1cHggMCAwO1xufVxuXG4jbGctY291bnRlciB7XG4gIGNvbG9yOiAjOTk5O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmxnLXRvb2xiYXIsIC5sZy1wcmV2LCAubGctbmV4dCB7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgY29sb3IgMC4ycyBsaW5lYXI7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgY29sb3IgMC4ycyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIGNvbG9yIDAuMnMgbGluZWFyO1xufVxuXG4ubGctaGlkZS1pdGVtcyAubGctcHJldiB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xufVxuXG4ubGctaGlkZS1pdGVtcyAubGctbmV4dCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbn1cblxuLmxnLWhpZGUtaXRlbXMgLmxnLXRvb2xiYXIge1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbn1cblxuYm9keTpub3QoLmxnLWZyb20taGFzaCkgLmxnLW91dGVyLmxnLXN0YXJ0LXpvb20gLmxnLW9iamVjdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNSwgMC41LCAwLjUpO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMC41LCAwLjUsIDAuNSk7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgIWltcG9ydGFudDtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG5ib2R5Om5vdCgubGctZnJvbS1oYXNoKSAubGctb3V0ZXIubGctc3RhcnQtem9vbSAubGctaXRlbS5sZy1jb21wbGV0ZSAubGctb2JqZWN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1vdXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwRDBBMEE7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA4MDtcbiAgbWF4LWhlaWdodDogMzUwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLW91dGVyLmxnLWdyYWIgLmxnLXRodW1iLWl0ZW0ge1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtbW96LWdyYWI7XG4gIGN1cnNvcjogLW8tZ3JhYjtcbiAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLW91dGVyLmxnLWdyYWJiaW5nIC5sZy10aHVtYi1pdGVtIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtby1ncmFiYmluZztcbiAgY3Vyc29yOiAtbXMtZ3JhYmJpbmc7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZHJhZ2dpbmcgLmxnLXRodW1iIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIubGctdGh1bWItb3BlbiAubGctdGh1bWItb3V0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTtcbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYiB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAtNXB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGRjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuICAgIC1vLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlO1xuICB9XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItaXRlbS5hY3RpdmUsIC5sZy1vdXRlciAubGctdGh1bWItaXRlbTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI2E5MDcwNztcbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ubGctb3V0ZXIubGctaGFzLXRodW1iIC5sZy1pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xufVxuXG4ubGctb3V0ZXIubGctY2FuLXRvZ2dsZSAubGctaXRlbSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ubGctb3V0ZXIubGctcHVsbC1jYXB0aW9uLXVwIC5sZy1zdWItaHRtbCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm90dG9tIDAuMjVzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGJvdHRvbSAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4yNXMgZWFzZTtcbn1cblxuLmxnLW91dGVyLmxnLXB1bGwtY2FwdGlvbi11cC5sZy10aHVtYi1vcGVuIC5sZy1zdWItaHRtbCB7XG4gIGJvdHRvbTogMTAwcHg7XG59XG5cbi5sZy1vdXRlciAubGctdG9nZ2xlLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBEMEEwQTtcbiAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgaGVpZ2h0OiAzOXB4O1xuICBsaW5lLWhlaWdodDogMjdweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiAtMzlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5sZy1vdXRlciAubGctdG9nZ2xlLXRodW1iOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUxZmZcIjtcbn1cblxuLmxnLW91dGVyIC5sZy10b2dnbGUtdGh1bWI6aG92ZXIge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLmxnLW91dGVyIC5sZy12aWRlby1jb250IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDExNDBweDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgNXB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvIC5sZy1vYmplY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyIC5sZy12aWRlbyAubGctdmlkZW8tcGxheSB7XG4gIHdpZHRoOiA4NHB4O1xuICBoZWlnaHQ6IDU5cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MnB4O1xuICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgei1pbmRleDogMTA4MDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy12aW1lbyAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy92aW1lby1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmltZW86aG92ZXIgLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdmltZW8tcGxheS5wbmdcIikgbm8tcmVwZWF0IHNjcm9sbCAwIC01OHB4IHRyYW5zcGFyZW50O1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy1odG1sNSAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy92aWRlby1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMDtcbiAgaGVpZ2h0OiA2NHB4O1xuICBtYXJnaW4tbGVmdDogLTMycHg7XG4gIG1hcmdpbi10b3A6IC0zMnB4O1xuICB3aWR0aDogNjRweDtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy1odG1sNTpob3ZlciAubGctdmlkZW8tcGxheSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLXlvdXR1YmUgLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcveW91dHViZS1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMteW91dHViZTpob3ZlciAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy95b3V0dWJlLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAtNjBweCB0cmFuc3BhcmVudDtcbn1cblxuLmxnLW91dGVyIC5sZy12aWRlby1vYmplY3Qge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLXZpZGVvIC5sZy12aWRlby1vYmplY3Qge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5sZy1vdXRlciAubGctaGFzLXZpZGVvLmxnLXZpZGVvLXBsYXlpbmcgLmxnLW9iamVjdCwgLmxnLW91dGVyIC5sZy1oYXMtdmlkZW8ubGctdmlkZW8tcGxheWluZyAubGctdmlkZW8tcGxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLXZpZGVvLmxnLXZpZGVvLXBsYXlpbmcgLmxnLXZpZGVvLW9iamVjdCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5sZy1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBoZWlnaHQ6IDVweDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDgzO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4wOHMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDhzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4wOHMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA4cyBlYXNlIDBzO1xufVxuXG4ubGctcHJvZ3Jlc3MtYmFyIC5sZy1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOTA3MDc7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogMDtcbn1cblxuLmxnLXByb2dyZXNzLWJhci5sZy1zdGFydCAubGctcHJvZ3Jlc3Mge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmxnLXNob3ctYXV0b3BsYXkgLmxnLXByb2dyZXNzLWJhciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1hdXRvcGxheS1idXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTAxZFwiO1xufVxuXG4ubGctc2hvdy1hdXRvcGxheSAubGctYXV0b3BsYXktYnV0dG9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwMWFcIjtcbn1cblxuLmxnLW91dGVyLmxnLWNzczMubGctem9vbS1kcmFnZ2luZyAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1nLXdyYXAsIC5sZy1vdXRlci5sZy1jc3MzLmxnLXpvb20tZHJhZ2dpbmcgLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltYWdlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG59XG5cbi5sZy1vdXRlci5sZy11c2UtdHJhbnNpdGlvbi1mb3Item9vbSAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1nLXdyYXAge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbn1cblxuLmxnLW91dGVyLmxnLXVzZS1sZWZ0LWZvci16b29tIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWctd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGxlZnQgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIHRvcCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW8tdHJhbnNpdGlvbjogbGVmdCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1nLXdyYXAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGctb3V0ZXIgLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltYWdlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjE1cyAhaW1wb3J0YW50O1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMTVzICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjE1cyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4jbGctem9vbS1pbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMzExXCI7XG59XG5cbiNsZy1hY3R1YWwtc2l6ZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuI2xnLWFjdHVhbC1zaXplOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwMzNcIjtcbn1cblxuI2xnLXpvb20tb3V0IHtcbiAgb3BhY2l0eTogMC41O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuI2xnLXpvb20tb3V0OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUzMTJcIjtcbn1cblxuLmxnLXpvb21lZCAjbGctem9vbS1vdXQge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci1vdXRlciB7XG4gIGJvdHRvbTogNjBweDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDgwO1xuICBoZWlnaHQ6IDEwcHg7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItb3V0ZXIubGctcGFnZXItaG92ZXIgLmxnLXBhZ2VyLWNvbnQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci1jb250IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luOiAwIDVweDtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci1jb250OmhvdmVyIC5sZy1wYWdlci10aHVtYi1jb250IHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLWNvbnQubGctcGFnZXItYWN0aXZlIC5sZy1wYWdlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCB3aGl0ZSBpbnNldDtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci10aHVtYi1jb250IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICNGRkY7XG4gIGJvdHRvbTogMTAwJTtcbiAgaGVpZ2h0OiA4M3B4O1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHMsIC13ZWJraXQtdHJhbnNmb3JtIDAuMTVzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCAtbW96LXRyYW5zZm9ybSAwLjE1cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHMsIC1vLXRyYW5zZm9ybSAwLjE1cyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjE1cyBlYXNlIDBzO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLXRodW1iLWNvbnQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgMCA4cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMnB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2UgMHM7XG4gIHdpZHRoOiAxMnB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyOmhvdmVyLCAubGctb3V0ZXIgLmxnLXBhZ2VyOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHdoaXRlIGluc2V0O1xufVxuXG4ubGctb3V0ZXIgLmxnLWNhcmV0IHtcbiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMTBweCBkYXNoZWQ7XG4gIGJvdHRvbTogLTEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAwO1xufVxuXG4ubGctZnVsbHNjcmVlbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMjBjXCI7XG59XG5cbi5sZy1mdWxsc2NyZWVuLW9uIC5sZy1mdWxsc2NyZWVuOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUyMGRcIjtcbn1cblxuLmxnLW91dGVyICNsZy1kcm9wZG93bi1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYm90dG9tOiAwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTA4MTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgbGluZWFyIDAuMThzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbiAgLW8tdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC4xOHMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjE4cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG59XG5cbi5sZy1vdXRlci5sZy1kcm9wZG93bi1hY3RpdmUgLmxnLWRyb3Bkb3duLCAubGctb3V0ZXIubGctZHJvcGRvd24tYWN0aXZlICNsZy1kcm9wZG93bi1vdmVybGF5IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDBweCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDBweCwgMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDBweCwgMCk7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5sZy1vdXRlci5sZy1kcm9wZG93bi1hY3RpdmUgI2xnLXNoYXJlIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdG9wOiA1MHB4O1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4xOHMgbGluZWFyIDBzLCB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjVzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjE4cyBsaW5lYXIgMHMsIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuNXMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4xOHMgbGluZWFyIDBzLCB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjVzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMThzIGxpbmVhciAwcywgdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC41cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd246YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjtcbiAgcmlnaHQ6IDE2cHg7XG4gIHRvcDogLTE2cHg7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24gPiBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duID4gbGk6aG92ZXIgYSwgLmxnLW91dGVyIC5sZy1kcm9wZG93biA+IGxpOmhvdmVyIC5sZy1pY29uIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24gYSB7XG4gIGNvbG9yOiAjMzMzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgcGFkZGluZzogNHB4IDEycHg7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLFwiSGVsdmV0aWNhIE5ldWVcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDcpO1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duIC5sZy1kcm9wZG93bi10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogLTNweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biAubGctaWNvbiB7XG4gIGNvbG9yOiAjMzMzO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBwYWRkaW5nOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlODBkXCI7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtZmFjZWJvb2sgLmxnLWljb24ge1xuICBjb2xvcjogIzNiNTk5ODtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS1mYWNlYm9vayAubGctaWNvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtdHdpdHRlciAubGctaWNvbiB7XG4gIGNvbG9yOiAjMDBhY2VkO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLXR3aXR0ZXIgLmxnLWljb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLWdvb2dsZXBsdXMgLmxnLWljb24ge1xuICBjb2xvcjogI2RkNGIzOTtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS1nb29nbGVwbHVzIC5sZy1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS1waW50ZXJlc3QgLmxnLWljb24ge1xuICBjb2xvcjogI2NiMjAyNztcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS1waW50ZXJlc3QgLmxnLWljb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuXG4ubGctb3V0ZXIgLmxnLWltZy1yb3RhdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4zMiwgMCwgMC42NywgMCkgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4zMiwgMCwgMC42NywgMCkgMHM7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjMyLCAwLCAwLjY3LCAwKSAwcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzIsIDAsIDAuNjcsIDApIDBzO1xufVxuXG4ubGctcm90YXRlLWxlZnQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuXG4ubGctcm90YXRlLXJpZ2h0OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cblxuLmxnLWljb24ubGctZmxpcC1ob3IsIC5sZy1pY29uLmxnLWZsaXAtdmVyIHtcbiAgZm9udC1zaXplOiAyNnB4O1xufVxuXG4ubGctZmxpcC1ob3I6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuXG4ubGctZmxpcC12ZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuXG4ubGctZ3JvdXAge1xuICAqem9vbTogMTtcbn1cblxuLmxnLWdyb3VwOmJlZm9yZSwgLmxnLWdyb3VwOmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4ubGctZ3JvdXA6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmxnLW91dGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIG9wYWNpdHk6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbn1cblxuLmxnLW91dGVyICoge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmxnLW91dGVyLmxnLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctb3V0ZXIubGctY3NzMyAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctb3V0ZXIubGctY3NzMyAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctb3V0ZXIubGctY3NzMyAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIubGctY3NzMy5sZy1kcmFnZ2luZyAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctb3V0ZXIubGctY3NzMy5sZy1kcmFnZ2luZyAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctb3V0ZXIubGctY3NzMy5sZy1kcmFnZ2luZyAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctb3V0ZXIubGctZ3JhYiBpbWcubGctb2JqZWN0IHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IC1vLWdyYWI7XG4gIGN1cnNvcjogLW1zLWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuLmxnLW91dGVyLmxnLWdyYWJiaW5nIGltZy5sZy1vYmplY3Qge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICBjdXJzb3I6IC1vLWdyYWJiaW5nO1xuICBjdXJzb3I6IC1tcy1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmxnLW91dGVyIC5sZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuXG4ubGctb3V0ZXIgLmxnLWlubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9sb2FkaW5nLmdpZlwiKSBuby1yZXBlYXQgc2Nyb2xsIGNlbnRlciBjZW50ZXIgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyLmxnLWNzczMgLmxnLXByZXYtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1jdXJyZW50LCAubGctb3V0ZXIubGctY3NzMyAubGctbmV4dC1zbGlkZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIubGctY3NzIC5sZy1jdXJyZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbSwgLmxnLW91dGVyIC5sZy1pbWctd3JhcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbTpiZWZvcmUsIC5sZy1vdXRlciAubGctaW1nLXdyYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDUwJTtcbiAgd2lkdGg6IDFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLWltZy13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAwIDVweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG4ubGctb3V0ZXIgLmxnLWl0ZW0ubGctY29tcGxldGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ubGctb3V0ZXIgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIHotaW5kZXg6IDEwNjA7XG59XG5cbi5sZy1vdXRlciAubGctaW1hZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlci5sZy1zaG93LWFmdGVyLWxvYWQgLmxnLWl0ZW0gLmxnLW9iamVjdCwgLmxnLW91dGVyLmxnLXNob3ctYWZ0ZXItbG9hZCAubGctaXRlbSAubGctdmlkZW8tcGxheSB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbn1cblxuLmxnLW91dGVyLmxnLXNob3ctYWZ0ZXItbG9hZCAubGctaXRlbS5sZy1jb21wbGV0ZSAubGctb2JqZWN0LCAubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtLmxnLWNvbXBsZXRlIC5sZy12aWRlby1wbGF5IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLW91dGVyIC5sZy1lbXB0eS1odG1sIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxnLW91dGVyLmxnLWhpZGUtZG93bmxvYWQgI2xnLWRvd25sb2FkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxnLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbn1cblxuLmxnLWJhY2tkcm9wLmluIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLWNzczMubGctbm8tdHJhbnMgLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLW5vLXRyYW5zIC5sZy1uZXh0LXNsaWRlLCAubGctY3NzMy5sZy1uby10cmFucyAubGctY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAwcyBlYXNlIDBzICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZSAwcyBlYXNlIDBzICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IG5vbmUgMHMgZWFzZSAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lIDBzIGVhc2UgMHMgIWltcG9ydGFudDtcbn1cblxuLmxnLWNzczMubGctdXNlLWNzczMgLmxnLWl0ZW0ge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxnLWNzczMubGctdXNlLWxlZnQgLmxnLWl0ZW0ge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxnLWNzczMubGctZmFkZSAubGctaXRlbSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5sZy1jc3MzLmxnLWZhZGUgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1jc3MzLmxnLWZhZGUgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSwgLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctY3NzMy5sZy1mYWRlIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWNzczMgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1uZXh0LXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLXByZXYtc2xpZGUge1xuICBsZWZ0OiAtMTAwJTtcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctbmV4dC1zbGlkZSB7XG4gIGxlZnQ6IDEwMCU7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogbGVmdCAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBsZWZ0IDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IGxlZnQgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbn1cblxuLm1kYy1jYXJkIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zdXJmYWNlLCAjZmZmKTtcbiAgYm94LXNoYWRvdzogMHB4IDJweCAxcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxcHggMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1kYy1jYXJkLS1vdXRsaW5lZCB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI2UwZTBlMDtcbn1cblxuLm1kYy1jYXJkX19tZWRpYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ubWRjLWNhcmRfX21lZGlhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1jYXJkX19tZWRpYTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubWRjLWNhcmRfX21lZGlhOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbn1cblxuLm1kYy1jYXJkX19tZWRpYS0tc3F1YXJlOjpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAxMDAlO1xufVxuXG4ubWRjLWNhcmRfX21lZGlhLS0xNi05OjpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiA1Ni4yNSU7XG59XG5cbi5tZGMtY2FyZF9fbWVkaWEtY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi5tZGMtY2FyZF9fYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi1oZWlnaHQ6IDUycHg7XG4gIHBhZGRpbmc6IDhweDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyxcbi5tZGMtY2FyZF9fYWN0aW9uLWljb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24taWNvbnMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBmbGV4LWdyb3c6IDE7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5tZGMtY2FyZF9fYWN0aW9uLWJ1dHRvbnMgKyAubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtY2FyZF9fYWN0aW9uLWJ1dHRvbnMgKyAubWRjLWNhcmRfX2FjdGlvbi1pY29ucywgLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyArIC5tZGMtY2FyZF9fYWN0aW9uLWljb25zW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgcGFkZGluZzogMCA4cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbiwgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uOmxhc3QtY2hpbGQge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uOmxhc3QtY2hpbGQsIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b246bGFzdC1jaGlsZFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b24ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbiwgLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24tLWljb24ge1xuICBtYXJnaW46IC02cHggMDtcbiAgcGFkZGluZzogMTJweDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24tLWljb246bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmJlZm9yZSwgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcywgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIDc1bXMgZm9yd2FyZHM7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmJlZm9yZSwgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246OmJlZm9yZSwgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0O1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXowIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejEge1xuICBib3gtc2hhZG93OiAwcHggMnB4IDFweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDFweCAxcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejIge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDJweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejMge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDNweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDNweCA0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggOHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejQsIC5wcm9kdWN0X2ltYWdlcyAubGlzdC1waG90byBsaTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggNHB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejUge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDVweCA4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggMTRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXo2IHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA1cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA2cHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCAxOHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejcge1xuICBib3gtc2hhZG93OiAwcHggNHB4IDVweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDdweCAxMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMnB4IDE2cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16OCB7XG4gIGJveC1zaGFkb3c6IDBweCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggOHB4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAzcHggMTRweCAycHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXo5IHtcbiAgYm94LXNoYWRvdzogMHB4IDVweCA2cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA5cHggMTJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCAxNnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejEwIHtcbiAgYm94LXNoYWRvdzogMHB4IDZweCA2cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxMHB4IDE0cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA0cHggMThweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoxMSB7XG4gIGJveC1zaGFkb3c6IDBweCA2cHggN3B4IC00cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTFweCAxNXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNHB4IDIwcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTIge1xuICBib3gtc2hhZG93OiAwcHggN3B4IDhweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDEycHggMTdweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDVweCAyMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejEzIHtcbiAgYm94LXNoYWRvdzogMHB4IDdweCA4cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxM3B4IDE5cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA1cHggMjRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoxNCB7XG4gIGJveC1zaGFkb3c6IDBweCA3cHggOXB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTRweCAyMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNXB4IDI2cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTUge1xuICBib3gtc2hhZG93OiAwcHggOHB4IDlweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDE1cHggMjJweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDZweCAyOHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejE2IHtcbiAgYm94LXNoYWRvdzogMHB4IDhweCAxMHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTZweCAyNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNnB4IDMwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTcge1xuICBib3gtc2hhZG93OiAwcHggOHB4IDExcHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxN3B4IDI2cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA2cHggMzJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoxOCB7XG4gIGJveC1zaGFkb3c6IDBweCA5cHggMTFweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDE4cHggMjhweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDdweCAzNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejE5IHtcbiAgYm94LXNoYWRvdzogMHB4IDlweCAxMnB4IC02cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTlweCAyOXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggN3B4IDM2cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MjAge1xuICBib3gtc2hhZG93OiAwcHggMTBweCAxM3B4IC02cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMjBweCAzMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggOHB4IDM4cHggN3B4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MjEge1xuICBib3gtc2hhZG93OiAwcHggMTBweCAxM3B4IC02cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMjFweCAzM3B4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggOHB4IDQwcHggN3B4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MjIge1xuICBib3gtc2hhZG93OiAwcHggMTBweCAxNHB4IC02cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMjJweCAzNXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggOHB4IDQycHggN3B4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MjMge1xuICBib3gtc2hhZG93OiAwcHggMTFweCAxNHB4IC03cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMjNweCAzNnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggOXB4IDQ0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MjQge1xuICBib3gtc2hhZG93OiAwcHggMTFweCAxNXB4IC03cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMjRweCAzOHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggOXB4IDQ2cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLXRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIHdpbGwtY2hhbmdlOiBib3gtc2hhZG93O1xufVxuXG4ubWRjLWljb24tYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAxMnB4O1xufVxuXG4ubWRjLWljb24tYnV0dG9uIHN2Zyxcbi5tZGMtaWNvbi1idXR0b24gaW1nIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjpkaXNhYmxlZCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtdGV4dC1kaXNhYmxlZC1vbi1saWdodCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtaWNvbi1idXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tZGMtaWNvbi1idXR0b25fX2ljb24ubWRjLWljb24tYnV0dG9uX19pY29uLS1vbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZGMtaWNvbi1idXR0b24tLW9uIC5tZGMtaWNvbi1idXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLS1vbiAubWRjLWljb24tYnV0dG9uX19pY29uLm1kYy1pY29uLWJ1dHRvbl9faWNvbi0tb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWljb24tYnV0dG9uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAxNW1zIGxpbmVhcjtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZDo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWljb24tYnV0dG9uOjphZnRlciB7XG4gIHRvcDogY2FsYyg1MCUgLSA1MCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCBjYWxjKDUwJSAtIDUwJSkpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgY2FsYyg1MCUgLSA1MCUpKTtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtaWNvbi1idXR0b246OmJlZm9yZSwgLm1kYy1pY29uLWJ1dHRvbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0O1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLWljb24tYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtaWNvbi1idXR0b246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1mYWIge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDZweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDE4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogNTZweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyODBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLCBvcGFjaXR5IDE1bXMgbGluZWFyIDMwbXMsIHRyYW5zZm9ybSAyNzBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTg3ODY7XG4gIGNvbG9yOiAjZmZmO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tc2Vjb25kYXJ5LCAjZmZmKTtcbn1cblxuLm1kYy1mYWI6bm90KC5tZGMtZmFiLS1leHRlbmRlZCkge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5tZGMtZmFiOm5vdCgubWRjLWZhYi0tZXh0ZW5kZWQpIC5tZGMtZmFiX19yaXBwbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5tZGMtZmFiOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4ubWRjLWZhYjpob3ZlciwgLm1kYy1mYWI6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwcHggNXB4IDVweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDhweCAxMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZmFiOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDBweCA3cHggOHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTJweCAxN3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNXB4IDIycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZmFiOmFjdGl2ZSwgLm1kYy1mYWI6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubWRjLWZhYjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1kYy1mYWIgPiBzdmcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWZhYiB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xuICB9XG59XG5cbi5tZGMtZmFiIC5tZGMtZmFiX19pY29uIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuXG4ubWRjLWZhYi0tbWluaSB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5tZGMtZmFiLS1leHRlbmRlZCB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDg5MjllbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbn1cblxuLm1kYy1mYWItLWV4dGVuZGVkIC5tZGMtZmFiX19yaXBwbGUge1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xufVxuXG4ubWRjLWZhYi0tZXh0ZW5kZWQgLm1kYy1mYWJfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWZhYi0tZXh0ZW5kZWQgLm1kYy1mYWJfX2ljb24sIC5tZGMtZmFiLS1leHRlbmRlZCAubWRjLWZhYl9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogLThweDtcbn1cblxuLm1kYy1mYWItLWV4dGVuZGVkIC5tZGMtZmFiX19sYWJlbCArIC5tZGMtZmFiX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IC04cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mYWItLWV4dGVuZGVkIC5tZGMtZmFiX19sYWJlbCArIC5tZGMtZmFiX19pY29uLCAubWRjLWZhYi0tZXh0ZW5kZWQgLm1kYy1mYWJfX2xhYmVsICsgLm1kYy1mYWJfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogLThweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG59XG5cbi5tZGMtZmFiX19sYWJlbCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tZGMtZmFiX19pY29uIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE4MG1zIDkwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cblxuLm1kYy1mYWIgLm1kYy1mYWJfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5tZGMtZmFiLS1leGl0ZWQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyIDE1MG1zLCB0cmFuc2Zvcm0gMTgwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpO1xufVxuXG4ubWRjLWZhYi0tZXhpdGVkIC5tZGMtZmFiX19pY29uIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEzNW1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTtcbn1cblxuLm1kYy1mYWIge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tZGMtZmFiIC5tZGMtZmFiX19yaXBwbGU6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcywgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIDc1bXMgZm9yd2FyZHM7XG59XG5cbi5tZGMtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtZmFiIC5tZGMtZmFiX19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtZmFiIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIHdpZHRoOiAyMDAlO1xuICBoZWlnaHQ6IDIwMCU7XG59XG5cbi5tZGMtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbkBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlLFxuICAubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zZWNvbmRhcnksICNmZmYpO1xuICB9XG59XG5cbi5tZGMtZmFiOmhvdmVyIC5tZGMtZmFiX19yaXBwbGU6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDg7XG59XG5cbi5tZGMtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZCAubWRjLWZhYl9fcmlwcGxlOjpiZWZvcmUsIC5tZGMtZmFiOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXMgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4yNDtcbn1cblxuLm1kYy1mYWI6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKSAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWZhYjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmFjdGl2ZSAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMjQ7XG59XG5cbi5tZGMtZmFiLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4yNDtcbn1cblxuLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyoqXG4gICBCb3V0aXF1ZVxuICovXG4uY29udGFpbmVyX2NlbnRlciwgLmZpbGVfYXJpYW5lIHtcbiAgbWF4LXdpZHRoOiA5NTBweDtcbn1cblxuLyoqXG4gICBSw6lwYXJ0aXRpb24gZGUgbGEgYm91dGlxdWVcbiovXG4uc2hvcF9uYXYge1xuICBmbGV4OiAyO1xufVxuXG4uc2hvcF9jb250ZW50IHtcbiAgZmxleDogNztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5zaG9wIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5zaG9wX25hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAgIEFzaWRlIGRlIGxhIGJvdXRpcXVlXG4qL1xuLnNob3BfbmF2IGgyIHtcbiAgcGFkZGluZzogNXB4IDBweCA1cHggMDtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgZm9udC1zaXplOiAxLjRlbTtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbi5zaG9wX25hdiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLnNob3BfbmF2IHVsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICB9XG59XG5cbi5zaG9wX25hdiAuY2F0ZWdvcnkge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZGlzcGxheTogY29udGVudHM7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5zaG9wX25hdiAuY2F0ZWdvcnkgYSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgcGFkZGluZzogMTBweDtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgNTBweCA1MHB4IDA7XG59XG5cbi5zaG9wX25hdiAuY2F0ZWdvcnkuYWN0aXZlIGEge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQzY2MDA7XG59XG5cbi5zaG9wX25hdiAuY2F0ZWdvcnk6aG92ZXI6bm90KC5hY3RpdmUpIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMTAyLCAwLCAwLjE1KTtcbn1cblxuLyogXG4gICBGaWxlIGQnYXJpbmVcbiAgIHByw6lzZW50IHN1ciBsZXMgcGFnZXMgL3tjYXRlZ29yaWV9IGV0IC97Y2F0ZWdvcmllfS97cHJvZHVjdH0gXG4qL1xuLmZpbGVfYXJpYW5lIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAxNXB4IGF1dG87XG4gIHBhZGRpbmc6IDVweCAwO1xuICBjb2xvcjogIzU3M0QxQztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcbn1cblxuLmZpbGVfYXJpYW5lIGEsXG4uZmlsZV9hcmlhbmUgc3BhbiB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWFyZ2luOiA1cHggMDtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLmZpbGVfYXJpYW5lIGEge1xuICBjb2xvcjogZ3JheTtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggZ3JheTtcbn1cblxuLmZpbGVfYXJpYW5lIHNwYW4ge1xuICBjb2xvcjogI0NDNjYwMDtcbn1cblxuLyoqXG4gICBDb250ZW51IGRlIGxhIHBhZ2VcbiAgICjDoCBjb3TDqSBkZSBsJ2FzaWRlKVxuKi9cbi5zaG9wX2NvbnRlbnQge1xuICBtYXJnaW46IDAgMTBweCAxMHB4IDIwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2hvcF9jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gIH1cbn1cblxuLyoqXG4gICBGQUIgUGFuaWVyXG4gICAodmlzaWJsZSBxdSdlbiBtb2RlIG1vYmlsZSlcbiovXG4uZm9hbHRpbmctYmFza2V0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDM1cHg7XG4gIHJpZ2h0OiAzNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0M2NjAwO1xuICB6LWluZGV4OiAxMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mb2FsdGluZy1iYXNrZXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB9XG59XG5cbi5mb2FsdGluZy1iYXNrZXQgLmNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDYzMDMwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JywgJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG59XG5cbi5mb2FsdGluZy1iYXNrZXRfX2VtcHR5IC5jb3VudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb2FsdGluZy1iYXNrZXRfX3VwIC5jb3VudCB7XG4gIGFuaW1hdGlvbjogY291bnQtem9vbSAzcyBmb3J3YXJkcyAxO1xufVxuXG4vKiBQYWdlIGQndW4gcHJkdWl0ICovXG4ucHJvZHVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAzODBweDtcbn1cblxuLnByb2R1Y3RfaW1hZ2VzLCAucHJvZHVjdF9kZXRhaWxzIHtcbiAgZmxleDogMTtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4ucHJvZHVjdF9pbWFnZXMgLmNvdmVyIHtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ucHJvZHVjdF9pbWFnZXMgLmNvdmVyIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnByb2R1Y3RfaW1hZ2VzIC5saXN0LXBob3RvIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDEwcHggMCAwIDA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4ucHJvZHVjdF9pbWFnZXMgLmxpc3QtcGhvdG8gbGkge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW46IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IGJveC1zaGFkb3cgMC4zcztcbn1cblxuLnByb2R1Y3RfZGV0YWlscyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgaDEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMi4yZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIC5wcmljZV9zdGFydCxcbi5wcm9kdWN0X2RldGFpbHMgaDMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIC5wcmljZV9zdGFydCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnByb2R1Y3RfZGV0YWlscyAucHJpY2Vfc3RhcnQgKyBoMyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgaDMge1xuICBmb250LXNpemU6IDEuNmVtO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIC5wcm9kdWN0X3N0YXR1cyB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDRweCA3cHg7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLnByb2R1Y3RfZGV0YWlscyAucHJvZHVjdF9zdGF0dXNfMCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIC5wcm9kdWN0X3N0YXR1c18xLCAucHJvZHVjdF9kZXRhaWxzIC5wcm9kdWN0X3N0YXR1c18yLCAucHJvZHVjdF9kZXRhaWxzIC5wcm9kdWN0X3N0YXR1c18zIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgLnByb2R1Y3Rfc3RhdHVzXzQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbn1cblxuLnByb2R1Y3RfZGV0YWlscyBwIHtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wcm9kdWN0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5wcm9kdWN0X2ltYWdlcyB7XG4gICAgbWF4LWhlaWdodDogaW5pdGlhbDtcbiAgfVxuICAucHJvZHVjdF9pbWFnZXMgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnByb2R1Y3RfZGV0YWlscyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vKiBEw6l0YWlscyBkdSBwcm9kdWl0IC0gT3B0aW9ucyAqL1xuLnByb2R1Y3QtZGV0YWlscy5wcm9kdWN0LWRldGFpbHNfX3NpbXBsZSAucHJvZHVjdC1kZXRhaWxzX29wdGlvbiB7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlIC5wcm9kdWN0LWRldGFpbHNfdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjNzc3O1xuICBmb250LXNpemU6IDEuMmVtO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLnByb2R1Y3QtZGV0YWlscy5wcm9kdWN0LWRldGFpbHNfX3NpbXBsZSAucHJvZHVjdC1kZXRhaWxzX2Nob2ljZXMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnByb2R1Y3QtZGV0YWlscy5wcm9kdWN0LWRldGFpbHNfX3NpbXBsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlIC5wcm9kdWN0LWRldGFpbHNfb3B0aW9uIHtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgfVxufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtYnVja2xlX2J1Y2tsZSB7XG4gIHdpZHRoOiA4MHB4O1xuICBoZWlnaHQ6IDgwcHg7XG4gIG1hcmdpbjogMTBweCA1cHggMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtYnVja2xlX2ltZyB7XG4gIGJvcmRlcjogc29saWQgMXB4IGxpZ2h0Z3JheTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWJ1Y2tsZV9pbWcgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yIHtcbiAgLyogc3VyY2hhcmdlIGRlcyB0b29sdGlwcyAqL1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfY29sb3Ige1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW46IDEwcHggNXB4IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZyB7XG4gIGJvcmRlcjogc29saWQgMXB4IGxpZ2h0Z3JheTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjQ0M2NjAwO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcubm9pciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcuYmxhbmMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nLm1hcnJvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDE5MDE7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcuaGF2YW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5NTMyMDtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZy5yb3VnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZDAzMDM7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcuamF1bmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjNzAwO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nLmJsZXUtdHVycXVvaXNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDBmODtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZy5udWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nLm51bGw6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgd2lkdGg6IDEyNHB4O1xuICBoZWlnaHQ6IDJweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigtMzFkZWcpO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfY29sb3IgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIC5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcge1xuICBib3JkZXItY29sb3I6ICM1NzNEMUM7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9jb2xvciBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgLmNob2ljZS1jb2xvcl9pbWc6YWZ0ZXIge1xuICBjb250ZW50OiAnXFwyNzE0JztcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXNoYWRvdzogLTFweCAwIGJsYWNrLCAwIDFweCBibGFjaywgMXB4IDAgYmxhY2ssIDAgLTFweCBibGFjaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbiIsIkBtaXhpbiBmb250KCRmb250LWZhbWlseSwgJGZvbnQtZmlsZSkge1xyXG4gICBAZm9udC1mYWNlIHtcclxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcclxuICAgICAgc3JjOiB1cmwoJGZvbnQtZmlsZSArICcudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgIH1cclxufVxyXG5AaW5jbHVkZSBmb250KCdNb250c2VycmF0JywgJy4uL2ZvbnQtZmFtaWx5L01vbnRzZXJyYXQvTW9udHNlcnJhdC1SZWd1bGFyJyk7XHJcbkBpbmNsdWRlIGZvbnQoJ09wZW4gU2FucycsICcuLi9mb250LWZhbWlseS9PcGVuX1NhbnMvT3BlblNhbnMtUmVndWxhcicpO1xyXG5AaW5jbHVkZSBmb250KCdQVCBTZXJpZicsICcuLi9mb250LWZhbWlseS9QVF9TZXJpZi9QVFNlcmlmLVJlZ3VsYXInKTtcclxuXHJcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2ljb24/ZmFtaWx5PU1hdGVyaWFsK0ljb25zfE1hdGVyaWFsK0ljb25zK091dGxpbmVkJyk7XHJcblxyXG4iLCJcclxuLyoqXHJcbiAgIENPVUxFVVJTXHJcbiovXHJcblxyXG4kY29sb3JfcHJpbWFpcmU6ICM1NzNEMUM7XHJcbiRjb2xvcl9zZWNvbmRhaXJlOiAjQ0M2NjAwO1xyXG4kY29sb3JfYmFja2dyb3VuZDogd2hpdGU7XHJcblxyXG4kd2lkdGhfbWF4X2NvbnRlbnQ6IDg1MHB4O1xyXG4kd2lkdGhfbWF4X2NvbnRlbnRfc2hvcDogOTUwcHg7XHJcblxyXG4kY29sb3Jfbm9pcjogIzAwMDtcclxuJGNvbG9yX2JsYW5jOiAjZmZmO1xyXG4kY29sb3JfbWFycm9uOiAjM2QxOTAxO1xyXG4kY29sb3JfaGF2YW5lOiAjOTk1MzIwO1xyXG4kY29sb3Jfcm91Z2U6ICNjZDAzMDM7XHJcbiRjb2xvcl9qYXVuZTogI2ZmYzcwMDtcclxuJGNvbG9yX2JsZXUtdHVycXVvaXNlOiAjMDAwMGY4O1xyXG4iLCJcclxuLyoqXHJcbiAgIFJlc3BvbnNpdmVcclxuICovXHJcblxyXG5AbWl4aW4gbWVkaWEoJHBvaW50KSB7XHJcbiAgIEBpZiAkcG9pbnQgPT0gbW9iaWxlb25seSB7XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgeyBAY29udGVudDsgfVxyXG4gICB9XHJcblxyXG4gICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0IHtcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7IEBjb250ZW50OyB9XHJcbiAgIH1cclxuXHJcbiAgIEBlbHNlIGlmICRwb2ludCA9PSBsYXB0b3Age1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHsgQGNvbnRlbnQ7IH1cclxuICAgfVxyXG5cclxuICAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3Age1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7IEBjb250ZW50OyB9XHJcbiAgIH1cclxuICAgQGVsc2Uge1xyXG4gICAgICBAd2FybiBcIk1lZGlhIG1peGluIHN1cHBvcnQ6IGRlc2t0b3AsIGxhcHRvcCwgdGFibGV0LCBtb2JpbGVvbmx5XCJcclxuICAgfVxyXG59IiwiLy9cbi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3NoYXBlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9zaGFwZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLWJ1dHRvbi1jb3JlLXN0eWxlcygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1idXR0b24td2l0aG91dC1yaXBwbGUoJHF1ZXJ5KTtcbiAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1yaXBwbGUoJHF1ZXJ5KTtcbn1cblxuLy8gVGhpcyBBUEkgaXMgaW50ZW5kZWQgZm9yIHVzZSBieSBmcmFtZXdvcmtzIHRoYXQgbWF5IHdhbnQgdG8gc2VwYXJhdGUgdGhlIHJpcHBsZS1yZWxhdGVkIHN0eWxlcyBmcm9tIHRoZSBvdGhlclxuLy8gYnV0dG9uIHN0eWxlcy4gSXQgaXMgcmVjb21tZW5kZWQgdGhhdCBtb3N0IHVzZXJzIHVzZSBgbWRjLWJ1dHRvbi1jb3JlLXN0eWxlc2AgaW5zdGVhZC5cbkBtaXhpbiBtZGMtYnV0dG9uLXdpdGhvdXQtcmlwcGxlKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgYnV0dG9uXG4gIC5tZGMtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWJhc2VfKCRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1zaGFwZS1yYWRpdXMoc21hbGwsICRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWNvbnRhaW5lci1maWxsLWNvbG9yKHRyYW5zcGFyZW50LCAkcXVlcnkpO1xuXG4gICAgLy8gVGhlIGljb24gQ1NTIGNsYXNzIG92ZXJyaWRlcyBzdHlsZXMgZGVmaW5lZCBpbiB0aGUgLm1hdGVyaWFsLWljb25zIENTU1xuICAgIC8vIGNsYXNzLCB3aGljaCBpcyBsb2FkZWQgc2VwYXJhdGVseSBzbyB0aGUgb3JkZXIgb2YgQ1NTIGRlZmluaXRpb25zIGlzIG5vdFxuICAgIC8vIGd1YXJhbnRlZWQuIFRoZXJlZm9yZSwgaW5jcmVhc2Ugc3BlY2lmaXR5IGJ5IG5lc3RpbmcgdGhpcyBjbGFzcyB0byBlbnN1cmVcbiAgICAvLyBvdmVycmlkZXMgYXBwbHkuXG4gICAgLm1kYy1idXR0b25fX2ljb24ge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbl9faWNvbl87XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1pbmstY29sb3IocHJpbWFyeSwgJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbl9faWNvbi10cmFpbGluZ187XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICBzdmcubWRjLWJ1dHRvbl9faWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1idXR0b25fX2ljb24tc3ZnXztcbiAgICB9XG4gIH1cblxuICAubWRjLWJ1dHRvbi0tcmFpc2VkLFxuICAubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCxcbiAgLm1kYy1idXR0b24tLW91dGxpbmVkIHtcbiAgICAubWRjLWJ1dHRvbl9faWNvbiB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICAvLyBJY29ucyBpbnNpZGUgY29udGFpbmVkIGJ1dHRvbnMgaGF2ZSBkaWZmZXJlbnQgc3R5bGVzIGR1ZSB0byBpbmNyZWFzZWQgYnV0dG9uIHBhZGRpbmdcbiAgICAgICAgQGluY2x1ZGUgbWRjLWJ1dHRvbl9faWNvbi1jb250YWluZWRfO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1idXR0b25fX2ljb24tY29udGFpbmVkLXRyYWlsaW5nXztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLWJ1dHRvbi0tcmFpc2VkLFxuICAubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi0tZmlsbGVkXygkcXVlcnkpO1xuICAgIEBpbmNsdWRlIG1kYy1idXR0b24tY29udGFpbmVyLWZpbGwtY29sb3IocHJpbWFyeSwgJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWluay1jb2xvcihvbi1wcmltYXJ5LCAkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1idXR0b24tLXJhaXNlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi0tcmFpc2VkXygkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1idXR0b24tLW91dGxpbmVkIHtcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLS1vdXRsaW5lZF8oJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLW91dGxpbmUtd2lkdGgoJG1kYy1idXR0b24tb3V0bGluZWQtYm9yZGVyLXdpZHRoLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1vdXRsaW5lLWNvbG9yKHByaW1hcnksICRxdWVyeSk7XG4gIH1cblxuICAubWRjLWJ1dHRvbi0tZGVuc2Uge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLS1kZW5zZV87XG4gICAgfVxuICB9XG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG59XG5cbi8vIFRoaXMgQVBJIGlzIGludGVuZGVkIGZvciB1c2UgYnkgZnJhbWV3b3JrcyB0aGF0IG1heSB3YW50IHRvIHNlcGFyYXRlIHRoZSByaXBwbGUtcmVsYXRlZCBzdHlsZXMgZnJvbSB0aGUgb3RoZXJcbi8vIGJ1dHRvbiBzdHlsZXMuIEl0IGlzIHJlY29tbWVuZGVkIHRoYXQgbW9zdCB1c2VycyB1c2UgYG1kYy1idXR0b24tY29yZS1zdHlsZXNgIGluc3RlYWQuXG5AbWl4aW4gbWRjLWJ1dHRvbi1yaXBwbGUoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLWNvbW1vbigkcXVlcnkpO1xuXG4gIC5tZGMtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2UoJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkKCRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKHByaW1hcnksIGZhbHNlLCAkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1idXR0b24tLXJhaXNlZCxcbiAgLm1kYy1idXR0b24tLXVuZWxldmF0ZWQge1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMob24tcHJpbWFyeSwgZmFsc2UsICRxdWVyeSk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24tZmlsbGVkLWFjY2Vzc2libGUoJGNvbnRhaW5lci1maWxsLWNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmaWxsLXRvbmU6IG1kYy10aGVtZS10b25lKCRjb250YWluZXItZmlsbC1jb2xvcik7XG5cbiAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1jb250YWluZXItZmlsbC1jb2xvcigkY29udGFpbmVyLWZpbGwtY29sb3IsICRxdWVyeSk7XG5cbiAgQGlmICgkZmlsbC10b25lID09IFwiZGFya1wiKSB7XG4gICAgQGluY2x1ZGUgbWRjLWJ1dHRvbi1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWRhcmssICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcyh0ZXh0LXByaW1hcnktb24tZGFyaywgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBtZGMtYnV0dG9uLWluay1jb2xvcih0ZXh0LXByaW1hcnktb24tbGlnaHQsICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcyh0ZXh0LXByaW1hcnktb24tbGlnaHQsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1jb250YWluZXItZmlsbC1jb2xvcigkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgLy8gOm5vdCg6ZGlzYWJsZWQpIGlzIHVzZWQgdG8gc3VwcG9ydCBsaW5rIHN0eWxlZCBhcyBidXR0b25cbiAgLy8gYXMgbGluayBkb2VzIG5vdCBzdXBwb3J0IDplbmFibGVkIHN0eWxlXG4gICY6bm90KDpkaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvciwgJGVkZ2VPcHRPdXQ6IHRydWUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1vdXRsaW5lLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRjb2xvcik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uLWljb24tY29sb3IoJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gICY6bm90KDpkaXNhYmxlZCkgLm1kYy1idXR0b25fX2ljb24ge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1pbmstY29sb3IoJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gICY6bm90KDpkaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoXG4gICAgbWRjLXNoYXBlLXJlc29sdmUtcGVyY2VudGFnZS1yYWRpdXMoJG1kYy1idXR0b24taGVpZ2h0LCAkcmFkaXVzKSxcbiAgICAkcnRsLXJlZmxleGl2ZSxcbiAgICAkcXVlcnk6ICRxdWVyeVxuICApO1xuXG4gICYubWRjLWJ1dHRvbi0tZGVuc2Uge1xuICAgIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoXG4gICAgICBtZGMtc2hhcGUtcmVzb2x2ZS1wZXJjZW50YWdlLXJhZGl1cygkbWRjLWRlbnNlLWJ1dHRvbi1oZWlnaHQsICRyYWRpdXMpLFxuICAgICAgJHJ0bC1yZWZsZXhpdmUsXG4gICAgICAkcXVlcnk6ICRxdWVyeVxuICAgICk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24taG9yaXpvbnRhbC1wYWRkaW5nKCRwYWRkaW5nLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAvLyAkcGFkZGluZyBzaG91bGQgYmUgYSBzaW5nbGUgdmFsdWU7IGVuZm9yY2UgaXQgYnkgc3BlY2lmeWluZyBhbGwgNCBzaWRlcyBpbiB0aGUgb3V0cHV0XG4gICAgcGFkZGluZzogMCAkcGFkZGluZyAwICRwYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uLW91dGxpbmUtd2lkdGgoXG4gICRvdXRsaW5lLXdpZHRoLFxuICAkcGFkZGluZzogJG1kYy1idXR0b24tY29udGFpbmVkLWhvcml6b250YWwtcGFkZGluZyxcbiAgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKVxuKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG4gIC8vIE5vdGU6IEFkanVzdCBwYWRkaW5nIHRvIG1haW50YWluIGNvbnNpc3RlbnQgd2lkdGggd2l0aCBub24tb3V0bGluZWQgYnV0dG9uc1xuICAkcGFkZGluZy12YWx1ZTogbWF4KCRwYWRkaW5nIC0gJG91dGxpbmUtd2lkdGgsIDApO1xuXG4gIEBpbmNsdWRlIG1kYy1idXR0b24taG9yaXpvbnRhbC1wYWRkaW5nKCRwYWRkaW5nLXZhbHVlLCAkcXVlcnkpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgYm9yZGVyLXdpZHRoOiAkb3V0bGluZS13aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi1iYXNlXygkcXVlcnkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoYnV0dG9uLCAkcXVlcnkpO1xuICBAaW5jbHVkZSBtZGMtYnV0dG9uLWhvcml6b250YWwtcGFkZGluZygkbWRjLWJ1dHRvbi1ob3Jpem9udGFsLXBhZGRpbmcsICRxdWVyeSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1pbi13aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6ICRtZGMtYnV0dG9uLWhlaWdodDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gICY6YWN0aXZlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsIHRyYW5zcGFyZW50KTtcblxuICAgICAgY29sb3I6ICRtZGMtYnV0dG9uLWRpc2FibGVkLWluay1jb2xvcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uX19pY29uXyB7XG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIHJpZ2h0LCA4cHgpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbl9faWNvbi10cmFpbGluZ18ge1xuICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCBsZWZ0LCA4cHgpO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbl9faWNvbi1zdmdfIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbl9faWNvbi1jb250YWluZWRfIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkobWFyZ2luLCAtNHB4LCA4cHgpO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbl9faWNvbi1jb250YWluZWQtdHJhaWxpbmdfIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkobWFyZ2luLCA4cHgsIC00cHgpO1xufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi0tb3V0bGluZWRfKCRxdWVyeSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRtZGMtYnV0dG9uLWRpc2FibGVkLWluay1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1idXR0b24tLWZpbGxlZF8oJHF1ZXJ5KSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1idXR0b24taG9yaXpvbnRhbC1wYWRkaW5nKCRtZGMtYnV0dG9uLWNvbnRhaW5lZC1ob3Jpem9udGFsLXBhZGRpbmcsICRxdWVyeSk7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1jb2xvcikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjEyKTtcbiAgICAgIGNvbG9yOiAkbWRjLWJ1dHRvbi1kaXNhYmxlZC1pbmstY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtYnV0dG9uLS1yYWlzZWRfKCRxdWVyeSkge1xuICAkZmVhdC1hbmltYXRpb246IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBhbmltYXRpb24pO1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDIsICRxdWVyeTogJHF1ZXJ5KTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDQsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKDgsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oMCwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiBtZGMtZWxldmF0aW9uLXRyYW5zaXRpb24tdmFsdWUoKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWJ1dHRvbi0tZGVuc2VfKCkge1xuICBoZWlnaHQ6ICRtZGMtZGVuc2UtYnV0dG9uLWhlaWdodDtcbiAgZm9udC1zaXplOiAuODEyNXJlbTsgLy8gMTNzcFxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2ZlYXR1cmUtdGFyZ2V0aW5nL21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbkBtaXhpbiBtZGMtdHlwb2dyYXBoeS1jb3JlLXN0eWxlcygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIC5tZGMtdHlwb2dyYXBoeSB7XG4gICAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHktYmFzZSgkcXVlcnk6ICRxdWVyeSk7XG4gIH1cblxuICBAZWFjaCAkc3R5bGUgaW4gbWFwLWtleXMoJG1kYy10eXBvZ3JhcGh5LXN0eWxlcykge1xuICAgIC5tZGMtdHlwb2dyYXBoeS0tI3skc3R5bGV9IHtcbiAgICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KCRzdHlsZSwgJHF1ZXJ5OiAkcXVlcnkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXR5cG9ncmFwaHktYmFzZSgkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXR5cG9ncmFwaHk6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCB0eXBvZ3JhcGh5KTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXR5cG9ncmFwaHkpIHtcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1kYy10eXBvZ3JhcGh5LWJhc2Uge1xuICAgICAgI3ska2V5fTogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXR5cG9ncmFwaHkoJHN0eWxlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXR5cG9ncmFwaHk6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCB0eXBvZ3JhcGh5KTtcbiAgJHN0eWxlLXByb3BzOiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1zdHlsZXMsICRzdHlsZSk7XG5cbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWRjLXR5cG9ncmFwaHktc3R5bGVzLCAkc3R5bGUpIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHN0eWxlIHNwZWNpZmllZCEgI3skc3R5bGV9IGRvZXNuJ3QgZXhpc3QuIENob29zZSBvbmUgb2YgI3ttYXAta2V5cygkbWRjLXR5cG9ncmFwaHktc3R5bGVzKX1cIjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtdHlwb2dyYXBoeSkge1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkc3R5bGUtcHJvcHMge1xuICAgICAgI3ska2V5fTogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuXG4vLyBFbGVtZW50IG11c3QgYmUgYGRpc3BsYXk6IGJsb2NrYCBvciBgZGlzcGxheTogaW5saW5lLWJsb2NrYCBmb3IgdGhpcyB0byB3b3JrLlxuQG1peGluIG1kYy10eXBvZ3JhcGh5LW92ZXJmbG93LWVsbGlwc2lzKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtdG9wKCRkaXN0YW5jZSwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLXN0cnV0XygkZGlzdGFuY2UpO1xuXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLWJvdHRvbSgkZGlzdGFuY2UsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIG1hcmdpbi1ib3R0b206IC0xICogJGRpc3RhbmNlO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS1zdHJ1dF8oJGRpc3RhbmNlKTtcblxuICAgICAgdmVydGljYWwtYWxpZ246IC0xICogJGRpc3RhbmNlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtc3RydXRfKCRkaXN0YW5jZSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6ICRkaXN0YW5jZTtcbiAgY29udGVudDogXCJcIjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcblxuJG1kYy10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5OiB1bnF1b3RlKFwiUm9ib3RvLCBzYW5zLXNlcmlmXCIpICFkZWZhdWx0O1xuXG4kbWRjLXR5cG9ncmFwaHktYmFzZTogKFxuICBmb250LWZhbWlseTogJG1kYy10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LFxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlLFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCxcbikgIWRlZmF1bHQ7XG5cbiRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXM6IChcbiAgdGhpbjogMTAwLFxuICBsaWdodDogMzAwLFxuICByZWd1bGFyOiA0MDAsXG4gIG1lZGl1bTogNTAwLFxuICBib2xkOiA3MDAsXG4gIGJsYWNrOiA5MDBcbikgIWRlZmF1bHQ7XG5cbiRtZGMtdHlwb2dyYXBoeS1zdHlsZXM6IG1kYy10eXBvZ3JhcGh5LXNldC1zdHlsZXNfKFxuICAkbWRjLXR5cG9ncmFwaHktYmFzZSxcbiAgKFxuICAgIGhlYWRsaW5lMTogKFxuICAgICAgZm9udC1zaXplOiA2cmVtLCAvLyA5NnNwXG4gICAgICBsaW5lLWhlaWdodDogNnJlbSxcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIGxpZ2h0KSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC0xLjUsIDYpLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGhlYWRsaW5lMjogKFxuICAgICAgZm9udC1zaXplOiAzLjc1cmVtLCAvLyA2MHNwXG4gICAgICBsaW5lLWhlaWdodDogMy43NXJlbSxcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIGxpZ2h0KSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC0uNSwgMy43NSksXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQsXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdFxuICAgICksXG4gICAgaGVhZGxpbmUzOiAoXG4gICAgICBmb250LXNpemU6IDNyZW0sIC8vIDQ4cHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbSwgLy8gNTBweFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGhlYWRsaW5lNDogKFxuICAgICAgZm9udC1zaXplOiAyLjEyNXJlbSwgLy8gMzRzcFxuICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbSwgLy8gNDBzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXyguMjUsIDIuMTI1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBoZWFkbGluZTU6IChcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtLCAvLyAyNHNwXG4gICAgICBsaW5lLWhlaWdodDogMnJlbSwgLy8gMzJzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGhlYWRsaW5lNjogKFxuICAgICAgZm9udC1zaXplOiAxLjI1cmVtLCAvLyAyMHNwXG4gICAgICBsaW5lLWhlaWdodDogMnJlbSwgLy8gMzJzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgbWVkaXVtKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC4yNSwgMS4yNSksXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQsXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdFxuICAgICksXG4gICAgc3VidGl0bGUxOiAoXG4gICAgICBmb250LXNpemU6IDFyZW0sIC8vIDE2c3BcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtLCAvLyAyOHNwXG4gICAgICBmb250LXdlaWdodDogbWFwLWdldCgkbWRjLXR5cG9ncmFwaHktZm9udC13ZWlnaHQtdmFsdWVzLCByZWd1bGFyKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC4xNSwgMSksXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQsXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdFxuICAgICksXG4gICAgc3VidGl0bGUyOiAoXG4gICAgICBmb250LXNpemU6IC44NzVyZW0sIC8vIDE0c3BcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbSwgLy8gMjJzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgbWVkaXVtKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC4xLCAuODc1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBib2R5MTogKFxuICAgICAgZm9udC1zaXplOiAxcmVtLCAvLyAxNnNwXG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtLCAvLyAyNHNwXG4gICAgICBmb250LXdlaWdodDogbWFwLWdldCgkbWRjLXR5cG9ncmFwaHktZm9udC13ZWlnaHQtdmFsdWVzLCByZWd1bGFyKSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKC41LCAxKSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBib2R5MjogKFxuICAgICAgZm9udC1zaXplOiAuODc1cmVtLCAvLyAxNHNwXG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbSwgLy8gMjBzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXyguMjUsIC44NzUpLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0LFxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXRcbiAgICApLFxuICAgIGNhcHRpb246IChcbiAgICAgIGZvbnQtc2l6ZTogLjc1cmVtLCAvLyAxMnNwXG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbSwgLy8gMjBzcFxuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJG1kYy10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0LXZhbHVlcywgcmVndWxhciksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXyguNCwgLjc1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0XG4gICAgKSxcbiAgICBidXR0b246IChcbiAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbSwgLy8gMTRzcFxuICAgICAgbGluZS1oZWlnaHQ6IDIuMjVyZW0sIC8vIDM2c3BcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIG1lZGl1bSksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXygxLjI1LCAuODc1KSxcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSxcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2VcbiAgICApLFxuICAgIG92ZXJsaW5lOiAoXG4gICAgICBmb250LXNpemU6IC43NXJlbSwgLy8gMTJzcFxuICAgICAgbGluZS1oZWlnaHQ6IDJyZW0sIC8vIDMyc3BcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRtZGMtdHlwb2dyYXBoeS1mb250LXdlaWdodC12YWx1ZXMsIG1lZGl1bSksXG4gICAgICBsZXR0ZXItc3BhY2luZzogbWRjLXR5cG9ncmFwaHktZ2V0LWxldHRlci1zcGFjaW5nXygyLCAuNzUpLFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lLFxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxuICAgICksXG4gIClcbikgIWRlZmF1bHQ7XG4iLCJcbi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AZnVuY3Rpb24gbWRjLXR5cG9ncmFwaHktZ2V0LWdsb2JhbC12YXJpYWJsZV8oJHN0eWxlKSB7XG4gIEBpZiAkc3R5bGUgPT0gXCJoZWFkbGluZTFcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWhlYWRsaW5lMTtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJoZWFkbGluZTJcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWhlYWRsaW5lMjtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJoZWFkbGluZTNcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWhlYWRsaW5lMztcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJoZWFkbGluZTRcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWhlYWRsaW5lNDtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJoZWFkbGluZTVcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWhlYWRsaW5lNTtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJoZWFkbGluZTZcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWhlYWRsaW5lNjtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJzdWJ0aXRsZTFcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLXN1YnRpdGxlMTtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJzdWJ0aXRsZTJcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLXN1YnRpdGxlMjtcbiAgfSBAZWxzZSBpZiAkc3R5bGUgPT0gXCJib2R5MVwiIHtcbiAgICBAcmV0dXJuICRtZGMtdHlwb2dyYXBoeS1zdHlsZXMtYm9keTE7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiYm9keTJcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWJvZHkyO1xuICB9IEBlbHNlIGlmICRzdHlsZSA9PSBcImNhcHRpb25cIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLWNhcHRpb247XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiYnV0dG9uXCIge1xuICAgIEByZXR1cm4gJG1kYy10eXBvZ3JhcGh5LXN0eWxlcy1idXR0b247XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwib3ZlcmxpbmVcIiB7XG4gICAgQHJldHVybiAkbWRjLXR5cG9ncmFwaHktc3R5bGVzLW92ZXJsaW5lO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG59XG5cbkBmdW5jdGlvbiBtZGMtdHlwb2dyYXBoeS1zZXQtc3R5bGVzXygkYmFzZS1zdHlsZXMsICRzY2FsZS1zdHlsZXMpIHtcbiAgQGVhY2ggJHN0eWxlLCAkc3R5bGUtcHJvcHMgaW4gJHNjYWxlLXN0eWxlcyB7XG5cbiAgICAvLyBNZXJnZSBiYXNlIHByb3BlcnRpZXMgZm9yIGFsbCBzdHlsZXMuXG4gICAgJHN0eWxlLXByb3BzOiBtYXAtbWVyZ2UoJGJhc2Utc3R5bGVzLCAkc3R5bGUtcHJvcHMpO1xuXG4gICAgLy8gTWVyZ2UgZ2xvYmFsIG92ZXJyaWRlcyBvbnRvIGVhY2ggc3R5bGUuXG4gICAgQGlmIGdsb2JhbF92YXJpYWJsZV9leGlzdHModW5xdW90ZShcIm1kYy10eXBvZ3JhcGh5LXN0eWxlcy0jeyRzdHlsZX1cIikpIHtcbiAgICAgICRzdHlsZS1wcm9wczogbWFwLW1lcmdlKCRzdHlsZS1wcm9wcywgbWRjLXR5cG9ncmFwaHktZ2V0LWdsb2JhbC12YXJpYWJsZV8oI3skc3R5bGV9KSk7XG4gICAgfVxuXG4gICAgLy8gT3ZlcnJpZGUgb3JpZ2luYWwgc3R5bGVzIHdpdGggbmV3IHN0eWxlcy5cbiAgICAkc2NhbGUtc3R5bGVzOiBtYXAtbWVyZ2UoJHNjYWxlLXN0eWxlcywgKCN7JHN0eWxlfTogJHN0eWxlLXByb3BzKSk7XG4gIH1cblxuICBAcmV0dXJuICRzY2FsZS1zdHlsZXM7XG59XG5cbkBmdW5jdGlvbiBtZGMtdHlwb2dyYXBoeS1nZXQtbGV0dGVyLXNwYWNpbmdfKCR0cmFja2luZywgJGZvbnQtc2l6ZSkge1xuICBAcmV0dXJuICR0cmFja2luZyAvICgkZm9udC1zaXplICogMTYpICogMWVtO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtYnV0dG9uLWhlaWdodDogMzZweCAhZGVmYXVsdDtcbiRtZGMtYnV0dG9uLWhvcml6b250YWwtcGFkZGluZzogOHB4ICFkZWZhdWx0O1xuJG1kYy1idXR0b24tY29udGFpbmVkLWhvcml6b250YWwtcGFkZGluZzogMTZweCAhZGVmYXVsdDtcbiRtZGMtZGVuc2UtYnV0dG9uLWhlaWdodDogMzJweCAhZGVmYXVsdDtcbiRtZGMtYnV0dG9uLW91dGxpbmVkLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4kbWRjLWJ1dHRvbi1kaXNhYmxlZC1pbmstY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zNykgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuXG5AbWl4aW4gbWRjLXNoYXBlLXJhZGl1cygkcmFkaXVzLCAkcnRsLXJlZmxleGl2ZTogZmFsc2UsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIC8vIEV2ZW4gaWYgJHJ0bC1yZWZsZXhpdmUgaXMgdHJ1ZSwgb25seSBlbWl0IFJUTCBzdHlsZXMgaWYgd2UgY2FuJ3QgZWFzaWx5IHRlbGwgdGhhdCB0aGUgZ2l2ZW4gcmFkaXVzIGlzIHN5bW1ldHJpY2FsXG4gICAgJG5lZWRzLWZsaXA6ICRydGwtcmVmbGV4aXZlIGFuZCBsZW5ndGgoJHJhZGl1cykgPiAxO1xuXG4gICAgQGlmICgkbmVlZHMtZmxpcCkge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgIH1cblxuICAgIGJvcmRlci1yYWRpdXM6IG1kYy1zaGFwZS1wcm9wLXZhbHVlKCRyYWRpdXMpO1xuXG4gICAgQGlmICgkbmVlZHMtZmxpcCkge1xuICAgICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgYm9yZGVyLXJhZGl1czogbWRjLXNoYXBlLWZsaXAtcmFkaXVzKG1kYy1zaGFwZS1wcm9wLXZhbHVlKCRyYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4vLyBTaGFwZSBjYXRlZ29yaWVzXG4kbWRjLXNoYXBlLXNtYWxsLWNvbXBvbmVudC1yYWRpdXM6IDRweCAhZGVmYXVsdDtcbiRtZGMtc2hhcGUtbWVkaXVtLWNvbXBvbmVudC1yYWRpdXM6IDRweCAhZGVmYXVsdDtcbiRtZGMtc2hhcGUtbGFyZ2UtY29tcG9uZW50LXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8gU2hhcGUgY2F0ZWdvcnkgbWFwcGluZy5cbiRtZGMtc2hhcGUtY2F0ZWdvcnktdmFsdWVzOiAoXG4gIHNtYWxsOiAkbWRjLXNoYXBlLXNtYWxsLWNvbXBvbmVudC1yYWRpdXMsXG4gIG1lZGl1bTogJG1kYy1zaGFwZS1tZWRpdW0tY29tcG9uZW50LXJhZGl1cyxcbiAgbGFyZ2U6ICRtZGMtc2hhcGUtbGFyZ2UtY29tcG9uZW50LXJhZGl1cyxcbikgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuXG5AbWl4aW4gbWRjLXRoZW1lLWNvcmUtc3R5bGVzKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgOnJvb3Qge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBlYWNoICRzdHlsZSBpbiBtYXAta2V5cygkbWRjLXRoZW1lLXByb3BlcnR5LXZhbHVlcykge1xuICAgICAgICAtLW1kYy10aGVtZS0jeyRzdHlsZX06ICN7bWFwLWdldCgkbWRjLXRoZW1lLXByb3BlcnR5LXZhbHVlcywgJHN0eWxlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJHN0eWxlIGluIG1hcC1rZXlzKCRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzKSB7XG4gICAgQGlmICRzdHlsZSAhPSBcImJhY2tncm91bmRcIiBhbmQgJHN0eWxlICE9IFwic3VyZmFjZVwiIHtcbiAgICAgIC5tZGMtdGhlbWUtLSN7JHN0eWxlfSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJHN0eWxlLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLm1kYy10aGVtZS0tI3skc3R5bGV9IHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1jb2xvcikge1xuICAgICAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRzdHlsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDU1MgcnVsZXMgZm9yIHVzaW5nIHByaW1hcnkgYW5kIHNlY29uZGFyeSAocGx1cyBsaWdodC9kYXJrIHZhcmlhbnRzKSBhcyBiYWNrZ3JvdW5kIGNvbG9ycy5cbiAgQGVhY2ggJHN0eWxlIGluIChcInByaW1hcnlcIiwgXCJzZWNvbmRhcnlcIikge1xuICAgIC5tZGMtdGhlbWUtLSN7JHN0eWxlfS1iZyB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRzdHlsZSwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFwcGxpZXMgdGhlIGNvcnJlY3QgdGhlbWUgY29sb3Igc3R5bGUgdG8gdGhlIHNwZWNpZmllZCBwcm9wZXJ0eS5cbi8vICRwcm9wZXJ0eSBpcyB0eXBpY2FsbHkgY29sb3Igb3IgYmFja2dyb3VuZC1jb2xvciwgYnV0IGNhbiBiZSBhbnkgQ1NTIHByb3BlcnR5IHRoYXQgYWNjZXB0cyBjb2xvciB2YWx1ZXMuXG4vLyAkc3R5bGUgc2hvdWxkIGJlIG9uZSBvZiB0aGUgbWFwIGtleXMgaW4gJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMgKF92YXJpYWJsZXMuc2NzcyksIG9yIGEgY29sb3IgdmFsdWUuXG4vLyAkZWRnZU9wdE91dCBjb250cm9scyB3aGV0aGVyIHRvIGZlYXR1cmUtZGV0ZWN0IGFyb3VuZCBFZGdlIHRvIGF2b2lkIGVtaXR0aW5nIENTUyB2YXJpYWJsZXMgZm9yIGl0LFxuLy8gaW50ZW5kZWQgZm9yIHVzZSBpbiBjYXNlcyB3aGVyZSBpbnRlcmFjdGlvbnMgd2l0aCBwc2V1ZG8tZWxlbWVudCBzdHlsZXMgY2F1c2UgcHJvYmxlbXMgZHVlIHRvIEVkZ2UgYnVncy5cbkBtaXhpbiBtZGMtdGhlbWUtcHJvcCgkcHJvcGVydHksICRzdHlsZSwgJGltcG9ydGFudDogZmFsc2UsICRlZGdlT3B0T3V0OiBmYWxzZSkge1xuICBAaWYgbWRjLXRoZW1lLWlzLXZhci13aXRoLWZhbGxiYWNrXygkc3R5bGUpIHtcbiAgICBAaWYgJGltcG9ydGFudCB7XG4gICAgICAjeyRwcm9wZXJ0eX06IG1kYy10aGVtZS1nZXQtdmFyLWZhbGxiYWNrXygkc3R5bGUpICFpbXBvcnRhbnQ7XG4gICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAjeyRwcm9wZXJ0eX06IG1kYy10aGVtZS12YXJfKCRzdHlsZSkgIWltcG9ydGFudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICN7JHByb3BlcnR5fTogbWRjLXRoZW1lLWdldC12YXItZmFsbGJhY2tfKCRzdHlsZSk7XG4gICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAjeyRwcm9wZXJ0eX06IG1kYy10aGVtZS12YXJfKCRzdHlsZSk7XG4gICAgfVxuICB9IEBlbHNlIGlmIG1kYy10aGVtZS1pcy12YWxpZC10aGVtZS1wcm9wLXZhbHVlXygkc3R5bGUpIHtcbiAgICBAaWYgJGltcG9ydGFudCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICRzdHlsZSAhaW1wb3J0YW50O1xuICAgIH0gQGVsc2Uge1xuICAgICAgI3skcHJvcGVydHl9OiAkc3R5bGU7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzLCAkc3R5bGUpIHtcbiAgICAgIEBlcnJvciBcIkludmFsaWQgc3R5bGU6ICcjeyRzdHlsZX0nLiBDaG9vc2Ugb25lIG9mOiAje21hcC1rZXlzKCRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzKX1cIjtcbiAgICB9XG5cbiAgICAkdmFsdWU6IG1hcC1nZXQoJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMsICRzdHlsZSk7XG5cbiAgICBAaWYgJGltcG9ydGFudCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSAhaW1wb3J0YW50O1xuXG4gICAgICBAaWYgJGVkZ2VPcHRPdXQge1xuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBtYXgtbmVzdGluZy1kZXB0aFxuICAgICAgICBAYXQtcm9vdCB7XG4gICAgICAgICAgLy8gSUUgMTEgZG9lc24ndCB1bmRlcnN0YW5kIHRoaXMgc3ludGF4IGFuZCBpZ25vcmVzIHRoZSBlbnRpcmUgYmxvY2suXG4gICAgICAgICAgLy8gRWRnZSB1bmRlcnN0YW5kcyB0aGlzIHN5bnRheCBhbmQgc2tpcHMgdGhlIGVudGlyZSBibG9jayB0byBhdm9pZCBhIG5hc3R5IDpiZWZvcmUvOmFmdGVyIHBzZXVkby1lbGVtZW50IGJ1Zy5cbiAgICAgICAgICAvLyBBbGwgb3RoZXIgYnJvd3NlcnMgYXBwbHkgdGhlIHN0eWxlcyB3aXRoaW4gdGhlIGJsb2NrLlxuICAgICAgICAgIEBzdXBwb3J0cyBub3QgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3Mvc2VsZWN0b3Itbm8tcmVkdW5kYW50LW5lc3Rpbmctc2VsZWN0b3JcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWRjLXRoZW1lLSN7JHN0eWxlfSwgJHZhbHVlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgbWF4LW5lc3RpbmctZGVwdGhcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWRjLXRoZW1lLSN7JHN0eWxlfSwgJHZhbHVlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG5cbiAgICAgIEBpZiAkZWRnZU9wdE91dCB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIG1heC1uZXN0aW5nLWRlcHRoXG4gICAgICAgIEBhdC1yb290IHtcbiAgICAgICAgICAvLyBJRSAxMSBkb2Vzbid0IHVuZGVyc3RhbmQgdGhpcyBzeW50YXggYW5kIGlnbm9yZXMgdGhlIGVudGlyZSBibG9jay5cbiAgICAgICAgICAvLyBFZGdlIHVuZGVyc3RhbmRzIHRoaXMgc3ludGF4IGFuZCBza2lwcyB0aGUgZW50aXJlIGJsb2NrIHRvIGF2b2lkIGEgbmFzdHkgOmJlZm9yZS86YWZ0ZXIgcHNldWRvLWVsZW1lbnQgYnVnLlxuICAgICAgICAgIC8vIEFsbCBvdGhlciBicm93c2VycyBhcHBseSB0aGUgc3R5bGVzIHdpdGhpbiB0aGUgYmxvY2suXG4gICAgICAgICAgQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9zZWxlY3Rvci1uby1yZWR1bmRhbnQtbmVzdGluZy1zZWxlY3RvclxuICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICAgICAgICAgICAgI3skcHJvcGVydHl9OiB2YXIoLS1tZGMtdGhlbWUtI3skc3R5bGV9LCAkdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgbWF4LW5lc3RpbmctZGVwdGhcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWRjLXRoZW1lLSN7JHN0eWxlfSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcblxuLy9cbi8vIE1haW4gdGhlbWUgY29sb3JzIGZvciB5b3VyIGJyYW5kLlxuLy9cbi8vIElmIHlvdSdyZSBhIHVzZXIgY3VzdG9taXppbmcgeW91ciBjb2xvciBzY2hlbWUgaW4gU0FTUywgdGhlc2UgYXJlIHByb2JhYmx5IHRoZSBvbmx5IHZhcmlhYmxlcyB5b3UgbmVlZCB0byBjaGFuZ2UuXG4vL1xuXG4kbWRjLXRoZW1lLXByaW1hcnk6ICM2MjAwZWUgIWRlZmF1bHQ7IC8vIGJhc2VsaW5lIHB1cnBsZSwgNTAwIHRvbmVcbiRtZGMtdGhlbWUtb24tcHJpbWFyeTogaWYobWRjLXRoZW1lLWNvbnRyYXN0LXRvbmUoJG1kYy10aGVtZS1wcmltYXJ5KSA9PSBcImRhcmtcIiwgIzAwMCwgI2ZmZikgIWRlZmF1bHQ7XG5cbi8vIFRoZSAkbWRjLXRoZW1lLWFjY2VudCB2YXJpYWJsZSBpcyBERVBSRUNBVEVEIC0gaXQgZXhpc3RzIHB1cmVseSBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS5cbi8vIFRoZSAkbWRjLXRoZW1lLXNlY29uZGFyeSogdmFyaWFibGVzIHNob3VsZCBiZSB1c2VkIGZvciBhbGwgbmV3IHByb2plY3RzLlxuJG1kYy10aGVtZS1hY2NlbnQ6ICMwMTg3ODYgIWRlZmF1bHQ7IC8vIGJhc2VsaW5lIHRlYWwsIDYwMCB0b25lXG4kbWRjLXRoZW1lLXNlY29uZGFyeTogJG1kYy10aGVtZS1hY2NlbnQgIWRlZmF1bHQ7XG4kbWRjLXRoZW1lLW9uLXNlY29uZGFyeTogaWYobWRjLXRoZW1lLWNvbnRyYXN0LXRvbmUoJG1kYy10aGVtZS1zZWNvbmRhcnkpID09IFwiZGFya1wiLCAjMDAwLCAjZmZmKSAhZGVmYXVsdDtcbiRtZGMtdGhlbWUtYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDsgLy8gV2hpdGVcblxuJG1kYy10aGVtZS1zdXJmYWNlOiAjZmZmICFkZWZhdWx0O1xuJG1kYy10aGVtZS1vbi1zdXJmYWNlOiBpZihtZGMtdGhlbWUtY29udHJhc3QtdG9uZSgkbWRjLXRoZW1lLXN1cmZhY2UpID09IFwiZGFya1wiLCAjMDAwLCAjZmZmKSAhZGVmYXVsdDtcblxuJG1kYy10aGVtZS1lcnJvcjogI2IwMDAyMCAhZGVmYXVsdDtcbiRtZGMtdGhlbWUtb24tZXJyb3I6IGlmKG1kYy10aGVtZS1jb250cmFzdC10b25lKCRtZGMtdGhlbWUtZXJyb3IpID09IFwiZGFya1wiLCAjMDAwLCAjZmZmKSAhZGVmYXVsdDtcblxuLy9cbi8vIFRleHQgY29sb3JzIGFjY29yZGluZyB0byBsaWdodCB2cyBkYXJrIGFuZCB0ZXh0IHR5cGUuXG4vL1xuXG4kbWRjLXRoZW1lLXRleHQtY29sb3JzOiAoXG4gIGRhcms6IChcbiAgICBwcmltYXJ5OiByZ2JhKGJsYWNrLCAuODcpLFxuICAgIHNlY29uZGFyeTogcmdiYShibGFjaywgLjU0KSxcbiAgICBoaW50OiByZ2JhKGJsYWNrLCAuMzgpLFxuICAgIGRpc2FibGVkOiByZ2JhKGJsYWNrLCAuMzgpLFxuICAgIGljb246IHJnYmEoYmxhY2ssIC4zOClcbiAgKSxcbiAgbGlnaHQ6IChcbiAgICBwcmltYXJ5OiB3aGl0ZSxcbiAgICBzZWNvbmRhcnk6IHJnYmEod2hpdGUsIC43KSxcbiAgICBoaW50OiByZ2JhKHdoaXRlLCAuNSksXG4gICAgZGlzYWJsZWQ6IHJnYmEod2hpdGUsIC41KSxcbiAgICBpY29uOiByZ2JhKHdoaXRlLCAuNSlcbiAgKVxuKSAhZGVmYXVsdDtcblxuJG1kYy10aGVtZS10ZXh0LWVtcGhhc2lzOiAoXG4gIGhpZ2g6IC44NyxcbiAgbWVkaXVtOiAuNixcbiAgZGlzYWJsZWQ6IC4zOCxcbikgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXygkdGV4dC1zdHlsZSwgJGZpbGwtY29sb3IpIHtcbiAgJGNvbnRyYXN0LXRvbmU6IG1kYy10aGVtZS1jb250cmFzdC10b25lKCRmaWxsLWNvbG9yKTtcblxuICBAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkbWRjLXRoZW1lLXRleHQtY29sb3JzLCAkY29udHJhc3QtdG9uZSksICR0ZXh0LXN0eWxlKTtcbn1cblxuLy9cbi8vIFByaW1hcnkgdGV4dCBjb2xvcnMgZm9yIGVhY2ggb2YgdGhlIHRoZW1lIGNvbG9ycy5cbi8vXG5cbiRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzOiAoXG4gIC8vIFByaW1hcnlcbiAgcHJpbWFyeTogJG1kYy10aGVtZS1wcmltYXJ5LFxuICAvLyBTZWNvbmRhcnlcbiAgc2Vjb25kYXJ5OiAkbWRjLXRoZW1lLXNlY29uZGFyeSxcbiAgLy8gQmFja2dyb3VuZFxuICBiYWNrZ3JvdW5kOiAkbWRjLXRoZW1lLWJhY2tncm91bmQsXG4gIC8vIFN1cmZhY2VcbiAgc3VyZmFjZTogJG1kYy10aGVtZS1zdXJmYWNlLFxuICAvLyBFcnJvclxuICBlcnJvcjogJG1kYy10aGVtZS1lcnJvcixcbiAgb24tcHJpbWFyeTogJG1kYy10aGVtZS1vbi1wcmltYXJ5LFxuICBvbi1zZWNvbmRhcnk6ICRtZGMtdGhlbWUtb24tc2Vjb25kYXJ5LFxuICBvbi1zdXJmYWNlOiAkbWRjLXRoZW1lLW9uLXN1cmZhY2UsXG4gIG9uLWVycm9yOiAkbWRjLXRoZW1lLW9uLWVycm9yLFxuICAvLyBUZXh0LXByaW1hcnkgb24gXCJiYWNrZ3JvdW5kXCIgYmFja2dyb3VuZFxuICB0ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8ocHJpbWFyeSwgJG1kYy10aGVtZS1iYWNrZ3JvdW5kKSxcbiAgdGV4dC1zZWNvbmRhcnktb24tYmFja2dyb3VuZDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oc2Vjb25kYXJ5LCAkbWRjLXRoZW1lLWJhY2tncm91bmQpLFxuICB0ZXh0LWhpbnQtb24tYmFja2dyb3VuZDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oaGludCwgJG1kYy10aGVtZS1iYWNrZ3JvdW5kKSxcbiAgdGV4dC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kOiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXyhkaXNhYmxlZCwgJG1kYy10aGVtZS1iYWNrZ3JvdW5kKSxcbiAgdGV4dC1pY29uLW9uLWJhY2tncm91bmQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGljb24sICRtZGMtdGhlbWUtYmFja2dyb3VuZCksXG4gIC8vIFRleHQtcHJpbWFyeSBvbiBcImxpZ2h0XCIgYmFja2dyb3VuZFxuICB0ZXh0LXByaW1hcnktb24tbGlnaHQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKHByaW1hcnksIGxpZ2h0KSxcbiAgdGV4dC1zZWNvbmRhcnktb24tbGlnaHQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKHNlY29uZGFyeSwgbGlnaHQpLFxuICB0ZXh0LWhpbnQtb24tbGlnaHQ6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGhpbnQsIGxpZ2h0KSxcbiAgdGV4dC1kaXNhYmxlZC1vbi1saWdodDogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oZGlzYWJsZWQsIGxpZ2h0KSxcbiAgdGV4dC1pY29uLW9uLWxpZ2h0OiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXyhpY29uLCBsaWdodCksXG4gIC8vIFRleHQtcHJpbWFyeSBvbiBcImRhcmtcIiBiYWNrZ3JvdW5kXG4gIHRleHQtcHJpbWFyeS1vbi1kYXJrOiBtZGMtdGhlbWUtaW5rLWNvbG9yLWZvci1maWxsXyhwcmltYXJ5LCBkYXJrKSxcbiAgdGV4dC1zZWNvbmRhcnktb24tZGFyazogbWRjLXRoZW1lLWluay1jb2xvci1mb3ItZmlsbF8oc2Vjb25kYXJ5LCBkYXJrKSxcbiAgdGV4dC1oaW50LW9uLWRhcms6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGhpbnQsIGRhcmspLFxuICB0ZXh0LWRpc2FibGVkLW9uLWRhcms6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGRpc2FibGVkLCBkYXJrKSxcbiAgdGV4dC1pY29uLW9uLWRhcms6IG1kYy10aGVtZS1pbmstY29sb3ItZm9yLWZpbGxfKGljb24sIGRhcmspXG4pICFkZWZhdWx0O1xuXG4vLyBJZiBgJHN0eWxlYCBpcyBhIGNvbG9yIChhIGxpdGVyYWwgY29sb3IgdmFsdWUsIGBjdXJyZW50Q29sb3JgLCBvciBhIENTUyBjdXN0b20gcHJvcGVydHkpLCBpdCBpcyByZXR1cm5lZCB2ZXJiYXRpbS5cbi8vIE90aGVyd2lzZSwgYCRzdHlsZWAgaXMgdHJlYXRlZCBhcyBhIHRoZW1lIHByb3BlcnR5IG5hbWUsIGFuZCB0aGUgY29ycmVzcG9uZGluZyB2YWx1ZSBmcm9tXG4vLyBgJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXNgIGlzIHJldHVybmVkLiBJZiB0aGlzIGFsc28gZmFpbHMsIGFuIGVycm9yIGlzIHRocm93bi5cbi8vXG4vLyBUaGlzIGlzIG1haW5seSB1c2VmdWwgaW4gc2l0dWF0aW9ucyB3aGVyZSBgbWRjLXRoZW1lLXByb3BgIGNhbm5vdCBiZSB1c2VkIGRpcmVjdGx5IChlLmcuLCBgYm94LXNoYWRvd2ApLlxuLy9cbi8vIEV4YW1wbGVzOlxuLy9cbi8vIDEuIG1kYy10aGVtZS1wcm9wLXZhbHVlKHByaW1hcnkpID0+IFwiIzYyMDBlZVwiXG4vLyAyLiBtZGMtdGhlbWUtcHJvcC12YWx1ZShibHVlKSAgICA9PiBcImJsdWVcIlxuLy9cbi8vIE5PVEU6IFRoaXMgZnVuY3Rpb24gbXVzdCBiZSBkZWZpbmVkIGluIF92YXJpYWJsZXMuc2NzcyBpbnN0ZWFkIG9mIF9mdW5jdGlvbnMuc2NzcyB0byBhdm9pZCBjaXJjdWxhciBpbXBvcnRzLlxuQGZ1bmN0aW9uIG1kYy10aGVtZS1wcm9wLXZhbHVlKCRzdHlsZSkge1xuICBAaWYgbWRjLXRoZW1lLWlzLXZhci13aXRoLWZhbGxiYWNrXygkc3R5bGUpIHtcbiAgICBAcmV0dXJuIG1kYy10aGVtZS1nZXQtdmFyLWZhbGxiYWNrXygkc3R5bGUpO1xuICB9XG5cbiAgQGlmIG1kYy10aGVtZS1pcy12YWxpZC10aGVtZS1wcm9wLXZhbHVlXygkc3R5bGUpIHtcbiAgICBAcmV0dXJuICRzdHlsZTtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJG1kYy10aGVtZS1wcm9wZXJ0eS12YWx1ZXMsICRzdHlsZSkge1xuICAgIEBlcnJvciBcIkludmFsaWQgdGhlbWUgcHJvcGVydHk6ICcjeyRzdHlsZX0nLiBDaG9vc2Ugb25lIG9mOiAje21hcC1rZXlzKCRtZGMtdGhlbWUtcHJvcGVydHktdmFsdWVzKX1cIjtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLWdldCgkbWRjLXRoZW1lLXByb3BlcnR5LXZhbHVlcywgJHN0eWxlKTtcbn1cblxuLy8gTk9URTogVGhpcyBmdW5jdGlvbiBtdXN0IGJlIGRlZmluZWQgaW4gX3ZhcmlhYmxlcy5zY3NzIGluc3RlYWQgb2YgX2Z1bmN0aW9ucy5zY3NzIHRvIGF2b2lkIGNpcmN1bGFyIGltcG9ydHMuXG5AZnVuY3Rpb24gbWRjLXRoZW1lLWFjY2Vzc2libGUtaW5rLWNvbG9yKCRmaWxsLWNvbG9yLCAkdGV4dC1zdHlsZTogcHJpbWFyeSkge1xuICAkZmlsbC1jb2xvci12YWx1ZTogbWRjLXRoZW1lLXByb3AtdmFsdWUoJGZpbGwtY29sb3IpO1xuICAkY29sb3ItbWFwLWZvci10b25lOiBtYXAtZ2V0KCRtZGMtdGhlbWUtdGV4dC1jb2xvcnMsIG1kYy10aGVtZS1jb250cmFzdC10b25lKCRmaWxsLWNvbG9yLXZhbHVlKSk7XG5cbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkY29sb3ItbWFwLWZvci10b25lLCAkdGV4dC1zdHlsZSkge1xuICAgIEBlcnJvciBcIkludmFsaWQgJHRleHQtc3R5bGU6ICcjeyR0ZXh0LXN0eWxlfScuIENob29zZSBvbmUgb2Y6ICN7bWFwLWtleXMoJGNvbG9yLW1hcC1mb3ItdG9uZSl9XCI7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9yLW1hcC1mb3ItdG9uZSwgJHRleHQtc3R5bGUpO1xufVxuXG4vLyBOT1RFOiBUaGlzIGZ1bmN0aW9uIGlzIGRlcGVuZGVkIHVwb24gYnkgbWRjLXRoZW1lLXByb3AtdmFsdWUgKGFib3ZlKSBhbmQgdGh1cyBtdXN0IGJlIGRlZmluZWQgaW4gdGhpcyBmaWxlLlxuQGZ1bmN0aW9uIG1kYy10aGVtZS1pcy12YWxpZC10aGVtZS1wcm9wLXZhbHVlXygkc3R5bGUpIHtcbiAgQHJldHVybiB0eXBlLW9mKCRzdHlsZSkgPT0gXCJjb2xvclwiIG9yXG4gICAgJHN0eWxlID09IFwiY3VycmVudENvbG9yXCIgb3JcbiAgICBzdHJfc2xpY2UoJHN0eWxlLCAxLCA0KSA9PSBcInZhcihcIiBvclxuICAgICRzdHlsZSA9PSBcImluaGVyaXRcIiBvclxuICAgICRzdHlsZSA9PSBcInRyYW5zcGFyZW50XCI7XG59XG5cbkBmdW5jdGlvbiBtZGMtdGhlbWUtdGV4dC1lbXBoYXNpcygkZW1waGFzaXMpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRtZGMtdGhlbWUtdGV4dC1lbXBoYXNpcywgJGVtcGhhc2lzKTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gQ3JlYXRlcyBhIHJ1bGUgdGhhdCB3aWxsIGJlIGFwcGxpZWQgd2hlbiBhbiBNREMgV2ViIGNvbXBvbmVudCBpcyB3aXRoaW4gdGhlIGNvbnRleHQgb2YgYW4gUlRMIGxheW91dC5cbi8vXG4vLyBVc2FnZSBFeGFtcGxlOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICBsZWZ0OiAwO1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbGVmdDogYXV0bztcbi8vICAgICByaWdodDogMDtcbi8vICAgfVxuLy9cbi8vICAgJl9fYmFyIHtcbi8vICAgICBtYXJnaW4tbGVmdDogNHB4O1xuLy8gICAgIEBpbmNsdWRlIG1kYy1ydGwoXCIubWRjLWZvb1wiKSB7XG4vLyAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbi8vICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuLy9cbi8vIC5tZGMtZm9vLS1tb2Qge1xuLy8gICBwYWRkaW5nLWxlZnQ6IDRweDtcbi8vXG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwge1xuLy8gICAgIHBhZGRpbmctbGVmdDogYXV0bztcbi8vICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4vLyAgIH1cbi8vIH1cbi8vIGBgYFxuLy9cbi8vIE5vdGUgdGhhdCB0aGlzIG1peGluIHdvcmtzIGJ5IGNoZWNraW5nIGZvciBhbiBhbmNlc3RvciBlbGVtZW50IHdpdGggYFtkaXI9XCJydGxcIl1gLlxuLy8gQXMgYSByZXN1bHQsIG5lc3RlZCBgZGlyYCB2YWx1ZXMgYXJlIG5vdCBzdXBwb3J0ZWQ6XG4vL1xuLy8gYGBgaHRtbFxuLy8gPGh0bWwgZGlyPVwicnRsXCI+XG4vLyAgIDwhLS0gLi4uIC0tPlxuLy8gICA8ZGl2IGRpcj1cImx0clwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJtZGMtZm9vXCI+U3R5bGVkIGluY29ycmVjdGx5IGFzIFJUTCE8L2Rpdj5cbi8vICAgPC9kaXY+XG4vLyA8L2h0bWw+XG4vLyBgYGBcbi8vXG4vLyBJbiB0aGUgZnV0dXJlLCBzZWxlY3RvcnMgc3VjaCBhcyB0aGUgYDpkaXJgIHBzZXVkby1jbGFzcyAoaHR0cDovL21kbi5pby9jc3MvOmRpcikgd2lsbCBoZWxwIHVzIG1pdGlnYXRlIHRoaXMuXG5AbWl4aW4gbWRjLXJ0bCgkcm9vdC1zZWxlY3RvcjogbnVsbCkge1xuICBAaWYgKCRtZGMtcnRsLWluY2x1ZGUpIHtcbiAgICBAaWYgKCRyb290LXNlbGVjdG9yKSB7XG4gICAgICBAYXQtcm9vdCB7XG4gICAgICAgICN7JHJvb3Qtc2VsZWN0b3J9W2Rpcj1cInJ0bFwiXSAmLFxuICAgICAgICBbZGlyPVwicnRsXCJdICN7JHJvb3Qtc2VsZWN0b3J9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBbZGlyPVwicnRsXCJdICYsXG4gICAgICAmW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUYWtlcyBhIGJhc2UgYm94LW1vZGVsIHByb3BlcnR5IG5hbWUgKGBtYXJnaW5gLCBgYm9yZGVyYCwgYHBhZGRpbmdgLCBldGMuKSBhbG9uZyB3aXRoIGFcbi8vIGRlZmF1bHQgZGlyZWN0aW9uIChgbGVmdGAgb3IgYHJpZ2h0YCkgYW5kIHZhbHVlLCBhbmQgZW1pdHMgcnVsZXMgd2hpY2ggYXBwbHkgdGhlIGdpdmVuIHZhbHVlIHRvIHRoZVxuLy8gc3BlY2lmaWVkIGRpcmVjdGlvbiBieSBkZWZhdWx0IGFuZCB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uIGluIFJUTC5cbi8vXG4vLyBGb3IgZXhhbXBsZTpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIGxlZnQsIDhweCk7XG4vLyB9XG4vLyBgYGBcbi8vXG4vLyBpcyBlcXVpdmFsZW50IHRvOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgbWFyZ2luLWxlZnQ6IDhweDtcbi8vICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDA7XG4vLyAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4vLyAgIH1cbi8vIH1cbi8vIGBgYFxuLy9cbi8vIHdoZXJlYXM6XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCByaWdodCwgOHB4KTtcbi8vIH1cbi8vIGBgYFxuLy9cbi8vIGlzIGVxdWl2YWxlbnQgdG86XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBtYXJnaW4tbGVmdDogMDtcbi8vICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4vL1xuLy8gICBAaW5jbHVkZSBtZGMtcnRsIHtcbi8vICAgICBtYXJnaW4tbGVmdDogOHB4O1xuLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vICAgfVxuLy8gfVxuLy8gYGBgXG4vL1xuLy8gWW91IGNhbiBhbHNvIHBhc3MgYW4gb3B0aW9uYWwgNHRoIGAkcm9vdC1zZWxlY3RvcmAgYXJndW1lbnQgd2hpY2ggd2lsbCBiZSBmb3J3YXJkZWQgdG8gYG1kYy1ydGxgLFxuLy8gZS5nLiBgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgOHB4LCBcIi5tZGMtY29tcG9uZW50XCIpYC5cbi8vXG4vLyBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB3aWxsIGFsd2F5cyB6ZXJvIG91dCB0aGUgb3JpZ2luYWwgdmFsdWUgaW4gYW4gUlRMIGNvbnRleHQuXG4vLyBJZiB5b3UncmUgdHJ5aW5nIHRvIGZsaXAgdGhlIHZhbHVlcywgdXNlIGBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eSgpYCBpbnN0ZWFkLlxuQG1peGluIG1kYy1ydGwtcmVmbGV4aXZlLWJveCgkYmFzZS1wcm9wZXJ0eSwgJGRlZmF1bHQtZGlyZWN0aW9uLCAkdmFsdWUsICRyb290LXNlbGVjdG9yOiBudWxsKSB7XG4gIEBpZiAoaW5kZXgoKHJpZ2h0LCBsZWZ0KSwgJGRlZmF1bHQtZGlyZWN0aW9uKSA9PSBudWxsKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBkZWZhdWx0IGRpcmVjdGlvbjogJyN7JGRlZmF1bHQtZGlyZWN0aW9ufScuIFBsZWFzZSBzcGVjaWZpeSBlaXRoZXIgJ3JpZ2h0JyBvciAnbGVmdCcuXCI7XG4gIH1cblxuICAkbGVmdC12YWx1ZTogJHZhbHVlO1xuICAkcmlnaHQtdmFsdWU6IDA7XG5cbiAgQGlmICgkZGVmYXVsdC1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICAkbGVmdC12YWx1ZTogMDtcbiAgICAkcmlnaHQtdmFsdWU6ICR2YWx1ZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KCRiYXNlLXByb3BlcnR5LCAkbGVmdC12YWx1ZSwgJHJpZ2h0LXZhbHVlLCAkcm9vdC1zZWxlY3Rvcik7XG59XG5cbi8vIFRha2VzIGEgYmFzZSBwcm9wZXJ0eSBhbmQgZW1pdHMgcnVsZXMgdGhhdCBhc3NpZ24gPGJhc2UtcHJvcGVydHk+LWxlZnQgdG8gPGxlZnQtdmFsdWU+IGFuZFxuLy8gPGJhc2UtcHJvcGVydHk+LXJpZ2h0IHRvIDxyaWdodC12YWx1ZT4gaW4gYSBMVFIgY29udGV4dCwgYW5kIHZpY2UgdmVyc2EgaW4gYSBSVEwgY29udGV4dC5cbi8vIEZvciBleGFtcGxlOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkobWFyZ2luLCBhdXRvLCAxMnB4KTtcbi8vIH1cbi8vIGBgYFxuLy9cbi8vIGlzIGVxdWl2YWxlbnQgdG86XG4vL1xuLy8gYGBgc2Nzc1xuLy8gLm1kYy1mb28ge1xuLy8gICBtYXJnaW4tbGVmdDogYXV0bztcbi8vICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4vLyAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuLy8gICB9XG4vLyB9XG4vLyBgYGBcbi8vXG4vLyBBbiBvcHRpb25hbCA0dGggYCRyb290LXNlbGVjdG9yYCBhcmd1bWVudCBjYW4gYmUgZ2l2ZW4sIHdoaWNoIHdpbGwgYmUgcGFzc2VkIHRvIGBtZGMtcnRsYC5cbkBtaXhpbiBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eSgkYmFzZS1wcm9wZXJ0eSwgJGxlZnQtdmFsdWUsICRyaWdodC12YWx1ZSwgJHJvb3Qtc2VsZWN0b3I6IG51bGwpIHtcbiAgJHByb3AtbGVmdDogI3skYmFzZS1wcm9wZXJ0eX0tbGVmdDtcbiAgJHByb3AtcmlnaHQ6ICN7JGJhc2UtcHJvcGVydHl9LXJpZ2h0O1xuXG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlKCRwcm9wLWxlZnQsICRsZWZ0LXZhbHVlLCAkcHJvcC1yaWdodCwgJHJpZ2h0LXZhbHVlLCAkcm9vdC1zZWxlY3Rvcik7XG59XG5cbi8vIFRha2VzIGFuIGFyZ3VtZW50IHNwZWNpZnlpbmcgYSBob3Jpem9udGFsIHBvc2l0aW9uIHByb3BlcnR5IChlaXRoZXIgXCJsZWZ0XCIgb3IgXCJyaWdodFwiKSBhcyB3ZWxsXG4vLyBhcyBhIHZhbHVlLCBhbmQgYXBwbGllcyB0aGF0IHZhbHVlIHRvIHRoZSBzcGVjaWZpZWQgcG9zaXRpb24gaW4gYSBMVFIgY29udGV4dCwgYW5kIGZsaXBzIGl0IGluIGFcbi8vIFJUTCBjb250ZXh0LiBGb3IgZXhhbXBsZTpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsIDApO1xuLy8gfVxuLy8gYGBgXG4vL1xuLy8gaXMgZXF1aXZhbGVudCB0bzpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIGxlZnQ6IDA7XG4vLyAgIHJpZ2h0OiBpbml0aWFsO1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgbGVmdDogaW5pdGlhbDtcbi8vICAgICByaWdodDogMDtcbi8vICAgfVxuLy8gfVxuLy8gYGBgXG4vL1xuLy8gQW4gb3B0aW9uYWwgdGhpcmQgJHJvb3Qtc2VsZWN0b3IgYXJndW1lbnQgbWF5IGFsc28gYmUgZ2l2ZW4sIHdoaWNoIGlzIHBhc3NlZCB0byBgbWRjLXJ0bGAuXG5AbWl4aW4gbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24oJHBvc2l0aW9uLXByb3BlcnR5LCAkdmFsdWUsICRyb290LXNlbGVjdG9yOiBudWxsKSB7XG4gIEBpZiAoaW5kZXgoKHJpZ2h0LCBsZWZ0KSwgJHBvc2l0aW9uLXByb3BlcnR5KSA9PSBudWxsKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBwb3NpdGlvbiAje3Bvc2l0aW9uLXByb3BlcnR5fS4gUGxlYXNlIHNwZWNpZml5IGVpdGhlciByaWdodCBvciBsZWZ0XCI7XG4gIH1cblxuICAvLyBUT0RPOiBcImluaXRpYWxcIiBpcyBub3Qgc3VwcG9ydGVkIGluIElFIDExLiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1pbml0aWFsLXZhbHVlXG4gICRsZWZ0LXZhbHVlOiAkdmFsdWU7XG4gICRyaWdodC12YWx1ZTogaW5pdGlhbDtcblxuICBAaWYgKCRwb3NpdGlvbi1wcm9wZXJ0eSA9PSByaWdodCkge1xuICAgICRyaWdodC12YWx1ZTogJHZhbHVlO1xuICAgICRsZWZ0LXZhbHVlOiBpbml0aWFsO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUobGVmdCwgJGxlZnQtdmFsdWUsIHJpZ2h0LCAkcmlnaHQtdmFsdWUsICRyb290LXNlbGVjdG9yKTtcbn1cblxuLy8gVGFrZXMgcGFpciBvZiBwcm9wZXJ0aWVzIHdpdGggdmFsdWVzIGFzIGFyZ3VtZW50cyBhbmQgZmxpcHMgaXQgaW4gUlRMIGNvbnRleHQuXG4vLyBGb3IgZXhhbXBsZTpcbi8vXG4vLyBgYGBzY3NzXG4vLyAubWRjLWZvbyB7XG4vLyAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlKGxlZnQsIDJweCwgcmlnaHQsIDVweCk7XG4vLyB9XG4vLyBgYGBcbi8vXG4vLyBpcyBlcXVpdmFsZW50IHRvOlxuLy9cbi8vIGBgYHNjc3Ncbi8vIC5tZGMtZm9vIHtcbi8vICAgbGVmdDogMnB4O1xuLy8gICByaWdodDogNXB4O1xuLy9cbi8vICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4vLyAgICAgcmlnaHQ6IDJweDtcbi8vICAgICBsZWZ0OiA1cHg7XG4vLyAgIH1cbi8vIH1cbi8vIGBgYFxuLy9cbi8vIEFuIG9wdGlvbmFsIGZpZnRoIGAkcm9vdC1zZWxlY3RvcmAgYXJndW1lbnQgbWF5IGFsc28gYmUgZ2l2ZW4sIHdoaWNoIGlzIHBhc3NlZCB0byBgbWRjLXJ0bGAuXG5AbWl4aW4gbWRjLXJ0bC1yZWZsZXhpdmUoXG4gICRsZWZ0LXByb3BlcnR5LFxuICAkbGVmdC12YWx1ZSxcbiAgJHJpZ2h0LXByb3BlcnR5LFxuICAkcmlnaHQtdmFsdWUsXG4gICRyb290LXNlbGVjdG9yOiBudWxsXG4pIHtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1wcm9wZXJ0eV8oJGxlZnQtcHJvcGVydHksICRsZWZ0LXZhbHVlKTtcbiAgQGluY2x1ZGUgbWRjLXJ0bC1wcm9wZXJ0eV8oJHJpZ2h0LXByb3BlcnR5LCAkcmlnaHQtdmFsdWUpO1xuXG4gIEBpbmNsdWRlIG1kYy1ydGwoJHJvb3Qtc2VsZWN0b3IpIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXByb3BlcnR5XygkbGVmdC1wcm9wZXJ0eSwgJHJpZ2h0LXZhbHVlKTtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXByb3BlcnR5XygkcmlnaHQtcHJvcGVydHksICRsZWZ0LXZhbHVlKTtcbiAgfVxufVxuXG4vLy9cbi8vLyBBZGRzIGBAbm9mbGlwYCBhbm5vdGF0aW9uIHdoZW4gYCRtZGMtcnRsLWluY2x1ZGVgIGlzIHRydWUuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5XG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR2YWx1ZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJ0bC1wcm9wZXJ0eV8oJHByb3BlcnR5LCAkdmFsdWUpIHtcbiAgQGlmICRtZGMtcnRsLWluY2x1ZGUge1xuICAgIC8qIEBub2ZsaXAgKi9cbiAgfVxuXG4gICN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2ZlYXR1cmUtdGFyZ2V0aW5nL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLWVsZXZhdGlvbi1jb3JlLXN0eWxlcygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGZvciAkei12YWx1ZSBmcm9tIDAgdGhyb3VnaCAyNCB7XG4gICAgLm1kYy1lbGV2YXRpb24tLXojeyR6LXZhbHVlfSB7XG4gICAgICBAaW5jbHVkZSBtZGMtZWxldmF0aW9uKCR6LXZhbHVlLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246IG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi12YWx1ZSgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICB3aWxsLWNoYW5nZTogJG1kYy1lbGV2YXRpb24tcHJvcGVydHk7XG4gICAgfVxuICB9XG59XG5cbi8vIEFwcGxpZXMgdGhlIGNvcnJlY3QgQ1NTIHJ1bGVzIHRvIGFuIGVsZW1lbnQgdG8gZ2l2ZSBpdCB0aGUgZWxldmF0aW9uIHNwZWNpZmllZCBieSAkei12YWx1ZS5cbi8vIFRoZSAkei12YWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMjQuXG4vLyBJZiAkY29sb3IgaGFzIGFuIGFscGhhIGNoYW5uZWwsIGl0IHdpbGwgYmUgaWdub3JlZCBhbmQgb3ZlcnJpZGRlbi4gVG8gaW5jcmVhc2UgdGhlIG9wYWNpdHkgb2YgdGhlIHNoYWRvdywgdXNlXG4vLyAkb3BhY2l0eS1ib29zdC5cbkBtaXhpbiBtZGMtZWxldmF0aW9uKCR6LXZhbHVlLCAkY29sb3I6ICRtZGMtZWxldmF0aW9uLWJhc2VsaW5lLWNvbG9yLCAkb3BhY2l0eS1ib29zdDogMCwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaWYgdHlwZS1vZigkei12YWx1ZSkgIT0gbnVtYmVyIG9yIG5vdCB1bml0bGVzcygkei12YWx1ZSkge1xuICAgIEBlcnJvciBcIiR6LXZhbHVlIG11c3QgYmUgYSB1bml0bGVzcyBudW1iZXIsIGJ1dCByZWNlaXZlZCAnI3skei12YWx1ZX0nXCI7XG4gIH1cblxuICBAaWYgJHotdmFsdWUgPCAwIG9yICR6LXZhbHVlID4gMjQge1xuICAgIEBlcnJvciBcIiR6LXZhbHVlIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAyNCwgYnV0IHJlY2VpdmVkICcjeyR6LXZhbHVlfSdcIjtcbiAgfVxuXG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gICRjb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKTtcblxuICAkdW1icmEtei12YWx1ZTogbWFwLWdldCgkbWRjLWVsZXZhdGlvbi11bWJyYS1tYXAsICR6LXZhbHVlKTtcbiAgJHBlbnVtYnJhLXotdmFsdWU6IG1hcC1nZXQoJG1kYy1lbGV2YXRpb24tcGVudW1icmEtbWFwLCAkei12YWx1ZSk7XG4gICRhbWJpZW50LXotdmFsdWU6IG1hcC1nZXQoJG1kYy1lbGV2YXRpb24tYW1iaWVudC1tYXAsICR6LXZhbHVlKTtcblxuICAkdW1icmEtY29sb3I6IHJnYmEoJGNvbG9yLCAkbWRjLWVsZXZhdGlvbi11bWJyYS1vcGFjaXR5ICsgJG9wYWNpdHktYm9vc3QpO1xuICAkcGVudW1icmEtY29sb3I6IHJnYmEoJGNvbG9yLCAkbWRjLWVsZXZhdGlvbi1wZW51bWJyYS1vcGFjaXR5ICsgJG9wYWNpdHktYm9vc3QpO1xuICAkYW1iaWVudC1jb2xvcjogcmdiYSgkY29sb3IsICRtZGMtZWxldmF0aW9uLWFtYmllbnQtb3BhY2l0eSArICRvcGFjaXR5LWJvb3N0KTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgICN7XCIjeyR1bWJyYS16LXZhbHVlfSAjeyR1bWJyYS1jb2xvcn1cIn0sXG4gICAgICAje1wiI3skcGVudW1icmEtei12YWx1ZX0gI3skcGVudW1icmEtY29sb3J9XCJ9LFxuICAgICAgI3skYW1iaWVudC16LXZhbHVlfSAkYW1iaWVudC1jb2xvcjtcbiAgfVxufVxuXG4vLyBSZXR1cm5zIGEgc3RyaW5nIHRoYXQgY2FuIGJlIHVzZWQgYXMgdGhlIHZhbHVlIGZvciBhIGB0cmFuc2l0aW9uYCBwcm9wZXJ0eSBmb3IgZWxldmF0aW9uLlxuLy8gQ2FsbGluZyB0aGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGlzIHVzZWZ1bCBpbiBzaXR1YXRpb25zIHdoZXJlIGEgY29tcG9uZW50IG5lZWRzIHRvIHRyYW5zaXRpb25cbi8vIG1vcmUgdGhhbiBvbmUgcHJvcGVydHkuXG4vL1xuLy8gYGBgc2Nzc1xuLy8gLmZvbyB7XG4vLyAgIHRyYW5zaXRpb246IG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi12YWx1ZSgpLCBvcGFjaXR5IDEwMG1zIGVhc2U7XG4vLyAgIHdpbGwtY2hhbmdlOiAkbWRjLWVsZXZhdGlvbi1wcm9wZXJ0eSwgb3BhY2l0eTtcbi8vIH1cbi8vIGBgYFxuQGZ1bmN0aW9uIG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi12YWx1ZShcbiAgJGR1cmF0aW9uOiAkbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLWR1cmF0aW9uLFxuICAkZWFzaW5nOiAkbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvblxuKSB7XG4gIEByZXR1cm4gI3skbWRjLWVsZXZhdGlvbi1wcm9wZXJ0eX0gI3skZHVyYXRpb259ICN7JGVhc2luZ307XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5cbiRtZGMtZWxldmF0aW9uLWJhc2VsaW5lLWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRtZGMtZWxldmF0aW9uLXVtYnJhLW9wYWNpdHk6IC4yICFkZWZhdWx0O1xuJG1kYy1lbGV2YXRpb24tcGVudW1icmEtb3BhY2l0eTogLjE0ICFkZWZhdWx0O1xuJG1kYy1lbGV2YXRpb24tYW1iaWVudC1vcGFjaXR5OiAuMTIgIWRlZmF1bHQ7XG5cbiRtZGMtZWxldmF0aW9uLXVtYnJhLW1hcDogKFxuICAwOiBcIjBweCAwcHggMHB4IDBweFwiLFxuICAxOiBcIjBweCAycHggMXB4IC0xcHhcIixcbiAgMjogXCIwcHggM3B4IDFweCAtMnB4XCIsXG4gIDM6IFwiMHB4IDNweCAzcHggLTJweFwiLFxuICA0OiBcIjBweCAycHggNHB4IC0xcHhcIixcbiAgNTogXCIwcHggM3B4IDVweCAtMXB4XCIsXG4gIDY6IFwiMHB4IDNweCA1cHggLTFweFwiLFxuICA3OiBcIjBweCA0cHggNXB4IC0ycHhcIixcbiAgODogXCIwcHggNXB4IDVweCAtM3B4XCIsXG4gIDk6IFwiMHB4IDVweCA2cHggLTNweFwiLFxuICAxMDogXCIwcHggNnB4IDZweCAtM3B4XCIsXG4gIDExOiBcIjBweCA2cHggN3B4IC00cHhcIixcbiAgMTI6IFwiMHB4IDdweCA4cHggLTRweFwiLFxuICAxMzogXCIwcHggN3B4IDhweCAtNHB4XCIsXG4gIDE0OiBcIjBweCA3cHggOXB4IC00cHhcIixcbiAgMTU6IFwiMHB4IDhweCA5cHggLTVweFwiLFxuICAxNjogXCIwcHggOHB4IDEwcHggLTVweFwiLFxuICAxNzogXCIwcHggOHB4IDExcHggLTVweFwiLFxuICAxODogXCIwcHggOXB4IDExcHggLTVweFwiLFxuICAxOTogXCIwcHggOXB4IDEycHggLTZweFwiLFxuICAyMDogXCIwcHggMTBweCAxM3B4IC02cHhcIixcbiAgMjE6IFwiMHB4IDEwcHggMTNweCAtNnB4XCIsXG4gIDIyOiBcIjBweCAxMHB4IDE0cHggLTZweFwiLFxuICAyMzogXCIwcHggMTFweCAxNHB4IC03cHhcIixcbiAgMjQ6IFwiMHB4IDExcHggMTVweCAtN3B4XCJcbikgIWRlZmF1bHQ7XG5cbiRtZGMtZWxldmF0aW9uLXBlbnVtYnJhLW1hcDogKFxuICAwOiBcIjBweCAwcHggMHB4IDBweFwiLFxuICAxOiBcIjBweCAxcHggMXB4IDBweFwiLFxuICAyOiBcIjBweCAycHggMnB4IDBweFwiLFxuICAzOiBcIjBweCAzcHggNHB4IDBweFwiLFxuICA0OiBcIjBweCA0cHggNXB4IDBweFwiLFxuICA1OiBcIjBweCA1cHggOHB4IDBweFwiLFxuICA2OiBcIjBweCA2cHggMTBweCAwcHhcIixcbiAgNzogXCIwcHggN3B4IDEwcHggMXB4XCIsXG4gIDg6IFwiMHB4IDhweCAxMHB4IDFweFwiLFxuICA5OiBcIjBweCA5cHggMTJweCAxcHhcIixcbiAgMTA6IFwiMHB4IDEwcHggMTRweCAxcHhcIixcbiAgMTE6IFwiMHB4IDExcHggMTVweCAxcHhcIixcbiAgMTI6IFwiMHB4IDEycHggMTdweCAycHhcIixcbiAgMTM6IFwiMHB4IDEzcHggMTlweCAycHhcIixcbiAgMTQ6IFwiMHB4IDE0cHggMjFweCAycHhcIixcbiAgMTU6IFwiMHB4IDE1cHggMjJweCAycHhcIixcbiAgMTY6IFwiMHB4IDE2cHggMjRweCAycHhcIixcbiAgMTc6IFwiMHB4IDE3cHggMjZweCAycHhcIixcbiAgMTg6IFwiMHB4IDE4cHggMjhweCAycHhcIixcbiAgMTk6IFwiMHB4IDE5cHggMjlweCAycHhcIixcbiAgMjA6IFwiMHB4IDIwcHggMzFweCAzcHhcIixcbiAgMjE6IFwiMHB4IDIxcHggMzNweCAzcHhcIixcbiAgMjI6IFwiMHB4IDIycHggMzVweCAzcHhcIixcbiAgMjM6IFwiMHB4IDIzcHggMzZweCAzcHhcIixcbiAgMjQ6IFwiMHB4IDI0cHggMzhweCAzcHhcIlxuKSAhZGVmYXVsdDtcblxuJG1kYy1lbGV2YXRpb24tYW1iaWVudC1tYXA6IChcbiAgMDogXCIwcHggMHB4IDBweCAwcHhcIixcbiAgMTogXCIwcHggMXB4IDNweCAwcHhcIixcbiAgMjogXCIwcHggMXB4IDVweCAwcHhcIixcbiAgMzogXCIwcHggMXB4IDhweCAwcHhcIixcbiAgNDogXCIwcHggMXB4IDEwcHggMHB4XCIsXG4gIDU6IFwiMHB4IDFweCAxNHB4IDBweFwiLFxuICA2OiBcIjBweCAxcHggMThweCAwcHhcIixcbiAgNzogXCIwcHggMnB4IDE2cHggMXB4XCIsXG4gIDg6IFwiMHB4IDNweCAxNHB4IDJweFwiLFxuICA5OiBcIjBweCAzcHggMTZweCAycHhcIixcbiAgMTA6IFwiMHB4IDRweCAxOHB4IDNweFwiLFxuICAxMTogXCIwcHggNHB4IDIwcHggM3B4XCIsXG4gIDEyOiBcIjBweCA1cHggMjJweCA0cHhcIixcbiAgMTM6IFwiMHB4IDVweCAyNHB4IDRweFwiLFxuICAxNDogXCIwcHggNXB4IDI2cHggNHB4XCIsXG4gIDE1OiBcIjBweCA2cHggMjhweCA1cHhcIixcbiAgMTY6IFwiMHB4IDZweCAzMHB4IDVweFwiLFxuICAxNzogXCIwcHggNnB4IDMycHggNXB4XCIsXG4gIDE4OiBcIjBweCA3cHggMzRweCA2cHhcIixcbiAgMTk6IFwiMHB4IDdweCAzNnB4IDZweFwiLFxuICAyMDogXCIwcHggOHB4IDM4cHggN3B4XCIsXG4gIDIxOiBcIjBweCA4cHggNDBweCA3cHhcIixcbiAgMjI6IFwiMHB4IDhweCA0MnB4IDdweFwiLFxuICAyMzogXCIwcHggOXB4IDQ0cHggOHB4XCIsXG4gIDI0OiBcIjBweCA5cHggNDZweCA4cHhcIlxuKSAhZGVmYXVsdDtcblxuLy8gVGhlIGNzcyBwcm9wZXJ0eSB1c2VkIGZvciBlbGV2YXRpb24uIEluIG1vc3QgY2FzZXMgdGhpcyBzaG91bGQgbm90IGJlIGNoYW5nZWQuIEl0IGlzIGV4cG9zZWRcbi8vIGFzIGEgdmFyaWFibGUgZm9yIGFic3RyYWN0aW9uIC8gZWFzeSB1c2Ugd2hlbiBuZWVkaW5nIHRvIHJlZmVyZW5jZSB0aGUgcHJvcGVydHkgZGlyZWN0bHksIGZvclxuLy8gZXhhbXBsZSBpbiBhIGB3aWxsLWNoYW5nZWAgcnVsZS5cbiRtZGMtZWxldmF0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBkdXJhdGlvbiB2YWx1ZSBmb3IgZWxldmF0aW9uIHRyYW5zaXRpb25zLlxuJG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi1kdXJhdGlvbjogMjgwbXMgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGVhc2luZyB2YWx1ZSBmb3IgZWxldmF0aW9uIHRyYW5zaXRpb25zLlxuJG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbiAhZGVmYXVsdDtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4vLyBNREMgUmlwcGxlIGtleWZyYW1lcyBhcmUgc3BsaXQgaW50byB0aGVpciBvd24gZmlsZSBzbyB0aGF0IF9taXhpbnMuc2NzcyBjYW4gcmVseSBvbiB0aGVtLlxuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLXJpcHBsZS1rZXlmcmFtZXNfIHtcbiAgQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiB7XG4gICAgZnJvbSB7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkbWRjLWFuaW1hdGlvbi1zdGFuZGFyZC1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgICAvLyBOT1RFOiBGb3IgdGhlc2Uga2V5ZnJhbWVzLCB3ZSBkbyBub3QgbmVlZCBjdXN0b20gcHJvcGVydHkgZmFsbGJhY2tzIGJlY2F1c2UgdGhleSBhcmUgb25seVxuICAgICAgLy8gdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGAubWRjLXJpcHBsZS11cGdyYWRlZGAuIFNpbmNlIE1EQ1JpcHBsZUZvdW5kYXRpb24gY2hlY2tzIHRvIGVuc3VyZVxuICAgICAgLy8gdGhhdCBjdXN0b20gcHJvcGVydGllcyBhcmUgc3VwcG9ydGVkIHdpdGhpbiB0aGUgYnJvd3NlciBiZWZvcmUgYWRkaW5nIHRoaXMgY2xhc3MsIHdlIGNhblxuICAgICAgLy8gc2FmZWx5IHVzZSB0aGVtIHdpdGhvdXQgYSBmYWxsYmFjay5cbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0LCAwKSkgc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIHtcbiAgICBmcm9tIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQge1xuICAgIGZyb20ge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtYW5pbWF0aW9uLWRlY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAuMiwgMSkgIWRlZmF1bHQ7XG4kbWRjLWFuaW1hdGlvbi1zdGFuZGFyZC1jdXJ2ZS10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpICFkZWZhdWx0O1xuJG1kYy1hbmltYXRpb24tYWNjZWxlcmF0aW9uLWN1cnZlLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40LCAwLCAxLCAxKSAhZGVmYXVsdDtcbiRtZGMtYW5pbWF0aW9uLXNoYXJwLWN1cnZlLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40LCAwLCAuNiwgMSkgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTYgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYmFzZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2ZlYXR1cmUtdGFyZ2V0aW5nL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIi4va2V5ZnJhbWVzXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1yaXBwbGUtY29yZS1zdHlsZXMoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAvLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSByaXBwbGUtc3VyZmFjZVxuXG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgLm1kYy1yaXBwbGUtc3VyZmFjZSB7XG4gICAgQGluY2x1ZGUgbWRjLXJpcHBsZS1zdXJmYWNlKCRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkKCRxdWVyeTogJHF1ZXJ5KTtcblxuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmW2RhdGEtbWRjLXJpcHBsZS1pcy11bmJvdW5kZWRdIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtcmFkaXVzLXVuYm91bmRlZCgkcXVlcnk6ICRxdWVyeSk7XG5cbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWRjLXN0YXRlcyhwcmltYXJ5LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgfVxuXG4gICAgJi0tYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMoc2Vjb25kYXJ5LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgfVxuICB9XG5cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbn1cblxuQG1peGluIG1kYy1yaXBwbGUtY29tbW9uKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtYW5pbWF0aW9uOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgYW5pbWF0aW9uKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICAvLyBFbnN1cmUgdGhhdCBzdHlsZXMgbmVlZGVkIGJ5IGFueSBjb21wb25lbnQgdXNpbmcgTURDIFJpcHBsZSBhcmUgZW1pdHRlZCwgYnV0IG9ubHkgb25jZS5cbiAgLy8gKEV2ZXJ5IGNvbXBvbmVudCB1c2luZyBNREMgUmlwcGxlIGltcG9ydHMgdGhlc2UgbWl4aW5zLCBidXQgZG9lc24ndCBuZWNlc3NhcmlseSBpbXBvcnRcbiAgLy8gbWRjLXJpcHBsZS5zY3NzLilcbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICBAaW5jbHVkZSBtZGMtYmFzZS1lbWl0LW9uY2UoXCJtZGMtcmlwcGxlL2NvbW1vbi9hbmltYXRpb25cIikge1xuICAgICAgQGluY2x1ZGUgbWRjLXJpcHBsZS1rZXlmcmFtZXNfO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgQGluY2x1ZGUgbWRjLWJhc2UtZW1pdC1vbmNlKFwibWRjLXJpcHBsZS9jb21tb24vc3RydWN0dXJlXCIpIHtcbiAgICAgIC8vIFN0eWxlcyB1c2VkIHRvIGRldGVjdCBidWdneSBiZWhhdmlvciBvZiBDU1MgY3VzdG9tIHByb3BlcnRpZXMgaW4gRWRnZS5cbiAgICAgIC8vIFNlZTogaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9pc3N1ZXMvMTE0OTU0NDgvXG4gICAgICAvLyBUaGlzIGlzIGluY2x1ZGVkIGluIF9taXhpbnMuc2NzcyByYXRoZXIgdGhhbiBtZGMtcmlwcGxlLnNjc3Mgc28gdGhhdCBpdCB3aWxsIGJlXG4gICAgICAvLyBwcmVzZW50IGZvciBvdGhlciBjb21wb25lbnRzIHdoaWNoIHJlbHkgb24gcmlwcGxlIGFzIHdlbGwgYXMgbWRjLXJpcHBsZSBpdHNlbGYuXG4gICAgICAubWRjLXJpcHBsZS1zdXJmYWNlLS10ZXN0LWVkZ2UtdmFyLWJ1ZyB7XG4gICAgICAgIC0tbWRjLXJpcHBsZS1zdXJmYWNlLXRlc3QtZWRnZS12YXI6IDFweCBzb2xpZCAjMDAwO1xuXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlcjogdmFyKC0tbWRjLXJpcHBsZS1zdXJmYWNlLXRlc3QtZWRnZS12YXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtcmlwcGxlLXN1cmZhY2UoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSwgJHJpcHBsZS10YXJnZXQ6IFwiJlwiKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAgIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIC8vICEhRE8gTk9UIFJFTU9WRSEhIG1kYy1yaXBwbGUtd2lsbC1jaGFuZ2UtcmVwbGFjZXJcbiAgfVxuXG4gICN7JHJpcHBsZS10YXJnZXR9OjpiZWZvcmUsXG4gICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgI3skcmlwcGxlLXRhcmdldH06OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgIC8vIEFsc28gdHJhbnNpdGlvbiBiYWNrZ3JvdW5kLWNvbG9yIHRvIGF2b2lkIHVubmF0dXJhbCBjb2xvciBmbGFzaGVzIHdoZW4gdG9nZ2xpbmcgYWN0aXZhdGVkL3NlbGVjdGVkIHN0YXRlXG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBvcGFjaXR5ICRtZGMtc3RhdGVzLXdhc2gtZHVyYXRpb24gbGluZWFyLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICRtZGMtc3RhdGVzLXdhc2gtZHVyYXRpb24gbGluZWFyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICB6LWluZGV4OiAxOyAvLyBFbnN1cmUgdGhhdCB0aGUgcmlwcGxlIHdhc2ggZm9yIGhvdmVyL2ZvY3VzIHN0YXRlcyBpcyBkaXNwbGF5ZWQgb24gdG9wIG9mIHBvc2l0aW9uZWQgY2hpbGQgZWxlbWVudHNcbiAgICB9XG4gIH1cblxuICAvLyBDb21tb24gc3R5bGVzIGZvciB1cGdyYWRlZCBzdXJmYWNlcyAoc29tZSBvZiB0aGVzZSBkZXBlbmQgb24gY3VzdG9tIHByb3BlcnRpZXMgc2V0IHZpYSBKUyBvciBvdGhlciBtaXhpbnMpXG5cbiAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgICAjeyRyaXBwbGUtdGFyZ2V0fTo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZCB7XG4gICAgI3skcmlwcGxlLXRhcmdldH06OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAgICAgICAvKiBAbm9mbGlwICovXG4gICAgICAgIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb24ge1xuICAgICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICBhbmltYXRpb246XG4gICAgICAgICAgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gJG1kYy1yaXBwbGUtdHJhbnNsYXRlLWR1cmF0aW9uIGZvcndhcmRzLFxuICAgICAgICAgIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiAkbWRjLXJpcHBsZS1mYWRlLWluLWR1cmF0aW9uIGZvcndhcmRzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb24ge1xuICAgICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgJG1kYy1yaXBwbGUtZmFkZS1vdXQtZHVyYXRpb247XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIC8vIFJldGFpbiB0cmFuc2Zvcm0gZnJvbSBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiBhY3RpdmF0aW9uXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1zdGF0ZXMtYmFzZS1jb2xvcihcbiAgJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpLCAkcmlwcGxlLXRhcmdldDogXCImXCIpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgI3skcmlwcGxlLXRhcmdldH06OmJlZm9yZSxcbiAgI3skcmlwcGxlLXRhcmdldH06OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBAaWYgYWxwaGEobWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKSkgPiAwIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yLCAkZWRnZU9wdE91dDogdHJ1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gSWYgYSBjb2xvciB3aXRoIDAgYWxwaGEgaXMgc3BlY2lmaWVkLCBkb24ndCByZW5kZXIgdGhlIHJpcHBsZSBwc2V1ZG8tZWxlbWVudHMgYXQgYWxsLlxuICAgICAgICAvLyBUaGlzIGF2b2lkcyB1bm5lY2Vzc2FyeSB0cmFuc2l0aW9ucyBhbmQgb3ZlcmZsb3cuXG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8vIEN1c3RvbWl6ZXMgcmlwcGxlIG9wYWNpdGllcyBpbiBgaG92ZXJgLCBgZm9jdXNgLCBvciBgcHJlc3NgIHN0YXRlc1xuLy8vIEBwYXJhbSB7bWFwfSAkb3BhY2l0eS1tYXAgLSBtYXAgc3BlY2lmeWluZyBjdXN0b20gb3BhY2l0eSBvZiB6ZXJvIG9yIG1vcmUgc3RhdGVzXG4vLy8gQHBhcmFtIHtib29sfSAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudCAtIHdoZXRoZXIgdGhlIGNvbXBvbmVudCBjb250YWlucyBhIGZvY3VzYWJsZSBlbGVtZW50IGluIHRoZSByb290XG4vLy9cbkBtaXhpbiBtZGMtc3RhdGVzLW9wYWNpdGllcygkb3BhY2l0eS1tYXA6ICgpLCAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudDogZmFsc2UsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgLy8gRW5zdXJlIHN1ZmZpY2llbnQgc3BlY2lmaWNpdHkgdG8gb3ZlcnJpZGUgYmFzZSBzdGF0ZSBvcGFjaXRpZXNcbiAgQGlmIG1hcC1oYXMta2V5KCRvcGFjaXR5LW1hcCwgaG92ZXIpIHtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWhvdmVyLW9wYWNpdHkobWFwLWdldCgkb3BhY2l0eS1tYXAsIGhvdmVyKSwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRvcGFjaXR5LW1hcCwgZm9jdXMpIHtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHkobWFwLWdldCgkb3BhY2l0eS1tYXAsIGZvY3VzKSwgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIEBpZiBtYXAtaGFzLWtleSgkb3BhY2l0eS1tYXAsIHByZXNzKSB7XG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcy1wcmVzcy1vcGFjaXR5KG1hcC1nZXQoJG9wYWNpdHktbWFwLCBwcmVzcyksICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXN0YXRlcy1ob3Zlci1vcGFjaXR5KFxuICAkb3BhY2l0eSwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSwgJHJpcHBsZS10YXJnZXQ6IFwiJlwiKSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIC8vIEJhY2tncm91bmQgd2FzaCBzdHlsZXMsIGZvciBib3RoIENTUy1vbmx5IGFuZCB1cGdyYWRlZCBzdGF0ZWZ1bCBzdXJmYWNlc1xuICAmOmhvdmVyIHtcbiAgICAjeyRyaXBwbGUtdGFyZ2V0fTo6YmVmb3JlIHtcbiAgICAgIC8vIE9wYWNpdHkgZmFsbHMgdW5kZXIgY29sb3IgYmVjYXVzZSB0aGUgY2hvc2VuIG9wYWNpdHkgaXMgY29sb3ItZGVwZW5kZW50IGluIHR5cGljYWwgdXNhZ2VcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHkoXG4gICRvcGFjaXR5LFxuICAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudDogZmFsc2UsXG4gICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCksXG4gICRyaXBwbGUtdGFyZ2V0OiBcIiZcIikge1xuXG4gIC8vIEZvY3VzIG92ZXJyaWRlcyBob3ZlciBieSByZXVzaW5nIHRoZSA6OmJlZm9yZSBwc2V1ZG8tZWxlbWVudC5cbiAgLy8gOmZvY3VzLXdpdGhpbiBnZW5lcmFsbHkgd29ya3Mgb24gbm9uLU1TIGJyb3dzZXJzIGFuZCBtYXRjaGVzIHdoZW4gYSAqY2hpbGQqIG9mIHRoZSBlbGVtZW50IGhhcyBmb2N1cy5cbiAgLy8gSXQgaXMgdXNlZnVsIGZvciBjYXNlcyB3aGVyZSBhIGNvbXBvbmVudCBoYXMgYSBmb2N1c2FibGUgZWxlbWVudCB3aXRoaW4gdGhlIHJvb3Qgbm9kZSwgZS5nLiB0ZXh0IGZpZWxkLFxuICAvLyBidXQgdW5kZXNpcmFibGUgaW4gZ2VuZXJhbCBpbiBjYXNlIG9mIG5lc3RlZCBzdGF0ZWZ1bCBjb21wb25lbnRzLlxuICAvLyBXZSB1c2UgYSBtb2RpZmllciBjbGFzcyBmb3IgSlMtZW5hYmxlZCBzdXJmYWNlcyB0byBzdXBwb3J0IGFsbCB1c2UgY2FzZXMgaW4gYWxsIGJyb3dzZXJzLlxuICBAaWYgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQge1xuICAgIC8vIEpTLWVuYWJsZWQgc2VsZWN0b3JzLlxuICAgICYubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkLFxuICAgICYubWRjLXJpcHBsZS11cGdyYWRlZDpmb2N1cy13aXRoaW4sXG4gICAgLy8gQ1NTLW9ubHkgc2VsZWN0b3JzLlxuICAgICY6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1cyxcbiAgICAmOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXMtd2l0aGluIHtcbiAgICAgICN7JHJpcHBsZS10YXJnZXR9OjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHktcHJvcGVydGllc18oXG4gICAgICAgICAgJG9wYWNpdHk6ICRvcGFjaXR5LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBKUy1lbmFibGVkIHNlbGVjdG9ycy5cbiAgICAmLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZCxcbiAgICAvLyBDU1Mtb25seSBzZWxlY3RvcnMuXG4gICAgJjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzIHtcbiAgICAgICN7JHJpcHBsZS10YXJnZXR9OjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHktcHJvcGVydGllc18oXG4gICAgICAgICAgJG9wYWNpdHk6ICRvcGFjaXR5LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtc3RhdGVzLWZvY3VzLW9wYWNpdHktcHJvcGVydGllc18oJG9wYWNpdHksICRxdWVyeSkge1xuICAkZmVhdC1hbmltYXRpb246IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBhbmltYXRpb24pO1xuICAvLyBPcGFjaXR5IGZhbGxzIHVuZGVyIGNvbG9yIGJlY2F1c2UgdGhlIGNob3NlbiBvcGFjaXR5IGlzIGNvbG9yLWRlcGVuZGVudCBpbiB0eXBpY2FsIHVzYWdlXG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIC8vIE5vdGUgdGhhdCB0aGlzIGR1cmF0aW9uIGlzIG9ubHkgZWZmZWN0aXZlIG9uIGZvY3VzLCBub3QgYmx1clxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zdGF0ZXMtcHJlc3Mtb3BhY2l0eSgkb3BhY2l0eSwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSwgJHJpcHBsZS10YXJnZXQ6IFwiJlwiKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIC8vIFN0eWxlcyBmb3Igbm9uLXVwZ3JhZGVkIChDU1Mtb25seSkgc3RhdGVmdWwgc3VyZmFjZXNcblxuICAmOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCkge1xuICAgIC8vIEFwcGx5IHByZXNzIGFkZGl0aXZlbHkgYnkgdXNpbmcgdGhlIDo6YWZ0ZXIgcHNldWRvLWVsZW1lbnRcbiAgICAjeyRyaXBwbGUtdGFyZ2V0fTo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkbWRjLXJpcHBsZS1mYWRlLW91dC1kdXJhdGlvbiBsaW5lYXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgI3skcmlwcGxlLXRhcmdldH06OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkbWRjLXJpcHBsZS1mYWRlLWluLWR1cmF0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gT3BhY2l0eSBmYWxscyB1bmRlciBjb2xvciBiZWNhdXNlIHRoZSBjaG9zZW4gb3BhY2l0eSBpcyBjb2xvci1kZXBlbmRlbnQgaW4gdHlwaWNhbCB1c2FnZVxuICAgICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICAgICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAjeyRvcGFjaXR5fTtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2ltcGxlIG1peGluIGZvciBiYXNlIHN0YXRlcyB3aGljaCBhdXRvbWF0aWNhbGx5IHNlbGVjdHMgb3BhY2l0eSB2YWx1ZXMgYmFzZWQgb24gd2hldGhlciB0aGUgaW5rIGNvbG9yIGlzXG4vLyBsaWdodCBvciBkYXJrLlxuQG1peGluIG1kYy1zdGF0ZXMoXG4gICRjb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksXG4gICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50OiBmYWxzZSxcbiAgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSxcbiAgJHJpcHBsZS10YXJnZXQ6IFwiJlwiLFxuKSB7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaW50ZXJhY3Rpb25zXyhcbiAgICAkY29sb3I6ICRjb2xvcixcbiAgICAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudDogJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQsXG4gICAgJHF1ZXJ5OiAkcXVlcnksXG4gICAgJHJpcHBsZS10YXJnZXQ6ICRyaXBwbGUtdGFyZ2V0KTtcbn1cblxuLy8gU2ltcGxlIG1peGluIGZvciBhY3RpdmF0ZWQgc3RhdGVzIHdoaWNoIGF1dG9tYXRpY2FsbHkgc2VsZWN0cyBvcGFjaXR5IHZhbHVlcyBiYXNlZCBvbiB3aGV0aGVyIHRoZSBpbmsgY29sb3IgaXNcbi8vIGxpZ2h0IG9yIGRhcmsuXG5AbWl4aW4gbWRjLXN0YXRlcy1hY3RpdmF0ZWQoXG4gICRjb2xvciwgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQ6IGZhbHNlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpLCAkcmlwcGxlLXRhcmdldDogXCImXCIpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG4gICRhY3RpdmF0ZWQtb3BhY2l0eTogbWRjLXN0YXRlcy1vcGFjaXR5KCRjb2xvciwgYWN0aXZhdGVkKTtcblxuICAmLS1hY3RpdmF0ZWQge1xuICAgIC8vIFN0eWxlbGludCBzZWVtcyB0byB0aGluayB0aGF0ICcmJyBxdWFsaWZpZXMgYXMgYSB0eXBlIHNlbGVjdG9yIGhlcmU/XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlXG4gICAgI3skcmlwcGxlLXRhcmdldH06OmJlZm9yZSB7XG4gICAgICAvLyBPcGFjaXR5IGZhbGxzIHVuZGVyIGNvbG9yIGJlY2F1c2UgdGhlIGNob3NlbiBvcGFjaXR5IGlzIGNvbG9yLWRlcGVuZGVudC5cbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgICAgb3BhY2l0eTogJGFjdGl2YXRlZC1vcGFjaXR5O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaW50ZXJhY3Rpb25zXyhcbiAgICAgICRjb2xvcjogJGNvbG9yLFxuICAgICAgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQ6ICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50LFxuICAgICAgJG9wYWNpdHktbW9kaWZpZXI6ICRhY3RpdmF0ZWQtb3BhY2l0eSxcbiAgICAgICRxdWVyeTogJHF1ZXJ5LFxuICAgICAgJHJpcHBsZS10YXJnZXQ6ICRyaXBwbGUtdGFyZ2V0KTtcbiAgfVxufVxuXG4vLyBTaW1wbGUgbWl4aW4gZm9yIHNlbGVjdGVkIHN0YXRlcyB3aGljaCBhdXRvbWF0aWNhbGx5IHNlbGVjdHMgb3BhY2l0eSB2YWx1ZXMgYmFzZWQgb24gd2hldGhlciB0aGUgaW5rIGNvbG9yIGlzXG4vLyBsaWdodCBvciBkYXJrLlxuQG1peGluIG1kYy1zdGF0ZXMtc2VsZWN0ZWQoXG4gICRjb2xvcixcbiAgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQ6IGZhbHNlLFxuICAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpLFxuICAkcmlwcGxlLXRhcmdldDogXCImXCIpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG4gICRzZWxlY3RlZC1vcGFjaXR5OiBtZGMtc3RhdGVzLW9wYWNpdHkoJGNvbG9yLCBzZWxlY3RlZCk7XG5cbiAgJi0tc2VsZWN0ZWQge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZVxuICAgICN7JHJpcHBsZS10YXJnZXR9OjpiZWZvcmUge1xuICAgICAgLy8gT3BhY2l0eSBmYWxscyB1bmRlciBjb2xvciBiZWNhdXNlIHRoZSBjaG9zZW4gb3BhY2l0eSBpcyBjb2xvci1kZXBlbmRlbnQuXG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICAgIG9wYWNpdHk6ICRzZWxlY3RlZC1vcGFjaXR5O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaW50ZXJhY3Rpb25zXyhcbiAgICAgICRjb2xvcjogJGNvbG9yLFxuICAgICAgJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQ6ICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50LFxuICAgICAgJG9wYWNpdHktbW9kaWZpZXI6ICRzZWxlY3RlZC1vcGFjaXR5LFxuICAgICAgJHF1ZXJ5OiAkcXVlcnksXG4gICAgICAkcmlwcGxlLXRhcmdldDogJHJpcHBsZS10YXJnZXQpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkKFxuICAkcmFkaXVzOiAxMDAlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpLCAkcmlwcGxlLXRhcmdldDogXCImXCIpIHtcbiAgJGZlYXQtc3RydXR1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gICN7JHJpcHBsZS10YXJnZXR9OjpiZWZvcmUsXG4gICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1dHVyZSkge1xuICAgICAgdG9wOiBjYWxjKDUwJSAtICN7JHJhZGl1c30pO1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAjeyRyYWRpdXN9KTtcbiAgICAgIHdpZHRoOiAkcmFkaXVzICogMjtcbiAgICAgIGhlaWdodDogJHJhZGl1cyAqIDI7XG4gICAgfVxuICB9XG5cbiAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgICAjeyRyaXBwbGUtdGFyZ2V0fTo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1dHVyZSkge1xuICAgICAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAkcmFkaXVzKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsICRyYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXJpcHBsZS1yYWRpdXMtdW5ib3VuZGVkKFxuICAkcmFkaXVzOiAxMDAlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpLCAkcmlwcGxlLXRhcmdldDogXCImXCIpIHtcbiAgJGZlYXQtc3RydXR1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gICN7JHJpcHBsZS10YXJnZXR9OjpiZWZvcmUsXG4gICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1dHVyZSkge1xuICAgICAgdG9wOiBjYWxjKDUwJSAtICN7JHJhZGl1cyAvIDJ9KTtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gI3skcmFkaXVzIC8gMn0pO1xuICAgICAgd2lkdGg6ICRyYWRpdXM7XG4gICAgICBoZWlnaHQ6ICRyYWRpdXM7XG4gICAgfVxuICB9XG5cbiAgJi5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgICAjeyRyaXBwbGUtdGFyZ2V0fTo6YmVmb3JlLFxuICAgICN7JHJpcHBsZS10YXJnZXR9OjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnV0dXJlKSB7XG4gICAgICAgIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIGNhbGMoNTAlIC0gI3skcmFkaXVzIC8gMn0pKTtcbiAgICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIGNhbGMoNTAlIC0gI3skcmFkaXVzIC8gMn0pKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgJHJhZGl1cyk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAkcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjeyRyaXBwbGUtdGFyZ2V0fTo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1dHVyZSkge1xuICAgICAgICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAkcmFkaXVzKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsICRyYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXN0YXRlcy1pbnRlcmFjdGlvbnNfKFxuICAkY29sb3IsXG4gICRoYXMtbmVzdGVkLWZvY3VzYWJsZS1lbGVtZW50LFxuICAkb3BhY2l0eS1tb2RpZmllcjogMCxcbiAgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSxcbiAgJHJpcHBsZS10YXJnZXQ6IFwiJlwiLFxuKSB7XG4gIEBpbmNsdWRlIG1kYy1yaXBwbGUtdGFyZ2V0LXNlbGVjdG9yKCRyaXBwbGUtdGFyZ2V0KSB7XG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcy1iYXNlLWNvbG9yKCRjb2xvciwgJHF1ZXJ5KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaG92ZXItb3BhY2l0eShcbiAgICAkb3BhY2l0eTogbWRjLXN0YXRlcy1vcGFjaXR5KCRjb2xvciwgaG92ZXIpICsgJG9wYWNpdHktbW9kaWZpZXIsXG4gICAgJHF1ZXJ5OiAkcXVlcnksXG4gICAgJHJpcHBsZS10YXJnZXQ6ICRyaXBwbGUtdGFyZ2V0KTtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1mb2N1cy1vcGFjaXR5KFxuICAgICRvcGFjaXR5OiBtZGMtc3RhdGVzLW9wYWNpdHkoJGNvbG9yLCBmb2N1cykgKyAkb3BhY2l0eS1tb2RpZmllcixcbiAgICAkaGFzLW5lc3RlZC1mb2N1c2FibGUtZWxlbWVudDogJGhhcy1uZXN0ZWQtZm9jdXNhYmxlLWVsZW1lbnQsXG4gICAgJHF1ZXJ5OiAkcXVlcnksXG4gICAgJHJpcHBsZS10YXJnZXQ6ICRyaXBwbGUtdGFyZ2V0LFxuICApO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLXByZXNzLW9wYWNpdHkoXG4gICAgJG9wYWNpdHk6IG1kYy1zdGF0ZXMtb3BhY2l0eSgkY29sb3IsIHByZXNzKSArICRvcGFjaXR5LW1vZGlmaWVyLFxuICAgICRxdWVyeTogJHF1ZXJ5LFxuICAgICRyaXBwbGUtdGFyZ2V0OiAkcmlwcGxlLXRhcmdldCk7XG59XG5cbi8vIFdyYXBzIGNvbnRlbnQgaW4gdGhlIGByaXBwbGUtdGFyZ2V0YCBzZWxlY3RvciBpZiBpdCBleGlzdHMuXG5AbWl4aW4gbWRjLXJpcHBsZS10YXJnZXQtc2VsZWN0b3IoJHJpcHBsZS10YXJnZXQ6IFwiJlwiKSB7XG4gIEBpZiAkcmlwcGxlLXRhcmdldCA9PSBcIiZcIiB7XG4gICAgQGNvbnRlbnQ7XG4gIH0gQGVsc2Uge1xuICAgICN7JHJpcHBsZS10YXJnZXR9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb21tb24gc3R5bGVzIGZvciBhIHJpcHBsZSB0YXJnZXQgZWxlbWVudC5cbi8vIFVzZWQgZm9yIGNvbXBvbmVudHMgd2hpY2ggaGF2ZSBhbiBpbm5lciByaXBwbGUgdGFyZ2V0IGVsZW1lbnQuXG5AbWl4aW4gbWRjLXJpcHBsZS10YXJnZXQtY29tbW9uKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gTmVjZXNzYXJ5IGZvciBjbGlja3Mgb24gb3RoZXIgaW5uZXIgZWxlbWVudHMgKGUuZy4gY2xvc2UgaWNvbiBpbiBjaGlwKVxuICAgIC8vIHRvIGdvIHRocm91Z2guXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNiBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4kbWRjLXJpcHBsZS1mYWRlLWluLWR1cmF0aW9uOiA3NW1zICFkZWZhdWx0O1xuJG1kYy1yaXBwbGUtZmFkZS1vdXQtZHVyYXRpb246IDE1MG1zICFkZWZhdWx0O1xuJG1kYy1yaXBwbGUtdHJhbnNsYXRlLWR1cmF0aW9uOiAyMjVtcyAhZGVmYXVsdDtcbiRtZGMtc3RhdGVzLXdhc2gtZHVyYXRpb246IDE1bXMgIWRlZmF1bHQ7XG5cbi8vIE5vdGVzIG9uIHN0YXRlczpcbi8vICogZm9jdXMgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIGhvdmVyIChpLmUuIGlmIGFuIGVsZW1lbnQgaXMgYm90aCBmb2N1c2VkIGFuZCBob3ZlcmVkLCBvbmx5IGZvY3VzIHZhbHVlIGFwcGxpZXMpXG4vLyAqIHByZXNzIHN0YXRlIGFwcGxpZXMgdG8gYSBzZXBhcmF0ZSBwc2V1ZG8tZWxlbWVudCwgc28gaXQgaGFzIGFuIGFkZGl0aXZlIGVmZmVjdCBvbiB0b3Agb2Ygb3RoZXIgc3RhdGVzXG4vLyAqIHNlbGVjdGVkL2FjdGl2YXRlZCBhcmUgYXBwbGllZCBhZGRpdGl2ZWx5IHRvIGhvdmVyL2ZvY3VzIHZpYSBjYWxjdWxhdGlvbnMgYXQgcHJlcHJvY2Vzc2luZyB0aW1lXG5cbiRtZGMtcmlwcGxlLWRhcmstaW5rLW9wYWNpdGllczogKFxuICBob3ZlcjogLjA0LFxuICBmb2N1czogLjEyLFxuICBwcmVzczogLjEyLFxuICBzZWxlY3RlZDogLjA4LFxuICBhY3RpdmF0ZWQ6IC4xMlxuKSAhZGVmYXVsdDtcblxuJG1kYy1yaXBwbGUtbGlnaHQtaW5rLW9wYWNpdGllczogKFxuICBob3ZlcjogLjA4LFxuICBmb2N1czogLjI0LFxuICBwcmVzczogLjI0LFxuICBzZWxlY3RlZDogLjE2LFxuICBhY3RpdmF0ZWQ6IC4yNFxuKSAhZGVmYXVsdDtcblxuLy8gTGVnYWN5XG5cbiRtZGMtcmlwcGxlLXByZXNzZWQtZGFyay1pbmstb3BhY2l0eTogLjE2ICFkZWZhdWx0O1xuJG1kYy1yaXBwbGUtcHJlc3NlZC1saWdodC1pbmstb3BhY2l0eTogLjMyICFkZWZhdWx0O1xuIiwiXHJcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYnV0dG9uL21kYy1idXR0b25cIjtcclxuXHJcbmh0bWwsXHJcbmJvZHkge1xyXG4gICBtYXJnaW46IDA7XHJcbiAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbmEge1xyXG4gICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbmgxLCBoMiB7XHJcbiAgIGZvbnQtZmFtaWx5OiBcIlBUIFNlcmlmXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xyXG59XHJcblxyXG5oMSB7XHJcbiAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgIGNvbG9yOiAkY29sb3JfcHJpbWFpcmU7XHJcbiAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmgyIHtcclxuICAgZm9udC1zaXplOiAyZW07XHJcbiAgIGNvbG9yOiAkY29sb3JfcHJpbWFpcmU7XHJcbiAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmgzIHtcclxuICAgZm9udC1zaXplOiAxLjNlbTtcclxuICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgY29sb3I6ICM2NjY7XHJcbiAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbn1cclxuXHJcbnAsXHJcbnVsID4gbGkge1xyXG4gICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxucCB7XHJcbiAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxufVxyXG5cclxubWFpbiB7XHJcbiAgIG1pbi1oZWlnaHQ6IDYwMHB4O1xyXG59XHJcblxyXG4uZmxleC1yb3cge1xyXG4gICBkaXNwbGF5OiBmbGV4O1xyXG4gICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG59XHJcblxyXG4uZmxleC1jb2x1bW4ge1xyXG4gICBkaXNwbGF5OiBmbGV4O1xyXG4gICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZmxleC1jZW50ZXItY2VudGVyIHtcclxuICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50ZXh0LWNlbnRlciB7XHJcbiAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRleHQtanVzdGlmeSB7XHJcbiAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcblxyXG4gICBoMSwgaDIsIGgzIHtcclxuICAgICAgdGV4dC1hbGlnbjogaW5pdGlhbDtcclxuICAgfVxyXG59XHJcblxyXG4uY29udGFpbmVyX2NlbnRlciB7XHJcbiAgIHdpZHRoOiA5MCU7XHJcbiAgIG1heC13aWR0aDogJHdpZHRoX21heF9jb250ZW50O1xyXG4gICBtYXJnaW46IDAgYXV0byAzZW07XHJcbn1cclxuXHJcbi5zZXBhcmF0ZXVyIHtcclxuICAgZGlzcGxheTogYmxvY2s7XHJcbiAgIHdpZHRoOiAxMDAlO1xyXG4gICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggbGlnaHRncmF5O1xyXG5cclxuICAgJi5zZXBhcmF0ZXVyX192ZXJ0aWNhbCB7XHJcbiAgICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBib3JkZXItbGVmdDogc29saWQgMXB4IGxpZ2h0Z3JheTtcclxuICAgfVxyXG59XHJcblxyXG4vLyBlc3BhY2UgZHUgbWVudVxyXG5cclxuLm1haW5fX2hlYWRlci1wYWRkaW5nIHtcclxuICAgcGFkZGluZy10b3A6IDEyMHB4O1xyXG5cclxuICAgQGluY2x1ZGUgbWVkaWEobW9iaWxlb25seSkge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNzJweDtcclxuICAgfVxyXG59XHJcblxyXG4vKipcclxuICAgQmFja2dyb3VuZCBjZW50ZXIgY292ZXJcclxuICovXHJcbi5jb250YWluZXItYmFja2dyb3VuZCB7XHJcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgfVxyXG59XHJcblxyXG4vKipcclxuICAgSGVhZGVyIGF2ZWMgbGUgZm9uZCBldCBsYSBjYXRjaCBwaHJhc2VcclxuICovXHJcbi5oZWFkZXItYmFubmllcmUge1xyXG4gICBAZXh0ZW5kIC5jb250YWluZXItYmFja2dyb3VuZDtcclxuXHJcbiAgICZfY29udGVudCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAwLjUpO1xyXG4gICAgICBwYWRkaW5nOiAxMDBweCAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICB9XHJcblxyXG59XHJcblxyXG4vKipcclxuICAgTG9hZGVyIFNwaW5uZXJcclxuICovXHJcbi5zcGlubmVyLWR1YWwtcmluZyB7XHJcbiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgd2lkdGg6IDY0cHg7XHJcbiAgIGhlaWdodDogNjRweDtcclxuXHJcbiAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiA0NnB4O1xyXG4gICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgIG1hcmdpbjogMXB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIGJvcmRlcjogNXB4IHNvbGlkICRjb2xvcl9zZWNvbmRhaXJlO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9zZWNvbmRhaXJlIHRyYW5zcGFyZW50ICRjb2xvcl9zZWNvbmRhaXJlIHRyYW5zcGFyZW50O1xyXG4gICAgICBhbmltYXRpb246IGxkcy1kdWFsLXJpbmcgMS4ycyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGxkcy1kdWFsLXJpbmcge1xyXG4gICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICB9XHJcbiAgIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gICBTdHlsZSBkdSBib3V0b25cclxuICovXHJcblxyXG4ubWRjLWJ1dHRvbjpub3QoOmRpc2FibGVkKSB7XHJcbiAgIGNvbG9yOiAkY29sb3Jfc2Vjb25kYWlyZVxyXG59XHJcblxyXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQ6bm90KDpkaXNhYmxlZCkge1xyXG4gICBib3JkZXItY29sb3I6ICRjb2xvcl9zZWNvbmRhaXJlO1xyXG59XHJcblxyXG4ubWRjLWJ1dHRvbjo6YmVmb3JlLFxyXG4ubWRjLWJ1dHRvbjo6YWZ0ZXIge1xyXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Jfc2Vjb25kYWlyZTtcclxufVxyXG5cclxuLm1kYy1idXR0b24tLXJhaXNlZCB7XHJcbiAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9zZWNvbmRhaXJlICFpbXBvcnRhbnQ7XHJcbiAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKipcclxuICAgQmFuZGVhdSBBbGVydCBDb29raWVzXHJcbiAqL1xyXG4uYWxlcnQtY29va2llcyB7XHJcbiAgIHotaW5kZXg6IDEwO1xyXG4gICBkaXNwbGF5OiBub25lOyAvLyBkaXNwbGF5IGZsZXggc2kgbGUgY29va2llIG4nZXN0IHBhcyBlbmNvcmUgYWNjZXB0w6kgKHN0eWxlLmpzKVxyXG4gICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgIGJvdHRvbTogMDtcclxuICAgd2lkdGg6IDEwMCU7XHJcbiAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICBjb2xvcjogJGNvbG9yX3ByaW1haXJlO1xyXG4gICBib3JkZXItdG9wOiBzb2xpZCAycHggJGNvbG9yX3NlY29uZGFpcmU7XHJcbiAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgIHAge1xyXG4gICAgICBmbGV4OiA0O1xyXG4gICB9XHJcblxyXG4gICAmX2FjdGlvbnMge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgfVxyXG5cclxuXHJcbiAgIEBpbmNsdWRlIG1lZGlhKG1vYmlsZW9ubHkpe1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICB9XHJcblxyXG59XHJcblxyXG4vKipcclxuICAgVG9vbFRpcFxyXG4gKi9cclxuLnRvb2x0aXAge1xyXG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAvLyBsZSBtZXNzYWdlXHJcbiAgIC50b29sdGlwdGV4dCB7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICB0b3A6IGNhbGMoMTAwJSArIDEwcHgpO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xyXG4gICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzg5MDlDO1xyXG5cclxuXHJcbiAgICAgIC8vIGxlIHBldGl0IHRyaWFuZ2xlIHBvaW50ZXJcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcclxuICAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XHJcbiAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzc4OTA5QyB0cmFuc3BhcmVudDtcclxuICAgICAgfVxyXG4gICB9XHJcblxyXG4gICAmOmhvdmVyIC50b29sdGlwdGV4dCB7XHJcbiAgICAgIGFuaW1hdGlvbjogdG9vbHRpcC1hbmltYXRpb24gZWFzZS1pbi1vdXQgMC4zcztcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHRvb2x0aXAtYW5pbWF0aW9uIHtcclxuICAgZnJvbSB7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgfVxyXG4gICB0byB7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgIH1cclxufSIsIi8qKlxyXG4gICAgSEVBREVSXHJcbiAqL1xyXG5cclxuaGVhZGVyIHtcclxuICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgd2lkdGg6IDEwMCU7XHJcbiAgIHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi8qKlxyXG4gICBMb2dvIEpvbGxldCBkYW5zIGxlIGhlYWRlclxyXG4qL1xyXG4uaGVhZGVyX2xvZ28ge1xyXG4gICBAZXh0ZW5kIC5mbGV4LXJvdztcclxuICAgQGV4dGVuZCAuZmxleC1jZW50ZXItY2VudGVyO1xyXG4gICBoZWlnaHQ6IDcwcHg7XHJcblxyXG4gICBzdmcge1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgIH1cclxuICAgbGFiZWwge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMzVweDtcclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgd2lkdGg6IDI1cHg7XHJcbiAgICAgICAgIG1hcmdpbjogNXB4IDA7XHJcblxyXG4gICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9wcmltYWlyZTtcclxuICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAgIEJ1cmdlciBtZW51IGR1IG1vZGUgdMOpbMOpcGhvbmVcclxuKi9cclxuI2hlYWRlcl90b2dnbGUge1xyXG4gICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgJjpjaGVja2VkICsgLmhlYWRlcl9sb2dvIGxhYmVsIHtcclxuXHJcbiAgICAgIHNwYW46bnRoLWNoaWxkKDEpOmFmdGVye1xyXG4gICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgfVxyXG4gICAgICBzcGFuOm50aC1jaGlsZCgyKTphZnRlciB7XHJcbiAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgfVxyXG4gICAgICBzcGFuOm50aC1jaGlsZCgzKTphZnRlciB7XHJcbiAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgfVxyXG4gICB9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICAgTWVudSBkZSBuYXZpZ2F0aW9uXHJcbiovXHJcbi5oZWFkZXJfbmF2LWJhciB7XHJcbiAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJGNvbG9yX3ByaW1haXJlO1xyXG5cclxuICAgLm5hdi1iYXJfaXRlbXMge1xyXG4gICAgICBAZXh0ZW5kIC5mbGV4LXJvdztcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xyXG4gICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNlcmlmXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xyXG5cclxuICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfcHJpbWFpcmU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcblxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAkY29sb3JfcHJpbWFpcmUgMCUsICRjb2xvcl9wcmltYWlyZSAycHgsIHRyYW5zcGFyZW50IDJweCkgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDAgMTAwJTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDAuM3M7XHJcblxyXG4gICAgICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICB9XHJcblxyXG59XHJcblxyXG4vKipcclxuICAgUGFuaWVyIGRlIGxhIGJvdXRpcXVlIFxyXG4gICAodmlzaWJsZSBxdWUgZGFucyBsYSBib3V0aXF1ZSlcclxuKi9cclxuLmhlYWRlcl9iYXNrZXQge1xyXG4gICBtYXJnaW46IDAgMTVweDtcclxuICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICByaWdodDogMDtcclxuICAgYm90dG9tOiA1cHg7XHJcblxyXG4gICAuY291bnQge1xyXG4gICAgICBAZXh0ZW5kIC5mbGV4LXJvdztcclxuICAgICAgQGV4dGVuZCAuZmxleC1jZW50ZXItY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNjMwMzA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgfVxyXG5cclxuICAgJl9lbXB0eSAuY291bnQge1xyXG4gICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICB9XHJcblxyXG4gICAmX3VwIC5jb3VudCB7XHJcbiAgICAgIGFuaW1hdGlvbjogY291bnQtem9vbSAzcyBmb3J3YXJkcyAxO1xyXG4gICB9XHJcblxyXG4gICBAaW5jbHVkZSBtZWRpYShtb2JpbGVvbmx5KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgIH1cclxuXHJcbn1cclxuXHJcbi8vIGFuaW1hdGlvbiBkdSBjb21wdGV1ciBkZSBwcm9kdWl0XHJcbkBrZXlmcmFtZXMgY291bnQtem9vbSB7XHJcbiAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxyXG4gICAxMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxuICAgMzAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxyXG59XHJcblxyXG4vKipcclxuICAgU1BFQ0lBTCBQT1VSIExBIEhPTUUgUEFHRVxyXG4gKi9cclxuaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIHtcclxuICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgd2lkdGg6IDYwMHB4O1xyXG4gICByaWdodDogMDtcclxuXHJcbiAgIC5oZWFkZXJfbG9nbyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgIH1cclxuXHJcbiAgIC5oZWFkZXJfbmF2LWJhciB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICAgIC5uYXYtYmFyX2l0ZW1zIHtcclxuICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcclxuXHJcbiAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICNmZmYgMCUsICNmZmYgMnB4LCB0cmFuc3BhcmVudCAycHgpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwIDEwMCU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgIH1cclxuICAgQGluY2x1ZGUgbWVkaWEobW9iaWxlb25seSkge1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgIC5oZWFkZXJfbG9nbyB7XHJcbiAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5oZWFkZXJfbmF2LWJhciB7XHJcbiAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICAgICAgIC5uYXYtYmFyX2l0ZW1zIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfcHJpbWFpcmU7XHJcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICRjb2xvcl9wcmltYWlyZSAwJSwgJGNvbG9yX3ByaW1haXJlIDJweCwgdHJhbnNwYXJlbnQgMnB4KSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMCAxMDAlO1xyXG4gICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgMC4zcztcclxuXHJcbiAgICAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgfVxyXG59XHJcblxyXG4vKipcclxuICAgUkVTUE9OU0lWRVxyXG4gKi9cclxuXHJcbiRoZWFkZXJfaXRlbS1oZWlnaHQ6IDIzcHg7XHJcbiRoZWFkZXJfaXRlbS1tYXJnaW46IDEwcHg7XHJcbiRoZWFkZXJfaXRlbXMtY291bnQ6IDU7XHJcblxyXG5AaW5jbHVkZSBtZWRpYShtb2JpbGVvbmx5KSB7XHJcbiAgIC5oZWFkZXJfbG9nbyB7XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgIH1cclxuICAgLmhlYWRlcl9uYXYtYmFyIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgaGVpZ2h0OiAwcHg7XHJcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2Utb3V0O1xyXG5cclxuICAgICAgLm5hdi1iYXJfaXRlbXMge1xyXG4gICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcclxuICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgIH1cclxuXHJcbiAgICNoZWFkZXJfdG9nZ2xlOmNoZWNrZWQgfiAuaGVhZGVyX25hdi1iYXIge1xyXG4gICAgICBoZWlnaHQ6ICgkaGVhZGVyX2l0ZW0taGVpZ2h0ICsgJGhlYWRlcl9pdGVtLW1hcmdpbioyKSokaGVhZGVyX2l0ZW1zLWNvdW50O1xyXG4gICB9XHJcbn1cclxuXHJcblxyXG4iLCJcclxuZm9vdGVyIHtcclxuICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ByaW1haXJlO1xyXG4gICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgIG1hcmdpbi10b3A6IDMwcHg7XHJcblxyXG4gICAudGV4dC1jZW50ZXIge1xyXG4gICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gICB9XHJcbn1cclxuXHJcblxyXG4uZm9vdGVyX25hdi1iYXIge1xyXG5cclxuICAgLmZvb3Rlcl9sb2dvIHtcclxuICAgICAgQGV4dGVuZCAuZmxleC1yb3c7XHJcbiAgICAgIEBleHRlbmQgLmZsZXgtY2VudGVyLWNlbnRlcjtcclxuXHJcbiAgICAgIHN2ZyB7XHJcbiAgICAgICAgIGhlaWdodDogNTlweDtcclxuXHJcbiAgICAgICAgICoge1xyXG4gICAgICAgICAgICBmaWxsOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgfVxyXG5cclxuICAgLm5hdi1iYXJfaXRlbXMge1xyXG4gICAgICBAZXh0ZW5kIC5mbGV4LXJvdztcclxuICAgICAgQGV4dGVuZCAuZmxleC1jZW50ZXItY2VudGVyO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBtYXJnaW46IDI1cHggMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcclxuICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICBmb250LWZhbWlseTogTW9udHNlcnJhdCwgXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuXHJcbiAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgIH1cclxuICAgICAgICAgLy8gZmFjZWJvb2tcclxuICAgICAgICAgJjpudGgtY2hpbGQoMSkgYTpob3ZlciB7XHJcbiAgICAgICAgICAgICoge1xyXG4gICAgICAgICAgICAgICBmaWxsOiBjb3JuZmxvd2VyYmx1ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgIH1cclxuICAgICAgICAgLy8gaW5zdGFncmFtXHJcbiAgICAgICAgICY6bnRoLWNoaWxkKDIpIGE6aG92ZXIge1xyXG4gICAgICAgICAgICAqIHtcclxuICAgICAgICAgICAgICAgZmlsbDogYmVpZ2UgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgfVxyXG5cclxuICAgLy8gUGF5cGFsXHJcbiAgIC5uYXYtYmFyX3BheW1lbnQtbWV0aG9kcyB7XHJcbiAgICAgIEBleHRlbmQgLmZsZXgtcm93O1xyXG4gICAgICBAZXh0ZW5kIC5mbGV4LWNlbnRlci1jZW50ZXI7XHJcblxyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICAgbWF4LWhlaWdodDogNTBweDtcclxuICAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEobW9iaWxlb25seSkge1xyXG4gICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAgIFJFU1BPTlNJVkVcclxuICovXHJcbkBpbmNsdWRlIG1lZGlhKG1vYmlsZW9ubHkpIHtcclxuICAgLmZvb3Rlcl9uYXYtYmFyIHtcclxuXHJcbiAgICAgIC5uYXYtYmFyX2l0ZW1zOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICB9XHJcbn0iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTkgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9iYXNlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8vIFN0eWxlcyBhcHBsaWVkIHRvIHRoZSBjb21wb25lbnQncyB0b3VjaCB0YXJnZXQgd3JhcHBlciBlbGVtZW50LlxuQG1peGluIG1kYy10b3VjaC10YXJnZXQtd3JhcHBlcigkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgLm1kYy10b3VjaC10YXJnZXQtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIC8vIEVuc3VyZSB0aGF0IHN0eWxlcyBhcmUgb25seSBlbWl0dGVkIG9uY2UgYWNyb3NzIGFsbCBjb21wb25lbnRzIHRoYXRcbiAgICAgIC8vIGhhdmUgaW5jcmVhc2VkIHRvdWNoIHRhcmdldHMuXG4gICAgICBAaW5jbHVkZSBtZGMtYmFzZS1lbWl0LW9uY2UoXCJtZGMtdG91Y2gtdGFyZ2V0L3dyYXBwZXJcIikge1xuICAgICAgICAvLyBOT1RFOiBXaWxsIGNoYW5nZSB0byBgaW5saW5lLWJsb2NrYCBpbiB0aGUgZnV0dXJlLCBidXQga2VlcGluZyBhcyBpc1xuICAgICAgICAvLyB0ZW1wb3JhcmlseSBmb3IgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0eWxlcyBhcHBsaWVkIHRvIHRoZSBjb21wb25lbnQncyBpbm5lciB0b3VjaCB0YXJnZXQgZWxlbWVudC5cbkBtaXhpbiBtZGMtdG91Y2gtdGFyZ2V0KCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogJG1kYy10b3VjaC10YXJnZXQtaGVpZ2h0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuXG4vLy8gU3R5bGVzIGFwcGxpZWQgdG8gdGhlIGNvbXBvbmVudCB3aXRoIHRoZSBpbmNyZWFzZWQgdG91Y2ggdGFyZ2V0LlxuQG1peGluIG1kYy10b3VjaC10YXJnZXQtY29tcG9uZW50KCRjb21wb25lbnQtaGVpZ2h0LCAkY29tcG9uZW50LXdpZHRoOiBudWxsLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgJHZlcnRpY2FsLW1hcmdpbi12YWx1ZTogKCRtZGMtdG91Y2gtdGFyZ2V0LWhlaWdodCAtICRjb21wb25lbnQtaGVpZ2h0KSAvIDI7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBtYXJnaW4tdG9wOiAkdmVydGljYWwtbWFyZ2luLXZhbHVlO1xuICAgIG1hcmdpbi1ib3R0b206ICR2ZXJ0aWNhbC1tYXJnaW4tdmFsdWU7XG4gIH1cblxuICBAaWYgJGNvbXBvbmVudC13aWR0aCB7XG4gICAgJGhvcml6b250YWwtbWFyZ2luLXZhbHVlOiAoJG1kYy10b3VjaC10YXJnZXQtd2lkdGggLSAkY29tcG9uZW50LXdpZHRoKSAvIDI7XG5cbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkaG9yaXpvbnRhbC1tYXJnaW4tdmFsdWU7XG4gICAgICBtYXJnaW4tbGVmdDogJGhvcml6b250YWwtbWFyZ2luLXZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYW5pbWF0aW9uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG5AbWl4aW4gbWRjLWNoZWNrYm94LWNvbnRhaW5lci1rZXlmcmFtZXNfKFxuICAkZnJvbS1zdHJva2UtY29sb3IsXG4gICR0by1zdHJva2UtY29sb3IsXG4gICRmcm9tLWZpbGwtY29sb3IsXG4gICR0by1maWxsLWNvbG9yLFxuICAkdWlkKSB7XG4gIEBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWZhZGUtaW4tYmFja2dyb3VuZC0jeyR1aWR9IHtcbiAgICAwJSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRmcm9tLXN0cm9rZS1jb2xvcik7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkZnJvbS1maWxsLWNvbG9yKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkdG8tc3Ryb2tlLWNvbG9yKTtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICR0by1maWxsLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLW91dC1iYWNrZ3JvdW5kLSN7JHVpZH0ge1xuICAgIDAlLFxuICAgIDgwJSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICR0by1zdHJva2UtY29sb3IpO1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJHRvLWZpbGwtY29sb3IpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkZnJvbS1zdHJva2UtY29sb3IpO1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGZyb20tZmlsbC1jb2xvcik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtbWFyay1rZXlmcmFtZXNfIHtcbiAgQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWNoZWNrZWQtY2hlY2ttYXJrLXBhdGgge1xuICAgIDAlLFxuICAgIDUwJSB7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogJG1kYy1jaGVja2JveC1tYXJrLXBhdGgtbGVuZ3RoXztcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1hbmltYXRpb24tZGVjZWxlcmF0aW9uLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LXVuY2hlY2tlZC1pbmRldGVybWluYXRlLW1peGVkbWFyayB7XG4gICAgMCUsXG4gICAgNjguMiUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgfVxuXG4gICAgNjguMiUge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAsIDEpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgfVxuICB9XG5cbiAgQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtY2hlY2tlZC11bmNoZWNrZWQtY2hlY2ttYXJrLXBhdGgge1xuICAgIGZyb20ge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1hbmltYXRpb24tYWNjZWxlcmF0aW9uLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6ICRtZGMtY2hlY2tib3gtbWFyay1wYXRoLWxlbmd0aF8gKiAtMTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtY2hlY2ttYXJrIHtcbiAgICBmcm9tIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRtZGMtYW5pbWF0aW9uLWRlY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtY2hlY2ttYXJrIHtcbiAgICBmcm9tIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLWVhc2luZy1mdW5jdGlvbl87XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsge1xuICAgIGZyb20ge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbWRjLWFuaW1hdGlvbi1kZWNlbGVyYXRpb24tY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hlY2tlZC1taXhlZG1hcmsge1xuICAgIGZyb20ge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtZWFzaW5nLWZ1bmN0aW9uXztcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzMTVkZWcpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLXVuY2hlY2tlZC1taXhlZG1hcmsge1xuICAgIDAlIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAzMi44JSxcbiAgICAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2RlbnNpdHkvdmFyaWFibGVzXCI7XG5cbiRtZGMtY2hlY2tib3gtbWFyay1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tcHJpbWFyeSkgIWRlZmF1bHQ7XG4kbWRjLWNoZWNrYm94LWJvcmRlci1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjU0KSAhZGVmYXVsdDtcbiRtZGMtY2hlY2tib3gtZGlzYWJsZWQtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4yNikgIWRlZmF1bHQ7XG4kbWRjLWNoZWNrYm94LWJhc2VsaW5lLXRoZW1lLWNvbG9yOiBzZWNvbmRhcnkgIWRlZmF1bHQ7XG5cbiRtZGMtY2hlY2tib3gtcmlwcGxlLXNpemU6IDQwcHggIWRlZmF1bHQ7XG4kbWRjLWNoZWNrYm94LWljb24tc2l6ZTogMThweCAhZGVmYXVsdDtcbiRtZGMtY2hlY2tib3gtbWFyay1zdHJva2Utc2l6ZTogMi8xNSAqICRtZGMtY2hlY2tib3gtaWNvbi1zaXplICFkZWZhdWx0O1xuJG1kYy1jaGVja2JveC1ib3JkZXItd2lkdGg6IDJweCAhZGVmYXVsdDtcbiRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbjogOTBtcyAhZGVmYXVsdDtcbiRtZGMtY2hlY2tib3gtaXRlbS1zcGFjaW5nOiA0cHggIWRlZmF1bHQ7XG4kbWRjLWNoZWNrYm94LWZvY3VzLWluZGljYXRvci1vcGFjaXR5OiBtYXAtZ2V0KCRtZGMtcmlwcGxlLWRhcmstaW5rLW9wYWNpdGllcywgZm9jdXMpICFkZWZhdWx0O1xuXG4kbWRjLWNoZWNrYm94LW1pbmltdW0tc2l6ZTogMjhweCAhZGVmYXVsdDtcbiRtZGMtY2hlY2tib3gtbWF4aW11bS1zaXplOiAkbWRjLWNoZWNrYm94LXJpcHBsZS1zaXplICFkZWZhdWx0O1xuJG1kYy1jaGVja2JveC1kZW5zaXR5LXNjYWxlOiAkbWRjLWRlbnNpdHktZGVmYXVsdC1zY2FsZSAhZGVmYXVsdDtcbiRtZGMtY2hlY2tib3gtZGVuc2l0eS1jb25maWc6IChcbiAgc2l6ZTogKFxuICAgIG1pbmltdW06ICRtZGMtY2hlY2tib3gtbWluaW11bS1zaXplLFxuICAgIGRlZmF1bHQ6ICRtZGMtY2hlY2tib3gtcmlwcGxlLXNpemUsXG4gICAgbWF4aW11bTogJG1kYy1jaGVja2JveC1tYXhpbXVtLXNpemUsXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyBNYW51YWwgY2FsY3VsYXRpb24gZG9uZSBvbiBTVkdcbiRtZGMtY2hlY2tib3gtbWFyay1wYXRoLWxlbmd0aF86IDI5Ljc4MzMzODUgIWRlZmF1bHQ7XG4kbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hlY2tlZC1lYXNpbmctZnVuY3Rpb25fOiBjdWJpYy1iZXppZXIoLjE0LCAwLCAwLCAxKSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNiBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZGVuc2l0eS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2ZlYXR1cmUtdGFyZ2V0aW5nL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RvdWNoLXRhcmdldC9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIi4va2V5ZnJhbWVzXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy9cbi8vIFB1YmxpY1xuLy9cblxuJG1kYy1jaGVja2JveC1yaXBwbGUtdGFyZ2V0OiBcIi5tZGMtY2hlY2tib3hfX3JpcHBsZVwiO1xuXG5AbWl4aW4gbWRjLWNoZWNrYm94LWNvcmUtc3R5bGVzKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LXdpdGhvdXQtcmlwcGxlKCRxdWVyeSk7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1yaXBwbGUoJHF1ZXJ5KTtcbn1cblxuLy8gVGhpcyBBUEkgaXMgaW50ZW5kZWQgZm9yIHVzZSBieSBmcmFtZXdvcmtzIHRoYXQgbWF5IHdhbnQgdG8gc2VwYXJhdGUgdGhlIHJpcHBsZS1yZWxhdGVkIHN0eWxlcyBmcm9tIHRoZSBvdGhlclxuLy8gY2hlY2tib3ggc3R5bGVzLiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IG1vc3QgdXNlcnMgdXNlIGBtZGMtY2hlY2tib3gtY29yZS1zdHlsZXNgIGluc3RlYWQuXG5AbWl4aW4gbWRjLWNoZWNrYm94LXdpdGhvdXQtcmlwcGxlKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgY2hlY2tib3hcblxuICAkZmVhdC1hbmltYXRpb246IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBhbmltYXRpb24pO1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtdG91Y2gtdGFyZ2V0LXdyYXBwZXIoJHF1ZXJ5KTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC1tYXJrLWtleWZyYW1lc187XG4gIH1cblxuICAubWRjLWNoZWNrYm94IHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWJhc2VfO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC1mb2N1cy1pbmRpY2F0b3ItY29sb3IoJG1kYy1jaGVja2JveC1iYXNlbGluZS10aGVtZS1jb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC1kZW5zaXR5KCRtZGMtY2hlY2tib3gtZGVuc2l0eS1zY2FsZSwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWNvbnRhaW5lci1jb2xvcnMoJHF1ZXJ5OiAkcXVlcnkpO1xuICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtZGlzYWJsZWQtY29udGFpbmVyLWNvbG9ycygkcXVlcnk6ICRxdWVyeSk7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1pbmstY29sb3IoJG1kYy1jaGVja2JveC1tYXJrLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1kaXNhYmxlZC1pbmstY29sb3IoJG1kYy1jaGVja2JveC1tYXJrLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgbWFyZ2luOiAwIDFweDsgLy8gRXh0cmEgaG9yaXpvbnRhbCBzcGFjZSBhcm91bmQgbWl4ZWRtYXJrIHN5bWJvbC5cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBOZWVkZWQgdG8gZGlzYWJsZSBob3ZlciBlZmZlY3RzIG9uIENTUy1vbmx5IChub24tSlMpIGNoZWNrYm94ZXNcbiAgLm1kYy1jaGVja2JveC0tZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtLWRpc2FibGVkXztcbiAgICB9XG4gIH1cblxuICAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2JhY2tncm91bmRfKCRxdWVyeSk7XG4gIH1cblxuICAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrXygkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGhfKCRxdWVyeSk7XG4gIH1cblxuICAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fbWl4ZWRtYXJrXygkcXVlcnkpO1xuICB9XG5cbiAgLy8gSlMgY2hlY2tib3hcbiAgLm1kYy1jaGVja2JveC0tdXBncmFkZWQge1xuICAgIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4gICAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLFxuICAgIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoLFxuICAgIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2NoaWxkLS11cGdyYWRlZF87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jaGVja2JveC0tYW5pbSB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC0tYW5pbV87XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsXG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLS1tYXJrZWRfO1xuICAgIH1cblxuICAgIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgtLW1hcmtlZF87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIGZyYW1lJ3MgOjpiZWZvcmUgZWxlbWVudCBpcyB1c2VkIGFzIGEgZm9jdXMgaW5kaWNhdG9yIGZvciB0aGUgY2hlY2tib3hcbiAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2ZvY3VzLWluZGljYXRvcl8oJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmZvY3VzIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX2ZvY3VzLWluZGljYXRvci0tZm9jdXNlZF8oJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbF87XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtLWRpc2FibGVkXztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLWNoZWNrYm94LS10b3VjaCB7XG4gICAgQGluY2x1ZGUgbWRjLXRvdWNoLXRhcmdldC1jb21wb25lbnQoXG4gICAgICAkY29tcG9uZW50LWhlaWdodDogJG1kYy1jaGVja2JveC1yaXBwbGUtc2l6ZSxcbiAgICAgICRjb21wb25lbnQtd2lkdGg6ICRtZGMtY2hlY2tib3gtcmlwcGxlLXNpemUsXG4gICAgICAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LXRvdWNoLXRhcmdldCgkbWRjLXRvdWNoLXRhcmdldC1oZWlnaHQsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICAgICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94X19jaGVja21hcmstLWNoZWNrZWRfKCRxdWVyeSk7XG4gICAgfVxuXG4gICAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fbWl4ZWRtYXJrLS1jaGVja2VkXztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLS1pbmRldGVybWluYXRlXygkcXVlcnkpO1xuICAgIH1cblxuICAgIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3hfX21peGVkbWFyay0taW5kZXRlcm1pbmF0ZV87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbn1cblxuLy8gVGhpcyBBUEkgaXMgaW50ZW5kZWQgZm9yIHVzZSBieSBmcmFtZXdvcmtzIHRoYXQgbWF5IHdhbnQgdG8gc2VwYXJhdGUgdGhlIHJpcHBsZS1yZWxhdGVkIHN0eWxlcyBmcm9tIHRoZSBvdGhlclxuLy8gY2hlY2tib3ggc3R5bGVzLiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IG1vc3QgdXNlcnMgdXNlIGBtZGMtY2hlY2tib3gtY29yZS1zdHlsZXNgIGluc3RlYWQuXG5AbWl4aW4gbWRjLWNoZWNrYm94LXJpcHBsZSgkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLXJpcHBsZS1jb21tb24oJHF1ZXJ5KTtcblxuICAubWRjLWNoZWNrYm94IHtcbiAgICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2UoJHF1ZXJ5OiAkcXVlcnksICRyaXBwbGUtdGFyZ2V0OiAkbWRjLWNoZWNrYm94LXJpcHBsZS10YXJnZXQpO1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMoJGNvbG9yOiBvbi1zdXJmYWNlLCAkcXVlcnk6ICRxdWVyeSwgJHJpcHBsZS10YXJnZXQ6ICRtZGMtY2hlY2tib3gtcmlwcGxlLXRhcmdldCk7XG4gICAgQGluY2x1ZGUgbWRjLXJpcHBsZS1yYWRpdXMtdW5ib3VuZGVkKCRxdWVyeTogJHF1ZXJ5LCAkcmlwcGxlLXRhcmdldDogJG1kYy1jaGVja2JveC1yaXBwbGUtdGFyZ2V0KTtcbiAgfVxuXG4gICN7JG1kYy1jaGVja2JveC1yaXBwbGUtdGFyZ2V0fSB7XG4gICAgQGluY2x1ZGUgbWRjLXJpcHBsZS10YXJnZXQtY29tbW9uKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyBkZW5zaXR5IHNjYWxlIGZvciBjaGVja2JveC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIHwgU3RyaW5nfSAkZGVuc2l0eS1zY2FsZSAtIERlbnNpdHkgc2NhbGUgdmFsdWUgZm9yIGNvbXBvbmVudC4gU3VwcG9ydGVkIGRlbnNpdHkgc2NhbGUgdmFsdWVzXG4vLy8gICAgIGAtM2AsIGAtMmAsIGAtMWAsIGAwYC5cbi8vL1xuQG1peGluIG1kYy1jaGVja2JveC1kZW5zaXR5KCRkZW5zaXR5LXNjYWxlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRzaXplOiBtZGMtZGVuc2l0eS1wcm9wLXZhbHVlKFxuICAgICRkZW5zaXR5LWNvbmZpZzogJG1kYy1jaGVja2JveC1kZW5zaXR5LWNvbmZpZyxcbiAgICAkZGVuc2l0eS1zY2FsZTogJGRlbnNpdHktc2NhbGUsXG4gICAgJHByb3BlcnR5LW5hbWU6IHNpemUsXG4gICk7XG5cbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LXJpcHBsZS1zaXplKCRzaXplLCAkcXVlcnk6ICRxdWVyeSk7XG5cbiAgQGlmICRkZW5zaXR5LXNjYWxlICE9IDAge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC10b3VjaC10YXJnZXQtcmVzZXRfKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNoZWNrYm94LXJpcHBsZS1zaXplKCRyaXBwbGUtc2l6ZSwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuICAkY2hlY2tib3gtcGFkZGluZzogKCRyaXBwbGUtc2l6ZSAtICRtZGMtY2hlY2tib3gtaWNvbi1zaXplKSAvIDI7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBwYWRkaW5nOiAkY2hlY2tib3gtcGFkZGluZztcbiAgfVxuXG4gIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICB0b3A6ICRjaGVja2JveC1wYWRkaW5nO1xuICAgICAgbGVmdDogJGNoZWNrYm94LXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgdG9wOiAtJG1kYy1jaGVja2JveC1ib3JkZXItd2lkdGggLSAkY2hlY2tib3gtcGFkZGluZztcbiAgICAgIGxlZnQ6IC0kbWRjLWNoZWNrYm94LWJvcmRlci13aWR0aCAtICRjaGVja2JveC1wYWRkaW5nO1xuICAgICAgd2lkdGg6ICRyaXBwbGUtc2l6ZTtcbiAgICAgIGhlaWdodDogJHJpcHBsZS1zaXplO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC10b3VjaC10YXJnZXQoJHJpcHBsZS1zaXplLCAkcmlwcGxlLXNpemU6ICRyaXBwbGUtc2l6ZSwgJHF1ZXJ5OiAkcXVlcnkpO1xufVxuXG4vLy9cbi8vLyBTZXRzIHN0cm9rZSAmIGZpbGwgY29sb3JzIGZvciBib3RoIG1hcmtlZCBhbmQgdW5tYXJrZWQgc3RhdGUgb2YgZW5hYmxlZCBjaGVja2JveC5cbi8vLyBTZXQgJGdlbmVyYXRlLWtleWZyYW1lcyB0byBmYWxzZSB0byBwcmV2ZW50IHRoZSBtaXhpbiBmcm9tIGdlbmVyYXRpbmcgQGtleWZyYW1lc1xuLy8vIEBwYXJhbSB7Q29sb3J9ICR1bm1hcmtlZC1zdHJva2UtY29sb3IgLSBUaGUgZGVzaXJlZCBzdHJva2UgY29sb3IgZm9yIHRoZSB1bm1hcmtlZCBzdGF0ZVxuLy8vIEBwYXJhbSB7Q29sb3J9ICR1bm1hcmtlZC1maWxsLWNvbG9yIC0gVGhlIGRlc2lyZWQgZmlsbCBjb2xvciBmb3IgdGhlIHVubWFya2VkIHN0YXRlXG4vLy8gQHBhcmFtIHtDb2xvcn0gJG1hcmtlZC1zdHJva2UtY29sb3IgLSBUaGUgZGVzaXJlZCBzdHJva2UgY29sb3IgZm9yIHRoZSBtYXJrZWQgc3RhdGVcbi8vLyBAcGFyYW0ge0NvbG9yfSAkbWFya2VkLWZpbGwtY29sb3IgLSBUaGUgZGVzaXJlZCBmaWxsIGNvbG9yIGZvciB0aGUgbWFya2VkIHN0YXRlXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ2VuZXJhdGUta2V5ZnJhbWVzIFt0cnVlXSAtIFdoZXRoZXIgYW5pbWF0aW9uIGtleWZyYW1lcyBzaG91bGQgYmUgZ2VuZXJhdGVkXG4vLy9cbkBtaXhpbiBtZGMtY2hlY2tib3gtY29udGFpbmVyLWNvbG9ycyhcbiAgJHVubWFya2VkLXN0cm9rZS1jb2xvcjogJG1kYy1jaGVja2JveC1ib3JkZXItY29sb3IsXG4gICR1bm1hcmtlZC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgJG1hcmtlZC1zdHJva2UtY29sb3I6ICRtZGMtY2hlY2tib3gtYmFzZWxpbmUtdGhlbWUtY29sb3IsXG4gICRtYXJrZWQtZmlsbC1jb2xvcjogJG1kYy1jaGVja2JveC1iYXNlbGluZS10aGVtZS1jb2xvcixcbiAgJGdlbmVyYXRlLWtleWZyYW1lczogdHJ1ZSxcbiAgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKVxuKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1pZi11bm1hcmtlZC1lbmFibGVkXyB7XG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWNvbnRhaW5lci1jb2xvcnNfKCR1bm1hcmtlZC1zdHJva2UtY29sb3IsICR1bm1hcmtlZC1maWxsLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtaWYtbWFya2VkLWVuYWJsZWRfIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtY29udGFpbmVyLWNvbG9yc18oJG1hcmtlZC1zdHJva2UtY29sb3IsICRtYXJrZWQtZmlsbC1jb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgQGlmICRnZW5lcmF0ZS1rZXlmcmFtZXMge1xuICAgICR1aWQ6IHVuaXF1ZS1pZCgpO1xuICAgICRhbmltLXNlbGVjdG9yOiBpZigmLCBcIiYubWRjLWNoZWNrYm94LS1hbmltXCIsIFwiLm1kYy1jaGVja2JveC0tYW5pbVwiKTtcblxuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uLCAkZmVhdC1jb2xvcikge1xuICAgICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWNvbnRhaW5lci1rZXlmcmFtZXNfKFxuICAgICAgICAkZnJvbS1zdHJva2UtY29sb3I6ICR1bm1hcmtlZC1zdHJva2UtY29sb3IsXG4gICAgICAgICR0by1zdHJva2UtY29sb3I6ICRtYXJrZWQtc3Ryb2tlLWNvbG9yLFxuICAgICAgICAkZnJvbS1maWxsLWNvbG9yOiAkdW5tYXJrZWQtZmlsbC1jb2xvcixcbiAgICAgICAgJHRvLWZpbGwtY29sb3I6ICRtYXJrZWQtZmlsbC1jb2xvcixcbiAgICAgICAgJHVpZDogJHVpZFxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBtYXgtbmVzdGluZy1kZXB0aFxuXG4gICAgI3skYW5pbS1zZWxlY3Rvcn0ge1xuICAgICAgJi11bmNoZWNrZWQtY2hlY2tlZCxcbiAgICAgICYtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUge1xuICAgICAgICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBtZGMtY2hlY2tib3gtZmFkZS1pbi1iYWNrZ3JvdW5kLSN7JHVpZH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtY2hlY2tlZC11bmNoZWNrZWQsXG4gICAgICAmLWluZGV0ZXJtaW5hdGUtdW5jaGVja2VkIHtcbiAgICAgICAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAgICAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uKSB7XG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogbWRjLWNoZWNrYm94LWZhZGUtb3V0LWJhY2tncm91bmQtI3skdWlkfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIG1heC1uZXN0aW5nLWRlcHRoXG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyBzdHJva2UgJiBmaWxsIGNvbG9ycyBmb3IgYm90aCBtYXJrZWQgYW5kIHVubWFya2VkIHN0YXRlIG9mIGRpc2FibGVkIGNoZWNrYm94LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR1bm1hcmtlZC1zdHJva2UtY29sb3IgLSBUaGUgZGVzaXJlZCBzdHJva2UgY29sb3IgZm9yIHRoZSB1bm1hcmtlZCBzdGF0ZVxuLy8vIEBwYXJhbSB7Q29sb3J9ICR1bm1hcmtlZC1maWxsLWNvbG9yIC0gVGhlIGRlc2lyZWQgZmlsbCBjb2xvciBmb3IgdGhlIHVubWFya2VkIHN0YXRlXG4vLy8gQHBhcmFtIHtDb2xvcn0gJG1hcmtlZC1zdHJva2UtY29sb3IgLSBUaGUgZGVzaXJlZCBzdHJva2UgY29sb3IgZm9yIHRoZSBtYXJrZWQgc3RhdGVcbi8vLyBAcGFyYW0ge0NvbG9yfSAkbWFya2VkLWZpbGwtY29sb3IgLSBUaGUgZGVzaXJlZCBmaWxsIGNvbG9yIGZvciB0aGUgbWFya2VkIHN0YXRlXG4vLy9cbkBtaXhpbiBtZGMtY2hlY2tib3gtZGlzYWJsZWQtY29udGFpbmVyLWNvbG9ycyhcbiAgJHVubWFya2VkLXN0cm9rZS1jb2xvcjogJG1kYy1jaGVja2JveC1kaXNhYmxlZC1jb2xvcixcbiAgJHVubWFya2VkLWZpbGwtY29sb3I6IHRyYW5zcGFyZW50LFxuICAkbWFya2VkLXN0cm9rZS1jb2xvcjogdHJhbnNwYXJlbnQsXG4gICRtYXJrZWQtZmlsbC1jb2xvcjogJG1kYy1jaGVja2JveC1kaXNhYmxlZC1jb2xvcixcbiAgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKVxuKSB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1pZi11bm1hcmtlZC1kaXNhYmxlZF8ge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC1jb250YWluZXItY29sb3JzXygkdW5tYXJrZWQtc3Ryb2tlLWNvbG9yLCAkdW5tYXJrZWQtZmlsbC1jb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWlmLW1hcmtlZC1kaXNhYmxlZF8ge1xuICAgIEBpbmNsdWRlIG1kYy1jaGVja2JveC1jb250YWluZXItY29sb3JzXygkbWFya2VkLXN0cm9rZS1jb2xvciwgJG1hcmtlZC1maWxsLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgaW5rIGNvbG9yIG9mIHRoZSBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIGljb25zIGZvciBhbiBlbmFibGVkIGNoZWNrYm94XG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gVGhlIGRlc2lyZWQgaW5rIGNvbG9yIGluIGVuYWJsZWQgc3RhdGVcbi8vL1xuQG1peGluIG1kYy1jaGVja2JveC1pbmstY29sb3IoJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1jaGVja2JveC1pZi1lbmFibGVkXyB7XG4gICAgQGluY2x1ZGUgbWRjLWNoZWNrYm94LWluay1jb2xvcl8oJGNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgaW5rIGNvbG9yIG9mIHRoZSBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIGljb25zIGZvciBhIGRpc2FibGVkIGNoZWNrYm94XG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gVGhlIGRlc2lyZWQgaW5rIGNvbG9yIGluIGRpc2FibGVkIHN0YXRlXG4vLy9cbkBtaXhpbiBtZGMtY2hlY2tib3gtZGlzYWJsZWQtaW5rLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtaWYtZGlzYWJsZWRfIHtcbiAgICBAaW5jbHVkZSBtZGMtY2hlY2tib3gtaW5rLWNvbG9yXygkY29sb3IsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNoZWNrYm94LWZvY3VzLWluZGljYXRvci1jb2xvcigkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSxcbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1jb2xvcikge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yLCAkZWRnZU9wdE91dDogdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgJi5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIHtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRjb2xvcjogJGNvbG9yLCAkcXVlcnk6ICRxdWVyeSwgJHJpcHBsZS10YXJnZXQ6ICRtZGMtY2hlY2tib3gtcmlwcGxlLXRhcmdldCk7XG4gIH1cblxuICAmLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIHtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWJhc2UtY29sb3IoJGNvbG9yOiAkY29sb3IsICRxdWVyeTogJHF1ZXJ5LCAkcmlwcGxlLXRhcmdldDogJG1kYy1jaGVja2JveC1yaXBwbGUtdGFyZ2V0KTtcbiAgfVxufVxuXG4vLy9cbi8vLyBTZXRzIGNoZWNrYm94IHRvdWNoIHRhcmdldCBzaXplIHdoaWNoIGNhbiBiZSBtb3JlIHRoYW4gdGhlIHJpcHBsZSBzaXplLiBQYXJhbSBgJHJpcHBsZS1zaXplYCBpcyByZXF1aXJlZCBmb3IgY3VzdG9tXG4vLy8gcmlwcGxlIHNpemUuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgU2l6ZSBvZiB0b3VjaCB0YXJnZXQgKE5hdGl2ZSBpbnB1dCkgaW4gYHB4YC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHJpcHBsZS1zaXplIFNpemUgb2YgcmlwcGxlIGluIGBweGAuIFJlcXVpcmVkIG9ubHkgZm9yIGN1c3RvbSByaXBwbGUgc2l6ZS5cbi8vL1xuQG1peGluIG1kYy1jaGVja2JveC10b3VjaC10YXJnZXQoXG4gICRzaXplOiAkbWRjLWNoZWNrYm94LXJpcHBsZS1zaXplLFxuICAkcmlwcGxlLXNpemU6ICRtZGMtY2hlY2tib3gtcmlwcGxlLXNpemUsXG4gICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcbiAgJG9mZnNldDogKCRyaXBwbGUtc2l6ZSAtICRzaXplKSAvIDI7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbCB7XG4gICAgICB0b3A6ICRvZmZzZXQ7XG4gICAgICByaWdodDogJG9mZnNldDtcbiAgICAgIGxlZnQ6ICRvZmZzZXQ7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgICBoZWlnaHQ6ICRzaXplO1xuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gUHJpdmF0ZVxuLy9cblxuQG1peGluIG1kYy1jaGVja2JveC1iYXNlXyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDAgJG1kYy1jaGVja2JveC1pY29uLXNpemU7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJG1kYy1jaGVja2JveC1pY29uLXNpemU7XG4gIGhlaWdodDogJG1kYy1jaGVja2JveC1pY29uLXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3gtLWRpc2FibGVkXyB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2NoaWxkLS11cGdyYWRlZF8ge1xuICAvLyBEdWUgdG8gdGhlIG15cmlhZCBvZiBzZWxlY3RvciBjb21ib3MgdXNlZCB0byBwcm9wZXJseSBzdHlsZSBhIENTUy1vbmx5IGNoZWNrYm94LCBhbGwgb2ZcbiAgLy8gd2hpY2ggaGF2ZSB2YXJ5aW5nIHNlbGVjdG9yIHByZWNlZGVuY2UgYW5kIG1ha2UgdXNlIG9mIHRyYW5zaXRpb25zLCBpdCBpcyBjbGVhbmVyIGFuZCBtb3JlXG4gIC8vIGVmZmljaWVudCBoZXJlIHRvIHNpbXBseSB1c2UgIWltcG9ydGFudCwgc2luY2UgdGhlIG1kYy1jaGVja2JveC0tYW5pbS0qIGNsYXNzZXMgd2lsbCB0YWtlXG4gIC8vIG92ZXIgZnJvbSBoZXJlLlxuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIEFuaW1hdGlvblxuXG5AbWl4aW4gbWRjLWNoZWNrYm94LS1hbmltXyB7XG4gICRtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGFuZ2UtZHVyYXRpb25fOiA1MDBtcztcblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZVxuXG4gICYtdW5jaGVja2VkLWNoZWNrZWQsXG4gICYtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUsXG4gICYtY2hlY2tlZC11bmNoZWNrZWQsXG4gICYtaW5kZXRlcm1pbmF0ZS11bmNoZWNrZWQge1xuICAgIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZHVyYXRpb24gKiAyO1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIH1cbiAgfVxuXG4gICYtdW5jaGVja2VkLWNoZWNrZWQge1xuICAgIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgICAgIC8vIEluc3RlYWQgb2YgZGVsYXlpbmcgdGhlIGFuaW1hdGlvbiwgd2Ugc2ltcGx5IG11bHRpcGx5IGl0cyBsZW5ndGggYnkgMiBhbmQgYmVnaW4gdGhlXG4gICAgICAvLyBhbmltYXRpb24gYXQgNTAlIGluIG9yZGVyIHRvIHByZXZlbnQgYSBmbGFzaCBvZiBzdHlsZXMgYXBwbGllZCB0byBhIGNoZWNrZWQgY2hlY2ttYXJrXG4gICAgICAvLyBhcyB0aGUgYmFja2dyb3VuZCBpcyBmYWRpbmcgaW4gYmVmb3JlIHRoZSBhbmltYXRpb24gYmVnaW5zLlxuICAgICAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWNoZWNrZWQtY2hlY2ttYXJrLXBhdGggJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uICogMiBsaW5lYXIgMHM7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUge1xuICAgIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgICBhbmltYXRpb246IG1kYy1jaGVja2JveC11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uIGxpbmVhciAwcztcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi1jaGVja2VkLXVuY2hlY2tlZCB7XG4gICAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgge1xuICAgICAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtY2hlY2tlZC11bmNoZWNrZWQtY2hlY2ttYXJrLXBhdGggJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uIGxpbmVhciAwcztcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi1jaGVja2VkLWluZGV0ZXJtaW5hdGUge1xuICAgIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gICAgICBhbmltYXRpb246IG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtY2hlY2ttYXJrICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiBsaW5lYXIgMHM7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgICBhbmltYXRpb246IG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtbWl4ZWRtYXJrICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiBsaW5lYXIgMHM7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtaW5kZXRlcm1pbmF0ZS1jaGVja2VkIHtcbiAgICAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICAgICAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLWNoZWNrbWFyayAkbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hhbmdlLWR1cmF0aW9uXyBsaW5lYXIgMHM7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gICAgICBhbmltYXRpb246IG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtbWl4ZWRtYXJrICRtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGFuZ2UtZHVyYXRpb25fIGxpbmVhciAwcztcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi1pbmRldGVybWluYXRlLXVuY2hlY2tlZCB7XG4gICAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1jb2xvbi1zcGFjZS1hZnRlclxuICAgICAgYW5pbWF0aW9uOlxuICAgICAgICBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS11bmNoZWNrZWQtbWl4ZWRtYXJrICRtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGFuZ2UtZHVyYXRpb25fICogLjYgbGluZWFyIDBzO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC10eXBlXG59XG5cbi8vIEJhY2tncm91bmRcblxuLy8vXG4vLy8gSGVscHMgc2VsZWN0IHRoZSBjaGVja2JveCBiYWNrZ3JvdW5kIG9ubHkgd2hlbiBpdHMgbmF0aXZlIGNvbnRyb2wgaXMgaW5cbi8vLyBlbmFibGVkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLWNoZWNrYm94LWlmLWVuYWJsZWRfIHtcbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy9cbi8vLyBIZWxwcyBzZWxlY3QgdGhlIGNoZWNrYm94IGJhY2tncm91bmQgb25seSB3aGVuIGl0cyBuYXRpdmUgY29udHJvbCBpcyBpblxuLy8vIGRpc2FibGVkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLWNoZWNrYm94LWlmLWRpc2FibGVkXyB7XG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmRpc2FibGVkIH4ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vL1xuLy8vIEhlbHBzIHNlbGVjdCB0aGUgY2hlY2tib3ggYmFja2dyb3VuZCBvbmx5IHdoZW4gaXRzIG5hdGl2ZSBjb250cm9sIGlzIGluXG4vLy8gdW5tYXJrZWQgJiBlbmFibGVkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLWNoZWNrYm94LWlmLXVubWFya2VkLWVuYWJsZWRfIHtcbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpub3QoOmNoZWNrZWQpOm5vdCg6aW5kZXRlcm1pbmF0ZSkgfiB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vXG4vLy8gSGVscHMgc2VsZWN0IHRoZSBjaGVja2JveCBiYWNrZ3JvdW5kIG9ubHkgd2hlbiBpdHMgbmF0aXZlIGNvbnRyb2wgaXMgaW5cbi8vLyB1bm1hcmtlZCAmIGRpc2FibGVkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLWNoZWNrYm94LWlmLXVubWFya2VkLWRpc2FibGVkXyB7XG4gIC8vIE5vdGU6IHdlIG11c3QgdXNlIGBbZGlzYWJsZWRdYCBpbnN0ZWFkIG9mIGA6ZGlzYWJsZWRgIGJlbG93IGJlY2F1c2UgRWRnZSBkb2VzIG5vdCBhbHdheXMgcmVjYWxjdWxhdGUgdGhlIHN0eWxlXG4gIC8vIHByb3BlcnR5IHdoZW4gdGhlIGA6ZGlzYWJsZWRgIHBzZXVkby1jbGFzcyBpcyBmb2xsb3dlZCBieSBhIHNpYmxpbmcgY29tYmluYXRvci4gU2VlOlxuICAvLyBodHRwczovL2RldmVsb3Blci5taWNyb3NvZnQuY29tL2VuLXVzL21pY3Jvc29mdC1lZGdlL3BsYXRmb3JtL2lzc3Vlcy8xMTI5NTIzMS9cbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2xbZGlzYWJsZWRdOm5vdCg6Y2hlY2tlZCk6bm90KDppbmRldGVybWluYXRlKSB+IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy9cbi8vLyBIZWxwcyBzZWxlY3QgdGhlIGNoZWNrYm94IGJhY2tncm91bmQgb25seSB3aGVuIGl0cyBuYXRpdmUgY29udHJvbCBpcyBpblxuLy8vIG1hcmtlZCAmIGVuYWJsZWQgc3RhdGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbkBtaXhpbiBtZGMtY2hlY2tib3gtaWYtbWFya2VkLWVuYWJsZWRfIHtcbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpjaGVja2VkLFxuICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmluZGV0ZXJtaW5hdGUge1xuICAgIH4ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8vIEhlbHBzIHNlbGVjdCB0aGUgY2hlY2tib3ggYmFja2dyb3VuZCBvbmx5IHdoZW4gaXRzIG5hdGl2ZSBjb250cm9sIGlzIGluXG4vLy8gbWFya2VkICYgZGlzYWJsZWQgc3RhdGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbkBtaXhpbiBtZGMtY2hlY2tib3gtaWYtbWFya2VkLWRpc2FibGVkXyB7XG4gIC8vIE5vdGU6IHdlIG11c3QgdXNlIGBbZGlzYWJsZWRdYCBpbnN0ZWFkIG9mIGA6ZGlzYWJsZWRgIGJlbG93IGJlY2F1c2UgRWRnZSBkb2VzIG5vdCBhbHdheXMgcmVjYWxjdWxhdGUgdGhlIHN0eWxlXG4gIC8vIHByb3BlcnR5IHdoZW4gdGhlIGA6ZGlzYWJsZWRgIHBzZXVkby1jbGFzcyBpcyBmb2xsb3dlZCBieSBhIHNpYmxpbmcgY29tYmluYXRvci4gU2VlOlxuICAvLyBodHRwczovL2RldmVsb3Blci5taWNyb3NvZnQuY29tL2VuLXVzL21pY3Jvc29mdC1lZGdlL3BsYXRmb3JtL2lzc3Vlcy8xMTI5NTIzMS9cbiAgLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2xbZGlzYWJsZWRdOmNoZWNrZWQsXG4gIC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sW2Rpc2FibGVkXTppbmRldGVybWluYXRlIHtcbiAgICB+IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kXygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogJG1kYy1jaGVja2JveC1pY29uLXNpemU7XG4gICAgaGVpZ2h0OiAkbWRjLWNoZWNrYm94LWljb24tc2l6ZTtcbiAgICAvLyBib3JkZXItY29sb3IgaXMgb3ZlcnJpZGRlbiBieSB0aGUgbWRjLWNoZWNrYm94LXVubWFya2VkLXN0cm9rZS1jb2xvcigpIG1peGluXG4gICAgYm9yZGVyOiAkbWRjLWNoZWNrYm94LWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3I7XG4gIH1cblxuICAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsIG9uLXN1cmZhY2UsICRlZGdlT3B0T3V0OiB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb246XG4gICAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KGJhY2tncm91bmQtY29sb3IpLFxuICAgICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZXhpdChib3JkZXItY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2JhY2tncm91bmQtLW1hcmtlZF8ge1xuICB0cmFuc2l0aW9uOlxuICAgIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWVudGVyKGJvcmRlci1jb2xvciksXG4gICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZW50ZXIoYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi8vL1xuLy8vIFNldHMgdGhlIHN0cm9rZSAmIGZpbGwgY29sb3JzIGZvciB0aGUgY2hlY2tib3guXG4vLy8gVGhpcyBtaXhpbiBzaG91bGQgYmUgd3JhcHBlZCBpbiBhIG1peGluIHRoYXQgcXVhbGlmaWVzIHN0YXRlIHN1Y2ggYXNcbi8vLyBgbWRjLWNoZWNrYm94LWlmLXVubWFya2VkLWVuYWJsZWRfYC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuQG1peGluIG1kYy1jaGVja2JveC1jb250YWluZXItY29sb3JzXygkc3Ryb2tlLWNvbG9yLCAkZmlsbC1jb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRzdHJva2UtY29sb3IpO1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGZpbGwtY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBGb2N1cyBpbmRpY2F0b3JcblxuQG1peGluIG1kYy1jaGVja2JveF9fZm9jdXMtaW5kaWNhdG9yXygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb246XG4gICAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KG9wYWNpdHkpLFxuICAgICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZXhpdCh0cmFuc2Zvcm0pO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2ZvY3VzLWluZGljYXRvci0tZm9jdXNlZF8oJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1hbmltYXRpb246IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBhbmltYXRpb24pO1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAkbWRjLWNoZWNrYm94LWZvY3VzLWluZGljYXRvci1vcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZW50ZXIob3BhY2l0eSwgMG1zLCA4MG1zKSxcbiAgICAgIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWVudGVyKHRyYW5zZm9ybSwgMG1zLCA4MG1zKTtcbiAgfVxufVxuXG4vLyBOYXRpdmUgaW5wdXRcblxuQG1peGluIG1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2xfIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogaW5oZXJpdDtcbn1cblxuLy8gQ2hlY2sgbWFya1xuXG5AbWl4aW4gbWRjLWNoZWNrYm94X19jaGVja21hcmtfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtYW5pbWF0aW9uOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgYW5pbWF0aW9uKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZXhpdChvcGFjaXR5LCAwbXMsICRtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1kdXJhdGlvbiAqIDIpO1xuICB9XG5cbiAgLm1kYy1jaGVja2JveC0tdXBncmFkZWQgJiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX2NoZWNrbWFyay0tY2hlY2tlZF8oJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1hbmltYXRpb246IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBhbmltYXRpb24pO1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWVudGVyKG9wYWNpdHksIDBtcywgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uICogMiksXG4gICAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1lbnRlcih0cmFuc2Zvcm0sIDBtcywgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uICogMik7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLS1pbmRldGVybWluYXRlXygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWV4aXQob3BhY2l0eSwgMG1zLCAkbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZHVyYXRpb24pLFxuICAgICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZXhpdCh0cmFuc2Zvcm0sIDBtcywgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG4vLy9cbi8vLyBTZXRzIHRoZSBpbmsgY29sb3Igb2YgdGhlIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgaWNvbnMgZm9yIGEgY2hlY2tib3guXG4vLy8gVGhpcyBtaXhpbiBzaG91bGQgYmUgd3JhcHBlZCBpbiBhIG1peGluIHRoYXQgcXVhbGlmaWVzIHN0YXRlIHN1Y2ggYXNcbi8vLyBgbWRjLWNoZWNrYm94LWlmLXVubWFya2VkX2AuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbkBtaXhpbiBtZGMtY2hlY2tib3gtaW5rLWNvbG9yXygkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWNvbG9yLCAkY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDaGVjayBtYXJrIHBhdGhcblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGhfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtYW5pbWF0aW9uOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgYW5pbWF0aW9uKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb246IG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWV4aXQoc3Ryb2tlLWRhc2hvZmZzZXQsIDBtcywgJG1kYy1jaGVja2JveC10cmFuc2l0aW9uLWR1cmF0aW9uICogMik7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgIHN0cm9rZS13aWR0aDogJG1kYy1jaGVja2JveC1tYXJrLXN0cm9rZS1zaXplICogMS4zO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkbWRjLWNoZWNrYm94LW1hcmstcGF0aC1sZW5ndGhfO1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6ICRtZGMtY2hlY2tib3gtbWFyay1wYXRoLWxlbmd0aF87XG4gIH1cbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgtLW1hcmtlZF8ge1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLy8gTWl4ZWQgbWFya1xuXG5AbWl4aW4gbWRjLWNoZWNrYm94X19taXhlZG1hcmtfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtYW5pbWF0aW9uOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgYW5pbWF0aW9uKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKSByb3RhdGUoMGRlZyk7XG4gICAgYm9yZGVyLXdpZHRoOiBmbG9vcigkbWRjLWNoZWNrYm94LW1hcmstc3Ryb2tlLXNpemUpIC8gMjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb246XG4gICAgICBtZGMtY2hlY2tib3gtdHJhbnNpdGlvbi1leGl0KG9wYWNpdHkpLFxuICAgICAgbWRjLWNoZWNrYm94LXRyYW5zaXRpb24tZXhpdCh0cmFuc2Zvcm0pO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2hlY2tib3hfX21peGVkbWFyay0tY2hlY2tlZF8ge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIG1kYy1jaGVja2JveF9fbWl4ZWRtYXJrLS1pbmRldGVybWluYXRlXyB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLy8vXG4vLy8gUmVzZXRzIHRvdWNoIHRhcmdldC1yZWxhdGVkIHN0eWxlcy4gVGhpcyBpcyBjYWxsZWQgZnJvbSB0aGUgZGVuc2l0eSBtaXhpbiB0b1xuLy8vIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBpbmNyZWFzZWQgdG91Y2ggdGFyZ2V0LCBzaW5jZSBkZW5zZSBjb21wb25lbnRzXG4vLy8gZG9uJ3QgaGF2ZSB0aGUgc2FtZSBkZWZhdWx0IGExMXkgcmVxdWlyZW1lbnRzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLWNoZWNrYm94LXRvdWNoLXRhcmdldC1yZXNldF8oJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTkgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vL1xuLy8vIFJldHVybnMgY29tcG9uZW50IHByb3BlcnR5IHZhbHVlIGJhc2VkIG9uIGdpdmVuIGRlbnNpdHkgY29uZmlnIGFuZCBkZW5zaXR5IHNjYWxlLlxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRkZW5zaXR5LWNvbmZpZyAtIERlbnNpdHkgY29uZmlndXJhdGlvbiBmb3IgY29tcG9uZW50LlxuLy8vIEBwYXJhbSB7TnVtYmVyIHwgU3RyaW5nfSAkZGVuc2l0eS1zY2FsZSAtIERlbnNpdHkgc2NhbGUgdmFsdWUgZm9yIGNvbXBvbmVudC4gRXhhbXBsZXM6IGAtM2AsIGAwYCBvciBgbWluaW11bWAuXG4vLy8gQHBhcmFtIHtNYXB9ICRwcm9wZXJ0eS1uYW1lIC0gRGVuc2l0eSBzY2FsZSBtYXAgZm9yIHRoZSB0YXJnZXQgY29tcG9uZW50LlxuLy8vXG4vLy8gQGV4YW1wbGVcbi8vLyAgIG1kYy1kZW5zaXR5LXByb3AtdmFsdWUoXG4vLy8gICAgICRkZW5zaXR5LWNvbmZpZzogKFxuLy8vICAgICAgIGhlaWdodDogKFxuLy8vICAgICAgICAgZGVmYXVsdDogMzZweCxcbi8vLyAgICAgICAgIG1heGltdW06IDQwcHgsXG4vLy8gICAgICAgICBtaW5pbXVtOiAyNHB4LFxuLy8vICAgICAgICksXG4vLy8gICAgICksXG4vLy8gICAgICRkZW5zaXR5LXNjYWxlOiBtaW5pbXVtLFxuLy8vICAgICAkcHJvcGVydHktbmFtZTogaGVpZ2h0LFxuLy8vICAgKVxuLy8vICAgLy8gMjRweFxuLy8vXG4vLy8gQGV4YW1wbGVcbi8vLyAgIG1kYy1kZW5zaXR5LXByb3AtdmFsdWUoXG4vLy8gICAgICRkZW5zaXR5LWNvbmZpZzogKFxuLy8vICAgICAgIGhlaWdodDogKFxuLy8vICAgICAgICAgZGVmYXVsdDogNDBweCxcbi8vLyAgICAgICAgIG1heGltdW06IDYwcHgsXG4vLy8gICAgICAgICBtaW5pbXVtOiAyNHB4LFxuLy8vICAgICAgICksXG4vLy8gICAgICksXG4vLy8gICAgICRkZW5zaXR5LXNjYWxlOiAtMixcbi8vLyAgICAgJHByb3BlcnR5LW5hbWU6IGhlaWdodCxcbi8vLyAgIClcbi8vLyAgIC8vIDMycHhcbi8vL1xuLy8vIEBleGFtcGxlXG4vLy8gICBtZGMtZGVuc2l0eS1wcm9wLXZhbHVlKFxuLy8vICAgICAkZGVuc2l0eS1jb25maWc6IChcbi8vLyAgICAgICBoZWlnaHQ6IChcbi8vLyAgICAgICAgIGRlZmF1bHQ6IDM2cHgsXG4vLy8gICAgICAgICBtYXhpbXVtOiA0MHB4LFxuLy8vICAgICAgICAgbWluaW11bTogMjRweCxcbi8vLyAgICAgICApLFxuLy8vICAgICAgIHdpZHRoOiAoXG4vLy8gICAgICAgICBkZWZhdWx0OiA1NnB4LFxuLy8vICAgICAgICAgbWF4aW11bTogNjRweCxcbi8vLyAgICAgICAgIG1pbmltdW06IDQ4cHgsXG4vLy8gICAgICAgKSxcbi8vLyAgICAgKSxcbi8vLyAgICAgJGRlbnNpdHktc2NhbGU6IG1pbmltdW0sXG4vLy8gICAgICRwcm9wZXJ0eS1uYW1lOiB3aWR0aCxcbi8vLyAgIClcbi8vLyAgIC8vIDQ4cHhcbi8vL1xuQGZ1bmN0aW9uIG1kYy1kZW5zaXR5LXByb3AtdmFsdWUoJGRlbnNpdHktY29uZmlnLCAkZGVuc2l0eS1zY2FsZSwgJHByb3BlcnR5LW5hbWUpIHtcbiAgQGlmICh0eXBlLW9mKCRkZW5zaXR5LXNjYWxlKSA9PSBcInN0cmluZ1wiIGFuZFxuICBpbmRleCgkbGlzdDogJG1kYy1kZW5zaXR5LXN1cHBvcnRlZC1zY2FsZXMsICR2YWx1ZTogJGRlbnNpdHktc2NhbGUpID09IG51bGwpIHtcbiAgICBAZXJyb3IgXCJtZGMtZGVuc2l0eTogU3VwcG9ydGVkIGRlbnNpdHkgc2NhbGVzICN7JG1kYy1kZW5zaXR5LXN1cHBvcnRlZC1zY2FsZXN9LCBidXQgcmVjZWl2ZWQgI3skZGVuc2l0eS1zY2FsZX0uXCI7XG4gIH1cblxuICBAaWYgKGluZGV4KCRsaXN0OiAkbWRjLWRlbnNpdHktc3VwcG9ydGVkLXByb3BlcnRpZXMsICR2YWx1ZTogJHByb3BlcnR5LW5hbWUpID09IG51bGwpIHtcbiAgICBAZXJyb3IgXCJtZGMtZGVuc2l0eTogU3VwcG9ydGVkIGRlbnNpdHkgcHJvcGVydGllcyAjeyRtZGMtZGVuc2l0eS1zdXBwb3J0ZWQtcHJvcGVydGllc30sXCIgK1xuICAgICAgXCJidXQgcmVjZWl2ZWQgI3skcHJvcGVydHktbmFtZX0uXCI7XG4gIH1cblxuICAkdmFsdWU6IG51bGw7XG4gICRwcm9wZXJ0eS1zY2FsZS1tYXA6IG1hcC1nZXQoJGRlbnNpdHktY29uZmlnLCAkcHJvcGVydHktbmFtZSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRwcm9wZXJ0eS1zY2FsZS1tYXAsICRkZW5zaXR5LXNjYWxlKSB7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRwcm9wZXJ0eS1zY2FsZS1tYXAsICRkZW5zaXR5LXNjYWxlKTtcbiAgfSBAZWxzZSB7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRwcm9wZXJ0eS1zY2FsZS1tYXAsIGRlZmF1bHQpICsgJGRlbnNpdHktc2NhbGUgKiAkbWRjLWRlbnNpdHktaW50ZXJ2YWw7XG4gIH1cblxuICAkbWluLXZhbHVlOiBtYXAtZ2V0KCRwcm9wZXJ0eS1zY2FsZS1tYXAsICRtZGMtZGVuc2l0eS1taW5pbXVtLXNjYWxlKTtcbiAgJG1heC12YWx1ZTogbWFwLWdldCgkcHJvcGVydHktc2NhbGUtbWFwLCAkbWRjLWRlbnNpdHktbWF4aW11bS1zY2FsZSk7XG5cbiAgQGlmICgkdmFsdWUgPCAkbWluLXZhbHVlIG9yICR2YWx1ZSA+ICRtYXgtdmFsdWUpIHtcbiAgICBAZXJyb3IgXCJtZGMtZGVuc2l0eTogI3skcHJvcGVydHktbmFtZX0gbXVzdCBiZSBiZXR3ZWVuICN7JG1pbi12YWx1ZX0gYW5kIFwiICtcbiAgICAgIFwiI3skbWF4LXZhbHVlfSAoaW5jbHVzaXZlKSwgYnV0IHJlY2VpdmVkICN7JHZhbHVlfS5cIjtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE5IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtdG91Y2gtdGFyZ2V0LWhlaWdodDogNDhweCAhZGVmYXVsdDtcbiRtZGMtdG91Y2gtdGFyZ2V0LXdpZHRoOiAkbWRjLXRvdWNoLXRhcmdldC1oZWlnaHQgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTkgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1mb3JtLWZpZWxkLWNvcmUtc3R5bGVzKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgLm1kYy1mb3JtLWZpZWxkIHtcbiAgICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShib2R5MiwgJHF1ZXJ5KTtcblxuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCB0ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlXG4gICAgPiBsYWJlbCB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShtYXJnaW4sIDAsIGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShwYWRkaW5nLCAkbWRjLWZvcm0tZmllbGQtaXRlbS1zcGFjaW5nLCAwKTtcblxuICAgICAgICBvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZCB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC10eXBlXG4gICAgPiBsYWJlbCB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShtYXJnaW4sIGF1dG8sIDApO1xuICAgICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShwYWRkaW5nLCAwLCAkbWRjLWZvcm0tZmllbGQtaXRlbS1zcGFjaW5nKTtcblxuICAgICAgICBvcmRlcjogLTE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9kZW5zaXR5L2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1pY29uLWJ1dHRvbi1jb3JlLXN0eWxlcygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1pY29uLWJ1dHRvbi13aXRob3V0LXJpcHBsZSgkcXVlcnkpO1xuICBAaW5jbHVkZSBtZGMtaWNvbi1idXR0b24tcmlwcGxlKCRxdWVyeSk7XG59XG5cbkBtaXhpbiBtZGMtaWNvbi1idXR0b24td2l0aG91dC1yaXBwbGUoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGljb24tYnV0dG9uXG4gIC5tZGMtaWNvbi1idXR0b24ge1xuICAgIEBpbmNsdWRlIG1kYy1pY29uLWJ1dHRvbi1iYXNlXygkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWljb24tYnV0dG9uLWRlbnNpdHkoMCwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1pY29uLWJ1dHRvbl9faWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gICAgJi5tZGMtaWNvbi1idXR0b25fX2ljb24tLW9uIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1kYy1pY29uLWJ1dHRvbi0tb24ge1xuICAgIC5tZGMtaWNvbi1idXR0b25fX2ljb24ge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAgICAgJi5tZGMtaWNvbi1idXR0b25fX2ljb24tLW9uIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbn1cblxuQG1peGluIG1kYy1pY29uLWJ1dHRvbi1yaXBwbGUoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLWNvbW1vbigkcXVlcnkpO1xuXG4gIC5tZGMtaWNvbi1idXR0b24ge1xuICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtc3VyZmFjZSgkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXJpcHBsZS1yYWRpdXMtdW5ib3VuZGVkKCRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG4vLy9cbi8vLyBTZXRzIHRoZSBkZW5zaXR5IHNjYWxlIGZvciBpY29uIGJ1dHRvbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIHwgU3RyaW5nfSAkZGVuc2l0eS1zY2FsZSAtIERlbnNpdHkgc2NhbGUgdmFsdWUgZm9yIGNvbXBvbmVudC5cbi8vLyAgICAgU3VwcG9ydGVkIGRlbnNpdHkgc2NhbGUgdmFsdWVzIHJhbmdlIGZyb20gYC01YCB0byBgMGAsIHdpdGggYDBgIGJlaW5nIHRoZSBkZWZhdWx0LlxuLy8vXG5AbWl4aW4gbWRjLWljb24tYnV0dG9uLWRlbnNpdHkoJGRlbnNpdHktc2NhbGUsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJHNpemU6IG1kYy1kZW5zaXR5LXByb3AtdmFsdWUoXG4gICAgJGRlbnNpdHktY29uZmlnOiAkbWRjLWljb24tYnV0dG9uLWRlbnNpdHktY29uZmlnLFxuICAgICRkZW5zaXR5LXNjYWxlOiAkZGVuc2l0eS1zY2FsZSxcbiAgICAkcHJvcGVydHktbmFtZTogc2l6ZSxcbiAgKTtcblxuICBAaW5jbHVkZSBtZGMtaWNvbi1idXR0b24tc2l6ZSgkc2l6ZSwgJHF1ZXJ5OiAkcXVlcnkpO1xufVxuXG4vLy9cbi8vLyBTZXRzIHRoZSBzaXplIG9mIHRoZSBpY29uLWJ1dHRvbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFNpemUgdmFsdWUgZm9yIGljb24tYnV0dG9uLlxuLy8vICAgICBTaXplIHdpbGwgc2V0IHRoZSB3aWR0aCwgaGVpZ2h0LCBhbmQgcGFkZGluZyBmb3IgdGhlIG92ZXJhbGwgY29tcG9uZW50LlxuLy8vXG5AbWl4aW4gbWRjLWljb24tYnV0dG9uLXNpemUoJHNpemUsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICAgIHBhZGRpbmc6ICgkc2l6ZSAtICRtZGMtaWNvbi1idXR0b24taWNvbi1zaXplKSAvIDI7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgd2lkdGgsIGhlaWdodCBhbmQgcGFkZGluZyBvZiBpY29uIGJ1dHRvbi4gQWxzbyBjaGFuZ2VzIHRoZSBzaXplIG9mXG4vLy8gdGhlIGljb24gaXRzZWxmIGJhc2VkIG9uIGJ1dHRvbiBzaXplLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIHZhbHVlIGZvciBpY29uLWJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCAtIEhlaWdodCB2YWx1ZSBmb3IgaWNvbi1idXR0b24uIChkZWZhdWx0OiAkd2lkdGgpXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIC0gUGFkZGluZyB2YWx1ZSBmb3IgaWNvbi1idXR0b24uIChkZWZhdWx0OiBtYXgoJHdpZHRoLCAkaGVpZ2h0KSAvIDIpXG4vLy8gQGRlcHJlY2F0ZWRcbi8vLyAgICAgVGhpcyBtaXhpbiBwcm92aWRlcyB0b28gbXVjaCBvZiBsb3cgbGV2ZWwgY3VzdG9taXphdGlvbi5cbi8vLyAgICAgUGxlYXNlIHVzZSBtZGMtaWNvbi1idXR0b24tc2l6ZSBpbnN0ZWFkLlxuLy8vXG5AbWl4aW4gbWRjLWljb24tYnV0dG9uLWljb24tc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCwgJHBhZGRpbmc6IG1heCgkd2lkdGgsJGhlaWdodCkvMiwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgd2lkdGg6ICR3aWR0aCArICRwYWRkaW5nICogMjtcbiAgICBoZWlnaHQ6ICRoZWlnaHQgKyAkcGFkZGluZyAqIDI7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiBtYXgoJHdpZHRoLCAkaGVpZ2h0KTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZVxuICBzdmcsXG4gIGltZyB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtaWNvbi1idXR0b24taW5rLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtc3RhdGVzKCRjb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xufVxuXG5AbWl4aW4gbWRjLWljb24tYnV0dG9uLWJhc2VfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogJG1kYy1pY29uLWJ1dHRvbi1pY29uLXNpemU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdHlwZVxuICBzdmcsXG4gIGltZyB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIHdpZHRoOiAkbWRjLWljb24tYnV0dG9uLWljb24tc2l6ZTtcbiAgICAgIGhlaWdodDogJG1kYy1pY29uLWJ1dHRvbi1pY29uLXNpemU7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1jb2xvcikge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsIHRleHQtZGlzYWJsZWQtb24tbGlnaHQpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2RlbnNpdHkvdmFyaWFibGVzXCI7XG5cbiRtZGMtaWNvbi1idXR0b24taWNvbi1zaXplOiAyNHB4ICFkZWZhdWx0O1xuXG4kbWRjLWljb24tYnV0dG9uLXNpemU6IDQ4cHggIWRlZmF1bHQ7XG4kbWRjLWljb24tYnV0dG9uLW1pbmltdW0taGVpZ2h0OiAyOHB4ICFkZWZhdWx0O1xuJG1kYy1pY29uLWJ1dHRvbi1tYXhpbXVtLWhlaWdodDogJG1kYy1pY29uLWJ1dHRvbi1zaXplICFkZWZhdWx0O1xuJG1kYy1pY29uLWJ1dHRvbi1kZW5zaXR5LXNjYWxlOiAkbWRjLWRlbnNpdHktZGVmYXVsdC1zY2FsZSAhZGVmYXVsdDtcbiRtZGMtaWNvbi1idXR0b24tZGVuc2l0eS1jb25maWc6IChcbiAgc2l6ZTogKFxuICAgIGRlZmF1bHQ6ICRtZGMtaWNvbi1idXR0b24tc2l6ZSxcbiAgICBtYXhpbXVtOiAkbWRjLWljb24tYnV0dG9uLW1heGltdW0taGVpZ2h0LFxuICAgIG1pbmltdW06ICRtZGMtaWNvbi1idXR0b24tbWluaW11bS1oZWlnaHQsXG4gICksXG4pICFkZWZhdWx0O1xuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYW5pbWF0aW9uL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9kZW5zaXR5L2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RvdWNoLXRhcmdldC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdG91Y2gtdGFyZ2V0L3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuJG1kYy1yYWRpby1yaXBwbGUtdGFyZ2V0OiBcIi5tZGMtcmFkaW9fX3JpcHBsZVwiO1xuXG5AbWl4aW4gbWRjLXJhZGlvLWNvcmUtc3R5bGVzKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgQGluY2x1ZGUgbWRjLXJhZGlvLXdpdGhvdXQtcmlwcGxlKCRxdWVyeSk7XG4gIEBpbmNsdWRlIG1kYy1yYWRpby1yaXBwbGUoJHF1ZXJ5KTtcbn1cblxuLy8gVGhpcyBBUEkgaXMgaW50ZW5kZWQgZm9yIHVzZSBieSBmcmFtZXdvcmtzIHRoYXQgbWF5IHdhbnQgdG8gc2VwYXJhdGUgdGhlIHJpcHBsZS1yZWxhdGVkIHN0eWxlcyBmcm9tIHRoZSBvdGhlclxuLy8gcmFkaW8gc3R5bGVzLiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IG1vc3QgdXNlcnMgdXNlIGBtZGMtcmFkaW8tY29yZS1zdHlsZXNgIGluc3RlYWQuXG5AbWl4aW4gbWRjLXJhZGlvLXdpdGhvdXQtcmlwcGxlKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgcmFkaW9cblxuICAkZmVhdC1hbmltYXRpb246IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBhbmltYXRpb24pO1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtdG91Y2gtdGFyZ2V0LXdyYXBwZXIoJHF1ZXJ5KTtcblxuICAubWRjLXJhZGlvIHtcbiAgICBAaW5jbHVkZSBtZGMtcmFkaW8tdW5jaGVja2VkLXN0cm9rZS1jb2xvcigkbWRjLXJhZGlvLXVuY2hlY2tlZC1jb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xuICAgIEBpbmNsdWRlIG1kYy1yYWRpby1jaGVja2VkLXN0cm9rZS1jb2xvcigkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWluay1jb2xvcigkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWRpc2FibGVkLXVuY2hlY2tlZC1zdHJva2UtY29sb3IoJG1kYy1yYWRpby1kaXNhYmxlZC1jaXJjbGUtY29sb3IsICRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtcmFkaW8tZGlzYWJsZWQtY2hlY2tlZC1zdHJva2UtY29sb3IoJG1kYy1yYWRpby1kaXNhYmxlZC1jaXJjbGUtY29sb3IsICRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtcmFkaW8tZGlzYWJsZWQtaW5rLWNvbG9yKCRtZGMtcmFkaW8tZGlzYWJsZWQtY2lyY2xlLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWZvY3VzLWluZGljYXRvci1jb2xvcigkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWRlbnNpdHkoJG1kYy1yYWRpby1kZW5zaXR5LXNjYWxlLCAkcXVlcnk6ICRxdWVyeSk7XG5cbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgIHdpZHRoOiAkbWRjLXJhZGlvLWljb24tc2l6ZTtcbiAgICAgIGhlaWdodDogJG1kYy1yYWRpby1pY29uLXNpemU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtLCBib3JkZXItY29sb3IsIGNvbG9yO1xuICAgIH1cblxuICAgIC8vIENvbnRhaW5lciBmb3IgcmFkaW8gY2lyY2xlcyBhbmQgcmlwcGxlLlxuICAgICZfX2JhY2tncm91bmQge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAkbWRjLXJhZGlvLWljb24tc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkbWRjLXJhZGlvLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBtZGMtcmFkaW8tZXhpdChvcGFjaXR5KSwgbWRjLXJhZGlvLWV4aXQodHJhbnNmb3JtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX291dGVyLWNpcmNsZSB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbWRjLXJhZGlvLWV4aXQoYm9yZGVyLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbm5lci1jaXJjbGUge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gICAgICAgIGJvcmRlci13aWR0aDogMTBweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgIG1kYy1yYWRpby1leGl0KHRyYW5zZm9ybSksXG4gICAgICAgICAgbWRjLXJhZGlvLWV4aXQoYm9yZGVyLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYXRpdmUtY29udHJvbCB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgY3Vyc29yOiBpbmhlcml0O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLXRvdWNoIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10b3VjaC10YXJnZXQtY29tcG9uZW50KFxuICAgICAgICAkY29tcG9uZW50LWhlaWdodDogJG1kYy1yYWRpby1yaXBwbGUtc2l6ZSxcbiAgICAgICAgJGNvbXBvbmVudC13aWR0aDogJG1kYy1yYWRpby1yaXBwbGUtc2l6ZSxcbiAgICAgICAgJHF1ZXJ5OiAkcXVlcnkpO1xuICAgICAgQGluY2x1ZGUgbWRjLXJhZGlvLXRvdWNoLXRhcmdldCgkc2l6ZTogJG1kYy10b3VjaC10YXJnZXQtaGVpZ2h0LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCxcbiAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQge1xuICAgICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgIG1kYy1yYWRpby1lbnRlcihvcGFjaXR5KSxcbiAgICAgICAgICBtZGMtcmFkaW8tZW50ZXIodHJhbnNmb3JtKTtcbiAgICAgIH1cblxuICAgICAgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBtZGMtcmFkaW8tZW50ZXIoYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUge1xuICAgICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICBtZGMtcmFkaW8tZW50ZXIodHJhbnNmb3JtKSxcbiAgICAgICAgICAgIG1kYy1yYWRpby1lbnRlcihib3JkZXItY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1kYy1yYWRpby0tZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkIHtcbiAgICArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQge1xuICAgICAgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uKSB7XG4gICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgIG1kYy1yYWRpby1lbnRlcih0cmFuc2Zvcm0pLFxuICAgICAgICAgICAgbWRjLXJhZGlvLWVudGVyKGJvcmRlci1jb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCxcbiAgW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sIHtcbiAgICArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmZvY3VzIHtcbiAgICArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICBvcGFjaXR5OiBtYXAtZ2V0KCRtZGMtcmlwcGxlLWRhcmstaW5rLW9wYWNpdGllcywgZm9jdXMpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgIG1kYy1yYWRpby1lbnRlcihvcGFjaXR5KSxcbiAgICAgICAgICBtZGMtcmFkaW8tZW50ZXIodHJhbnNmb3JtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxufVxuXG4vLyBUaGlzIEFQSSBpcyBpbnRlbmRlZCBmb3IgdXNlIGJ5IGZyYW1ld29ya3MgdGhhdCBtYXkgd2FudCB0byBzZXBhcmF0ZSB0aGUgcmlwcGxlLXJlbGF0ZWQgc3R5bGVzIGZyb20gdGhlIG90aGVyXG4vLyByYWRpbyBzdHlsZXMuIEl0IGlzIHJlY29tbWVuZGVkIHRoYXQgbW9zdCB1c2VycyB1c2UgYG1kYy1yYWRpby1jb3JlLXN0eWxlc2AgaW5zdGVhZC5cbkBtaXhpbiBtZGMtcmFkaW8tcmlwcGxlKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtcmlwcGxlLWNvbW1vbigkcXVlcnkpO1xuXG4gIC5tZGMtcmFkaW8ge1xuICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtc3VyZmFjZSgkcXVlcnk6ICRxdWVyeSwgJHJpcHBsZS10YXJnZXQ6ICRtZGMtcmFkaW8tcmlwcGxlLXRhcmdldCk7XG4gICAgQGluY2x1ZGUgbWRjLXJpcHBsZS1yYWRpdXMtdW5ib3VuZGVkKCRxdWVyeTogJHF1ZXJ5LCAkcmlwcGxlLXRhcmdldDogJG1kYy1yYWRpby1yaXBwbGUtdGFyZ2V0KTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKFxuICAgICAgJGNvbG9yOiAkbWRjLXJhZGlvLWJhc2VsaW5lLXRoZW1lLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSwgJHJpcHBsZS10YXJnZXQ6ICRtZGMtcmFkaW8tcmlwcGxlLXRhcmdldCk7XG5cbiAgICAmLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZCB7XG4gICAgICAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjeyRtZGMtcmFkaW8tcmlwcGxlLXRhcmdldH0ge1xuICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtdGFyZ2V0LWNvbW1vbigkcXVlcnk6ICRxdWVyeSk7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgc3Ryb2tlIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCwgZW5hYmxlZCByYWRpbyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gVGhlIGRlc2lyZWQgc3Ryb2tlIGNvbG9yLlxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLXVuY2hlY2tlZC1zdHJva2UtY29sb3IoJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1yYWRpby1pZi1lbmFibGVkLXVuY2hlY2tlZF8ge1xuICAgIEBpbmNsdWRlIG1kYy1yYWRpby1zdHJva2UtY29sb3JfKCRjb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG59XG5cbi8vL1xuLy8vIFNldHMgdGhlIHN0cm9rZSBjb2xvciBvZiBhIGNoZWNrZWQsIGVuYWJsZWQgcmFkaW8gYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIFRoZSBkZXNpcmVkIHN0cm9rZSBjb2xvci5cbi8vL1xuQG1peGluIG1kYy1yYWRpby1jaGVja2VkLXN0cm9rZS1jb2xvcigkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgQGluY2x1ZGUgbWRjLXJhZGlvLWlmLWVuYWJsZWQtY2hlY2tlZF8ge1xuICAgIEBpbmNsdWRlIG1kYy1yYWRpby1zdHJva2UtY29sb3JfKCRjb2xvciwgJHF1ZXJ5OiRxdWVyeSk7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgaW5rIGNvbG9yIG9mIGFuIGVuYWJsZWQgcmFkaW8gYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIFRoZSBkZXNpcmVkIGluayBjb2xvci5cbi8vL1xuQG1peGluIG1kYy1yYWRpby1pbmstY29sb3IoJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1yYWRpby1pZi1lbmFibGVkXyB7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLWluay1jb2xvcl8oJGNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgc3Ryb2tlIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCwgZGlzYWJsZWQgcmFkaW8gYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIFRoZSBkZXNpcmVkIHN0cm9rZSBjb2xvci5cbi8vL1xuQG1peGluIG1kYy1yYWRpby1kaXNhYmxlZC11bmNoZWNrZWQtc3Ryb2tlLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtcmFkaW8taWYtZGlzYWJsZWQtdW5jaGVja2VkXyB7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLXN0cm9rZS1jb2xvcl8oJGNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyB0aGUgc3Ryb2tlIGNvbG9yIG9mIGEgY2hlY2tlZCwgZGlzYWJsZWQgcmFkaW8gYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIFRoZSBkZXNpcmVkIHN0cm9rZSBjb2xvci5cbi8vL1xuQG1peGluIG1kYy1yYWRpby1kaXNhYmxlZC1jaGVja2VkLXN0cm9rZS1jb2xvcigkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgQGluY2x1ZGUgbWRjLXJhZGlvLWlmLWRpc2FibGVkLWNoZWNrZWRfIHtcbiAgICBAaW5jbHVkZSBtZGMtcmFkaW8tc3Ryb2tlLWNvbG9yXygkY29sb3IsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG4vLy9cbi8vLyBTZXRzIHRoZSBpbmsgY29sb3Igb2YgYSBkaXNhYmxlZCByYWRpbyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gVGhlIGRlc2lyZWQgaW5rIGNvbG9yXG4vLy9cbkBtaXhpbiBtZGMtcmFkaW8tZGlzYWJsZWQtaW5rLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtcmFkaW8taWYtZGlzYWJsZWRfIHtcbiAgICBAaW5jbHVkZSBtZGMtcmFkaW8taW5rLWNvbG9yXygkY29sb3IsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXJhZGlvLWZvY3VzLWluZGljYXRvci1jb2xvcigkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IsICRlZGdlT3B0T3V0OiB0cnVlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyByYWRpbyB0b3VjaCB0YXJnZXQgc2l6ZSB3aGljaCBjYW4gYmUgbW9yZSB0aGFuIHRoZSByaXBwbGUgc2l6ZS4gUGFyYW0gYCRyaXBwbGUtc2l6ZWAgaXMgcmVxdWlyZWQgZm9yIGN1c3RvbVxuLy8vIHJpcHBsZSBzaXplLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFNpemUgb2YgdG91Y2ggdGFyZ2V0IChOYXRpdmUgaW5wdXQpIGluIGBweGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyaXBwbGUtc2l6ZSBTaXplIG9mIHJpcHBsZSBpbiBgcHhgLiBSZXF1aXJlZCBvbmx5IGZvciBjdXN0b20gcmlwcGxlIHNpemUuXG4vLy9cbkBtaXhpbiBtZGMtcmFkaW8tdG91Y2gtdGFyZ2V0KFxuICAkc2l6ZTogJG1kYy1yYWRpby1yaXBwbGUtc2l6ZSxcbiAgJHJpcHBsZS1zaXplOiAkbWRjLXJhZGlvLXJpcHBsZS1zaXplLFxuICAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG4gICRvZmZzZXQ6ICgkcmlwcGxlLXNpemUgLSAkc2l6ZSkgLyAyO1xuXG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgdG9wOiAkb2Zmc2V0O1xuICAgICAgcmlnaHQ6ICRvZmZzZXQ7XG4gICAgICBsZWZ0OiAkb2Zmc2V0O1xuICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vXG4vLy8gU2V0cyBkZW5zaXR5IHNjYWxlIGZvciByYWRpby5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIHwgU3RyaW5nfSAkZGVuc2l0eS1zY2FsZSAtIERlbnNpdHkgc2NhbGUgdmFsdWUgZm9yIGNvbXBvbmVudC4gU3VwcG9ydGVkIGRlbnNpdHkgc2NhbGUgdmFsdWVzXG4vLy8gICAgIGAtM2AsIGAtMmAsIGAtMWAsIGAwYC5cbi8vL1xuQG1peGluIG1kYy1yYWRpby1kZW5zaXR5KCRkZW5zaXR5LXNjYWxlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRzaXplOiBtZGMtZGVuc2l0eS1wcm9wLXZhbHVlKFxuICAgICRkZW5zaXR5LWNvbmZpZzogJG1kYy1yYWRpby1kZW5zaXR5LWNvbmZpZyxcbiAgICAkZGVuc2l0eS1zY2FsZTogJGRlbnNpdHktc2NhbGUsXG4gICAgJHByb3BlcnR5LW5hbWU6IHNpemUsXG4gICk7XG5cbiAgQGluY2x1ZGUgbWRjLXJhZGlvLXJpcHBsZS1zaXplKCRzaXplLCAkcXVlcnk6ICRxdWVyeSk7XG4gIC8vIFNldHMgdG91Y2ggdGFyZ2V0IHNpemUgc2FtZSBhcyByaXBwbGUgc2l6ZS5cbiAgQGluY2x1ZGUgbWRjLXJhZGlvLXRvdWNoLXRhcmdldCgkc2l6ZTogJHNpemUsICRyaXBwbGUtc2l6ZTogJHNpemUsICRxdWVyeTogJHF1ZXJ5KTtcblxuICBAaWYgJGRlbnNpdHktc2NhbGUgIT0gMCB7XG4gICAgQGluY2x1ZGUgbWRjLXJhZGlvLXRvdWNoLXRhcmdldC1yZXNldF8oJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG59XG5cbi8vL1xuLy8vIFNldHMgcmFkaW8gcmlwcGxlIHNpemUuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBSaXBwbGUgc2l6ZSBpbiBgcHhgLlxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLXJpcHBsZS1zaXplKCRzaXplLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG4gICRwYWRkaW5nOiAoJHNpemUgLSAkbWRjLXJhZGlvLWljb24tc2l6ZSkgLyAyO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gIH1cblxuICAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICB0b3A6IC0kcGFkZGluZztcbiAgICAgIGxlZnQ6IC0kcGFkZGluZztcbiAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgIGhlaWdodDogJHNpemU7XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8vIFJlc2V0cyB0b3VjaCB0YXJnZXQtcmVsYXRlZCBzdHlsZXMuIFRoaXMgaXMgY2FsbGVkIGZyb20gdGhlIGRlbnNpdHkgbWl4aW4gdG9cbi8vLyBhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgaW5jcmVhc2VkIHRvdWNoIHRhcmdldCwgc2luY2UgZGVuc2UgY29tcG9uZW50c1xuLy8vIGRvbid0IGhhdmUgdGhlIHNhbWUgZGVmYXVsdCBhMTF5IHJlcXVpcmVtZW50cy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuQG1peGluIG1kYy1yYWRpby10b3VjaC10YXJnZXQtcmVzZXRfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4vLy9cbi8vLyBIZWxwcyBzZWxlY3QgdGhlIHJhZGlvIGJhY2tncm91bmQgb25seSB3aGVuIGl0cyBuYXRpdmUgY29udHJvbCBpcyBpbiB0aGVcbi8vLyBlbmFibGVkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLWlmLWVuYWJsZWRfIHtcbiAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCArIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy9cbi8vLyBIZWxwcyBzZWxlY3QgdGhlIHJhZGlvIGJhY2tncm91bmQgb25seSB3aGVuIGl0cyBuYXRpdmUgY29udHJvbCBpcyBpbiB0aGVcbi8vLyBlbmFibGVkICYgdW5jaGVja2VkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLWlmLWVuYWJsZWQtdW5jaGVja2VkXyB7XG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQ6bm90KDpjaGVja2VkKSArIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy9cbi8vLyBIZWxwcyBzZWxlY3QgdGhlIHJhZGlvIGJhY2tncm91bmQgb25seSB3aGVuIGl0cyBuYXRpdmUgY29udHJvbCBpcyBpbiB0aGVcbi8vLyBlbmFibGVkICYgY2hlY2tlZCBzdGF0ZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuQG1peGluIG1kYy1yYWRpby1pZi1lbmFibGVkLWNoZWNrZWRfIHtcbiAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDpjaGVja2VkICsge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vL1xuLy8vIEhlbHBzIHNlbGVjdCB0aGUgcmFkaW8gYmFja2dyb3VuZCBvbmx5IHdoZW4gaXRzIG5hdGl2ZSBjb250cm9sIGlzIGluIHRoZVxuLy8vIGRpc2FibGVkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLWlmLWRpc2FibGVkXyB7XG4gIFthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCxcbiAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQge1xuICAgICsge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8vIEhlbHBzIHNlbGVjdCB0aGUgcmFkaW8gYmFja2dyb3VuZCBvbmx5IHdoZW4gaXRzIG5hdGl2ZSBjb250cm9sIGlzIGluIHRoZVxuLy8vIGRpc2FibGVkICYgdW5jaGVja2VkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLWlmLWRpc2FibGVkLXVuY2hlY2tlZF8ge1xuICBbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wsXG4gIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkIHtcbiAgICAmOm5vdCg6Y2hlY2tlZCkgKyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vXG4vLy8gSGVscHMgc2VsZWN0IHRoZSByYWRpbyBiYWNrZ3JvdW5kIG9ubHkgd2hlbiBpdHMgbmF0aXZlIGNvbnRyb2wgaXMgaW4gdGhlXG4vLy8gZGlzYWJsZWQgJiBjaGVja2VkIHN0YXRlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLWlmLWRpc2FibGVkLWNoZWNrZWRfIHtcbiAgW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sLFxuICAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkICsge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8vIFNldHMgdGhlIGluayBjb2xvciBmb3IgcmFkaW8uIFRoaXMgaXMgd3JhcHBlZCBpbiBhIG1peGluXG4vLy8gdGhhdCBxdWFsaWZpZXMgc3RhdGUgc3VjaCBhcyBgbWRjLXJhZGlvLWlmLWVuYWJsZWRfYFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLWluay1jb2xvcl8oJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRjb2xvcik7XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8vIFNldHMgdGhlIHN0cm9rZSBjb2xvciBmb3IgcmFkaW8uIFRoaXMgaXMgd3JhcHBlZCBpbiBhIG1peGluXG4vLy8gdGhhdCBxdWFsaWZpZXMgc3RhdGUgc3VjaCBhcyBgbWRjLXJhZGlvLWlmLWVuYWJsZWRfYFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG5AbWl4aW4gbWRjLXJhZGlvLXN0cm9rZS1jb2xvcl8oJGNvbG9yLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuXG4gIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItY29sb3IsICRjb2xvcik7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTYgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9kZW5zaXR5L3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS92YXJpYWJsZXNcIjtcblxuJG1kYy1yYWRpby1yaXBwbGUtc2l6ZTogNDBweCAhZGVmYXVsdDtcbiRtZGMtcmFkaW8taWNvbi1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJG1kYy1yYWRpby10cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjBtcyAhZGVmYXVsdDtcbiRtZGMtcmFkaW8tcmlwcGxlLW9wYWNpdHk6IC4xNCAhZGVmYXVsdDtcbiRtZGMtcmFkaW8tYmFzZWxpbmUtdGhlbWUtY29sb3I6IHNlY29uZGFyeSAhZGVmYXVsdDtcbiRtZGMtcmFkaW8tdW5jaGVja2VkLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNTQpICFkZWZhdWx0O1xuJG1kYy1yYWRpby1kaXNhYmxlZC1jaXJjbGUtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4yNikgIWRlZmF1bHQ7XG5cbiRtZGMtcmFkaW8tbWluaW11bS1zaXplOiAyOHB4ICFkZWZhdWx0O1xuJG1kYy1yYWRpby1tYXhpbXVtLXNpemU6ICRtZGMtcmFkaW8tcmlwcGxlLXNpemUgIWRlZmF1bHQ7XG4kbWRjLXJhZGlvLWRlbnNpdHktc2NhbGU6ICRtZGMtZGVuc2l0eS1kZWZhdWx0LXNjYWxlICFkZWZhdWx0O1xuJG1kYy1yYWRpby1kZW5zaXR5LWNvbmZpZzogKFxuICBzaXplOiAoXG4gICAgbWluaW11bTogJG1kYy1yYWRpby1taW5pbXVtLXNpemUsXG4gICAgZGVmYXVsdDogJG1kYy1yYWRpby1yaXBwbGUtc2l6ZSxcbiAgICBtYXhpbXVtOiAkbWRjLXJhZGlvLW1heGltdW0tc2l6ZSxcbiAgKSxcbikgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGtleWZyYW1lcyBtZGMtc2VsZWN0LWZsb2F0LW5hdGl2ZS1jb250cm9sIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYmFzZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL21peGluc1wiO1xuXG4vLyBMaW5lIFJpcHBsZSBpcyBpbnRlbmRlZCBmb3IgdXNlIGJ5IG11bHRpcGxlIGNvbXBvbmVudHMsIGJ1dCBpdHMgc3R5bGVzIHNob3VsZCBvbmx5IGJlIGVtaXR0ZWQgb25jZSB3aGVuIGJ1bmRsZWRcbkBpbmNsdWRlIG1kYy1iYXNlLWVtaXQtb25jZShcIm1kYy1saW5lLXJpcHBsZVwiKSB7XG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGxpbmUtcmlwcGxlXG4gIC5tZGMtbGluZS1yaXBwbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2l0aW9uOiBtZGMtbGluZS1yaXBwbGUtdHJhbnNpdGlvbi12YWx1ZSh0cmFuc2Zvcm0pLCBtZGMtbGluZS1yaXBwbGUtdHJhbnNpdGlvbi12YWx1ZShvcGFjaXR5KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAubWRjLWxpbmUtcmlwcGxlLS1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAubWRjLWxpbmUtcmlwcGxlLS1kZWFjdGl2YXRpbmcge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYmFzZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy8gTm90Y2hlZCBPdXRsaW5lIGlzIGludGVuZGVkIGZvciB1c2UgYnkgbXVsdGlwbGUgY29tcG9uZW50cywgYnV0IGl0cyBzdHlsZXMgc2hvdWxkIG9ubHkgYmUgZW1pdHRlZCBvbmNlIHdoZW4gYnVuZGxlZFxuQGluY2x1ZGUgbWRjLWJhc2UtZW1pdC1vbmNlKFwibWRjLW5vdGNoZWQtb3V0bGluZVwiKSB7XG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvKiBAbm9mbGlwICovXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1kYy1ydGwge1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgJl9fbGVhZGluZyxcbiAgICAmX19ub3RjaCxcbiAgICAmX190cmFpbGluZyB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyICRtZGMtbm90Y2hlZC1vdXRsaW5lLXRyYW5zaXRpb24tZHVyYXRpb24gJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fbGVhZGluZyB7XG4gICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShib3JkZXIsIDFweCBzb2xpZCwgbm9uZSk7XG5cbiAgICAgIHdpZHRoOiAkbWRjLW5vdGNoZWQtb3V0bGluZS1sZWFkaW5nLXdpZHRoO1xuICAgIH1cblxuICAgICZfX3RyYWlsaW5nIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KGJvcmRlciwgbm9uZSwgMXB4IHNvbGlkKTtcblxuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cblxuICAgICZfX25vdGNoIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7JG1kYy1ub3RjaGVkLW91dGxpbmUtbGVhZGluZy13aWR0aH0gKiAyKTtcbiAgICB9XG5cbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMTdweDtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xuICAgIH1cblxuICAgICYtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC8gLjc1KTtcbiAgICB9XG4gIH1cblxuICAubWRjLW5vdGNoZWQtb3V0bGluZS0tbm90Y2hlZCB7XG4gICAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChwYWRkaW5nLCByaWdodCwgOHB4KTtcblxuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubWRjLW5vdGNoZWQtb3V0bGluZS0tbm8tbGFiZWwge1xuICAgIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbiRtZGMtbm90Y2hlZC1vdXRsaW5lLXRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zICFkZWZhdWx0O1xuLy8gS2VlcCB0aGlzIGluIHN5bmMgd2l0aCBjb25zdGFudHMubnVtYmVycy5NSU5fTEVBRElOR19TVFJPS0VfRURHRV9QT1NJVElPTlxuJG1kYy1ub3RjaGVkLW91dGxpbmUtbWluLWxlYWRpbmctc3Ryb2tlLWVkZ2UtcG9zaXRpb246IDEycHggIWRlZmF1bHQ7XG4vLyBUaGUgZ2FwIGJldHdlZW4gdGhlIHN0cm9rZSBlbmQgYW5kIGZsb2F0aW5nIGxhYmVsXG4vLyBLZWVwIHRoaXMgaW4gc3luYyB3aXRoIGNvbnN0YW50cy5udW1iZXJzLk5PVENIX0dVVFRFUl9TSVpFXG4kbWRjLW5vdGNoZWQtb3V0bGluZS1ub3RjaC1ndXR0ZXItc2l6ZTogNHB4ICFkZWZhdWx0O1xuJG1kYy1ub3RjaGVkLW91dGxpbmUtbGVhZGluZy13aWR0aDogMTJweCAhZGVmYXVsdDtcbiRtZGMtbm90Y2hlZC1vdXRsaW5lLXBhZGRpbmc6IDRweCAhZGVmYXVsdDtcbi8vIFRoaXMgdmFyaWFibGUga2VlcHMgdGhlIGJlZm9yZS9hZnRlciBKUyBsYWJlbCBjZW50ZXJlZCBpbiB0aGUgbm90Y2ggd2hlbiB0aGUgZm9udC1zaXplIGlzIGNoYW5nZWQuXG4kbWRjLW5vdGNoZWQtb3V0bGluZS1sYWJlbC1hZGp1c3Q6IDE0JSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYmFzZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBGbG9hdGluZyBMYWJlbCBpcyBpbnRlbmRlZCBmb3IgdXNlIGJ5IG11bHRpcGxlIGNvbXBvbmVudHMsIGJ1dCBpdHMgc3R5bGVzIHNob3VsZCBvbmx5IGJlIGVtaXR0ZWQgb25jZSB3aGVuIGJ1bmRsZWRcbkBpbmNsdWRlIG1kYy1iYXNlLWVtaXQtb25jZShcIm1kYy1mbG9hdGluZy1sYWJlbFwiKSB7XG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGZsb2F0aW5nLWxhYmVsXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KHN1YnRpdGxlMSk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIGxlZnQ6IDA7XG4gICAgLyogQG5vZmxpcCAqL1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gJG1kYy1mbG9hdGluZy1sYWJlbC10cmFuc2l0aW9uLWR1cmF0aW9uICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbixcbiAgICAgIGNvbG9yICRtZGMtZmxvYXRpbmctbGFiZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiAkbWRjLWFuaW1hdGlvbi1zdGFuZGFyZC1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyBGb3JjZSB0aGUgbGFiZWwgaW50byBpdHMgb3duIGxheWVyIHRvIHByZXZlbnQgdmlzaWJsZSBsYXllciBwcm9tb3Rpb24gYWRqdXN0bWVudHNcbiAgICAvLyB3aGVuIHRoZSByaXBwbGUgaXMgYWN0aXZhdGVkIGJlaGluZCBpdC5cbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuXG4gICAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICByaWdodDogMDtcbiAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gICAgICAvKiBAbm9mbGlwICovXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG5cbiAgQGF0LXJvb3Qge1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLWZsb2F0aW5nLWxhYmVsLXBvc2l0aW9uLXkpO1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24oc3RhbmRhcmQpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyhzdGFuZGFyZCwgJG1kYy1mbG9hdGluZy1sYWJlbC1wb3NpdGlvbi15KTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1kYy1mbG9hdGluZy1sYWJlbC1pbmstY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xufVxuXG4vLyBVc2VkIGZvciB0ZXh0YXJlYSBpbiBjYXNlIG9mIHNjcm9sbGluZ1xuQG1peGluIG1kYy1mbG9hdGluZy1sYWJlbC1maWxsLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChiYWNrZ3JvdW5kLWNvbG9yLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcygkbW9kaWZpZXIsICRwb3NpdGlvblksICRwb3NpdGlvblg6IDAlLCAkc2NhbGU6IC43NSkge1xuICBAa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS0jeyRtb2RpZmllcn0ge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAjeyRwb3NpdGlvblh9KSkgdHJhbnNsYXRlWSgtI3skcG9zaXRpb25ZfSkgc2NhbGUoI3skc2NhbGV9KTtcbiAgICB9XG5cbiAgICAzMyUge1xuICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41LCAwLCAuNzAxNzMyLCAuNDk1ODE5KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gI3skcG9zaXRpb25YfSkpIHRyYW5zbGF0ZVkoLSN7JHBvc2l0aW9uWX0pIHNjYWxlKCN7JHNjYWxlfSk7XG4gICAgfVxuXG4gICAgNjYlIHtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMzAyNDM1LCAuMzgxMzUyLCAuNTUsIC45NTYzNTIpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gI3skcG9zaXRpb25YfSkpIHRyYW5zbGF0ZVkoLSN7JHBvc2l0aW9uWX0pIHNjYWxlKCN7JHNjYWxlfSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gI3skcG9zaXRpb25YfSkpIHRyYW5zbGF0ZVkoLSN7JHBvc2l0aW9uWX0pIHNjYWxlKCN7JHNjYWxlfSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oJHBvc2l0aW9uWSwgJHBvc2l0aW9uWDogMCUsICRzY2FsZTogLjc1KSB7XG4gIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICBAaWYgJHBvc2l0aW9uWCA+IDAgb3IgJHBvc2l0aW9uWCA8IDAge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xICogJHBvc2l0aW9uWSkgdHJhbnNsYXRlWCgtMSAqICRwb3NpdGlvblgpIHNjYWxlKCRzY2FsZSk7XG5cbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEgKiAkcG9zaXRpb25ZKSB0cmFuc2xhdGVYKCRwb3NpdGlvblgpIHNjYWxlKCRzY2FsZSk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEgKiAkcG9zaXRpb25ZKSBzY2FsZSgkc2NhbGUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbigkbW9kaWZpZXIpIHtcbiAgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICAgIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLSN7JG1vZGlmaWVyfSAyNTBtcyAxO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZmxvYXRpbmctbGFiZWwtbWF4LXdpZHRoKCRtYXgtd2lkdGgpIHtcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xufVxuIiwiLy8gIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vICBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyAgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vICBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vICBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOi9cbi8vXG4vLyAgVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vICBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4vXG4vL1xuLy8gIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vICBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vICBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vICBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyAgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vICBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyAgVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBQdWJsaWMgbWl4aW5zXG5cbkBtaXhpbiBtZGMtc2VsZWN0LWljb24tY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaWNvbi1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG4vLyBQcml2YXRlIG1peGluc1xuXG5AbWl4aW4gbWRjLXNlbGVjdC1pY29uXyB7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtaWNvbi1jb2xvcihvbi1zdXJmYWNlKTtcblxuICAubWRjLXNlbGVjdF9faWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDE2cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogJG1kYy1zZWxlY3QtaWNvbi1zaXplO1xuICAgIGhlaWdodDogJG1kYy1zZWxlY3QtaWNvbi1zaXplO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgb3BhY2l0eTogJG1kYy1zZWxlY3QtaWNvbi1vcGFjaXR5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtaWNvbi1jb2xvcl8oJGNvbG9yKSB7XG4gIC5tZGMtc2VsZWN0X19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1pY29uLWhvcml6b250YWwtcG9zaXRpb25fKCRpY29uUG9zaXRpb24sICRpbnB1dFBhZGRpbmcpIHtcbiAgLm1kYy1zZWxlY3RfX2ljb24ge1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICRpY29uUG9zaXRpb24pO1xuICB9XG5cbiAgLy8gTW92ZSB0aGUgaW5wdXQncyBwb3NpdGlvbiwgdG8gYWxsb3cgcm9vbSBmb3IgdGhlIGljb25cbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuICAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkocGFkZGluZywgJGlucHV0UGFkZGluZyAvKiBsZWZ0ICovLCAkbWRjLXNlbGVjdC1pY29uLXJpZ2h0LXBhZGRpbmcgLyogcmlnaHQgKi8pO1xuICB9XG59XG4iLCIvLyAgQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyAgUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vICBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyAgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6L1xuLy9cbi8vICBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi9cbi8vXG4vLyAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vICBUSEUgU09GVFdBUkUuXG4vL1xuXG4kbWRjLXNlbGVjdC1pY29uLXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1pY29uLW9wYWNpdHk6IC41NCAhZGVmYXVsdDtcbiRtZGMtc2VsZWN0LWljb24tY29sb3I6IG9uLXN1cmZhY2UgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1pY29uLXJpZ2h0LXBhZGRpbmc6IDMycHggIWRlZmF1bHQ7XG4iLCIvLyAgQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyAgUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vICBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyAgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6L1xuLy9cbi8vICBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi9cbi8vXG4vLyAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vICBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcblxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIHtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1pY29uXztcbn1cblxuLm1kYy1zZWxlY3RfX2ljb246bm90KFt0YWJpbmRleF0pLFxuLm1kYy1zZWxlY3RfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIvLyAgQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyAgUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vICBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyAgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6L1xuLy9cbi8vICBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLi9cbi8vXG4vLyAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vICBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiLi4vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90eXBvZ3JhcGh5L21peGluc1wiO1xuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSBzZWxlY3QtaGVscGVyLXRleHRcbi5tZGMtc2VsZWN0LWhlbHBlci10ZXh0IHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoY2FwdGlvbik7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5LWJhc2VsaW5lLXRvcCgxNnB4KTtcblxuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IG1kYy1zZWxlY3QtdHJhbnNpdGlvbihvcGFjaXR5KTtcbiAgb3BhY2l0eTogMDtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi5tZGMtc2VsZWN0LWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7XG59XG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCIuL2tleWZyYW1lc1wiO1xuQGltcG9ydCBcIi4vbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvYW5pbWF0aW9uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9saW5lLXJpcHBsZS9tZGMtbGluZS1yaXBwbGVcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvbm90Y2hlZC1vdXRsaW5lL21kYy1ub3RjaGVkLW91dGxpbmVcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmxvYXRpbmctbGFiZWwvbWRjLWZsb2F0aW5nLWxhYmVsXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9jb21tb25cIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi9pY29uL21kYy1zZWxlY3QtaWNvblwiO1xuQGltcG9ydCBcIi4vaGVscGVyLXRleHQvbWRjLXNlbGVjdC1oZWxwZXItdGV4dFwiO1xuQGltcG9ydCBcIi4vaGVscGVyLXRleHQvbWl4aW5zXCI7XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIHNlbGVjdFxuLm1kYy1zZWxlY3Qge1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yKCRtZGMtc2VsZWN0LWZpbGwtY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2U7XG4gIEBpbmNsdWRlIG1kYy1yaXBwbGUtcmFkaXVzLWJvdW5kZWQ7XG4gIC8vIFNlbGVjdCBpbnRlbnRpb25hbGx5IG9taXRzIHByZXNzIHJpcHBsZSwgc28gZWFjaCBzdGF0ZSBuZWVkcyB0byBiZSBzcGVjaWZpZWQgaW5kaXZpZHVhbGx5LlxuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWJhc2UtY29sb3IoJG1kYy1zZWxlY3QtaW5rLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1ob3Zlci1vcGFjaXR5KG1kYy1zdGF0ZXMtb3BhY2l0eSgkbWRjLXNlbGVjdC1pbmstY29sb3IsIGhvdmVyKSk7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtZm9jdXMtb3BhY2l0eShtZGMtc3RhdGVzLW9wYWNpdHkoJG1kYy1zZWxlY3QtaW5rLWNvbG9yLCBmb2N1cykpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWluay1jb2xvcigkbWRjLXNlbGVjdC1pbmstY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWxhYmVsLWNvbG9yKCRtZGMtc2VsZWN0LWxhYmVsLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1ib3R0b20tbGluZS1jb2xvcigkbWRjLXNlbGVjdC1ib3R0b20tbGluZS1pZGxlLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1oZWxwZXItdGV4dC1jb2xvcigkbWRjLXNlbGVjdC1oZWxwZXItdGV4dC1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3Qtc2hhcGUtcmFkaXVzKHNtYWxsKTtcblxuICAvLyBGb2N1c2VkIHN0YXRlIGNvbG9yc1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtYm90dG9tLWxpbmUtY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtZm9jdXNlZC1sYWJlbC1jb2xvcigkbWRjLXNlbGVjdC1mb2N1c2VkLWxhYmVsLWNvbG9yKTtcblxuICAvLyBIb3ZlciBzdGF0ZSBjb2xvcnNcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1ob3Zlci1ib3R0b20tbGluZS1jb2xvcigkbWRjLXNlbGVjdC1ib3R0b20tbGluZS1ob3Zlci1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLXNlbGVjdC1sYWJlbC1wb3NpdGlvbi15KTtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mbG9hdGluZy1sYWJlbF87XG5cbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAkbWRjLXNlbGVjdC1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybSwgY29sb3I7XG5cbiAgJl9fZHJvcGRvd24taWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1kZC1hcnJvdy1zdmctYmdfKCRtZGMtc2VsZWN0LWRyb3Bkb3duLWNvbG9yLCAkbWRjLXNlbGVjdC1kcm9wZG93bi1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZShsZWZ0LCBhdXRvLCByaWdodCwgOHB4KTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDE2cHg7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbWRjLXNlbGVjdC1kcm9wZG93bi10cmFuc2l0aW9uLWR1cmF0aW9uICRtZGMtYW5pbWF0aW9uLXN0YW5kYXJkLWN1cnZlLXRpbWluZy1mdW5jdGlvbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIC5tZGMtc2VsZWN0LS1mb2N1c2VkICYge1xuICAgICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1kZC1hcnJvdy1zdmctYmdfKG1kYy10aGVtZS1wcm9wLXZhbHVlKHByaW1hcnkpLCAxKTtcbiAgICB9XG5cbiAgICAubWRjLXNlbGVjdC0tYWN0aXZhdGVkICYge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRtZGMtc2VsZWN0LWRyb3Bkb3duLXRyYW5zaXRpb24tZHVyYXRpb24gJG1kYy1hbmltYXRpb24tc3RhbmRhcmQtY3VydmUtdGltaW5nLWZ1bmN0aW9uO1xuICAgIH1cbiAgfVxuXG4gICZfX25hdGl2ZS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtZm9jdXNlZC1saW5lLXJpcHBsZV8ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMik7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZGMtc2VsZWN0LWhlbHBlci10ZXh0XztcbkBpbmNsdWRlIG1kYy1zZWxlY3QtdGV4dC1hbmQtY29udHJvbF8oKTtcblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIHtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1vdXRsaW5lZF87XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkIHtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1sYWJlbC1jb2xvcigkbWRjLXNlbGVjdC1lcnJvci1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtYm90dG9tLWxpbmUtY29sb3IoJG1kYy1zZWxlY3QtZXJyb3ItY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtYm90dG9tLWxpbmUtY29sb3IoJG1kYy1zZWxlY3QtZXJyb3ItY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtbGFiZWwtY29sb3IoJG1kYy1zZWxlY3QtZXJyb3ItY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWhlbHBlci10ZXh0LXZhbGlkYXRpb24tY29sb3IoJG1kYy1zZWxlY3QtZXJyb3ItY29sb3IpO1xuXG4gIC8vIEhvdmVyIHN0YXRlIGNvbG9yc1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWhvdmVyLWJvdHRvbS1saW5lLWNvbG9yKCRtZGMtc2VsZWN0LWVycm9yLWNvbG9yKTtcblxuICAmLm1kYy1zZWxlY3QtLW91dGxpbmVkIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LW91dGxpbmUtY29sb3IoJG1kYy1zZWxlY3QtZXJyb3ItY29sb3IpO1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaG92ZXItb3V0bGluZS1jb2xvcigkbWRjLXNlbGVjdC1lcnJvci1jb2xvcik7XG4gICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmUtY29sb3IoJG1kYy1zZWxlY3QtZXJyb3ItY29sb3IpO1xuICB9XG5cbiAgLm1kYy1zZWxlY3RfX2Ryb3Bkb3duLWljb24ge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtZGQtYXJyb3ctc3ZnLWJnXygkbWRjLXNlbGVjdC1lcnJvci1jb2xvciwgMSk7XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gICsgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5tZGMtc2VsZWN0LS1yZXF1aXJlZCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwbHVnaW4vc2VsZWN0b3ItYmVtLXBhdHRlcm5cbiAgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiKlwiO1xuICB9XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCB7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtZGlzYWJsZWRfO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ge1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LXdpdGgtbGVhZGluZy1pY29uXztcbn1cblxuLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0IC5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZCB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCBvbi1zdXJmYWNlKTtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcyhvbi1zdXJmYWNlKTtcbn1cblxuQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyhcbiAgc2VsZWN0LW91dGxpbmVkLWxlYWRpbmctaWNvbixcbiAgJG1kYy1zZWxlY3Qtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teSxcbiAgJG1kYy1zZWxlY3Qtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teFxuKTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXMoXG4gIHNlbGVjdC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsLFxuICAkbWRjLXNlbGVjdC1vdXRsaW5lZC1sYWJlbC1wb3NpdGlvbi15LFxuICAtJG1kYy1zZWxlY3Qtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teFxuKTtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2FuaW1hdGlvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5cbiRtZGMtc2VsZWN0LWFycm93LXBhZGRpbmc6IDUycHggIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1sYWJlbC1wYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuJG1kYy1zZWxlY3QtaGVpZ2h0OiA1NnB4ICFkZWZhdWx0O1xuJG1kYy1zZWxlY3QtaWNvbi1wYWRkaW5nOiA0OHB4ICFkZWZhdWx0O1xuXG4kbWRjLXNlbGVjdC1pbmstY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC44NykgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1kcm9wZG93bi1jb2xvcjogbWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSkgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1pY29uLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNTQpICFkZWZhdWx0O1xuJG1kYy1zZWxlY3QtbGFiZWwtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC42KSAhZGVmYXVsdDtcbiRtZGMtc2VsZWN0LWZvY3VzZWQtbGFiZWwtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUocHJpbWFyeSksIC44NykgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1ib3R0b20tbGluZS1pZGxlLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNDIpICFkZWZhdWx0O1xuJG1kYy1zZWxlY3QtYm90dG9tLWxpbmUtaG92ZXItY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC44NykgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1oZWxwZXItdGV4dC1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjYpICFkZWZhdWx0O1xuXG4kbWRjLXNlbGVjdC1maWxsLWNvbG9yOiBtaXgobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpLCA0JSkgIWRlZmF1bHQ7XG5cbiRtZGMtc2VsZWN0LWRyb3Bkb3duLW9wYWNpdHk6IC41NCAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZWQgU3R5bGVzXG4kbWRjLXNlbGVjdC1kaXNhYmxlZC1sYWJlbC1jb2xvcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjM3KSAhZGVmYXVsdDtcbiRtZGMtc2VsZWN0LWRpc2FibGVkLWljb24tY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zNykgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1kaXNhYmxlZC1pbmstY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zNykgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1kaXNhYmxlZC1maWxsLWNvbG9yOiBtaXgobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpLCAyJSkgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1kaXNhYmxlZC1kcm9wZG93bi1vcGFjaXR5OiAuMzcgIWRlZmF1bHQ7XG5cbiRtZGMtc2VsZWN0LW91dGxpbmVkLWlkbGUtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMzgpICFkZWZhdWx0O1xuJG1kYy1zZWxlY3Qtb3V0bGluZWQtaG92ZXItYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuODcpICFkZWZhdWx0O1xuXG4vLyBzaG91bGQgYmUgLjA2IGFmdGVyIG1kYy1zZWxlY3Qgb3BhY2l0eSBpcyBhcHBsaWVkXG4kbWRjLXNlbGVjdC1vdXRsaW5lZC1kaXNhYmxlZC1ib3JkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4xNikgIWRlZmF1bHQ7XG5cbiRtZGMtc2VsZWN0LWxhYmVsLXBvc2l0aW9uLXk6IDcwJSAhZGVmYXVsdDtcbiRtZGMtc2VsZWN0LW91dGxpbmUtbGFiZWwtb2Zmc2V0OiAxNnB4ICFkZWZhdWx0O1xuJG1kYy1zZWxlY3Qtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teTogMTMwJSAhZGVmYXVsdDtcbiRtZGMtc2VsZWN0LW91dGxpbmVkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXk6IDExMCUgIWRlZmF1bHQ7XG4kbWRjLXNlbGVjdC1vdXRsaW5lZC13aXRoLWxlYWRpbmctaWNvbi1sYWJlbC1wb3NpdGlvbi14OiAzMnB4ICFkZWZhdWx0O1xuXG4kbWRjLXNlbGVjdC1kcm9wZG93bi10cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcyAhZGVmYXVsdDtcblxuLy8gRXJyb3IgY29sb3JzXG4kbWRjLXNlbGVjdC1lcnJvci1jb2xvcjogZXJyb3IgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTggR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vXG4vLyBGbGlwcyB0aGUgcmFkaXVzIHZhbHVlcyBiYXNlZCBvbiBSVEwgY29udGV4dC5cbi8vXG4vLyBFeGFtcGxlczpcbi8vXG4vLyAxLiBtZGMtc2hhcGUtZmxpcC1yYWRpdXMoKDAsIDRweCwgNHB4LCAwKSkgPT4gNHB4IDAgMCA0cHhcbi8vIDIuIG1kYy1zaGFwZS1mbGlwLXJhZGl1cygoMCwgOHB4KSkgPT4gOHB4IDBcbi8vXG5AZnVuY3Rpb24gbWRjLXNoYXBlLWZsaXAtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmIHR5cGUtb2YoJHJhZGl1cykgPT0gXCJsaXN0XCIge1xuICAgIEBpZiBsZW5ndGgoJHJhZGl1cykgPiA0IHtcbiAgICAgIEBlcnJvciBcIkludmFsaWQgcmFkaXVzOiAnI3skcmFkaXVzfScgaXMgbW9yZSB0aGFuIDQgdmFsdWVzXCI7XG4gICAgfVxuICB9XG5cbiAgQGlmIGxlbmd0aCgkcmFkaXVzKSA9PSA0IHtcbiAgICBAcmV0dXJuIG50aCgkcmFkaXVzLCAyKSBudGgoJHJhZGl1cywgMSkgbnRoKCRyYWRpdXMsIDQpIG50aCgkcmFkaXVzLCAzKTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHJhZGl1cykgPT0gMyB7XG4gICAgQHJldHVybiBudGgoJHJhZGl1cywgMikgbnRoKCRyYWRpdXMsIDEpIG50aCgkcmFkaXVzLCAyKSBudGgoJHJhZGl1cywgMyk7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRyYWRpdXMpID09IDIge1xuICAgIEByZXR1cm4gbnRoKCRyYWRpdXMsIDIpIG50aCgkcmFkaXVzLCAxKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkcmFkaXVzO1xuICB9XG59XG5cbi8vXG4vLyBSZXNvbHZlcyB0aGUgcGVyY2VudGFnZSB1bml0IHJhZGl1cyB0byBhcHByb3ByaWF0ZSBhYnNvbHV0ZSByYWRpdXMgdmFsdWUgYmFzZWQgb24gY29tcG9uZW50IGhlaWdodC5cbi8vIFVzZSB0aGlzIGZvciBmaXhlZCBoZWlnaHQgY29tcG9uZW50cyBvbmx5LlxuLy9cbi8vIEV4YW1wbGVzOlxuLy9cbi8vIG1kYy1zaGFwZS1yZXNvbHZlLXBlcmNlbnRhZ2UtcmFkaXVzKDM2cHgsIDUwJSkgPT4gYDE4cHhgIChpLmUuLCAzNnB4IC8gMilcbi8vXG5AZnVuY3Rpb24gbWRjLXNoYXBlLXJlc29sdmUtcGVyY2VudGFnZS1yYWRpdXMoJGNvbXBvbmVudC1oZWlnaHQsICRyYWRpdXMpIHtcbiAgJHJhZGl1czogbWRjLXNoYXBlLXByb3AtdmFsdWUoJHJhZGl1cyk7XG5cbiAgQGlmIHR5cGUtb2YoJHJhZGl1cykgPT0gXCJsaXN0XCIge1xuICAgICRyYWRpdXMtdmFsdWU6ICgpO1xuXG4gICAgQGVhY2ggJGNvcm5lciBpbiAkcmFkaXVzIHtcbiAgICAgICRyYWRpdXMtdmFsdWU6IGFwcGVuZCgkcmFkaXVzLXZhbHVlLCBtZGMtc2hhcGUtcmVzb2x2ZS1wZXJjZW50YWdlLWZvci1jb3JuZXJfKCRjb21wb25lbnQtaGVpZ2h0LCAkY29ybmVyKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmFkaXVzLXZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIG1kYy1zaGFwZS1yZXNvbHZlLXBlcmNlbnRhZ2UtZm9yLWNvcm5lcl8oJGNvbXBvbmVudC1oZWlnaHQsICRyYWRpdXMpO1xuICB9XG59XG5cbi8vXG4vLyBSZXR1cm5zICRyYWRpdXMgdmFsdWUgb2Ygc2hhcGUgY2F0ZWdvcnkgLSBgbGFyZ2VgLCBgbWVkaXVtYCBvciBgc21hbGxgLlxuLy8gT3RoZXJ3aXNlLCBpdCByZXR1cm5zIHRoZSAkcmFkaXVzIGl0c2VsZiBpZiB2YWxpZC5cbi8vICRyYWRpdXMgY2FuIGJlIGEgc2luZ2xlIHZhbHVlLCBvciBhIGxpc3Qgb2YgdXAgdG8gNCB2YWx1ZXMuXG4vL1xuLy8gRXhhbXBsZXM6XG4vL1xuLy8gbWRjLXNoYXBlLXByb3AtdmFsdWUoc21hbGwpID0+IDRweFxuLy8gbWRjLXNoYXBlLXByb3AtdmFsdWUoc21hbGwgc21hbGwgMCAwKSA9PiA0cHggNHB4IDAgMFxuLy9cbkBmdW5jdGlvbiBtZGMtc2hhcGUtcHJvcC12YWx1ZSgkcmFkaXVzKSB7XG4gIEBpZiB0eXBlLW9mKCRyYWRpdXMpID09IFwibGlzdFwiIHtcbiAgICBAaWYgbGVuZ3RoKCRyYWRpdXMpID4gNCB7XG4gICAgICBAZXJyb3IgXCJJbnZhbGlkIHJhZGl1czogJyN7JHJhZGl1c30nIGlzIG1vcmUgdGhhbiA0IHZhbHVlc1wiO1xuICAgIH1cblxuICAgICRyYWRpdXMtdmFsdWVzOiAoKTtcblxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRyYWRpdXMpIHtcbiAgICAgICRjb3JuZXI6IG50aCgkcmFkaXVzLCAkaSk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWRjLXNoYXBlLWNhdGVnb3J5LXZhbHVlcywgJGNvcm5lcikge1xuICAgICAgICAvLyBJZiBhIGNhdGVnb3J5IGlzIGVuY291bnRlcmVkIHdpdGhpbiBhIGxpc3Qgb2YgcmFkaWksIGFwcGx5IHRoZSBjYXRlZ29yeSdzIHZhbHVlIGZvciB0aGUgY29ycmVzcG9uZGluZyBjb3JuZXJcbiAgICAgICAgJHJhZGl1cy12YWx1ZXM6XG4gICAgICAgICAgYXBwZW5kKCRyYWRpdXMtdmFsdWVzLCBudGgobWRjLXNoYXBlLXVucGFjay1yYWRpdXNfKG1hcC1nZXQoJG1kYy1zaGFwZS1jYXRlZ29yeS12YWx1ZXMsICRjb3JuZXIpKSwgJGkpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkcmFkaXVzLXZhbHVlczogYXBwZW5kKCRyYWRpdXMtdmFsdWVzLCBtZGMtc2hhcGUtdmFsaWRhdGUtcmFkaXVzLXZhbHVlXygkY29ybmVyKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmFkaXVzLXZhbHVlcztcbiAgfSBAZWxzZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRtZGMtc2hhcGUtY2F0ZWdvcnktdmFsdWVzLCAkcmFkaXVzKSB7XG4gICAgICBAcmV0dXJuIG1hcC1nZXQoJG1kYy1zaGFwZS1jYXRlZ29yeS12YWx1ZXMsICRyYWRpdXMpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBtZGMtc2hhcGUtdmFsaWRhdGUtcmFkaXVzLXZhbHVlXygkcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIEFjY2VwdHMgcmFkaXVzIG51bWJlciBvciBsaXN0IG9mIDItNCByYWRpdXMgdmFsdWVzIGFuZCByZXR1cm5zIDQgdmFsdWUgbGlzdCB3aXRoXG4vLyBtYXNrZWQgY29ybmVycyBhcyBtZW50aW9uZWQgaW4gYCRtYXNrZWQtY29ybmVyc2Bcbi8vXG4vLyBFeGFtcGxlOlxuLy9cbi8vIDEuIG1kYy1zaGFwZS1tYXNrLXJhZGl1cygycHggM3B4LCAxIDEgMCAwKSA9PiAycHggM3B4IDAgMFxuLy8gMi4gbWRjLXNoYXBlLW1hc2stcmFkaXVzKDhweCwgMCAwIDEgMSkgPT4gMCAwIDhweCA4cHhcbi8vIDMuIG1kYy1zaGFwZS1tYXNrLXJhZGl1cyg0cHggNHB4IDRweCA0cHgsIDAgMSAxIDApID0+IDAgNHB4IDRweCAwXG4vL1xuQGZ1bmN0aW9uIG1kYy1zaGFwZS1tYXNrLXJhZGl1cygkcmFkaXVzLCAkbWFza2VkLWNvcm5lcnMpIHtcbiAgQGlmIHR5cGUtb2YoJHJhZGl1cykgPT0gXCJsaXN0XCIge1xuICAgIEBpZiBsZW5ndGgoJHJhZGl1cykgPiA0IHtcbiAgICAgIEBlcnJvciBcIkludmFsaWQgcmFkaXVzOiAnI3skcmFkaXVzfScgaXMgbW9yZSB0aGFuIDQgdmFsdWVzXCI7XG4gICAgfVxuICB9XG5cbiAgQGlmIGxlbmd0aCgkbWFza2VkLWNvcm5lcnMpICE9IDQge1xuICAgIEBlcnJvciBcIkV4cGVjdGVkIG1hc2tlZC1jb3JuZXJzIG9mIGxlbmd0aCA0IGJ1dCBnb3QgJyN7bGVuZ3RoKCRtYXNrZWQtY29ybmVycyl9Jy5cIjtcbiAgfVxuXG4gICRyYWRpdXM6IG1kYy1zaGFwZS11bnBhY2stcmFkaXVzXygkcmFkaXVzKTtcblxuICBAcmV0dXJuIGlmKG50aCgkbWFza2VkLWNvcm5lcnMsIDEpID09IDEsIG50aCgkcmFkaXVzLCAxKSwgMClcbiAgICBpZihudGgoJG1hc2tlZC1jb3JuZXJzLCAyKSA9PSAxLCBudGgoJHJhZGl1cywgMiksIDApXG4gICAgaWYobnRoKCRtYXNrZWQtY29ybmVycywgMykgPT0gMSwgbnRoKCRyYWRpdXMsIDMpLCAwKVxuICAgIGlmKG50aCgkbWFza2VkLWNvcm5lcnMsIDQpID09IDEsIG50aCgkcmFkaXVzLCA0KSwgMCk7XG59XG5cbi8vXG4vLyBVbnBhY2tzIHNob3J0aGFuZCB2YWx1ZXMgZm9yIGJvcmRlci1yYWRpdXMgKGkuZS4gbGlzdHMgb2YgMS0zIHZhbHVlcykuXG4vLyBJZiBhIGxpc3Qgb2YgNCB2YWx1ZXMgaXMgZ2l2ZW4sIGl0IGlzIHJldHVybmVkIGFzLWlzLlxuLy9cbi8vIEV4YW1wbGVzOlxuLy9cbi8vIDEuIG1kYy1zaGFwZS11bnBhY2stcmFkaXVzXyg0cHgpID0+IDRweCA0cHggNHB4IDRweFxuLy8gMi4gbWRjLXNoYXBlLXVucGFjay1yYWRpdXNfKDRweCAycHgpID0+IDRweCAycHggNHB4IDJweFxuLy8gMy4gbWRjLXNoYXBlLXVucGFjay1yYWRpdXNfKDRweCAycHggMnB4KSA9PiA0cHggMnB4IDJweCAycHhcbi8vIDIuIG1kYy1zaGFwZS11bnBhY2stcmFkaXVzXyg0cHggMnB4IDAgMnB4KSA9PiA0cHggMnB4IDAgMnB4XG4vL1xuLy8gVE9ETzogVGhpcyBpcyBwcml2YXRlIGZvciBwdXJwb3NlcyBvZiBnZXR0aW5nIGl0IGludG8gYSBwYXRjaDsgbWFrZSBpdCBwdWJsaWMgZm9yIGEgZnV0dXJlIG1pbm9yL21ham9yIHJlbGVhc2UuXG4vL1xuQGZ1bmN0aW9uIG1kYy1zaGFwZS11bnBhY2stcmFkaXVzXygkcmFkaXVzKSB7XG4gIEBpZiBsZW5ndGgoJHJhZGl1cykgPT0gNCB7XG4gICAgQHJldHVybiAkcmFkaXVzO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkcmFkaXVzKSA9PSAzIHtcbiAgICBAcmV0dXJuIG50aCgkcmFkaXVzLCAxKSBudGgoJHJhZGl1cywgMikgbnRoKCRyYWRpdXMsIDMpIG50aCgkcmFkaXVzLCAyKTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHJhZGl1cykgPT0gMiB7XG4gICAgQHJldHVybiBudGgoJHJhZGl1cywgMSkgbnRoKCRyYWRpdXMsIDIpIG50aCgkcmFkaXVzLCAxKSBudGgoJHJhZGl1cywgMik7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRyYWRpdXMpID09IDEge1xuICAgIEByZXR1cm4gJHJhZGl1cyAkcmFkaXVzICRyYWRpdXMgJHJhZGl1cztcbiAgfVxuXG4gIEBlcnJvciBcIkludmFsaWQgcmFkaXVzOiAnI3skcmFkaXVzfScgaXMgbW9yZSB0aGFuIDQgdmFsdWVzXCI7XG59XG5cbkBmdW5jdGlvbiBtZGMtc2hhcGUtcmVzb2x2ZS1wZXJjZW50YWdlLWZvci1jb3JuZXJfKCRjb21wb25lbnQtaGVpZ2h0LCAkcmFkaXVzKSB7XG4gIEBpZiB0eXBlLW9mKCRyYWRpdXMpID09IFwibnVtYmVyXCIgYW5kIHVuaXQoJHJhZGl1cykgPT0gXCIlXCIge1xuICAgIC8vIENvbnZlcnRzIHRoZSBwZXJjZW50YWdlIHRvIG51bWJlciB3aXRob3V0IHVuaXQuIEV4YW1wbGU6IDUwJSA9PiA1MC5cbiAgICAkcGVyY2VudGFnZTogJHJhZGl1cyAvICgkcmFkaXVzICogMCArIDEpO1xuXG4gICAgQHJldHVybiAkY29tcG9uZW50LWhlaWdodCAqICgkcGVyY2VudGFnZSAvIDEwMCk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHJhZGl1cztcbiAgfVxufVxuXG5AZnVuY3Rpb24gbWRjLXNoYXBlLXZhbGlkYXRlLXJhZGl1cy12YWx1ZV8oJHJhZGl1cykge1xuICAkaXMtbnVtYmVyOiB0eXBlLW9mKCRyYWRpdXMpID09IFwibnVtYmVyXCI7XG5cbiAgQGlmIG5vdCAoJGlzLW51bWJlciBvciBzdHJfaW5kZXgoJHJhZGl1cywgXCJ2YXIoXCIpIG9yIHN0cl9pbmRleCgkcmFkaXVzLCBcImNhbGMoXCIpKSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCByYWRpdXM6ICN7JHJhZGl1c31cIjtcbiAgfVxuXG4gIEByZXR1cm4gJHJhZGl1cztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2Zsb2F0aW5nLWxhYmVsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvc2hhcGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3NoYXBlL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9saW5lLXJpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvbm90Y2hlZC1vdXRsaW5lL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9ub3RjaGVkLW91dGxpbmUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9pY29uL21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbi8vIFB1YmxpY1xuXG5AbWl4aW4gbWRjLXNlbGVjdC1pbmstY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtaW5rLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWZvY3VzZWQtbGFiZWwtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgICYubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1pbmstY29sb3IobWRjLXRoZW1lLXByb3AtdmFsdWUoJGNvbG9yKSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWhvdmVyLWJvdHRvbS1saW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB7XG4gICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1uYXRpdmUtY29udHJvbC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1ib3R0b20tbGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXNlbGVjdC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mb2N1c2VkLWJvdHRvbS1saW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtbGluZS1yaXBwbGUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtbGFiZWwtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWluay1jb2xvcigkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LW91dGxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3Qtb3V0bGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1ob3Zlci1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWhvdmVyLW91dGxpbmUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtZm9jdXNlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtb3V0bGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlKSB7XG4gIEBpZiBsZW5ndGgoJHJhZGl1cykgPiAyIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHJhZGl1czogJyN7JHJhZGl1c30nIGNvbXBvbmVudCBkb2Vzbid0IGFsbG93IGN1c3RvbWl6aW5nIGFsbCBjb3JuZXJzXCI7XG4gIH1cblxuICAkbWFza2VkLXJhZGl1czogbWRjLXNoYXBlLW1hc2stcmFkaXVzKCRyYWRpdXMsIDEgMSAwIDApO1xuXG4gICYsXG4gICZfX25hdGl2ZS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBtZGMtc2hhcGUtcmFkaXVzKG1kYy1zaGFwZS1yZXNvbHZlLXBlcmNlbnRhZ2UtcmFkaXVzKCRtZGMtc2VsZWN0LWhlaWdodCwgJG1hc2tlZC1yYWRpdXMpLCAkcnRsLXJlZmxleGl2ZSk7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3Qtb3V0bGluZS1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlKSB7XG4gICRyZXNvbHZlZC1yYWRpdXM6IG50aChtZGMtc2hhcGUtcmVzb2x2ZS1wZXJjZW50YWdlLXJhZGl1cygkbWRjLXNlbGVjdC1oZWlnaHQsIG1kYy1zaGFwZS1wcm9wLXZhbHVlKCRyYWRpdXMpKSwgMSk7XG5cbiAgQGlmIChsZW5ndGgobWRjLXNoYXBlLXByb3AtdmFsdWUoJHJhZGl1cykpID4gMSkge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGluZS1sZW5ndGhcbiAgICBAd2FybiBcIm1kYy1zZWxlY3Qtb3V0bGluZS1zaGFwZS1yYWRpdXMgb25seSBzdXBwb3J0cyBhIHNpbmdsZSByYWRpdXM7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbWF0ZXJpYWwtY29tcG9uZW50cy9tYXRlcmlhbC1jb21wb25lbnRzLXdlYi9pc3N1ZXMvNDE0MFwiO1xuICB9XG5cbiAgLm1kYy1ub3RjaGVkLW91dGxpbmUge1xuICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtc2hhcGUtcmFkaXVzKCRyZXNvbHZlZC1yYWRpdXMsICRydGwtcmVmbGV4aXZlKTtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgbWRjLXNoYXBlLXJhZGl1cygkcmVzb2x2ZWQtcmFkaXVzLCAkcnRsLXJlZmxleGl2ZSk7XG4gIH1cblxuICBAaWYgKCRyZXNvbHZlZC1yYWRpdXMgPiAkbWRjLW5vdGNoZWQtb3V0bGluZS1sZWFkaW5nLXdpZHRoKSB7XG4gICAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KFxuICAgICAgICBwYWRkaW5nLFxuICAgICAgICAkcmVzb2x2ZWQtcmFkaXVzICsgJG1kYy1ub3RjaGVkLW91dGxpbmUtcGFkZGluZyxcbiAgICAgICAgJG1kYy1zZWxlY3QtYXJyb3ctcGFkZGluZ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICArIC5tZGMtc2VsZWN0LWhlbHBlci10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KFxuICAgICAgICBtYXJnaW4sXG4gICAgICAgICRyZXNvbHZlZC1yYWRpdXMgKyAkbWRjLW5vdGNoZWQtb3V0bGluZS1wYWRkaW5nLFxuICAgICAgICAkbWRjLXNlbGVjdC1vdXRsaW5lLWxhYmVsLW9mZnNldFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJpdmF0ZVxuQG1peGluIG1kYy1zZWxlY3QtZm9jdXNlZC1saW5lLXJpcHBsZV8ge1xuICAmLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1saW5lLXJpcHBsZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtZm9jdXNlZC1vdXRsaW5lXyB7XG4gICYubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1zdHJva2Utd2lkdGgoMnB4KTtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmUtaWRsZV8ge1xuICAmLm1kYy1zZWxlY3QtLWZvY3VzZWQge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWluay1jb2xvcl8oJGNvbG9yKSB7XG4gIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbiAgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy1zZWxlY3QtYm90dG9tLWxpbmUtY29sb3JfKCRjb2xvcikge1xuICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4gIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LW5hdGl2ZS1jb250cm9sLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LW5hdGl2ZS1jb250cm9sLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWJvdHRvbS1jb2xvciwgJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy1zZWxlY3QtZm9jdXNlZC1saW5lLXJpcHBsZS1jb2xvcl8oJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtZm9jdXNlZC1saW5lLXJpcHBsZV8ge1xuICAgIEBpbmNsdWRlIG1kYy1saW5lLXJpcHBsZS1jb2xvcigkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LWRkLWFycm93LXN2Zy1iZ18oJGZpbGwtaGV4LW51bWJlciwgJG9wYWNpdHkpIHtcbiAgLy8gTG9va3VwIGNvbG9yIGFuZCByZW1vdmUgbGVhZGluZyAjLlxuICAkZmlsbC1oZXgtbnVtYmVyOiBtZGMtdGhlbWUtcHJvcC12YWx1ZSgkZmlsbC1oZXgtbnVtYmVyKTtcbiAgJGZpbGwtaGV4LW51bWJlcjogc3RyLXNsaWNlKHVucXVvdGUoXCIjeyRmaWxsLWhleC1udW1iZXJ9XCIpLCAyKTtcblxuICBiYWNrZ3JvdW5kOlxuICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMyN7JGZpbGwtaGV4LW51bWJlcn0lMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwb3BhY2l0eSUzRCUyMiN7JG9wYWNpdHl9JTIyJTIwcG9pbnRzJTNEJTIyNyUyMDEwJTIwMTIlMjAxNSUyMDE3JTIwMTAlMjIlM0UlM0MlMkZwb2x5Z29uJTNFJTBBJTNDJTJGc3ZnJTNFXCIpXG4gICAgbm8tcmVwZWF0XG4gICAgY2VudGVyO1xufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1vdXRsaW5lLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1jb2xvcigkY29sb3IpO1xufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1ob3Zlci1vdXRsaW5lLWNvbG9yXygkY29sb3IpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWNvbWJpbmF0b3Itc3BhY2UtYWZ0ZXJcbiAgJjpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+LFxuICAmOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiB7XG4gICAgLm1kYy1ub3RjaGVkLW91dGxpbmUge1xuICAgICAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmUtY29sb3JfKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWZvY3VzZWQtb3V0bGluZV8ge1xuICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtY29sb3IoJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1mbG9hdGluZy1sYWJlbF8ge1xuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLXNlbGVjdC1vdXRsaW5lLWxhYmVsLW9mZnNldCk7XG5cbiAgICB0b3A6IDIxcHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIHtcbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICRtZGMtc2VsZWN0LWljb24tcGFkZGluZyk7XG4gICAgfVxuICB9XG5cbiAgJi5tZGMtc2VsZWN0LS1vdXRsaW5lZCB7XG4gICAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLW5vdGNoZWQtb3V0bGluZS1wYWRkaW5nKTtcblxuICAgICAgdG9wOiAxN3B4O1xuICAgIH1cblxuICAgICYubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ge1xuICAgICAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICRtZGMtc2VsZWN0LWljb24tcGFkZGluZyAtICRtZGMtbm90Y2hlZC1vdXRsaW5lLWxlYWRpbmctd2lkdGgpO1xuXG4gICAgICAgICYtLWZsb2F0LWFib3ZlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLXNlbGVjdC1pY29uLXBhZGRpbmcgLSAkbWRjLW5vdGNoZWQtb3V0bGluZS1sZWFkaW5nLXdpZHRoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC13aXRoLWxlYWRpbmctaWNvbl8ge1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWljb24taG9yaXpvbnRhbC1wb3NpdGlvbl8oMTZweCwgJG1kYy1zZWxlY3QtaWNvbi1wYWRkaW5nKTtcblxuICAmLm1kYy1zZWxlY3QtLW91dGxpbmVkIHtcbiAgICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWZsb2F0aW5nLWxhYmVsLWZsb2F0LXBvc2l0aW9uKFxuICAgICAgJG1kYy1zZWxlY3Qtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teSxcbiAgICAgICRtZGMtc2VsZWN0LW91dGxpbmVkLXdpdGgtbGVhZGluZy1pY29uLWxhYmVsLXBvc2l0aW9uLXhcbiAgICApO1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24oc2VsZWN0LW91dGxpbmVkLWxlYWRpbmctaWNvbik7XG5cbiAgICBAaW5jbHVkZSBtZGMtcnRsIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24oc2VsZWN0LW91dGxpbmVkLWxlYWRpbmctaWNvbi1ydGwpO1xuICAgIH1cbiAgfVxuXG4gICYubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QtaXRlbV9fdGV4dCB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkocGFkZGluZywgMzJweCAvKiBsZWZ0LXZhbHVlICovLCAzMnB4IC8qIHJpZ2h0LXZhbHVlICovKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC10ZXh0LWFuZC1jb250cm9sXyB7XG4gIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIHBhZGRpbmctdG9wOiAyMnB4O1xuICB9XG5cbiAgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuICAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcHJvcGVydHkocGFkZGluZywgJG1kYy1zZWxlY3QtbGFiZWwtcGFkZGluZywgJG1kYy1zZWxlY3QtYXJyb3ctcGFkZGluZyk7XG4gICAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoc3VidGl0bGUxKTtcblxuICAgICY6Oi1tcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvLyBjb3VudGVyYWN0cyB0aGUgZXh0cmEgdGV4dCBwYWRkaW5nIHRoYXQgRmlyZWZveCBhZGRzIGJ5IGRlZmF1bHRcbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KFwiXCIpIHtcbiAgICAgIHRleHQtaW5kZW50OiAtMnB4O1xuICAgIH1cblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkbWRjLXNlbGVjdC1oZWlnaHQ7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIE92ZXJyaWRlIGRlZmF1bHQgdXNlciBhZ2VudCBzdHlsZXNoZWV0XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXNlbGVjdC1kaXNhYmxlZF8ge1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yXygkbWRjLXNlbGVjdC1kaXNhYmxlZC1maWxsLWNvbG9yKTtcblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtaW5rLWNvbG9yKCRtZGMtc2VsZWN0LWRpc2FibGVkLWxhYmVsLWNvbG9yKTtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19kcm9wZG93bi1pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtc2VsZWN0LWRkLWFycm93LXN2Zy1iZ18oJG1kYy1zZWxlY3QtZHJvcGRvd24tY29sb3IsICRtZGMtc2VsZWN0LWRpc2FibGVkLWRyb3Bkb3duLW9wYWNpdHkpO1xuICB9XG5cbiAgLm1kYy1saW5lLXJpcHBsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJG1kYy1zZWxlY3QtZGlzYWJsZWQtaWNvbi1jb2xvcik7XG4gIH1cblxuICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4gIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJG1kYy1zZWxlY3QtZGlzYWJsZWQtaW5rLWNvbG9yKTtcblxuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYubWRjLXNlbGVjdC0tb3V0bGluZWQge1xuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3QtY29udGFpbmVyLWZpbGwtY29sb3JfKHRyYW5zcGFyZW50KTtcblxuICAgIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbiAgICAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1kYy1zZWxlY3Qtb3V0bGluZS1jb2xvcl8oJG1kYy1zZWxlY3Qtb3V0bGluZWQtZGlzYWJsZWQtYm9yZGVyKTtcbiAgfVxuXG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtaXhpbiBtZGMtc2VsZWN0LW91dGxpbmVkXyB7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3QtY29udGFpbmVyLWZpbGwtY29sb3IodHJhbnNwYXJlbnQpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LW91dGxpbmUtY29sb3IoJG1kYy1zZWxlY3Qtb3V0bGluZWQtaWRsZS1ib3JkZXIpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWhvdmVyLW91dGxpbmUtY29sb3IoJG1kYy1zZWxlY3Qtb3V0bGluZWQtaG92ZXItYm9yZGVyKTtcbiAgQGluY2x1ZGUgbWRjLXNlbGVjdC1mb2N1c2VkLW91dGxpbmUtY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24odGV4dC1maWVsZC1vdXRsaW5lZCk7XG4gIEBpbmNsdWRlIG1kYy1zZWxlY3Qtb3V0bGluZS1zaGFwZS1yYWRpdXMoc21hbGwpO1xuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWJhc2UtY29sb3IodHJhbnNwYXJlbnQpO1xuICBAaW5jbHVkZSBtZGMtc2VsZWN0LWNvbnRhaW5lci1maWxsLWNvbG9yKHRyYW5zcGFyZW50KTtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLXNlbGVjdC1vdXRsaW5lZC1sYWJlbC1wb3NpdGlvbi15LCAwKTtcblxuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbiAgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KHBhZGRpbmcsICRtZGMtc2VsZWN0LWxhYmVsLXBhZGRpbmcsICRtZGMtc2VsZWN0LWFycm93LXBhZGRpbmcpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgfVxuXG4gIC5tZGMtc2VsZWN0X19pY29uIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTVyZW07XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIG1kYy1zZWxlY3QtaGVscGVyLXRleHRfIHtcbiAgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICAgIC5tZGMtc2VsZWN0ICsgJiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICB9XG5cbiAgICAubWRjLXNlbGVjdC0tb3V0bGluZWQgKyAmIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIH1cbiAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuICB9XG5cbiAgLm1kYy1zZWxlY3QtLWZvY3VzZWQgKyAubWRjLXNlbGVjdC1oZWxwZXItdGV4dDpub3QoLm1kYy1zZWxlY3QtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnKSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE4IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3NoYXBlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9zaGFwZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbkBtaXhpbiBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbiAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuICAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJvcmRlci1jb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLW5vdGNoZWQtb3V0bGluZS1zdHJva2Utd2lkdGgoJHdpZHRoKSB7XG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuICAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gICAgYm9yZGVyLXdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIG1kYy1ub3RjaGVkLW91dGxpbmUtc2hhcGUtcmFkaXVzKCRyYWRpdXMsICRydGwtcmVmbGV4aXZlOiBmYWxzZSkge1xuICAkcmFkaXVzOiBtZGMtc2hhcGUtcHJvcC12YWx1ZSgkcmFkaXVzKTtcblxuICBAaWYgKGxlbmd0aCgkcmFkaXVzKSA+IDEpIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxpbmUtbGVuZ3RoXG4gICAgQHdhcm4gXCJtZGMtbm90Y2hlZC1vdXRsaW5lLXNoYXBlLXJhZGl1cyBvbmx5IHN1cHBvcnRzIGEgc2luZ2xlIHJhZGl1czsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9tYXRlcmlhbC1jb21wb25lbnRzL21hdGVyaWFsLWNvbXBvbmVudHMtd2ViL2lzc3Vlcy80MTQwXCI7XG4gIH1cblxuICAkcmFkaXVzOiBudGgoJHJhZGl1cywgMSk7XG5cbiAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcge1xuICAgIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMobWRjLXNoYXBlLW1hc2stcmFkaXVzKCRyYWRpdXMsIDEgMCAwIDEpLCAkcnRsLXJlZmxleGl2ZTogdHJ1ZSk7XG5cbiAgICBAaWYgKCRyYWRpdXMgPiAkbWRjLW5vdGNoZWQtb3V0bGluZS1sZWFkaW5nLXdpZHRoKSB7XG4gICAgICB3aWR0aDogJHJhZGl1cztcbiAgICB9XG4gIH1cblxuICBAaWYgKCRyYWRpdXMgPiAkbWRjLW5vdGNoZWQtb3V0bGluZS1sZWFkaW5nLXdpZHRoKSB7XG4gICAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3skcmFkaXVzfSAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gICAgQGluY2x1ZGUgbWRjLXNoYXBlLXJhZGl1cyhtZGMtc2hhcGUtbWFzay1yYWRpdXMoJHJhZGl1cywgMCAxIDEgMCksICRydGwtcmVmbGV4aXZlOiB0cnVlKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLW5vdGNoZWQtb3V0bGluZS1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkcG9zaXRpb25ZLCAkcG9zaXRpb25YOiAwJSwgJHNjYWxlOiAuNzUpIHtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWZsb2F0LXBvc2l0aW9uKCRwb3NpdGlvblkgKyAkbWRjLW5vdGNoZWQtb3V0bGluZS1sYWJlbC1hZGp1c3QsICRwb3NpdGlvblgsIDEpO1xuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgICBmb250LXNpemU6ICgkc2NhbGUgKiAxcmVtKTtcbiAgfVxuXG4gIC8vIFR3byBzZWxlY3RvcnMgdG8gZW5zdXJlIHdlIHNlbGVjdCB0aGUgYXBwcm9wcmlhdGUgY2xhc3Mgd2hlbiBhcHBsaWVkIGZyb20gdGhpcyBjb21wb25lbnQgb3IgYSBwYXJlbnQgY29tcG9uZW50LlxuICAmLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkLFxuICAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQge1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkcG9zaXRpb25ZLCAkcG9zaXRpb25YLCAkc2NhbGUpO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIi4uL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdHlwb2dyYXBoeS9taXhpbnNcIjtcblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBkZWZpbmUgdGV4dC1maWVsZC1oZWxwZXItdGV4dFxuXG4ubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShjYXB0aW9uKTtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHktYmFzZWxpbmUtdG9wKDE2cHgpO1xuXG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogbWRjLXRleHQtZmllbGQtdHJhbnNpdGlvbihvcGFjaXR5KTtcbiAgb3BhY2l0eTogMDtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tcGVyc2lzdGVudCB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpbGwtY2hhbmdlOiBpbml0aWFsO1xufVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE5IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCIuLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90eXBvZ3JhcGh5L21peGluc1wiO1xuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSB0ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyXG5cbi5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciB7XG4gIEBpbmNsdWRlIG1kYy10eXBvZ3JhcGh5KGNhcHRpb24pO1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeS1iYXNlbGluZS10b3AoMTZweCk7XG4gIC8vIEtlZXAgZmxleCBpdGVtIGFsaWduIHRvIHRyYWlsaW5nIHNpZGUgb24gYWJzZW5jZSBvZiBoZWxwZXIgdGV4dC5cbiAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgYXV0byk7XG4gIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChwYWRkaW5nLCBsZWZ0LCAxNnB4KTtcblxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGVuZFxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL21peGluc1wiO1xuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbixcbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXRleHQtZmllbGRfX2ljb25bdGFiaW5kZXg9XCItMVwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2Zsb2F0aW5nLWxhYmVsL21kYy1mbG9hdGluZy1sYWJlbFwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9saW5lLXJpcHBsZS9tZGMtbGluZS1yaXBwbGVcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvbm90Y2hlZC1vdXRsaW5lL21kYy1ub3RjaGVkLW91dGxpbmVcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL2NvbW1vblwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3J0bC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3R5cG9ncmFwaHkvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuL2hlbHBlci10ZXh0L21kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0XCI7XG5AaW1wb3J0IFwiLi9jaGFyYWN0ZXItY291bnRlci9tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlclwiO1xuQGltcG9ydCBcIi4vaWNvbi9tZGMtdGV4dC1maWVsZC1pY29uXCI7XG5AaW1wb3J0IFwiLi9taXhpbnNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuXG4vLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSB0ZXh0LWZpZWxkXG5cbi5tZGMtdGV4dC1maWVsZCB7XG4gIEBpbmNsdWRlIG1kYy1yaXBwbGUtc3VyZmFjZTtcbiAgLy8gVGV4dCBGaWVsZCBpbnRlbnRpb25hbGx5IG9taXRzIHByZXNzIHJpcHBsZSwgc28gZWFjaCBzdGF0ZSBuZWVkcyB0byBiZSBzcGVjaWZpZWQgaW5kaXZpZHVhbGx5LlxuICBAaW5jbHVkZSBtZGMtc3RhdGVzLWJhc2UtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWluay1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtaG92ZXItb3BhY2l0eShtZGMtc3RhdGVzLW9wYWNpdHkoJG1kYy10ZXh0LWZpZWxkLWluay1jb2xvciwgaG92ZXIpKTtcbiAgQGluY2x1ZGUgbWRjLXN0YXRlcy1mb2N1cy1vcGFjaXR5KG1kYy1zdGF0ZXMtb3BhY2l0eSgkbWRjLXRleHQtZmllbGQtaW5rLWNvbG9yLCBmb2N1cykpO1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLXJhZGl1cy1ib3VuZGVkO1xuXG4gIC8vIFNoYXBlXG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXNoYXBlLXJhZGl1cyhzbWFsbCk7XG5cbiAgLy8gQ29sb3JzXG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWxhYmVsLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1sYWJlbCk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWluay1jb2xvcigkbWRjLXRleHQtZmllbGQtaW5rLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtY2FyZXQtY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWJvdHRvbS1saW5lLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1pZGxlKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItYm90dG9tLWxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWJvdHRvbS1saW5lLWhvdmVyKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGluZS1yaXBwbGUtY29sb3JfKHByaW1hcnkpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mdWxsd2lkdGgtYm90dG9tLWxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LWNvbG9yKCRtZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24tY29sb3IoJG1kYy10ZXh0LWZpZWxkLWljb24tY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1maWxsLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1iYWNrZ3JvdW5kKTtcblxuICAvLyBGbG9hdGluZyBMYWJlbFxuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mbG9hdGluZy1sYWJlbF87XG5cbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAkbWRjLXRleHQtZmllbGQtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yO1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgQGluY2x1ZGUgbWRjLXR5cG9ncmFwaHkoc3VidGl0bGUxKTtcblxuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweCAxNnB4IDZweDtcbiAgdHJhbnNpdGlvbjogbWRjLXRleHQtZmllbGQtdHJhbnNpdGlvbihvcGFjaXR5KTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb246IG1kYy10ZXh0LWZpZWxkLXRyYW5zaXRpb24ob3BhY2l0eSwgJGR1cmF0aW9uOiA2N21zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGNvbG9yOiAkbWRjLXRleHQtZmllbGQtcGxhY2Vob2xkZXItaW5rLWNvbG9yO1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgdGhlIHBsYWNlaG9sZGVyIHN0eWxlcyBpbiBJRSB3aXRoIGltcG9ydGFudCBydWxlIHRvIGltcHJvdmUgc3BlY2lmaWNpdHkuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby12ZW5kb3ItcHJlZml4XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJG1kYy10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWluay1jb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQWx3YXlzIHNob3cgcGxhY2Vob2xkZXIgZm9yIHRleHQgZmllbGRzIHRoYXQgaGFzIG5vIGxhYmVsIGFuZCBzaG93IG9ubHkgb24gZm9jdXNlZCBzdGF0ZSB3aGVuIGxhYmVsIGlzIHByZXNlbnQuXG4gIC5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoICY6OnBsYWNlaG9sZGVyLFxuICAubWRjLXRleHQtZmllbGQtLW5vLWxhYmVsICY6OnBsYWNlaG9sZGVyLFxuICAubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgJjo6cGxhY2Vob2xkZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDQwbXM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTEwbXM7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgcmVkIG91dGxpbmUgb24gZmlyZWZveFxuICAmOmludmFsaWQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvLyBLZWVwIENocm9tZSBhdXRvZmlsbCBiZWhpbmQgdGhlIG5vdGNoZWQgb3V0bGluZVxuICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGFsaWducyB0aGUgdGV4dCBpbnB1dCBwbGFjZWhvbGRlciBhbmQgdmFsdWUgZm9yIG9ubHkgZmlsbGVkIHZhcmlhbnQuXG4gIC5tZGMtdGV4dC1maWVsZC0tbm8tbGFiZWw6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAmIHtcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgfVxufVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuLy8gTW92ZSBsYWJlbCB3aGVuIHRleHQtZmllbGQgZ2V0cyBhdXRvLWZpbGxlZCBpbiBDaHJvbWUuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0Oi13ZWJraXQtYXV0b2ZpbGwgKyAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKC43NSk7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWZvY3VzZWRfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRpc2FibGVkXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2Uge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZV87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC13aXRoLWxlYWRpbmctaWNvbl87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb25fO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2Uge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZS13aXRoLWxlYWRpbmctaWNvbl87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtd2l0aC10cmFpbGluZy1pY29uXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtd2l0aC1ib3RoLWljb25zXztcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgYm90dG9tOiAxNnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKC44KTtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb25fO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2Uge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1kZW5zZS13aXRoLXRyYWlsaW5nLWljb25fO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC1ib3RoLWljb25zXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWRlbnNlXztcbn1cblxuQGluY2x1ZGUgbWRjLXJlcXVpcmVkLXRleHQtZmllbGQtbGFiZWwtYXN0ZXJpc2tfIHtcbiAgbWFyZ2luLWxlZnQ6IDFweDtcbiAgY29udGVudDogXCIqXCI7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYV87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGgubWRjLXRleHQtZmllbGQtLWludmFsaWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mdWxsd2lkdGgtaW52YWxpZF87XG59XG5cbi8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIHRleHQtZmllbGQtaGVscGVyLXRleHRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgKyAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIH1cblxuICAubWRjLXRleHQtZmllbGQgKyAmIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkbWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUtcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRtZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZS1wYWRkaW5nO1xuICB9XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHBsdWdpbi9zZWxlY3Rvci1iZW0tcGF0dGVyblxuLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcblxuLy8gbWRjLWZvcm0tZmllbGQgdHdlYWtzIHRvIGFsaWduIHRleHQgZmllbGQgbGFiZWwgY29ycmVjdGx5XG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZVxuLm1kYy1mb3JtLWZpZWxkID4gLm1kYy10ZXh0LWZpZWxkICsgbGFiZWwge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtdHlwZVxuXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mb2N1c2VkXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLXN0cm9rZS1jb2xvcihwcmltYXJ5KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaW52YWxpZF87XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1pbnZhbGlkXztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWludmFsaWRfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZGlzYWJsZWRfO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWRpc2FibGVkXztcbn1cblxuQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyhcbiAgdGV4dC1maWVsZC1kZW5zZSxcbiAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksXG4gIDAlLFxuICAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtc2NhbGVcbik7XG5AaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2Uta2V5ZnJhbWVzKHRleHQtZmllbGQtb3V0bGluZWQsICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1sYWJlbC1wb3NpdGlvbi15KTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXMoXG4gIHRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UsXG4gICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZS1sYWJlbC1wb3NpdGlvbi15LFxuICAwJSxcbiAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlXG4pO1xuQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyhcbiAgdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24sXG4gICRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1sYWJlbC1wb3NpdGlvbi15LFxuICAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teFxuKTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXMoXG4gIHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLFxuICAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UtbGFiZWwtcG9zaXRpb24teSxcbiAgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLXdpdGgtbGVhZGluZy1pY29uLWxhYmVsLXBvc2l0aW9uLXgsXG4gICRtZGMtdGV4dC1maWVsZC1kZW5zZS1sYWJlbC1zY2FsZVxuKTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXMoXG4gIHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCxcbiAgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWxhYmVsLXBvc2l0aW9uLXksXG4gIC0kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teFxuKTtcbkBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1rZXlmcmFtZXMoXG4gIHRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCxcbiAgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksXG4gIC0kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teCxcbiAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlXG4pO1xuQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWtleWZyYW1lcyh0ZXh0YXJlYSwgJG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWxhYmVsLXBvc2l0aW9uLXksIDAlKTtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxNyBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuJG1kYy10ZXh0LWZpZWxkLWVycm9yOiBlcnJvciAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1mdWxsd2lkdGgtYm90dG9tLWxpbmUtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4xMikgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMDYpICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWljb246IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zKSAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1ob3ZlcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjg3KSAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1pZGxlOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNDIpICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWxhYmVsOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNikgIWRlZmF1bHQ7XG5cbiRtZGMtdGV4dC1maWVsZC1pbmstY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC44NykgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC42KSAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1pY29uLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNTQpICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWZvY3VzZWQtbGFiZWwtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUocHJpbWFyeSksIC44NykgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtcGxhY2Vob2xkZXItaW5rLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuNTQpICFkZWZhdWx0O1xuXG4kbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtbGFiZWwtY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zNykgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtaW5rLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMzcpICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWhlbHBlci10ZXh0LWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMzcpICFkZWZhdWx0O1xuXG4kbWRjLXRleHQtZmllbGQtYmFja2dyb3VuZDogbWl4KG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCBtZGMtdGhlbWUtcHJvcC12YWx1ZShzdXJmYWNlKSwgNCUpICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWJhY2tncm91bmQ6IG1peChtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgbWRjLXRoZW1lLXByb3AtdmFsdWUoc3VyZmFjZSksIDIlKSAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1zZWNvbmRhcnktdGV4dDogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjYpICFkZWZhdWx0O1xuXG4kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtaWRsZS1ib3JkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4zOCkgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGlzYWJsZWQtYm9yZGVyOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCAuMDYpICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWhvdmVyLWJvcmRlcjogcmdiYShtZGMtdGhlbWUtcHJvcC12YWx1ZShvbi1zdXJmYWNlKSwgLjg3KSAhZGVmYXVsdDtcblxuJG1kYy10ZXh0YXJlYS1ib3JkZXI6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC43MykgIWRlZmF1bHQ7XG4kbWRjLXRleHRhcmVhLWJhY2tncm91bmQ6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUoc3VyZmFjZSksIDEpICFkZWZhdWx0O1xuJG1kYy10ZXh0YXJlYS1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHJnYmEobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIC4yNikgIWRlZmF1bHQ7XG4vLyBjYW5ub3QgYmUgdHJhbnNwYXJlbnQgYmVjYXVzZSBtdWx0aWxpbmUgdGV4dGFyZWEgaW5wdXRcbi8vIHdpbGwgbWFrZSB0ZXh0IHVucmVhZGFibGVcbiRtZGMtdGV4dGFyZWEtZGlzYWJsZWQtYmFja2dyb3VuZDogcmdiYSgyNDksIDI0OSwgMjQ5LCAxKSAhZGVmYXVsdDtcblxuJG1kYy10ZXh0LWZpZWxkLWhlaWdodDogNTZweCAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1sYWJlbC1wb3NpdGlvbi15OiA1MCUgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtbGFiZWwtb2Zmc2V0OiAxNnB4ICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXk6IDcwJSAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1kZW5zZS1sYWJlbC1zY2FsZTogLjggIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teTogMTMwJSAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZS1sYWJlbC1wb3NpdGlvbi15OiAxMjAlICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLXdpdGgtbGVhZGluZy1pY29uLWxhYmVsLXBvc2l0aW9uLXg6IDAgIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teDogMjFweCAhZGVmYXVsdDtcbiRtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1sYWJlbC1wb3NpdGlvbi15OiAxMzAlICFkZWZhdWx0O1xuJG1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lLXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kbWRjLXRleHQtZmllbGQtaW5wdXQtcGFkZGluZzogMTZweCAhZGVmYXVsdDtcbi8vIE5vdGUgdGhhdCB0aGUgc2NhbGUgZmFjdG9yIGlzIGFuIGV5ZWJhbGxlZCBhcHByb3hpbWF0aW9uIG9mIHdoYXQncyBzaG93biBpbiB0aGUgbW9ja3MuXG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTcgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9mbG9hdGluZy1sYWJlbC9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvbGluZS1yaXBwbGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL25vdGNoZWQtb3V0bGluZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvbm90Y2hlZC1vdXRsaW5lL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvc2hhcGUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3NoYXBlL2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcImhlbHBlci10ZXh0L21peGluc1wiO1xuQGltcG9ydCBcImNoYXJhY3Rlci1jb3VudGVyL21peGluc1wiO1xuQGltcG9ydCBcImljb24vbWl4aW5zXCI7XG5AaW1wb3J0IFwiaWNvbi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4vZnVuY3Rpb25zXCI7XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlKSB7XG4gIEBpZiBsZW5ndGgoJHJhZGl1cykgPiAyIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIHJhZGl1czogJyN7JHJhZGl1c30nIGNvbXBvbmVudCBkb2Vzbid0IGFsbG93IGN1c3RvbWl6aW5nIGFsbCBjb3JuZXJzXCI7XG4gIH1cblxuICAkbWFza2VkLXJhZGl1czogbWRjLXNoYXBlLW1hc2stcmFkaXVzKCRyYWRpdXMsIDEgMSAwIDApO1xuXG4gIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoXG4gICAgbWRjLXNoYXBlLXJlc29sdmUtcGVyY2VudGFnZS1yYWRpdXMoJG1kYy10ZXh0LWZpZWxkLWhlaWdodCwgJG1hc2tlZC1yYWRpdXMpLFxuICAgICRydGwtcmVmbGV4aXZlXG4gICk7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtc2hhcGUtcmFkaXVzKCRyYWRpdXMsICRydGwtcmVmbGV4aXZlKTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWluay1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWluay1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZpbGwtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLXN0cm9rZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLXN0cm9rZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtZmlsbC1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWZpbGwtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtYm90dG9tLWxpbmUtY29sb3IoJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1ob3Zlci1ib3R0b20tbGluZS1jb2xvcigkY29sb3IpIHtcbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItYm90dG9tLWxpbmUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWxpbmUtcmlwcGxlLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGluZS1yaXBwbGUtY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWxhYmVsLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGFiZWwtaW5rLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1jb2xvcigkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1ob3Zlci1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcl8oJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZm9jdXNlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZm9jdXNlZC1vdXRsaW5lLWNvbG9yXygkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1jYXJldC1jb2xvcigkY29sb3IpIHtcbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY2FyZXQtY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuLy8gUHJpdmF0ZSBtaXhpbnNcblxuLy8gQmFzZWxpbmVcblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWJvdHRvbS1saW5lLWNvbG9yXygkbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaW5rLWNvbG9yXygkbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtaW5rLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGFiZWwtaW5rLWNvbG9yXygkbWRjLXRleHQtZmllbGQtZGlzYWJsZWQtbGFiZWwtY29sb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC1jb2xvcl8oJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWhlbHBlci10ZXh0LWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXItY29sb3JfKCRtZGMtdGV4dC1maWVsZC1kaXNhYmxlZC1oZWxwZXItdGV4dC1jb2xvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24tY29sb3JfKCRtZGMtdGV4dC1maWVsZC1kaXNhYmxlZC1pY29uKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yXygkbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcl8oJG1kYy10ZXh0LWZpZWxkLWRpc2FibGVkLWJhY2tncm91bmQpO1xuXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtaW52YWxpZF8ge1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ob3Zlci1ib3R0b20tbGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1saW5lLXJpcHBsZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1sYWJlbC1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC12YWxpZGF0aW9uLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWNhcmV0LWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG5cbiAgJjpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1yZXF1aXJlZC10ZXh0LWZpZWxkLWxhYmVsLWFzdGVyaXNrXyB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbiAgICB9XG4gIH1cblxuICAmLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ge1xuICAgICY6bm90KC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24pIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24tY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbiAgICB9XG5cbiAgICAmLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiB7XG4gICAgICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1pY29uLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvciwgLyogc3R5bGVTZWNvbmRJY29uICovIHRydWUpO1xuICAgIH1cbiAgfVxuXG4gICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZvY3VzZWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtbGFiZWwtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWZvY3VzZWQtbGFiZWwtY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1kYy1yZXF1aXJlZC10ZXh0LWZpZWxkLWxhYmVsLWFzdGVyaXNrXyB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRtZGMtdGV4dC1maWVsZC1mb2N1c2VkLWxhYmVsLWNvbG9yKTtcbiAgfVxuXG4gICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dDpub3QoLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZykge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWRlbnNlXyB7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbihcbiAgICAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtcG9zaXRpb24teSxcbiAgICAwJSxcbiAgICAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtc2NhbGVcbiAgKTtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLWRlbnNlKTtcblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggMDtcbiAgfVxuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogLjgxM3JlbTtcblxuICAgICYtLWZsb2F0LWFib3ZlIHtcbiAgICAgIGZvbnQtc2l6ZTogLjgxM3JlbTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1yZXF1aXJlZC10ZXh0LWZpZWxkLWxhYmVsLWFzdGVyaXNrXygpIHtcbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpyZXF1aXJlZCB+IHtcbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlcixcbiAgICAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtc2hhcGUtcmFkaXVzKCRyYWRpdXMsICRydGwtcmVmbGV4aXZlOiBmYWxzZSkge1xuICAkcmVzb2x2ZWQtcmFkaXVzOiBudGgobWRjLXNoYXBlLXJlc29sdmUtcGVyY2VudGFnZS1yYWRpdXMoJG1kYy10ZXh0LWZpZWxkLWhlaWdodCwgbWRjLXNoYXBlLXByb3AtdmFsdWUoJHJhZGl1cykpLCAxKTtcblxuICBAaWYgKGxlbmd0aChtZGMtc2hhcGUtcHJvcC12YWx1ZSgkcmFkaXVzKSkgPiAxKSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1saW5lLWxlbmd0aFxuICAgIEB3YXJuIFwibWRjLXRleHQtZmllbGQtb3V0bGluZS1zaGFwZS1yYWRpdXMgb25seSBzdXBwb3J0cyBhIHNpbmdsZSByYWRpdXM7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbWF0ZXJpYWwtY29tcG9uZW50cy9tYXRlcmlhbC1jb21wb25lbnRzLXdlYi9pc3N1ZXMvNDE0MFwiO1xuICB9XG5cbiAgLm1kYy1ub3RjaGVkLW91dGxpbmUge1xuICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtc2hhcGUtcmFkaXVzKCRyZXNvbHZlZC1yYWRpdXMsICRydGwtcmVmbGV4aXZlKTtcbiAgfVxuXG4gIEBpZiAoJHJlc29sdmVkLXJhZGl1cyA+ICRtZGMtbm90Y2hlZC1vdXRsaW5lLWxlYWRpbmctd2lkdGgpIHtcbiAgICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KHBhZGRpbmcsICRyZXNvbHZlZC1yYWRpdXMgKyAkbWRjLW5vdGNoZWQtb3V0bGluZS1wYWRkaW5nLCAwKTtcbiAgICB9XG5cbiAgICArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSB7XG4gICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wcm9wZXJ0eShwYWRkaW5nLCAkcmVzb2x2ZWQtcmFkaXVzICsgJG1kYy1ub3RjaGVkLW91dGxpbmUtcGFkZGluZywgJHJlc29sdmVkLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1mbG9hdGluZy1sYWJlbF8ge1xuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLXRleHQtZmllbGQtbGFiZWwtb2Zmc2V0KTtcblxuICAgIHRvcDogMThweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYtLXRleHRhcmVhIHtcbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICRtZGMtbm90Y2hlZC1vdXRsaW5lLXBhZGRpbmcpO1xuICAgIH1cbiAgfVxuXG4gICYtLW91dGxpbmVkIHtcbiAgICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICRtZGMtbm90Y2hlZC1vdXRsaW5lLXBhZGRpbmcpO1xuXG4gICAgICB0b3A6IDE3cHg7XG4gICAgfVxuXG4gICAgJi0td2l0aC1sZWFkaW5nLWljb24ge1xuICAgICAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICgkbWRjLXRleHQtZmllbGQtaWNvbi1wYWRkaW5nIC0gJG1kYy1ub3RjaGVkLW91dGxpbmUtbGVhZGluZy13aWR0aCkpO1xuXG4gICAgICAgICYtLWZsb2F0LWFib3ZlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihcbiAgICAgICAgICAgIGxlZnQsXG4gICAgICAgICAgICAoJG1kYy10ZXh0LWZpZWxkLWljb24tcGFkZGluZyAtICRtZGMtbm90Y2hlZC1vdXRsaW5lLWxlYWRpbmctd2lkdGgpICsgJG1kYy1ub3RjaGVkLW91dGxpbmUtcGFkZGluZ1xuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT3V0bGluZWRcblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRpc2FibGVkXyB7XG4gIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRpc2FibGVkLWJvcmRlcik7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZpbGwtY29sb3JfKHRyYW5zcGFyZW50KTtcblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1pbnZhbGlkXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mb2N1c2VkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWZvY3VzZWRfIHtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1zdHJva2Utd2lkdGgoMnB4KTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlXyB7XG4gIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtZmxvYXRpbmctbGFiZWwtZmxvYXQtcG9zaXRpb24oXG4gICAgJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWRlbnNlLWxhYmVsLXBvc2l0aW9uLXksXG4gICAgMCUsXG4gICAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWxhYmVsLXNjYWxlXG4gICk7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24odGV4dC1maWVsZC1vdXRsaW5lZC1kZW5zZSk7XG5cbiAgaGVpZ2h0OiA0OHB4O1xuXG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIHBhZGRpbmc6IDEycHggMTJweCA3cHg7XG4gIH1cblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICB0b3A6IDE0cHg7XG4gIH1cblxuICAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHRvcDogMTJweDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtb3V0bGluZWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtaWRsZS1ib3JkZXIpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1ob3Zlci1vdXRsaW5lLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1ob3Zlci1ib3JkZXIpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mb2N1c2VkLW91dGxpbmUtY29sb3IocHJpbWFyeSk7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24odGV4dC1maWVsZC1vdXRsaW5lZCk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtc2hhcGUtcmFkaXVzKHNtYWxsKTtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teSk7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtYmFzZS1jb2xvcih0cmFuc3BhcmVudCk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZpbGwtY29sb3IodHJhbnNwYXJlbnQpO1xuXG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAxMnB4IDE2cHggMTRweDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsgLy8gRkYgYWRkcyB1bndhbnRlZCBib3JkZXIgaW4gSEMgbW9kZSBvbiB3aW5kb3dzLlxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWhvdmVyLW91dGxpbmUtY29sb3JfKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItY29tYmluYXRvci1zcGFjZS1hZnRlclxuICAgIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfixcbiAgICAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiB7XG4gICAgICAubWRjLW5vdGNoZWQtb3V0bGluZSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtY29sb3IoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZvY3VzZWQtb3V0bGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gICYubWRjLXRleHQtZmllbGQtLWZvY3VzZWQge1xuICAgIEBpbmNsdWRlIG1kYy1ub3RjaGVkLW91dGxpbmUtY29sb3IoJGNvbG9yKTtcbiAgfVxufVxuXG4vLyBJY29uc1xuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtd2l0aC1sZWFkaW5nLWljb25fIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaWNvbi1ob3Jpem9udGFsLXBvc2l0aW9uXyhcbiAgICBsZWZ0LFxuICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBvc2l0aW9uLFxuICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBhZGRpbmcsXG4gICAgJG1kYy10ZXh0LWZpZWxkLWlucHV0LXBhZGRpbmdcbiAgKTtcblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLXRleHQtZmllbGQtaWNvbi1wYWRkaW5nKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb25fIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaWNvbi1ob3Jpem9udGFsLXBvc2l0aW9uXyhcbiAgICBsZWZ0LFxuICAgICRtZGMtdGV4dC1maWVsZC1kZW5zZS1pY29uLXBvc2l0aW9uLFxuICAgICRtZGMtdGV4dC1maWVsZC1kZW5zZS1pY29uLXBhZGRpbmcsXG4gICAgJG1kYy10ZXh0LWZpZWxkLWlucHV0LXBhZGRpbmdcbiAgKTtcblxuICAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1wb3NpdGlvbihsZWZ0LCAkbWRjLXRleHQtZmllbGQtZGVuc2UtaWNvbi1wYWRkaW5nKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtb3V0bGluZWQtd2l0aC1sZWFkaW5nLWljb25fIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaWNvbi1ob3Jpem9udGFsLXBvc2l0aW9uXyhcbiAgICBsZWZ0LFxuICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBvc2l0aW9uLFxuICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBhZGRpbmcsXG4gICAgJG1kYy10ZXh0LWZpZWxkLWlucHV0LXBhZGRpbmdcbiAgKTtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbigkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtbGFiZWwtcG9zaXRpb24teSwgMzJweCk7XG4gIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24odGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24pO1xuXG4gIEBpbmNsdWRlIG1kYy1ydGwge1xuICAgIEBpbmNsdWRlIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1hbmltYXRpb24odGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tcnRsKTtcbiAgfVxuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKGxlZnQsICRtZGMtdGV4dC1maWVsZC1pY29uLXBhZGRpbmcgLSAkbWRjLW5vdGNoZWQtb3V0bGluZS1sZWFkaW5nLXdpZHRoKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb25fIHtcbiAgQGluY2x1ZGUgbWRjLW5vdGNoZWQtb3V0bGluZS1mbG9hdGluZy1sYWJlbC1mbG9hdC1wb3NpdGlvbihcbiAgICAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UtbGFiZWwtcG9zaXRpb24teSxcbiAgICAkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2Utd2l0aC1sZWFkaW5nLWljb24tbGFiZWwtcG9zaXRpb24teCxcbiAgICAkbWRjLXRleHQtZmllbGQtZGVuc2UtbGFiZWwtc2NhbGVcbiAgKTtcbiAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1kZW5zZSk7XG5cbiAgQGluY2x1ZGUgbWRjLXJ0bCB7XG4gICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWFuaW1hdGlvbih0ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1kZW5zZS1ydGwpO1xuICB9XG5cbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtcG9zaXRpb24obGVmdCwgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWljb24tcGFkZGluZyAtICRtZGMtbm90Y2hlZC1vdXRsaW5lLWxlYWRpbmctd2lkdGgpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC13aXRoLXRyYWlsaW5nLWljb25fIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaWNvbi1ob3Jpem9udGFsLXBvc2l0aW9uXyhcbiAgICByaWdodCxcbiAgICAkbWRjLXRleHQtZmllbGQtdHJhaWxpbmctaWNvbi1wb3NpdGlvbixcbiAgICAkbWRjLXRleHQtZmllbGQtaWNvbi1wYWRkaW5nLFxuICAgICRtZGMtdGV4dC1maWVsZC1pbnB1dC1wYWRkaW5nXG4gICk7XG5cbiAgLy8gT3V0bGluZWQgdXNlcyAxNnB4IGZvciB0ZXh0IGFsaWdubWVudCB3aGVuIHVzaW5nIGEgdHJhaWxpbmcgaWNvbi5cbiAgJi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQge1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbl8oXG4gICAgICByaWdodCxcbiAgICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBvc2l0aW9uLFxuICAgICAgJG1kYy10ZXh0LWZpZWxkLWljb24tcGFkZGluZyxcbiAgICAgICRtZGMtdGV4dC1maWVsZC1pbnB1dC1wYWRkaW5nXG4gICAgKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC10cmFpbGluZy1pY29uXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbl8oXG4gICAgcmlnaHQsXG4gICAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWljb24tcG9zaXRpb24sXG4gICAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWljb24tcGFkZGluZyxcbiAgICAkbWRjLXRleHQtZmllbGQtaW5wdXQtcGFkZGluZ1xuICApO1xufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtd2l0aC1ib3RoLWljb25zXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbi10d28taWNvbnNfKFxuICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBvc2l0aW9uLFxuICAgICRtZGMtdGV4dC1maWVsZC1pY29uLXBhZGRpbmcsXG4gICAgJG1kYy10ZXh0LWZpZWxkLXRyYWlsaW5nLWljb24tcG9zaXRpb24sXG4gICAgJG1kYy10ZXh0LWZpZWxkLWljb24tcGFkZGluZ1xuICApO1xufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZGVuc2Utd2l0aC1ib3RoLWljb25zXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWljb24taG9yaXpvbnRhbC1wb3NpdGlvbi10d28taWNvbnNfKFxuICAgICRtZGMtdGV4dC1maWVsZC1kZW5zZS1pY29uLXBvc2l0aW9uLFxuICAgICRtZGMtdGV4dC1maWVsZC1kZW5zZS1pY29uLXBhZGRpbmcsXG4gICAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWljb24tcG9zaXRpb24sXG4gICAgJG1kYy10ZXh0LWZpZWxkLWRlbnNlLWljb24tcGFkZGluZ1xuICApO1xufVxuXG4vLyBGdWxsIFdpZHRoXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoXyB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIHtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzLWJhc2UtY29sb3IodHJhbnNwYXJlbnQpO1xuICAgIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZpbGwtY29sb3IodHJhbnNwYXJlbnQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWludmFsaWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZnVsbHdpZHRoLWJvdHRvbS1saW5lLWNvbG9yKCRtZGMtdGV4dC1maWVsZC1lcnJvcik7XG59XG5cbi8vIFRleHRhcmVhXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtdGV4dGFyZWEtZGlzYWJsZWRfIHtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtb3V0bGluZWQtZGlzYWJsZWRfO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhLWZpbGwtY29sb3JfKCRtZGMtdGV4dGFyZWEtZGlzYWJsZWQtYmFja2dyb3VuZCk7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1pbnZhbGlkXyB7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtZXJyb3IpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1mb2N1c2VkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLWVycm9yKTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLXRleHRhcmVhXyB7XG4gIC8vIE5vdGU6IFRoZSByZWZhY3RvciB0byBhZGQgdGhlIGZpbGxlZCB0ZXh0YXJlYSBzdHlsZSB3aWxsIHJlc3VsdCBpbiBhIGxvdCBvZiB0aGUgc3BlY2lmaWNpdHkgaXNzdWVzIHRoYXQgdGhlXG4gIC8vIHRleHRhcmVhIGhhcyBiZWluZyByZXNvbHZlZCBieSB1c2luZyB0aGUgc2FtZSAtLW91dGxpbmVkIHZhcmlhbnQgY2xhc3MgYXMgdGhlIHRleHQgZmllbGQuXG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLW91dGxpbmUtY29sb3IoJG1kYy10ZXh0LWZpZWxkLW91dGxpbmVkLWlkbGUtYm9yZGVyKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtaG92ZXItb3V0bGluZS1jb2xvcigkbWRjLXRleHQtZmllbGQtb3V0bGluZWQtaG92ZXItYm9yZGVyKTtcbiAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtZm9jdXNlZC1vdXRsaW5lLWNvbG9yKHByaW1hcnkpO1xuICBAaW5jbHVkZSBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtYW5pbWF0aW9uKHRleHQtZmllbGQtb3V0bGluZWQpO1xuICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lLXNoYXBlLXJhZGl1cyhzbWFsbCk7XG4gIEBpbmNsdWRlIG1kYy1zdGF0ZXMtYmFzZS1jb2xvcih0cmFuc3BhcmVudCk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWZpbGwtY29sb3IodHJhbnNwYXJlbnQpO1xuICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWZsb2F0aW5nLWxhYmVsLWZsb2F0LXBvc2l0aW9uKCRtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1sYWJlbC1wb3NpdGlvbi15LCAwJSk7XG4gIEBpbmNsdWRlIG1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyLXBvc2l0aW9uKDE2cHgsIDEzcHgpO1xuXG4gICRwYWRkaW5nLWluc2V0OiAxNnB4O1xuXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogJHBhZGRpbmctaW5zZXQvMiAxcHggMXB4IDA7XG4gICAgcGFkZGluZzogMCAkcGFkZGluZy1pbnNldCAkcGFkZGluZy1pbnNldDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIgKyAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyOHB4OyAvLyBMZWF2ZXMgc3BhY2UgZm9yIGNoYXJhY3RlciBjb3VudGVyIGlmIGl0IGV4aXN0cy5cbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAgIHRvcDogMTdweDtcbiAgICBib3R0b206IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIHtcbiAgICBAaW5jbHVkZSBtZGMtdGV4dC1maWVsZC1vdXRsaW5lZC1mb2N1c2VkXztcbiAgfVxufVxuXG4vLyBDdXN0b21pemF0aW9uXG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1pbmstY29sb3JfKCRjb2xvcikge1xuICAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChjb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtZmlsbC1jb2xvcl8oJGNvbG9yKSB7XG4gIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvcik7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1zdHJva2UtY29sb3JfKCRjb2xvcikge1xuICBAaW5jbHVkZSBtZGMtbm90Y2hlZC1vdXRsaW5lLWNvbG9yKCRjb2xvcik7XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC10ZXh0YXJlYS1maWxsLWNvbG9yXygkY29sb3IpIHtcbiAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWZ1bGx3aWR0aC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gICY6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIHtcbiAgICBAaW5jbHVkZSBtZGMtdGhlbWUtcHJvcChib3JkZXItYm90dG9tLWNvbG9yLCAkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtdGV4dC1maWVsZC1ib3R0b20tbGluZS1jb2xvcl8oJGNvbG9yKSB7XG4gIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJvcmRlci1ib3R0b20tY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWhvdmVyLWJvdHRvbS1saW5lLWNvbG9yXygkY29sb3IpIHtcbiAgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYm9yZGVyLWJvdHRvbS1jb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtbGluZS1yaXBwbGUtY29sb3JfKCRjb2xvcikge1xuICAubWRjLWxpbmUtcmlwcGxlIHtcbiAgICBAaW5jbHVkZSBtZGMtbGluZS1yaXBwbGUtY29sb3IoJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtbGFiZWwtaW5rLWNvbG9yXygkY29sb3IpIHtcbiAgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLWZsb2F0aW5nLWxhYmVsLWluay1jb2xvcigkY29sb3IpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IDIwMTkgR29vZ2xlIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuLy9cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9ydGwvbWl4aW5zXCI7XG5cbi8vIFB1YmxpYyBtaXhpbnNcblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyLWNvbG9yKCRjb2xvcikge1xuICAmOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXItY29sb3JfKCRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyLXBvc2l0aW9uKCR4T2Zmc2V0LCAkeU9mZnNldCkge1xuICAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIge1xuICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXBvc2l0aW9uKHJpZ2h0LCAkeE9mZnNldCk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAkeU9mZnNldDtcbiAgfVxufVxuXG4vLyBQcml2YXRlIG1peGluc1xuXG5AbWl4aW4gbWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXItY29sb3JfKCRjb2xvcikge1xuICAvLyBDaGFyYWN0ZXIgY291bnRlciBpcyBwbGFjZWQgaW5zaWRlIG1kYy10ZXh0ZmllbGQgZWxlbWVudCAoZm9yIHRleHRhcmVhIHZhcmlhbnQgKSBvclxuICAvLyBpbnNpZGUgaGVscGVyIGxpbmUgd2hpY2ggaXMgc2libGluZyB0byBtZGMtdGV4dGZpZWxkLlxuICAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIsXG4gICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJAbWF0ZXJpYWwvYW5pbWF0aW9uL3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2NoZWNrYm94L21kYy1jaGVja2JveFwiO1xyXG5AaW1wb3J0IFwiQG1hdGVyaWFsL2Zvcm0tZmllbGQvbWRjLWZvcm0tZmllbGRcIjtcclxuQGltcG9ydCBcIkBtYXRlcmlhbC9pY29uLWJ1dHRvbi9tZGMtaWNvbi1idXR0b25cIjtcclxuQGltcG9ydCBcIkBtYXRlcmlhbC9yYWRpby9tZGMtcmFkaW9cIjtcclxuQGltcG9ydCBcIkBtYXRlcmlhbC9zZWxlY3QvbWRjLXNlbGVjdFwiO1xyXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RleHRmaWVsZC9tZGMtdGV4dC1maWVsZFwiO1xyXG5cclxuXHJcbi8qKlxyXG4gICBTdHlsZSBDb2xvciBGb2N1cyBkZXMgSW5wdXRcclxuICovXHJcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLFxyXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSxcclxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQge1xyXG5cclxuICAgLm1kYy1mbG9hdGluZy1sYWJlbCxcclxuICAgLm1kYy1mbG9hdGluZy1sYWJlbDphZnRlciB7XHJcbiAgICAgIGNvbG9yOiByZ2JhKCRjb2xvcl9zZWNvbmRhaXJlLCAwLjg3KSAhaW1wb3J0YW50O1xyXG4gICB9XHJcblxyXG4gICAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcclxuICAgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxyXG4gICAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xyXG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9zZWNvbmRhaXJlO1xyXG4gICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gICBTdHlsZSBUZXh0RmllbGRcclxuICovXHJcbi5tZGMtdGV4dC1maWVsZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcclxuICAgY2FyZXQtY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XHJcbiAgIHJlc2l6ZTogdmVydGljYWw7XHJcbiAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xyXG4gICBwYWRkaW5nOiAxMHB4IDI1cHggMTZweDtcclxufVxyXG5cclxuLyoqXHJcbiAgIFN0eWxlIFNlbGVjdFxyXG4gKi9cclxuLm1kYy1zZWxlY3Qge1xyXG4gICAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xyXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgfVxyXG4gICBpLm1hdGVyaWFsLWljb25zIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgcmlnaHQ6IDVweDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLW91dDtcclxuICAgfVxyXG5cclxuICAgJi5tZGMtc2VsZWN0LS1mb2N1c2VkIHtcclxuXHJcbiAgICAgIGkubWF0ZXJpYWwtaWNvbnMge1xyXG4gICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgY29sb3I6ICRjb2xvcl9zZWNvbmRhaXJlO1xyXG4gICAgICB9XHJcbiAgIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gICBGb3JtIEdsb2JhbFxyXG4gKi9cclxuLm1kYy10ZXh0LWZpZWxkLFxyXG4ubWRjLXNlbGVjdCB7XHJcbiAgIHdpZHRoOiAxMDAlO1xyXG4gICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4uZm9ybSB7XHJcbiAgIEBleHRlbmQgLmZsZXgtY29sdW1uO1xyXG5cclxuICAgaDMge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICB9XHJcblxyXG4gICAmX2lucHV0LWdyb3VwIHtcclxuICAgICAgQGV4dGVuZCAuZmxleC1yb3c7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShtb2JpbGVvbmx5KSB7XHJcbiAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiBkaXY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgICAgICBAaW5jbHVkZSBtZWRpYShtb2JpbGVvbmx5KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYgPiBkaXY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cclxuICAgICAgICAgQGluY2x1ZGUgbWVkaWEobW9iaWxlb25seSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgICAgICBAaW5jbHVkZSBtZWRpYShtb2JpbGVvbmx5KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgfVxyXG5cclxuICAgJl9jaGVja2JveC1ncm91cCB7XHJcbiAgICAgIEBleHRlbmQgLm1kYy1mb3JtLWZpZWxkO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgfVxyXG5cclxuICAgJl9yYWRpby1ncm91cCB7XHJcbiAgICAgIEBleHRlbmQgLmZsZXgtY29sdW1uO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgfVxyXG5cclxuICAgJl9ub3RpZiB7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgIG1hcmdpbjogMTVweCAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgIGJvcmRlcjogc29saWQgMXB4O1xyXG4gICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuXHJcbiAgICAgICYuZm9ybV9ub3RpZl92YWxpZCB7XHJcbiAgICAgICAgIGNvbG9yOiAjMTU1NzI0O1xyXG4gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRlZGRhO1xyXG4gICAgICAgICBib3JkZXItY29sb3I6ICNjM2U2Y2I7XHJcbiAgICAgIH1cclxuICAgICAgJi5mb3JtX25vdGlmX2Vycm9yIHtcclxuICAgICAgICAgY29sb3I6ICNhYjJlNDY7XHJcbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWRkZGQ7XHJcbiAgICAgICAgIGJvcmRlci1jb2xvcjogI2Y1ZGRkZDtcclxuICAgICAgfVxyXG4gICAgICAmLmZvcm1fbm90aWZfd2FybmluZyB7XHJcbiAgICAgICAgIGNvbG9yOiAjODU2NDA0O1xyXG4gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xyXG4gICAgICAgICBib3JkZXItY29sb3I6ICNmZmVlYmE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgICAgbWFyZ2luOiA1cHggMDtcclxuICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICB9XHJcblxyXG4gICAvLyBDaG9peCBzaW1wbGUgY29tbWUgbGEgdGFpbGxlICgxZXIgY2hvaXggZCd1biBwcm9kdWl0IHNpbXBsZSlcclxuICAgLmNob2ljZS1zaW1wbGUge1xyXG4gICAgICBAZXh0ZW5kIC5mbGV4LWNlbnRlci1jZW50ZXI7XHJcbiAgICAgIG1hcmdpbjogMTVweCAwO1xyXG5cclxuICAgICAgaW5wdXRbdHlwZT1yYWRpb10ge1xyXG4gICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICBwYWRkaW5nOiAxM3B4IDE3cHg7XHJcbiAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9wcmltYWlyZTtcclxuICAgICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgICAgICAgY29sb3I6ICRjb2xvcl9wcmltYWlyZTtcclxuICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yX3NlY29uZGFpcmUsIDAuMSk7XHJcbiAgICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuXHJcbiAgICAgIGxhYmVsOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xyXG4gICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxhYmVsOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xyXG4gICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwge1xyXG4gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfcHJpbWFpcmU7XHJcbiAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEobW9iaWxlb25seSkge1xyXG5cclxuICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBtYXJnaW46IDEwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAgfVxyXG4gICAgICAgICBcclxuICAgICAgfVxyXG4gICB9XHJcbn1cclxuXHJcbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2xnJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9sZy50dGY/MjJ0MTltXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9sZy53b2ZmPzIydDE5bVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9sZy5zdmc/MjJ0MTltI2xnXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubGctaWNvbiB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnbGcnICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0LCAubGctYWN0aW9ucyAubGctcHJldiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40NSk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIHBhZGRpbmc6IDhweCAxMHB4IDlweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgei1pbmRleDogMTA4MDtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmxnLWFjdGlvbnMgLmxnLW5leHQuZGlzYWJsZWQsIC5sZy1hY3Rpb25zIC5sZy1wcmV2LmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmxnLWFjdGlvbnMgLmxnLW5leHQ6aG92ZXIsIC5sZy1hY3Rpb25zIC5sZy1wcmV2OmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0IHtcbiAgcmlnaHQ6IDIwcHg7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDk1XCI7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1wcmV2IHtcbiAgbGVmdDogMjBweDtcbn1cblxuLmxnLWFjdGlvbnMgLmxnLXByZXY6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTA5NFwiO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBsZy1yaWdodC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxuICA1MCUge1xuICAgIGxlZnQ6IC0zMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuQC1tcy1rZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGxnLWxlZnQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAzMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5sZy1vdXRlci5sZy1yaWdodC1lbmQgLmxnLW9iamVjdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZy1yaWdodC1lbmQgMC4zcztcbiAgLW8tYW5pbWF0aW9uOiBsZy1yaWdodC1lbmQgMC4zcztcbiAgYW5pbWF0aW9uOiBsZy1yaWdodC1lbmQgMC4zcztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGctb3V0ZXIubGctbGVmdC1lbmQgLmxnLW9iamVjdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZy1sZWZ0LWVuZCAwLjNzO1xuICAtby1hbmltYXRpb246IGxnLWxlZnQtZW5kIDAuM3M7XG4gIGFuaW1hdGlvbjogbGctbGVmdC1lbmQgMC4zcztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGctdG9vbGJhciB7XG4gIHotaW5kZXg6IDEwODI7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbn1cblxuLmxnLXRvb2xiYXIgLmxnLWljb24ge1xuICBjb2xvcjogIzk5OTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgaGVpZ2h0OiA0N3B4O1xuICBsaW5lLWhlaWdodDogMjdweDtcbiAgcGFkZGluZzogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA1MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogY29sb3IgMC4ycyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgbGluZWFyO1xufVxuXG4ubGctdG9vbGJhciAubGctaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubGctdG9vbGJhciAubGctY2xvc2U6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTA3MFwiO1xufVxuXG4ubGctdG9vbGJhciAubGctZG93bmxvYWQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTBmMlwiO1xufVxuXG4ubGctc3ViLWh0bWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICBib3R0b206IDA7XG4gIGNvbG9yOiAjRUVFO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDgwO1xufVxuXG4ubGctc3ViLWh0bWwgaDQge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5sZy1zdWItaHRtbCBwIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW46IDVweCAwIDA7XG59XG5cbiNsZy1jb3VudGVyIHtcbiAgY29sb3I6ICM5OTk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubGctdG9vbGJhciwgLmxnLXByZXYsIC5sZy1uZXh0IHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIGNvbG9yIDAuMnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgY29sb3IgMC4ycyBsaW5lYXI7XG59XG5cbi5sZy1oaWRlLWl0ZW1zIC5sZy1wcmV2IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG59XG5cbi5sZy1oaWRlLWl0ZW1zIC5sZy1uZXh0IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xufVxuXG4ubGctaGlkZS1pdGVtcyAubGctdG9vbGJhciB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xufVxuXG5ib2R5Om5vdCgubGctZnJvbS1oYXNoKSAubGctb3V0ZXIubGctc3RhcnQtem9vbSAubGctb2JqZWN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC41LCAwLjUsIDAuNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgwLjUsIDAuNSwgMC41KTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5cbmJvZHk6bm90KC5sZy1mcm9tLWhhc2gpIC5sZy1vdXRlci5sZy1zdGFydC16b29tIC5sZy1pdGVtLmxnLWNvbXBsZXRlIC5sZy1vYmplY3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLW91dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBEMEEwQTtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDgwO1xuICBtYXgtaGVpZ2h0OiAzNTBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZ3JhYiAubGctdGh1bWItaXRlbSB7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiAtby1ncmFiO1xuICBjdXJzb3I6IC1tcy1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZ3JhYmJpbmcgLmxnLXRodW1iLWl0ZW0ge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICBjdXJzb3I6IC1vLWdyYWJiaW5nO1xuICBjdXJzb3I6IC1tcy1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1vdXRlci5sZy1kcmFnZ2luZyAubGctdGh1bWIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlci5sZy10aHVtYi1vcGVuIC5sZy10aHVtYi1vdXRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCUsIDApO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iIHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAubGctb3V0ZXIgLmxnLXRodW1iLWl0ZW0ge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gIH1cbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtLmFjdGl2ZSwgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTkwNzA3O1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLWl0ZW0gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5sZy1vdXRlci5sZy1oYXMtdGh1bWIgLmxnLWl0ZW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG59XG5cbi5sZy1vdXRlci5sZy1jYW4tdG9nZ2xlIC5sZy1pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5sZy1vdXRlci5sZy1wdWxsLWNhcHRpb24tdXAgLmxnLXN1Yi1odG1sIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3R0b20gMC4yNXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYm90dG9tIDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjI1cyBlYXNlO1xufVxuXG4ubGctb3V0ZXIubGctcHVsbC1jYXB0aW9uLXVwLmxnLXRodW1iLW9wZW4gLmxnLXN1Yi1odG1sIHtcbiAgYm90dG9tOiAxMDBweDtcbn1cblxuLmxnLW91dGVyIC5sZy10b2dnbGUtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMEQwQTBBO1xuICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBoZWlnaHQ6IDM5cHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IC0zOXB4O1xuICB3aWR0aDogNTBweDtcbiAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmxnLW91dGVyIC5sZy10b2dnbGUtdGh1bWI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTFmZlwiO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRvZ2dsZS10aHVtYjpob3ZlciB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvLWNvbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTE0MHB4O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA1cHg7XG59XG5cbi5sZy1vdXRlciAubGctdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sZy1vdXRlciAubGctdmlkZW8gLmxnLW9iamVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvIC5sZy12aWRlby1wbGF5IHtcbiAgd2lkdGg6IDg0cHg7XG4gIGhlaWdodDogNTlweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTQycHg7XG4gIG1hcmdpbi10b3A6IC0zMHB4O1xuICB6LWluZGV4OiAxMDgwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLXZpbWVvIC5sZy12aWRlby1wbGF5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3ZpbWVvLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy12aW1lbzpob3ZlciAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy92aW1lby1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgLTU4cHggdHJhbnNwYXJlbnQ7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLWh0bWw1IC5sZy12aWRlby1wbGF5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1nL3ZpZGVvLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwO1xuICBoZWlnaHQ6IDY0cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMzJweDtcbiAgbWFyZ2luLXRvcDogLTMycHg7XG4gIHdpZHRoOiA2NHB4O1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLWh0bWw1OmhvdmVyIC5sZy12aWRlby1wbGF5IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMteW91dHViZSAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy95b3V0dWJlLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy15b3V0dWJlOmhvdmVyIC5sZy12aWRlby1wbGF5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3lvdXR1YmUtcGxheS5wbmdcIikgbm8tcmVwZWF0IHNjcm9sbCAwIC02MHB4IHRyYW5zcGFyZW50O1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvLW9iamVjdCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmlkZW8gLmxnLXZpZGVvLW9iamVjdCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmlkZW8ubGctdmlkZW8tcGxheWluZyAubGctb2JqZWN0LCAubGctb3V0ZXIgLmxnLWhhcy12aWRlby5sZy12aWRlby1wbGF5aW5nIC5sZy12aWRlby1wbGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmlkZW8ubGctdmlkZW8tcGxheWluZyAubGctdmlkZW8tb2JqZWN0IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmxnLXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGhlaWdodDogNXB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwODM7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA4cyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4wOHMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA4cyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDhzIGVhc2UgMHM7XG59XG5cbi5sZy1wcm9ncmVzcy1iYXIgLmxnLXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E5MDcwNztcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiAwO1xufVxuXG4ubGctcHJvZ3Jlc3MtYmFyLmxnLXN0YXJ0IC5sZy1wcm9ncmVzcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubGctc2hvdy1hdXRvcGxheSAubGctcHJvZ3Jlc3MtYmFyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLWF1dG9wbGF5LWJ1dHRvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMDFkXCI7XG59XG5cbi5sZy1zaG93LWF1dG9wbGF5IC5sZy1hdXRvcGxheS1idXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTAxYVwiO1xufVxuXG4ubGctb3V0ZXIubGctY3NzMy5sZy16b29tLWRyYWdnaW5nIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWctd3JhcCwgLmxnLW91dGVyLmxnLWNzczMubGctem9vbS1kcmFnZ2luZyAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1hZ2Uge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbn1cblxuLmxnLW91dGVyLmxnLXVzZS10cmFuc2l0aW9uLWZvci16b29tIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWctd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xufVxuXG4ubGctb3V0ZXIubGctdXNlLWxlZnQtZm9yLXpvb20gLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltZy13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogbGVmdCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtby10cmFuc2l0aW9uOiBsZWZ0IDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIHRyYW5zaXRpb246IGxlZnQgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIHRvcCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWctd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5sZy1vdXRlciAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1hZ2Uge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMTVzICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudDtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMTVzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjE1cyAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNsZy16b29tLWluOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUzMTFcIjtcbn1cblxuI2xnLWFjdHVhbC1zaXplIHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4jbGctYWN0dWFsLXNpemU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTAzM1wiO1xufVxuXG4jbGctem9vbS1vdXQge1xuICBvcGFjaXR5OiAwLjU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4jbGctem9vbS1vdXQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTMxMlwiO1xufVxuXG4ubGctem9vbWVkICNsZy16b29tLW91dCB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLW91dGVyIHtcbiAgYm90dG9tOiA2MHB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwODA7XG4gIGhlaWdodDogMTBweDtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci1vdXRlci5sZy1wYWdlci1ob3ZlciAubGctcGFnZXItY29udCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLWNvbnQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IDAgNXB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLWNvbnQ6aG92ZXIgLmxnLXBhZ2VyLXRodW1iLWNvbnQge1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItY29udC5sZy1wYWdlci1hY3RpdmUgLmxnLXBhZ2VyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHdoaXRlIGluc2V0O1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLXRodW1iLWNvbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogI0ZGRjtcbiAgYm90dG9tOiAxMDAlO1xuICBoZWlnaHQ6IDgzcHg7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMjBweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHMsIC1tb3otdHJhbnNmb3JtIDAuMTVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcywgLW8tdHJhbnNmb3JtIDAuMTVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcywgdHJhbnNmb3JtIDAuMTVzIGVhc2UgMHM7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItdGh1bWItY29udCBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDhweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykgaW5zZXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEycHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZSAwcztcbiAgd2lkdGg6IDEycHg7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXI6aG92ZXIsIC5sZy1vdXRlciAubGctcGFnZXI6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCA4cHggd2hpdGUgaW5zZXQ7XG59XG5cbi5sZy1vdXRlciAubGctY2FyZXQge1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAxMHB4IGRhc2hlZDtcbiAgYm90dG9tOiAtMTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDA7XG59XG5cbi5sZy1mdWxsc2NyZWVuOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUyMGNcIjtcbn1cblxuLmxnLWZ1bGxzY3JlZW4tb24gLmxnLWZ1bGxzY3JlZW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTIwZFwiO1xufVxuXG4ubGctb3V0ZXIgI2xnLWRyb3Bkb3duLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBib3R0b206IDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDgxO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC4xOHMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xuICAtby10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjE4cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgbGluZWFyIDAuMThzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbn1cblxuLmxnLW91dGVyLmxnLWRyb3Bkb3duLWFjdGl2ZSAubGctZHJvcGRvd24sIC5sZy1vdXRlci5sZy1kcm9wZG93bi1hY3RpdmUgI2xnLWRyb3Bkb3duLW92ZXJsYXkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDBweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMHB4LCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMHB4LCAwKTtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmxnLW91dGVyLmxnLWRyb3Bkb3duLWFjdGl2ZSAjbGctc2hhcmUge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0b3A6IDUwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjE4cyBsaW5lYXIgMHMsIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuNXMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuMThzIGxpbmVhciAwcywgdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC41cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjE4cyBsaW5lYXIgMHMsIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuNXMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xOHMgbGluZWFyIDBzLCB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjVzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjRkZGO1xuICByaWdodDogMTZweDtcbiAgdG9wOiAtMTZweDtcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24gPiBsaTpob3ZlciBhLCAubGctb3V0ZXIgLmxnLWRyb3Bkb3duID4gbGk6aG92ZXIgLmxnLWljb24ge1xuICBjb2xvcjogIzMzMztcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biBhIHtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICBwYWRkaW5nOiA0cHggMTJweDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsXCJIZWx2ZXRpY2EgTmV1ZVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24gLmxnLWRyb3Bkb3duLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duIC5sZy1pY29uIHtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU4MGRcIjtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS1mYWNlYm9vayAubGctaWNvbiB7XG4gIGNvbG9yOiAjM2I1OTk4O1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLWZhY2Vib29rIC5sZy1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS10d2l0dGVyIC5sZy1pY29uIHtcbiAgY29sb3I6ICMwMGFjZWQ7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtdHdpdHRlciAubGctaWNvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtZ29vZ2xlcGx1cyAubGctaWNvbiB7XG4gIGNvbG9yOiAjZGQ0YjM5O1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLWdvb2dsZXBsdXMgLmxnLWljb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLXBpbnRlcmVzdCAubGctaWNvbiB7XG4gIGNvbG9yOiAjY2IyMDI3O1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLXBpbnRlcmVzdCAubGctaWNvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG5cbi5sZy1vdXRlciAubGctaW1nLXJvdGF0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjMyLCAwLCAwLjY3LCAwKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjMyLCAwLCAwLjY3LCAwKSAwcztcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzIsIDAsIDAuNjcsIDApIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4zMiwgMCwgMC42NywgMCkgMHM7XG59XG5cbi5sZy1yb3RhdGUtbGVmdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG5cbi5sZy1yb3RhdGUtcmlnaHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuXG4ubGctaWNvbi5sZy1mbGlwLWhvciwgLmxnLWljb24ubGctZmxpcC12ZXIge1xuICBmb250LXNpemU6IDI2cHg7XG59XG5cbi5sZy1mbGlwLWhvcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG5cbi5sZy1mbGlwLXZlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG5cbi5sZy1ncm91cCB7XG4gICp6b29tOiAxO1xufVxuXG4ubGctZ3JvdXA6YmVmb3JlLCAubGctZ3JvdXA6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCJcIjtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi5sZy1ncm91cDphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubGctb3V0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA1MDtcbiAgb3BhY2l0eTogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xufVxuXG4ubGctb3V0ZXIgKiB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubGctb3V0ZXIubGctdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1vdXRlci5sZy1jc3MzIC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlci5sZy1jc3MzLmxnLWRyYWdnaW5nIC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzLmxnLWRyYWdnaW5nIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzLmxnLWRyYWdnaW5nIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1vdXRlci5sZy1ncmFiIGltZy5sZy1vYmplY3Qge1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtbW96LWdyYWI7XG4gIGN1cnNvcjogLW8tZ3JhYjtcbiAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4ubGctb3V0ZXIubGctZ3JhYmJpbmcgaW1nLmxnLW9iamVjdCB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IC1tb3otZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW8tZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1zLWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4ubGctb3V0ZXIgLmxnIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi5sZy1vdXRlciAubGctaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xvYWRpbmcuZ2lmXCIpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIubGctY3NzMyAubGctcHJldi1zbGlkZSwgLmxnLW91dGVyLmxnLWNzczMgLmxnLWN1cnJlbnQsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1uZXh0LXNsaWRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlci5sZy1jc3MgLmxnLWN1cnJlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtLCAubGctb3V0ZXIgLmxnLWltZy13cmFwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtOmJlZm9yZSwgLmxnLW91dGVyIC5sZy1pbWctd3JhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNTAlO1xuICB3aWR0aDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5sZy1vdXRlciAubGctaW1nLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbS5sZy1jb21wbGV0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgei1pbmRleDogMTA2MDtcbn1cblxuLmxnLW91dGVyIC5sZy1pbWFnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyLmxnLXNob3ctYWZ0ZXItbG9hZCAubGctaXRlbSAubGctb2JqZWN0LCAubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtIC5sZy12aWRlby1wbGF5IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xufVxuXG4ubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtLmxnLWNvbXBsZXRlIC5sZy1vYmplY3QsIC5sZy1vdXRlci5sZy1zaG93LWFmdGVyLWxvYWQgLmxnLWl0ZW0ubGctY29tcGxldGUgLmxnLXZpZGVvLXBsYXkge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctb3V0ZXIgLmxnLWVtcHR5LWh0bWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGctb3V0ZXIubGctaGlkZS1kb3dubG9hZCAjbGctZG93bmxvYWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGctYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xufVxuXG4ubGctYmFja2Ryb3AuaW4ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctY3NzMy5sZy1uby10cmFucyAubGctcHJldi1zbGlkZSwgLmxnLWNzczMubGctbm8tdHJhbnMgLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLW5vLXRyYW5zIC5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lIDBzIGVhc2UgMHMgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lIDBzIGVhc2UgMHMgIWltcG9ydGFudDtcbiAgLW8tdHJhbnNpdGlvbjogbm9uZSAwcyBlYXNlIDBzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgMHMgZWFzZSAwcyAhaW1wb3J0YW50O1xufVxuXG4ubGctY3NzMy5sZy11c2UtY3NzMyAubGctaXRlbSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGctY3NzMy5sZy11c2UtbGVmdCAubGctaXRlbSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGctY3NzMy5sZy1mYWRlIC5sZy1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctY3NzMy5sZy1mYWRlIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLWZhZGUgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWNzczMgLmxnLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1wcmV2LXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSB7XG4gIGxlZnQ6IC0xMDAlO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbS5sZy1uZXh0LXNsaWRlIHtcbiAgbGVmdDogMTAwJTtcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGxlZnQgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogbGVmdCAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2ljb24/ZmFtaWx5PU1hdGVyaWFsK0ljb25zfE1hdGVyaWFsK0ljb25zK091dGxpbmVkXCIpO1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIjtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250LWZhbWlseS9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnQtZmFtaWx5L09wZW5fU2Fucy9PcGVuU2Fucy1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2VyaWZcIjtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250LWZhbWlseS9QVF9TZXJpZi9QVFNlcmlmLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qKlxyXG4gICBDT1VMRVVSU1xyXG4qL1xuLyoqXHJcbiAgIFJlc3BvbnNpdmVcclxuICovXG4ubWRjLWJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDg5MjllbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAwIDhweCAwIDhweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogNjRweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLm1kYy1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5tZGMtYnV0dG9uOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tZGMtYnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWRjLWJ1dHRvbjpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1idXR0b24ubWRjLWJ1dHRvbi0tZGVuc2Uge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5tZGMtYnV0dG9uOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tZGMtYnV0dG9uIC5tZGMtYnV0dG9uX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1idXR0b24gLm1kYy1idXR0b25fX2ljb24sIC5tZGMtYnV0dG9uIC5tZGMtYnV0dG9uX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5tZGMtYnV0dG9uOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbn1cblxuLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uLCAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG5zdmcubWRjLWJ1dHRvbl9faWNvbiB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZCAubWRjLWJ1dHRvbl9faWNvbixcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkIC5tZGMtYnV0dG9uX19pY29uLFxuLm1kYy1idXR0b24tLW91dGxpbmVkIC5tZGMtYnV0dG9uX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWJ1dHRvbi0tcmFpc2VkIC5tZGMtYnV0dG9uX19pY29uLCAubWRjLWJ1dHRvbi0tcmFpc2VkIC5tZGMtYnV0dG9uX19pY29uW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQgLm1kYy1idXR0b25fX2ljb24sXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0sIFtkaXI9XCJydGxcIl1cbi5tZGMtYnV0dG9uLS1vdXRsaW5lZCAubWRjLWJ1dHRvbl9faWNvbixcbi5tZGMtYnV0dG9uLS1vdXRsaW5lZCAubWRjLWJ1dHRvbl9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQgLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb24sXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQgLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtYnV0dG9uLS1yYWlzZWQgLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb24sIC5tZGMtYnV0dG9uLS1yYWlzZWQgLm1kYy1idXR0b25fX2xhYmVsICsgLm1kYy1idXR0b25fX2ljb25bZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCAubWRjLWJ1dHRvbl9fbGFiZWwgKyAubWRjLWJ1dHRvbl9faWNvbixcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy1idXR0b24tLW91dGxpbmVkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uLFxuLm1kYy1idXR0b24tLW91dGxpbmVkIC5tZGMtYnV0dG9uX19sYWJlbCArIC5tZGMtYnV0dG9uX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZCB7XG4gIHBhZGRpbmc6IDAgMTZweCAwIDE2cHg7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6ZGlzYWJsZWQsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOm5vdCg6ZGlzYWJsZWQpLFxuLm1kYy1idXR0b24tLXVuZWxldmF0ZWQ6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjIwMGVlO1xufVxuXG5Ac3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5tZGMtYnV0dG9uLS1yYWlzZWQ6bm90KDpkaXNhYmxlZCksXG4gIC5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksICM2MjAwZWUpO1xuICB9XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6bm90KDpkaXNhYmxlZCksXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpub3QoOmRpc2FibGVkKSB7XG4gIGNvbG9yOiAjZmZmO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tcHJpbWFyeSwgI2ZmZik7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDJweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6aG92ZXIsIC5tZGMtYnV0dG9uLS1yYWlzZWQ6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDRweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZDphY3RpdmUge1xuICBib3gtc2hhZG93OiAwcHggNXB4IDVweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDhweCAxMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6ZGlzYWJsZWQge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtYnV0dG9uLS1vdXRsaW5lZCB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIHBhZGRpbmc6IDAgMTVweCAwIDE1cHg7XG4gIGJvcmRlci13aWR0aDogMXB4O1xufVxuXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQ6ZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG59XG5cbi5tZGMtYnV0dG9uLS1vdXRsaW5lZDpub3QoOmRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogIzYyMDBlZTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbn1cblxuLm1kYy1idXR0b24tLWRlbnNlIHtcbiAgaGVpZ2h0OiAzMnB4O1xuICBmb250LXNpemU6IC44MTI1cmVtO1xufVxuXG5Aa2V5ZnJhbWVzIG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydCwgMCkpIHNjYWxlKDEpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4ge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgb3BhY2l0eTogdmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LCAwKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ubWRjLXJpcHBsZS1zdXJmYWNlLS10ZXN0LWVkZ2UtdmFyLWJ1ZyB7XG4gIC0tbWRjLXJpcHBsZS1zdXJmYWNlLXRlc3QtZWRnZS12YXI6IDFweCBzb2xpZCAjMDAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tZGMtcmlwcGxlLXN1cmZhY2UtLXRlc3QtZWRnZS12YXItYnVnOjpiZWZvcmUge1xuICBib3JkZXI6IHZhcigtLW1kYy1yaXBwbGUtc3VyZmFjZS10ZXN0LWVkZ2UtdmFyKTtcbn1cblxuLm1kYy1idXR0b24ge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLm1kYy1idXR0b246OmJlZm9yZSwgLm1kYy1idXR0b246OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubWRjLWJ1dHRvbjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAxNW1zIGxpbmVhcjtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZDo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApO1xufVxuXG4ubWRjLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcywgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIDc1bXMgZm9yd2FyZHM7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dCAxNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWJ1dHRvbjo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbn1cblxuLm1kYy1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWJ1dHRvbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjIwMGVlO1xufVxuXG5Ac3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5tZGMtYnV0dG9uOjpiZWZvcmUsIC5tZGMtYnV0dG9uOjphZnRlciB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbiAgfVxufVxuXG4ubWRjLWJ1dHRvbjpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wNDtcbn1cblxuLm1kYy1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG5cbi5tZGMtYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZDo6YmVmb3JlLCAubWRjLWJ1dHRvbi0tcmFpc2VkOjphZnRlcixcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOjpiZWZvcmUsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG5Ac3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5tZGMtYnV0dG9uLS1yYWlzZWQ6OmJlZm9yZSwgLm1kYy1idXR0b24tLXJhaXNlZDo6YWZ0ZXIsXG4gIC5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOjpiZWZvcmUsXG4gIC5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOjphZnRlciB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1wcmltYXJ5LCAjZmZmKTtcbiAgfVxufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOmhvdmVyOjpiZWZvcmUsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wODtcbn1cblxuLm1kYy1idXR0b24tLXJhaXNlZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLm1kYy1idXR0b24tLXJhaXNlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSxcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMjQ7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTo6YWZ0ZXIsXG4ubWRjLWJ1dHRvbi0tdW5lbGV2YXRlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWJ1dHRvbi0tcmFpc2VkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlcixcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMjQ7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQubWRjLXJpcHBsZS11cGdyYWRlZCxcbi5tZGMtYnV0dG9uLS11bmVsZXZhdGVkLm1kYy1yaXBwbGUtdXBncmFkZWQge1xuICAtLW1kYy1yaXBwbGUtZmctb3BhY2l0eTogMC4yNDtcbn1cblxuaHRtbCxcbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmgxLCBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNlcmlmXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIGNvbG9yOiAjNTczRDFDO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBjb2xvcjogIzU3M0QxQztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDEuM2VtO1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzY2NjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxucCxcbnVsID4gbGkge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxucCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxubWFpbiB7XG4gIG1pbi1oZWlnaHQ6IDYwMHB4O1xufVxuXG4uZmxleC1yb3csIC5oZWFkZXJfbG9nbywgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zLCAuaGVhZGVyX2Jhc2tldCAuY291bnQsIC5mb290ZXJfbmF2LWJhciAuZm9vdGVyX2xvZ28sIC5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcywgLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX3BheW1lbnQtbWV0aG9kcywgLmZvcm1faW5wdXQtZ3JvdXAsIC5zaG9wLCAuZmlsZV9hcmlhbmUsIC5mb2FsdGluZy1iYXNrZXQgLmNvdW50LCAucHJvZHVjdCwgLnByb2R1Y3RfaW1hZ2VzIC5saXN0LXBob3RvLCAucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlLCAucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlIC5wcm9kdWN0LWRldGFpbHNfY2hvaWNlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5mbGV4LWNvbHVtbiwgLmZvcm0sIC5mb3JtX3JhZGlvLWdyb3VwLCAuc2hvcF9uYXYgdWwsIC5wcm9kdWN0X2ltYWdlcywgLnByb2R1Y3QtZGV0YWlscy5wcm9kdWN0LWRldGFpbHNfX3NpbXBsZSAucHJvZHVjdC1kZXRhaWxzX29wdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LWNlbnRlci1jZW50ZXIsIC5oZWFkZXJfbG9nbywgLmhlYWRlcl9iYXNrZXQgLmNvdW50LCAuZm9vdGVyX25hdi1iYXIgLmZvb3Rlcl9sb2dvLCAuZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMsIC5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9wYXltZW50LW1ldGhvZHMsIC5mb3JtIC5jaG9pY2Utc2ltcGxlLCAuZm9hbHRpbmctYmFza2V0IC5jb3VudCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4udGV4dC1qdXN0aWZ5IGgxLCAudGV4dC1qdXN0aWZ5IGgyLCAudGV4dC1qdXN0aWZ5IGgzIHtcbiAgdGV4dC1hbGlnbjogaW5pdGlhbDtcbn1cblxuLmNvbnRhaW5lcl9jZW50ZXIsIC5maWxlX2FyaWFuZSB7XG4gIHdpZHRoOiA5MCU7XG4gIG1heC13aWR0aDogODUwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDNlbTtcbn1cblxuLnNlcGFyYXRldXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCBsaWdodGdyYXk7XG59XG5cbi5zZXBhcmF0ZXVyLnNlcGFyYXRldXJfX3ZlcnRpY2FsIHtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggbGlnaHRncmF5O1xufVxuXG4ubWFpbl9faGVhZGVyLXBhZGRpbmcge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubWFpbl9faGVhZGVyLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiA3MnB4O1xuICB9XG59XG5cbi8qKlxyXG4gICBCYWNrZ3JvdW5kIGNlbnRlciBjb3ZlclxyXG4gKi9cbi5jb250YWluZXItYmFja2dyb3VuZCwgLmhlYWRlci1iYW5uaWVyZSwgLnByb2R1Y3RfaW1hZ2VzIC5jb3ZlciwgLnByb2R1Y3RfaW1hZ2VzIC5saXN0LXBob3RvIGxpLCAucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtYnVja2xlX2ltZywgLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNvbnRhaW5lci1iYWNrZ3JvdW5kIGltZywgLmhlYWRlci1iYW5uaWVyZSBpbWcsIC5wcm9kdWN0X2ltYWdlcyAuY292ZXIgaW1nLCAucHJvZHVjdF9pbWFnZXMgLmxpc3QtcGhvdG8gbGkgaW1nLCAucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtYnVja2xlX2ltZyBpbWcsIC5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4vKipcclxuICAgSGVhZGVyIGF2ZWMgbGUgZm9uZCBldCBsYSBjYXRjaCBwaHJhc2VcclxuICovXG4uaGVhZGVyLWJhbm5pZXJlX2NvbnRlbnQge1xuICBmb250LXNpemU6IDIuNWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgcGFkZGluZzogMTAwcHggMDtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyoqXHJcbiAgIExvYWRlciBTcGlubmVyXHJcbiAqL1xuLnNwaW5uZXItZHVhbC1yaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNjRweDtcbiAgaGVpZ2h0OiA2NHB4O1xufVxuXG4uc3Bpbm5lci1kdWFsLXJpbmc6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0NnB4O1xuICBoZWlnaHQ6IDQ2cHg7XG4gIG1hcmdpbjogMXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogNXB4IHNvbGlkICNDQzY2MDA7XG4gIGJvcmRlci1jb2xvcjogI0NDNjYwMCB0cmFuc3BhcmVudCAjQ0M2NjAwIHRyYW5zcGFyZW50O1xuICBhbmltYXRpb246IGxkcy1kdWFsLXJpbmcgMS4ycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgbGRzLWR1YWwtcmluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qKlxyXG4gICBTdHlsZSBkdSBib3V0b25cclxuICovXG4ubWRjLWJ1dHRvbjpub3QoOmRpc2FibGVkKSB7XG4gIGNvbG9yOiAjQ0M2NjAwO1xufVxuXG4ubWRjLWJ1dHRvbi0tb3V0bGluZWQ6bm90KDpkaXNhYmxlZCkge1xuICBib3JkZXItY29sb3I6ICNDQzY2MDA7XG59XG5cbi5tZGMtYnV0dG9uOjpiZWZvcmUsIC5tZGMtYnV0dG9uOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQzY2MDA7XG59XG5cbi5tZGMtYnV0dG9uLS1yYWlzZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0M2NjAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vKipcclxuICAgQmFuZGVhdSBBbGVydCBDb29raWVzXHJcbiAqL1xuLmFsZXJ0LWNvb2tpZXMge1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICM1NzNEMUM7XG4gIGJvcmRlci10b3A6IHNvbGlkIDJweCAjQ0M2NjAwO1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5hbGVydC1jb29raWVzIHAge1xuICBmbGV4OiA0O1xufVxuXG4uYWxlcnQtY29va2llc19hY3Rpb25zIHtcbiAgZmxleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYWxlcnQtY29va2llcyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4vKipcclxuICAgVG9vbFRpcFxyXG4gKi9cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udG9vbHRpcCAudG9vbHRpcHRleHQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAxMHB4KTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgd2lkdGg6IDEyMHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc4OTA5Qztcbn1cblxuLnRvb2x0aXAgLnRvb2x0aXB0ZXh0OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjNzg5MDlDIHRyYW5zcGFyZW50O1xufVxuXG4udG9vbHRpcDpob3ZlciAudG9vbHRpcHRleHQge1xuICBhbmltYXRpb246IHRvb2x0aXAtYW5pbWF0aW9uIGVhc2UtaW4tb3V0IDAuM3M7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbkBrZXlmcmFtZXMgdG9vbHRpcC1hbmltYXRpb24ge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8qKlxyXG4gICAgSEVBREVSXHJcbiAqL1xuaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi8qKlxyXG4gICBMb2dvIEpvbGxldCBkYW5zIGxlIGhlYWRlclxyXG4qL1xuLmhlYWRlcl9sb2dvIHtcbiAgaGVpZ2h0OiA3MHB4O1xufVxuXG4uaGVhZGVyX2xvZ28gc3ZnIHtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4uaGVhZGVyX2xvZ28gbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMzVweDtcbn1cblxuLmhlYWRlcl9sb2dvIGxhYmVsIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1cHg7XG4gIG1hcmdpbjogNXB4IDA7XG59XG5cbi5oZWFkZXJfbG9nbyBsYWJlbCBzcGFuOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NzNEMUM7XG59XG5cbi8qKlxyXG4gICBCdXJnZXIgbWVudSBkdSBtb2RlIHTDqWzDqXBob25lXHJcbiovXG4jaGVhZGVyX3RvZ2dsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNoZWFkZXJfdG9nZ2xlOmNoZWNrZWQgKyAuaGVhZGVyX2xvZ28gbGFiZWwgc3BhbjpudGgtY2hpbGQoMSk6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuI2hlYWRlcl90b2dnbGU6Y2hlY2tlZCArIC5oZWFkZXJfbG9nbyBsYWJlbCBzcGFuOm50aC1jaGlsZCgyKTphZnRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuI2hlYWRlcl90b2dnbGU6Y2hlY2tlZCArIC5oZWFkZXJfbG9nbyBsYWJlbCBzcGFuOm50aC1jaGlsZCgzKTphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdG9wOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLyoqXHJcbiAgIE1lbnUgZGUgbmF2aWdhdGlvblxyXG4qL1xuLmhlYWRlcl9uYXYtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjNTczRDFDO1xufVxuXG4uaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaSB7XG4gIG1pbi13aWR0aDogMTUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2VyaWZcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG59XG5cbi5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaSBhIHtcbiAgY29sb3I6ICM1NzNEMUM7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICM1NzNEMUMgMCUsICM1NzNEMUMgMnB4LCB0cmFuc3BhcmVudCAycHgpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAwIDEwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtc2l6ZSAwLjNzO1xufVxuXG4uaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkgYS5hY3RpdmUsIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8qKlxyXG4gICBQYW5pZXIgZGUgbGEgYm91dGlxdWUgXHJcbiAgICh2aXNpYmxlIHF1ZSBkYW5zIGxhIGJvdXRpcXVlKVxyXG4qL1xuLmhlYWRlcl9iYXNrZXQge1xuICBtYXJnaW46IDAgMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiA1cHg7XG59XG5cbi5oZWFkZXJfYmFza2V0IC5jb3VudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2MzAzMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOGVtO1xufVxuXG4uaGVhZGVyX2Jhc2tldF9lbXB0eSAuY291bnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGVhZGVyX2Jhc2tldF91cCAuY291bnQge1xuICBhbmltYXRpb246IGNvdW50LXpvb20gM3MgZm9yd2FyZHMgMTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oZWFkZXJfYmFza2V0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY291bnQtem9vbSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4vKipcclxuICAgU1BFQ0lBTCBQT1VSIExBIEhPTUUgUEFHRVxyXG4gKi9cbmhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiA2MDBweDtcbiAgcmlnaHQ6IDA7XG59XG5cbmhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX2xvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5oZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5oZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIHtcbiAgbWFyZ2luOiAzMHB4IDAgMDtcbn1cblxuaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBhIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjZmZmIDAlLCAjZmZmIDJweCwgdHJhbnNwYXJlbnQgMnB4KSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMCAxMDAlO1xufVxuXG5oZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbG9nbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICBoZWFkZXIuaGVhZGVyX19ob21lLXBhZ2UgLmhlYWRlcl9uYXYtYmFyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgaGVhZGVyLmhlYWRlcl9faG9tZS1wYWdlIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyB7XG4gICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICB9XG4gIGhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgYSB7XG4gICAgY29sb3I6ICM1NzNEMUM7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzU3M0QxQyAwJSwgIzU3M0QxQyAycHgsIHRyYW5zcGFyZW50IDJweCkgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMCAxMDAlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtc2l6ZSAwLjNzO1xuICB9XG4gIGhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgYS5hY3RpdmUsIGhlYWRlci5oZWFkZXJfX2hvbWUtcGFnZSAuaGVhZGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIH1cbn1cblxuLyoqXHJcbiAgIFJFU1BPTlNJVkVcclxuICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhlYWRlcl9sb2dvIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaGVhZGVyX25hdi1iYXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAwcHg7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgZWFzZS1vdXQ7XG4gIH1cbiAgLmhlYWRlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIC5oZWFkZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyBsaSB7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gIH1cbiAgI2hlYWRlcl90b2dnbGU6Y2hlY2tlZCB+IC5oZWFkZXJfbmF2LWJhciB7XG4gICAgaGVpZ2h0OiAyMTVweDtcbiAgfVxufVxuXG5mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTczRDFDO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbmZvb3RlciAudGV4dC1jZW50ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLmZvb3Rlcl9sb2dvIHN2ZyB7XG4gIGhlaWdodDogNTlweDtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5mb290ZXJfbG9nbyBzdmcgKiB7XG4gIGZpbGw6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMjVweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkge1xuICBtaW4td2lkdGg6IDE1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGkgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpIHN2ZyB7XG4gIG1heC13aWR0aDogMzBweDtcbn1cblxuLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zIGxpOm50aC1jaGlsZCgxKSBhOmhvdmVyICoge1xuICBmaWxsOiBjb3JuZmxvd2VyYmx1ZSAhaW1wb3J0YW50O1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfaXRlbXMgbGk6bnRoLWNoaWxkKDIpIGE6aG92ZXIgKiB7XG4gIGZpbGw6IGJlaWdlICFpbXBvcnRhbnQ7XG59XG5cbi5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9wYXltZW50LW1ldGhvZHMge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfcGF5bWVudC1tZXRob2RzIGltZyB7XG4gIG1heC1oZWlnaHQ6IDUwcHg7XG4gIG1heC13aWR0aDogMTIwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZm9vdGVyX25hdi1iYXIgLm5hdi1iYXJfcGF5bWVudC1tZXRob2RzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbi8qKlxyXG4gICBSRVNQT05TSVZFXHJcbiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mb290ZXJfbmF2LWJhciAubmF2LWJhcl9pdGVtczpudGgtY2hpbGQoMikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLmZvb3Rlcl9uYXYtYmFyIC5uYXYtYmFyX2l0ZW1zOm50aC1jaGlsZCgyKSBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4ubWRjLXRvdWNoLXRhcmdldC13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC11bmNoZWNrZWQtY2hlY2tlZC1jaGVja21hcmstcGF0aCB7XG4gIDAlLFxuICA1MCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAyOS43ODMzNDtcbiAgfVxuICA1MCUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LXVuY2hlY2tlZC1pbmRldGVybWluYXRlLW1peGVkbWFyayB7XG4gIDAlLFxuICA2OC4yJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIH1cbiAgNjguMiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAwLCAxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1jaGVja2VkLXVuY2hlY2tlZC1jaGVja21hcmstcGF0aCB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yOS43ODMzNDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1jaGVja2VkLWluZGV0ZXJtaW5hdGUtY2hlY2ttYXJrIHtcbiAgZnJvbSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1jaGVja2VkLWNoZWNrbWFyayB7XG4gIGZyb20ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE0LCAwLCAwLCAxKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtZGMtYW5pbWF0aW9uLWRlY2VsZXJhdGlvbi1jdXJ2ZS10aW1pbmctZnVuY3Rpb247XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hlY2tlZC1taXhlZG1hcmsge1xuICBmcm9tIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNCwgMCwgMCwgMSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzE1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtdW5jaGVja2VkLW1peGVkbWFyayB7XG4gIDAlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAzMi44JSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDAgMCAxOHB4O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgcGFkZGluZzogMTFweDtcbn1cblxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlLFxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4Njtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUsXG4gIC5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xuICB9XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSwgLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE4Nzg2O1xufVxuXG5Ac3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5tZGMtY2hlY2tib3gubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSwgLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQ6aG92ZXIgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjA0O1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLCAubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1cyAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLWNoZWNrYm94LS1zZWxlY3RlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1jaGVja2JveC0tc2VsZWN0ZWQubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQubWRjLWNoZWNrYm94LS1zZWxlY3RlZCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4Njtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuICAubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZC5tZGMtY2hlY2tib3gtLXNlbGVjdGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICB0b3A6IDExcHg7XG4gIGxlZnQ6IDExcHg7XG59XG5cbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgdG9wOiAtMTNweDtcbiAgbGVmdDogLTEzcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2wge1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCk6bm90KDppbmRldGVybWluYXRlKSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZDppbmRldGVybWluYXRlIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGJvcmRlci1jb2xvcjogIzAxODc4NjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE4Nzg2O1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLWluLWJhY2tncm91bmQtdWZhZWUwZDA0IHtcbiAgMCUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICA1MCUge1xuICAgIGJvcmRlci1jb2xvcjogIzAxODc4NjtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE4Nzg2O1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1jaGVja2JveC1mYWRlLW91dC1iYWNrZ3JvdW5kLXVmYWVlMGQwNCB7XG4gIDAlLFxuICA4MCUge1xuICAgIGJvcmRlci1jb2xvcjogIzAxODc4NjtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE4Nzg2O1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxuICAxMDAlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS11bmNoZWNrZWQtaW5kZXRlcm1pbmF0ZSAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBtZGMtY2hlY2tib3gtZmFkZS1pbi1iYWNrZ3JvdW5kLXVmYWVlMGQwNDtcbn1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBtZGMtY2hlY2tib3gtZmFkZS1vdXQtYmFja2dyb3VuZC11ZmFlZTBkMDQ7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sW2Rpc2FibGVkXTpub3QoOmNoZWNrZWQpOm5vdCg6aW5kZXRlcm1pbmF0ZSkgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2xbZGlzYWJsZWRdOmNoZWNrZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLFxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2xbZGlzYWJsZWRdOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZW5hYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICAgIG1hcmdpbjogMCAxcHg7XG4gIH1cbn1cblxuLm1kYy1jaGVja2JveC0tZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3I7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgYm9yZGVyLWNvbG9yIDkwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG59XG5cbi5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zdXJmYWNlLCAjMDAwKTtcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTgwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG59XG5cbi5tZGMtY2hlY2tib3gtLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgdHJhbnNpdGlvbjogc3Ryb2tlLWRhc2hvZmZzZXQgMTgwbXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xuICBzdHJva2Utd2lkdGg6IDMuMTJweDtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDI5Ljc4MzM0O1xuICBzdHJva2UtZGFzaGFycmF5OiAyOS43ODMzNDtcbn1cblxuLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCkgcm90YXRlKDBkZWcpO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpLCB0cmFuc2Zvcm0gOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cblxuLm1kYy1jaGVja2JveC0tdXBncmFkZWQgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbi5tZGMtY2hlY2tib3gtLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayxcbi5tZGMtY2hlY2tib3gtLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoLFxuLm1kYy1jaGVja2JveC0tdXBncmFkZWQgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLXVuY2hlY2tlZC1jaGVja2VkIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQsIC5tZGMtY2hlY2tib3gtLWFuaW0tdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCwgLm1kYy1jaGVja2JveC0tYW5pbS1jaGVja2VkLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kLCAubWRjLWNoZWNrYm94LS1hbmltLWluZGV0ZXJtaW5hdGUtdW5jaGVja2VkIC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQge1xuICBhbmltYXRpb24tZHVyYXRpb246IDE4MG1zO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tdW5jaGVja2VkLWNoZWNrZWQgLm1kYy1jaGVja2JveF9fY2hlY2ttYXJrLXBhdGgge1xuICBhbmltYXRpb246IG1kYy1jaGVja2JveC11bmNoZWNrZWQtY2hlY2tlZC1jaGVja21hcmstcGF0aCAxODBtcyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtdW5jaGVja2VkLWluZGV0ZXJtaW5hdGUtbWl4ZWRtYXJrIDkwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWNoZWNrZWQtdW5jaGVja2VkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgYW5pbWF0aW9uOiBtZGMtY2hlY2tib3gtY2hlY2tlZC11bmNoZWNrZWQtY2hlY2ttYXJrLXBhdGggOTBtcyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tY2hlY2tlZC1pbmRldGVybWluYXRlIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIGFuaW1hdGlvbjogbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1jaGVja21hcmsgOTBtcyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0tY2hlY2tlZC1pbmRldGVybWluYXRlIC5tZGMtY2hlY2tib3hfX21peGVkbWFyayB7XG4gIGFuaW1hdGlvbjogbWRjLWNoZWNrYm94LWNoZWNrZWQtaW5kZXRlcm1pbmF0ZS1taXhlZG1hcmsgOTBtcyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5tZGMtY2hlY2tib3gtLWFuaW0taW5kZXRlcm1pbmF0ZS1jaGVja2VkIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIGFuaW1hdGlvbjogbWRjLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtY2hlY2tlZC1jaGVja21hcmsgNTAwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS1hbmltLWluZGV0ZXJtaW5hdGUtY2hlY2tlZCAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBhbmltYXRpb246IG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLWNoZWNrZWQtbWl4ZWRtYXJrIDUwMG1zIGxpbmVhciAwcztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLm1kYy1jaGVja2JveC0tYW5pbS1pbmRldGVybWluYXRlLXVuY2hlY2tlZCAubWRjLWNoZWNrYm94X19taXhlZG1hcmsge1xuICBhbmltYXRpb246IG1kYy1jaGVja2JveC1pbmRldGVybWluYXRlLXVuY2hlY2tlZC1taXhlZG1hcmsgMzAwbXMgbGluZWFyIDBzO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCxcbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIHtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDkwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDkwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCxcbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyay1wYXRoIHtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG59XG5cbi5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpLCB0cmFuc2Zvcm0gOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Zm9jdXMgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAwLjEyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDgwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCB0cmFuc2Zvcm0gODBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogaW5oZXJpdDtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLWNoZWNrYm94LS10b3VjaCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cblxuLm1kYy1jaGVja2JveC0tdG91Y2ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2wge1xuICB0b3A6IC00cHg7XG4gIHJpZ2h0OiAtNHB4O1xuICBsZWZ0OiAtNHB4O1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDpjaGVja2VkIH4gLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCAubWRjLWNoZWNrYm94X19jaGVja21hcmsge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgdHJhbnNmb3JtIDE4MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSkgcm90YXRlKC00NWRlZyk7XG59XG5cbi5tZGMtY2hlY2tib3hfX25hdGl2ZS1jb250cm9sOmluZGV0ZXJtaW5hdGUgfiAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kIC5tZGMtY2hlY2tib3hfX2NoZWNrbWFyayB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA5MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpLCB0cmFuc2Zvcm0gOTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cblxuLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2w6aW5kZXRlcm1pbmF0ZSB+IC5tZGMtY2hlY2tib3hfX2JhY2tncm91bmQgLm1kYy1jaGVja2JveF9fbWl4ZWRtYXJrIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWRjLWNoZWNrYm94IHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbiAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG5Ac3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsXG4gIC5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zdXJmYWNlLCAjMDAwKTtcbiAgfVxufVxuXG4ubWRjLWNoZWNrYm94OmhvdmVyIC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wNDtcbn1cblxuLm1kYy1jaGVja2JveC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsIC5tZGMtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1cyAubWRjLWNoZWNrYm94X19yaXBwbGU6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKSAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG5cbi5tZGMtY2hlY2tib3g6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmUgLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtY2hlY2tib3gubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWNoZWNrYm94IC5tZGMtY2hlY2tib3hfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1jaGVja2JveCAubWRjLWNoZWNrYm94X19yaXBwbGU6OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDUwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSA1MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIGNhbGMoNTAlIC0gNTAlKSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCBjYWxjKDUwJSAtIDUwJSkpO1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWNoZWNrYm94Lm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1jaGVja2JveF9fcmlwcGxlOjphZnRlciB7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtY2hlY2tib3hfX3JpcHBsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZCAubWRjLWNoZWNrYm94X19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ubWRjLWZvcm0tZmllbGQsIC5mb3JtX2NoZWNrYm94LWdyb3VwIHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bywgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTc4NmVtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZGMtZm9ybS1maWVsZCA+IGxhYmVsLCAuZm9ybV9jaGVja2JveC1ncm91cCA+IGxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMDtcbiAgb3JkZXI6IDA7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkID4gbGFiZWwsIFtkaXI9XCJydGxcIl0gLmZvcm1fY2hlY2tib3gtZ3JvdXAgPiBsYWJlbCwgLm1kYy1mb3JtLWZpZWxkID4gbGFiZWxbZGlyPVwicnRsXCJdLCAuZm9ybV9jaGVja2JveC1ncm91cCA+IGxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtZm9ybS1maWVsZCA+IGxhYmVsLCBbZGlyPVwicnRsXCJdIC5mb3JtX2NoZWNrYm94LWdyb3VwID4gbGFiZWwsIC5tZGMtZm9ybS1maWVsZCA+IGxhYmVsW2Rpcj1cInJ0bFwiXSwgLmZvcm1fY2hlY2tib3gtZ3JvdXAgPiBsYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG59XG5cbi5tZGMtZm9ybS1maWVsZC0tYWxpZ24tZW5kID4gbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNHB4O1xuICBvcmRlcjogLTE7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mb3JtLWZpZWxkLS1hbGlnbi1lbmQgPiBsYWJlbCwgLm1kYy1mb3JtLWZpZWxkLS1hbGlnbi1lbmQgPiBsYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsLCAubWRjLWZvcm0tZmllbGQtLWFsaWduLWVuZCA+IGxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IDI0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogNDhweDtcbiAgcGFkZGluZzogMTJweDtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbiBzdmcsXG4ubWRjLWljb24tYnV0dG9uIGltZyB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5tZGMtaWNvbi1idXR0b246ZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLXRleHQtZGlzYWJsZWQtb24tbGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLWljb24tYnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWRjLWljb24tYnV0dG9uX19pY29uLm1kYy1pY29uLWJ1dHRvbl9faWNvbi0tb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLS1vbiAubWRjLWljb24tYnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi0tb24gLm1kYy1pY29uLWJ1dHRvbl9faWNvbi5tZGMtaWNvbi1idXR0b25fX2ljb24tLW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWRjLWljb24tYnV0dG9uIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5tZGMtaWNvbi1idXR0b246OmJlZm9yZSwgLm1kYy1pY29uLWJ1dHRvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tZGMtaWNvbi1idXR0b246OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcywgbWRjLXJpcHBsZS1mZy1vcGFjaXR5LWluIDc1bXMgZm9yd2FyZHM7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb246OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBtZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsIDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLCAxKSk7XG59XG5cbi5tZGMtaWNvbi1idXR0b246OmJlZm9yZSwgLm1kYy1pY29uLWJ1dHRvbjo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gNTAlKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBjYWxjKDUwJSAtIDUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YmVmb3JlLCAubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgY2FsYyg1MCUgLSA1MCUpKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIGNhbGMoNTAlIC0gNTAlKSk7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZDo6YWZ0ZXIge1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wNDtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQ6OmJlZm9yZSwgLm1kYy1pY29uLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG5cbi5tZGMtaWNvbi1idXR0b246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtcmFkaW8ge1xuICBwYWRkaW5nOiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAwIGF1dG87XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybSwgYm9yZGVyLWNvbG9yLCBjb2xvcjtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOm5vdCg6Y2hlY2tlZCkgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogIzAxODc4NjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xufVxuXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmVuYWJsZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogIzAxODc4NjtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xufVxuXG4ubWRjLXJhZGlvIFthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpub3QoOmNoZWNrZWQpICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUsXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcbn1cblxuLm1kYy1yYWRpbyBbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6Y2hlY2tlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19fb3V0ZXItY2lyY2xlLFxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG59XG5cbi5tZGMtcmFkaW8gW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUsXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4Njtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLXJhZGlvIC5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgLyogQGFsdGVybmF0ZSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1zZWNvbmRhcnksICMwMTg3ODYpO1xuICB9XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgdG9wOiAtMTBweDtcbiAgbGVmdDogLTEwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wge1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG4ubWRjLXJhZGlvX19iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbi5tZGMtcmFkaW9fX2JhY2tncm91bmQ6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgdHJhbnNmb3JtIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuXG4ubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuXG4ubWRjLXJhZGlvX19pbm5lci1jaXJjbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSwgYm9yZGVyLWNvbG9yIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IGluaGVyaXQ7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtcmFkaW8tLXRvdWNoIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICBtYXJnaW4tbGVmdDogNHB4O1xufVxuXG4ubWRjLXJhZGlvLS10b3VjaCAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCB7XG4gIHRvcDogLTRweDtcbiAgcmlnaHQ6IC00cHg7XG4gIGxlZnQ6IC00cHg7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG59XG5cbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kLFxuLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2w6ZGlzYWJsZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG59XG5cbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmNoZWNrZWQgKyAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSxcbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19vdXRlci1jaXJjbGUge1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMTIwbXMgMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUsXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpkaXNhYmxlZCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQgLm1kYy1yYWRpb19faW5uZXItY2lyY2xlIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgYm9yZGVyLWNvbG9yIDEyMG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbn1cblxuLm1kYy1yYWRpby0tZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbDpjaGVja2VkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCAubWRjLXJhZGlvX19pbm5lci1jaXJjbGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIGJvcmRlci1jb2xvciAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG59XG5cbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmRpc2FibGVkICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZCxcblthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSAubWRjLXJhZGlvX19uYXRpdmUtY29udHJvbCArIC5tZGMtcmFkaW9fX2JhY2tncm91bmQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5tZGMtcmFkaW9fX25hdGl2ZS1jb250cm9sOmZvY3VzICsgLm1kYy1yYWRpb19fYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMC4xMjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIHRyYW5zZm9ybSAxMjBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG59XG5cbi5tZGMtcmFkaW8ge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQgLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZCAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb24gLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gMjI1bXMgZm9yd2FyZHMsIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiA3NW1zIGZvcndhcmRzO1xufVxuXG4ubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtcmFkaW8gLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogY2FsYyg1MCUgLSA1MCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtcmFkaW9fX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCBjYWxjKDUwJSAtIDUwJSkpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgY2FsYyg1MCUgLSA1MCUpKTtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLXJhZGlvIC5tZGMtcmFkaW9fX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1yYWRpbyAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4Njtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLXJhZGlvIC5tZGMtcmFkaW9fX3JpcHBsZTo6YmVmb3JlLFxuICAubWRjLXJhZGlvIC5tZGMtcmFkaW9fX3JpcHBsZTo6YWZ0ZXIge1xuICAgIC8qIEBhbHRlcm5hdGUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtc2Vjb25kYXJ5LCAjMDE4Nzg2KTtcbiAgfVxufVxuXG4ubWRjLXJhZGlvOmhvdmVyIC5tZGMtcmFkaW9fX3JpcHBsZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wNDtcbn1cblxuLm1kYy1yYWRpby5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1iYWNrZ3JvdW5kLWZvY3VzZWQgLm1kYy1yYWRpb19fcmlwcGxlOjpiZWZvcmUsIC5tZGMtcmFkaW86bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1cyAubWRjLXJhZGlvX19yaXBwbGU6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtcmFkaW86bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKSAubWRjLXJhZGlvX19yaXBwbGU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG5cbi5tZGMtcmFkaW86bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTphY3RpdmUgLm1kYy1yYWRpb19fcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtcmFkaW8ubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLXJhZGlvLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZCAubWRjLXJhZGlvX19iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ubWRjLXJhZGlvX19yaXBwbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBrZXlmcmFtZXMgbWRjLXNlbGVjdC1mbG9hdC1uYXRpdmUtY29udHJvbCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5tZGMtbGluZS1yaXBwbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIG9wYWNpdHkgMTgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogMjtcbn1cblxuLm1kYy1saW5lLXJpcHBsZS0tYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtbGluZS1yaXBwbGUtLWRlYWN0aXZhdGluZyB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5tZGMtbm90Y2hlZC1vdXRsaW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKiBAbm9mbGlwICovXG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtbm90Y2hlZC1vdXRsaW5lLCAubWRjLW5vdGNoZWQtb3V0bGluZVtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZywgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IGJvcmRlciAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgd2lkdGg6IDEycHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG59XG5cbi5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTJweCAqIDIpO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTdweDtcbiAgYm90dG9tOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdGV4dC1vdmVyZmxvdzogY2xpcDtcbn1cblxuLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLyAuNzUpO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZS0tbm90Y2hlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1ub3RjaGVkLW91dGxpbmUtLW5vdGNoZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLCAubWRjLW5vdGNoZWQtb3V0bGluZS0tbm90Y2hlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2hbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ubWRjLW5vdGNoZWQtb3V0bGluZS0tbm8tbGFiZWwgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMDkzN2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIGNvbG9yIDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IHRleHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAvKiBAbm9mbGlwICovXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7XG59XG5cbi5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtc3RhbmRhcmQgMjUwbXMgMTtcbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtc3RhbmRhcmQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuNzUpO1xuICB9XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbjpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9faWNvbiB7XG4gIGNvbG9yOiAjMDAwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtb24tc3VyZmFjZSwgIzAwMCk7XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXNlbGVjdF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE2cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgb3BhY2l0eTogMC41NDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ubWRjLXNlbGVjdF9faWNvbjpub3QoW3RhYmluZGV4XSksXG4ubWRjLXNlbGVjdF9faWNvblt0YWJpbmRleD1cIi0xXCJdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1zZWxlY3QtaGVscGVyLXRleHQge1xuICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDMzMzNlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ubWRjLXNlbGVjdC1oZWxwZXItdGV4dDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuLm1kYy1zZWxlY3QtaGVscGVyLXRleHQtLXBlcnNpc3RlbnQge1xuICB0cmFuc2l0aW9uOiBub25lO1xuICBvcGFjaXR5OiAxO1xuICB3aWxsLWNoYW5nZTogaW5pdGlhbDtcbn1cblxuLm1kYy1zZWxlY3Qge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGNvbG9yO1xufVxuXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XG59XG5cbi5tZGMtc2VsZWN0OjpiZWZvcmUsIC5tZGMtc2VsZWN0OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1zZWxlY3Q6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtc2VsZWN0Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gMjI1bXMgZm9yd2FyZHMsIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiA3NW1zIGZvcndhcmRzO1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1zZWxlY3Q6OmJlZm9yZSwgLm1kYy1zZWxlY3Q6OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDEwMCUpO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIHdpZHRoOiAyMDAlO1xuICBoZWlnaHQ6IDIwMCU7XG59XG5cbi5tZGMtc2VsZWN0Lm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1zZWxlY3Q6OmJlZm9yZSwgLm1kYy1zZWxlY3Q6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLm1kYy1zZWxlY3Q6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtc2VsZWN0Lm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLXNlbGVjdDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOmZvY3VzOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xufVxuXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSArIC5tZGMtc2VsZWN0LWhlbHBlci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLm1kYy1zZWxlY3QsIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xufVxuXG4ubWRjLXNlbGVjdDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbGluZS1yaXBwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjIwMGVlO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbn1cblxuLm1kYy1zZWxlY3Q6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoOTgsIDAsIDIzOCwgMC44Nyk7XG59XG5cbi5tZGMtc2VsZWN0Om5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtc2VsZWN0IC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MCUpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLXNlbGVjdCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xuICB0b3A6IDIxcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0IC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtc2VsZWN0IC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiA0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG4gIHRvcDogMTdweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogNHB4O1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtc2VsZWN0Lm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAzNnB4O1xufVxuXG4ubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMzZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAzNnB4O1xufVxuXG4ubWRjLXNlbGVjdF9fZHJvcGRvd24taWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMzAwMCUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBvcGFjaXR5JTNEJTIyMC41NCUyMiUyMHBvaW50cyUzRCUyMjclMjAxMCUyMDEyJTIwMTUlMjAxNyUyMDEwJTIyJTNFJTNDJTJGcG9seWdvbiUzRSUwQSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgY2VudGVyO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDhweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE2cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdF9fZHJvcGRvd24taWNvbiwgLm1kYy1zZWxlY3RfX2Ryb3Bkb3duLWljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiA4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtc2VsZWN0X19kcm9wZG93bi1pY29uIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTBweCUyMiUyMGhlaWdodCUzRCUyMjVweCUyMiUyMHZpZXdCb3glM0QlMjI3JTIwMTAlMjAxMCUyMDUlMjIlMjB2ZXJzaW9uJTNEJTIyMS4xJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB4bWxucyUzQXhsaW5rJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmslMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwaWQlM0QlMjJTaGFwZSUyMiUyMHN0cm9rZSUzRCUyMm5vbmUlMjIlMjBmaWxsJTNEJTIyJTIzNjIwMGVlJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMG9wYWNpdHklM0QlMjIxJTIyJTIwcG9pbnRzJTNEJTIyNyUyMDEwJTIwMTIlMjAxNSUyMDE3JTIwMTAlMjIlM0UlM0MlMkZwb2x5Z29uJTNFJTBBJTNDJTJGc3ZnJTNFXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG59XG5cbi5tZGMtc2VsZWN0LS1hY3RpdmF0ZWQgLm1kYy1zZWxlY3RfX2Ryb3Bkb3duLWljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoLTVweCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xufVxuXG4ubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLWxpbmUtcmlwcGxlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgMik7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZGMtc2VsZWN0ICsgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQge1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgKyAubWRjLXNlbGVjdC1oZWxwZXItdGV4dCB7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cbi5tZGMtc2VsZWN0LS1mb2N1c2VkICsgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQ6bm90KC5tZGMtc2VsZWN0LWhlbHBlci10ZXh0LS12YWxpZGF0aW9uLW1zZykge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmctdG9wOiAyMnB4O1xufVxuXG4ubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4ubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDUycHg7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMDkzN2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCwgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sW2Rpcj1cInJ0bFwiXSwgW2Rpcj1cInJ0bFwiXVxuLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQsXG4ubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6Oi1tcy1leHBhbmQsXG4ubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDo6LW1zLXZhbHVlLFxuLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6Oi1tcy12YWx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeChcIlwiKSB7XG4gIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCxcbiAgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICAgIHRleHQtaW5kZW50OiAtMnB4O1xuICB9XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2w6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQgMjUwbXMgMTtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsIC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLCAubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDo6YmVmb3JlLCAubWRjLXNlbGVjdC0tb3V0bGluZWQ6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ0JSkgc2NhbGUoMSk7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA1MnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHotaW5kZXg6IDE7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCwgLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbFtkaXI9XCJydGxcIl0sIFtkaXI9XCJydGxcIl1cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dCxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICBwYWRkaW5nLXRvcDogMTRweDtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19pY29uIHtcbiAgei1pbmRleDogMjtcbn1cblxuLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBsaW5lLWhlaWdodDogMS4xNXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy1zZWxlY3QtLWludmFsaWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3QtLWludmFsaWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1saW5lLXJpcHBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy1zZWxlY3QtLWludmFsaWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6ICNiMDAwMjA7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWludmFsaWQgKyAubWRjLXNlbGVjdC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBjb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy1zZWxlY3QtLWludmFsaWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKTpub3QoLm1kYy1zZWxlY3QtLWZvY3VzZWQpIC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCk6bm90KC5tZGMtc2VsZWN0LS1mb2N1c2VkKSAubWRjLXNlbGVjdF9fc2VsZWN0ZWQtdGV4dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtc2VsZWN0LS1pbnZhbGlkLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpOm5vdCgubWRjLXNlbGVjdC0tZm9jdXNlZCkgLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci13aWR0aDogMnB4O1xufVxuXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLWludmFsaWQubWRjLXNlbGVjdC0tb3V0bGluZWQ6bm90KC5tZGMtc2VsZWN0LS1kaXNhYmxlZCkubWRjLXNlbGVjdC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXNlbGVjdC0taW52YWxpZC5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkIC5tZGMtc2VsZWN0X19kcm9wZG93bi1pY29uIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTBweCUyMiUyMGhlaWdodCUzRCUyMjVweCUyMiUyMHZpZXdCb3glM0QlMjI3JTIwMTAlMjAxMCUyMDUlMjIlMjB2ZXJzaW9uJTNEJTIyMS4xJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB4bWxucyUzQXhsaW5rJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmslMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwaWQlM0QlMjJTaGFwZSUyMiUyMHN0cm9rZSUzRCUyMm5vbmUlMjIlMjBmaWxsJTNEJTIyJTIzYjAwMDIwJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMG9wYWNpdHklM0QlMjIxJTIyJTIwcG9pbnRzJTNEJTIyNyUyMDEwJTIwMTIlMjAxNSUyMDE3JTIwMTAlMjIlM0UlM0MlMkZwb2x5Z29uJTNFJTBBJTNDJTJGc3ZnJTNFXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG59XG5cbi5tZGMtc2VsZWN0LS1pbnZhbGlkICsgLm1kYy1zZWxlY3QtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy1zZWxlY3QtLXJlcXVpcmVkIC5tZGMtZmxvYXRpbmctbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCIqXCI7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLXNlbGVjdF9fZHJvcGRvd24taWNvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwcHglMjIlMjBoZWlnaHQlM0QlMjI1cHglMjIlMjB2aWV3Qm94JTNEJTIyNyUyMDEwJTIwMTAlMjA1JTIyJTIwdmVyc2lvbiUzRCUyMjEuMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIweG1sbnMlM0F4bGluayUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGlkJTNEJTIyU2hhcGUlMjIlMjBzdHJva2UlM0QlMjJub25lJTIyJTIwZmlsbCUzRCUyMiUyMzAwMCUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBvcGFjaXR5JTNEJTIyMC4zNyUyMiUyMHBvaW50cyUzRCUyMjclMjAxMCUyMDEyJTIwMTUlMjAxNyUyMDEwJTIyJTNFJTNDJTJGcG9seWdvbiUzRSUwQSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgY2VudGVyO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQgLm1kYy1saW5lLXJpcHBsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZCAubWRjLXNlbGVjdF9faWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzcpO1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3QtLWRpc2FibGVkIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcbn1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tZGMtc2VsZWN0LS1kaXNhYmxlZC5tZGMtc2VsZWN0LS1vdXRsaW5lZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLXNlbGVjdC0tZGlzYWJsZWQubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1zZWxlY3RfX25hdGl2ZS1jb250cm9sLFxuLm1kYy1zZWxlY3QtLWRpc2FibGVkLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtc2VsZWN0X19zZWxlY3RlZC10ZXh0IHtcbiAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbn1cblxuLm1kYy1zZWxlY3QtLWRpc2FibGVkLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLWRpc2FibGVkLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtc2VsZWN0LS1kaXNhYmxlZC5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNik7XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXNlbGVjdF9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX2ljb24sIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXNlbGVjdF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2wsIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXNlbGVjdF9fbmF0aXZlLWNvbnRyb2xbZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHQsXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1zZWxlY3RfX3NlbGVjdGVkLXRleHRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDhweDtcbn1cblxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDQlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgxKTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0NCUpIHRyYW5zbGF0ZVgoMzJweCkgc2NhbGUoMSk7XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgdHJhbnNsYXRlWCgtMzJweCkgc2NhbGUoMC43NSk7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3QtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHRyYW5zbGF0ZVgoMzJweCkgc2NhbGUoMC43NSk7XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXNlbGVjdC1vdXRsaW5lZC1sZWFkaW5nLWljb24gMjUwbXMgMTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2UsIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0LS1vdXRsaW5lZFtkaXI9XCJydGxcIl0gLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS1zZWxlY3Qtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCAyNTBtcyAxO1xufVxuXG4ubWRjLXNlbGVjdC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QtaXRlbV9fdGV4dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1zZWxlY3QtLXdpdGgtbGVhZGluZy1pY29uLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0LWl0ZW1fX3RleHQsIC5tZGMtc2VsZWN0LS13aXRoLWxlYWRpbmctaWNvbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdC1pdGVtX190ZXh0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG59XG5cbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQge1xuICBjb2xvcjogIzAwMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLW9uLXN1cmZhY2UsICMwMDApO1xufVxuXG4ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjpiZWZvcmUsIC5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOjpiZWZvcmUsIC5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6OmFmdGVyIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLW9uLXN1cmZhY2UsICMwMDApO1xuICB9XG59XG5cbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1zZWxlY3RfX21lbnUgLm1kYy1saXN0IC5tZGMtbGlzdC1pdGVtLS1zZWxlY3RlZDpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLXNlbGVjdF9fbWVudSAubWRjLWxpc3QgLm1kYy1saXN0LWl0ZW0tLXNlbGVjdGVkOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtc2VsZWN0X19tZW51IC5tZGMtbGlzdCAubWRjLWxpc3QtaXRlbS0tc2VsZWN0ZWQubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS1zZWxlY3Qtb3V0bGluZWQtbGVhZGluZy1pY29uIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAzMnB4KSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAzMnB4KSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS1zZWxlY3Qtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gLTMycHgpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMzJweCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG59XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgb3BhY2l0eTogMDtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0LS1wZXJzaXN0ZW50IHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgd2lsbC1jaGFuZ2U6IGluaXRpYWw7XG59XG5cbi5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzMzM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDE2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHZlcnRpY2FsLWFsaWduOiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciwgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciwgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uLFxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1kYy10ZXh0LWZpZWxkX19pY29uOm5vdChbdGFiaW5kZXhdKSxcbi5tZGMtdGV4dC1maWVsZF9faWNvblt0YWJpbmRleD1cIi0xXCJdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkIHtcbiAgLS1tZGMtcmlwcGxlLWZnLXNpemU6IDA7XG4gIC0tbWRjLXJpcHBsZS1sZWZ0OiAwO1xuICAtLW1kYy1yaXBwbGUtdG9wOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctc2NhbGU6IDE7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kOiAwO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybSwgY29sb3I7XG59XG5cbi5tZGMtdGV4dC1maWVsZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG59XG5cbi5tZGMtdGV4dC1maWVsZC5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQ6OmFmdGVyIHtcbiAgdG9wOiB2YXIoLS1tZGMtcmlwcGxlLXRvcCwgMCk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCAwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dCAxNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wNDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQtLWJhY2tncm91bmQtZm9jdXNlZDo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZDo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgY2FyZXQtY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY2FyZXQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZCAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYyMDBlZTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4ubWRjLXRleHQtZmllbGQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlcixcbi5tZGMtdGV4dC1maWVsZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XG59XG5cbi5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xuICB0b3A6IDE4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZCAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogNHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDRweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbiAgdG9wOiAxN3B4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogNHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAzNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogNDBweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiA0MHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bywgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAwOTM3ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4IDE2cHggNnB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4ubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNjdtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICBvcGFjaXR5OiAwO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkX19pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KSAhaW1wb3J0YW50O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aCAubWRjLXRleHQtZmllbGRfX2lucHV0OjpwbGFjZWhvbGRlcixcbi5tZGMtdGV4dC1maWVsZC0tbm8tbGFiZWwgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIsXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDo6cGxhY2Vob2xkZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA0MG1zO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMTBtcztcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aW52YWxpZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCB7XG4gIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1uby1sYWJlbDpub3QoLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBwYWRkaW5nLXRvcDogMTZweDtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCArIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC43NSk7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogIzYyMDBlZTtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCAjNjIwMGVlKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQgMjUwbXMgMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZywgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsIC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0NCUpIHNjYWxlKDEpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6OmJlZm9yZSwgLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZDo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxMnB4IDE2cHggMTRweDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2Uge1xuICBoZWlnaHQ6IDQ4cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzQlKSBzY2FsZSgxKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDAuOHJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2UgMjUwbXMgMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIHBhZGRpbmc6IDEycHggMTJweCA3cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICB0b3A6IDE0cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIHRvcDogMTJweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTZweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbiAubWRjLWZsb2F0aW5nLWxhYmVsLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDQlKSB0cmFuc2xhdGVYKC0zMnB4KSBzY2FsZSgxKTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDQlKSB0cmFuc2xhdGVYKDMycHgpIHNjYWxlKDEpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHRyYW5zbGF0ZVgoLTMycHgpIHNjYWxlKDAuNzUpO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0sIFtkaXI9XCJydGxcIl1cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpIHRyYW5zbGF0ZVgoMzJweCkgc2NhbGUoMC43NSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uIDI1MG1zIDE7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2UsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkW2Rpcj1cInJ0bFwiXSAubWRjLWZsb2F0aW5nLWxhYmVsLS1zaGFrZSB7XG4gIGFuaW1hdGlvbjogbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLXJ0bCAyNTBtcyAxO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAzNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtZmxvYXRpbmctbGFiZWxbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAzNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzNCUpIHRyYW5zbGF0ZVgoLTIxcHgpIHNjYWxlKDEpO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlW2Rpcj1cInJ0bFwiXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTM0JSkgdHJhbnNsYXRlWCgyMXB4KSBzY2FsZSgxKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZS5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSxcbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpIHRyYW5zbGF0ZVgoLTIxcHgpIHNjYWxlKDAuOCk7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmVbZGlyPVwicnRsXCJdLCBbZGlyPVwicnRsXCJdXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZVtkaXI9XCJydGxcIl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpIHRyYW5zbGF0ZVgoMjFweCkgc2NhbGUoMC44KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlLm1kYy1ub3RjaGVkLW91dGxpbmUtLXVwZ3JhZGVkIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlLFxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZC1sZWFkaW5nLWljb24tZGVuc2UgMjUwbXMgMTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2UsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZVtkaXI9XCJydGxcIl0gLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1kZW5zZS1ydGwgMjUwbXMgMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDMycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLWZsb2F0aW5nLWxhYmVsW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogaW5pdGlhbDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMzJweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTJweDtcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pY29uIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxNnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBpbml0aWFsO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZCAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGF1dG87XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2ljb24gfiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGF1dG87XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB+IC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faWNvbiB+IC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiBhdXRvO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDEycHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbiAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDhweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24gLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDhweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLFxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiB7XG4gIGJvdHRvbTogMTZweDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDEycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uLCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb25bZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBpbml0aWFsO1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0LCAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0W2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctcmlnaHQ6IDQ0cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDQ0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDQ0cHg7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDEycHg7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbiwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDEycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDRweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCwgLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXRbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDEycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGF1dG87XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogYXV0bztcbiAgLyogQG5vZmxpcCAqL1xuICByaWdodDogMTJweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24gfiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIHJpZ2h0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGF1dG87XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2ljb24gfiAubWRjLXRleHQtZmllbGRfX2ljb24sIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pY29uIH4gLm1kYy10ZXh0LWZpZWxkX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGF1dG87XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogMTJweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS13aXRoLWxlYWRpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0td2l0aC10cmFpbGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS1kZW5zZSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcGFkZGluZy1yaWdodDogNDRweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtdGV4dC1maWVsZF9faW5wdXQsIC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtdHJhaWxpbmctaWNvbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dFtkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHBhZGRpbmctbGVmdDogNDRweDtcbiAgLyogQG5vZmxpcCAqL1xuICBwYWRkaW5nLXJpZ2h0OiA0NHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwtLWZsb2F0LWFib3ZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MCUpIHNjYWxlKDAuOCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLWRlbnNlIDI1MG1zIDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIHBhZGRpbmc6IDEycHggMTJweCAwO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRlbnNlIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBmb250LXNpemU6IC44MTNyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGVuc2UgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IC44MTNyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgfiAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlcixcbi5tZGMtdGV4dC1maWVsZF9faW5wdXQ6cmVxdWlyZWQgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLWZsb2F0aW5nLWxhYmVsOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwiKlwiO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tc2hha2Uge1xuICBhbmltYXRpb246IG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkIDI1MG1zIDE7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmdbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZ1tkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhOjpiZWZvcmUsIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWE6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYTpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ0JSkgc2NhbGUoMSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLW5vdGNoZWQtb3V0bGluZS0tdXBncmFkZWQgLm1kYy1mbG9hdGluZy1sYWJlbC0tZmxvYXQtYWJvdmUsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtbm90Y2hlZC1vdXRsaW5lLS11cGdyYWRlZCAubWRjLWZsb2F0aW5nLWxhYmVsLS1mbG9hdC1hYm92ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IGluaXRpYWw7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IDE2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxM3B4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyLCAubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlcltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDE2cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgcmlnaHQ6IGluaXRpYWw7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGFsaWduLXNlbGY6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiA4cHggMXB4IDFweCAwO1xuICBwYWRkaW5nOiAwIDE2cHggMTZweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhIC5tZGMtdGV4dC1maWVsZC1jaGFyYWN0ZXItY291bnRlciArIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgdG9wOiAxN3B4O1xuICBib3R0b206IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKTo6YmVmb3JlLCAubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSk6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGg6bm90KC5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEpOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWZ1bGx3aWR0aDpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZnVsbHdpZHRoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mdWxsd2lkdGgubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRlbnNlICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuXG4ubWRjLXRleHQtZmllbGQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG59XG5cbi5tZGMtZm9ybS1maWVsZCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsLCAuZm9ybV9jaGVja2JveC1ncm91cCA+IC5tZGMtdGV4dC1maWVsZCArIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoOTgsIDAsIDIzOCwgMC44Nyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkIH4gLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIsXG4ubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpyZXF1aXJlZCB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtZmxvYXRpbmctbGFiZWw6OmFmdGVyIHtcbiAgY29sb3I6IHJnYmEoOTgsIDAsIDIzOCwgMC44Nyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQ6bm90KC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cpIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICM2MjAwZWU7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwgIzYyMDBlZSk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLW91dGxpbmVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYSkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWxpbmUtcmlwcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtZmxvYXRpbmctbGFiZWwge1xuICBjb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0taW52YWxpZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSAubWRjLXRleHQtZmllbGQtaGVscGVyLXRleHQtLXZhbGlkYXRpb24tbXNnIHtcbiAgY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgY2FyZXQtY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY2FyZXQtY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpyZXF1aXJlZCB+IC5tZGMtZmxvYXRpbmctbGFiZWw6OmFmdGVyLFxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OnJlcXVpcmVkIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1mbG9hdGluZy1sYWJlbDo6YWZ0ZXIge1xuICBjb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb246bm90KC5tZGMtdGV4dC1maWVsZC0td2l0aC1sZWFkaW5nLWljb24pOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkLm1kYy10ZXh0LWZpZWxkLS13aXRoLXRyYWlsaW5nLWljb24ubWRjLXRleHQtZmllbGQtLXdpdGgtbGVhZGluZy1pY29uOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLXRleHQtZmllbGRfX2ljb24gfiAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBjb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkICsgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci1saW5lIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItdGV4dC0tdmFsaWRhdGlvbi1tc2cge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2lucHV0OmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pY29uOmhvdmVyIH4gLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcge1xuICBib3JkZXItY29sb3I6ICNiMDAwMjA7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZGMtdGhlbWUtZXJyb3IsICNiMDAwMjApO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCk6bm90KC5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCkgLm1kYy10ZXh0LWZpZWxkX19pbnB1dDpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faW5wdXQ6aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkLm1kYy10ZXh0LWZpZWxkLS1pbnZhbGlkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKTpub3QoLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkKSAubWRjLXRleHQtZmllbGRfX2ljb246aG92ZXIgfiAubWRjLW5vdGNoZWQtb3V0bGluZSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpOm5vdCgubWRjLXRleHQtZmllbGQtLWZvY3VzZWQpIC5tZGMtdGV4dC1maWVsZF9faWNvbjpob3ZlciB+IC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2IwMDAyMDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBib3JkZXItY29sb3I6IHZhcigtLW1kYy10aGVtZS1lcnJvciwgI2IwMDAyMCk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQubWRjLXRleHQtZmllbGQtLWludmFsaWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy10ZXh0LWZpZWxkLS1vdXRsaW5lZC5tZGMtdGV4dC1maWVsZC0taW52YWxpZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkubWRjLXRleHQtZmllbGQtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjAwMDIwO1xuICAvKiBAYWx0ZXJuYXRlICovXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLWVycm9yLCAjYjAwMDIwKTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtdGV4dC1maWVsZF9faW5wdXQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLWZsb2F0aW5nLWxhYmVsIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgKyAubWRjLXRleHQtZmllbGQtaGVscGVyLWxpbmUgLm1kYy10ZXh0LWZpZWxkLWhlbHBlci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNyk7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkLWNoYXJhY3Rlci1jb3VudGVyLFxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCArIC5tZGMtdGV4dC1maWVsZC1oZWxwZXItbGluZSAubWRjLXRleHQtZmllbGQtY2hhcmFjdGVyLWNvdW50ZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM3KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLXRleHQtZmllbGRfX2ljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4ubWRjLXRleHQtZmllbGQtLWRpc2FibGVkOm5vdCgubWRjLXRleHQtZmllbGQtLXRleHRhcmVhKSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy1mbG9hdGluZy1sYWJlbCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogQGFsdGVybmF0ZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xufVxuXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEubWRjLXRleHQtZmllbGQtLWRpc2FibGVkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcbn1cblxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtNzAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC44KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTcwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC03MCUpIHNjYWxlKDAuOCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dC1maWVsZC1vdXRsaW5lZCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwJSkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtZGVuc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAwKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDApKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICA2NiUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjMwMjQ0LCAwLjM4MTM1LCAwLjU1LCAwLjk1NjM1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNCUgLSAwKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDApKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1kZW5zZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMjFweCkpIHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAyMXB4KSkgdHJhbnNsYXRlWSgtMTIwJSkgc2NhbGUoMC44KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1kYy1mbG9hdGluZy1sYWJlbC1zaGFrZS1mbG9hdC1hYm92ZS10ZXh0LWZpZWxkLW91dGxpbmVkLWxlYWRpbmctaWNvbi1ydGwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDApKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAzMyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAsIDAuNzAxNzMsIDAuNDk1ODIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDQlIC0gMCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG4gIDY2JSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzAyNDQsIDAuMzgxMzUsIDAuNTUsIDAuOTU2MzUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC00JSAtIDApKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCkpIHRyYW5zbGF0ZVkoLTEzMCUpIHNjYWxlKDAuNzUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWRjLWZsb2F0aW5nLWxhYmVsLXNoYWtlLWZsb2F0LWFib3ZlLXRleHQtZmllbGQtb3V0bGluZWQtbGVhZGluZy1pY29uLWRlbnNlLXJ0bCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDMzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC43MDE3MywgMC40OTU4Mik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNCUgLSAtMjFweCkpIHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gLTIxcHgpKSB0cmFuc2xhdGVZKC0xMjAlKSBzY2FsZSgwLjgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAgLSAtMjFweCkpIHRyYW5zbGF0ZVkoLTEyMCUpIHNjYWxlKDAuOCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZGMtZmxvYXRpbmctbGFiZWwtc2hha2UtZmxvYXQtYWJvdmUtdGV4dGFyZWEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoMCAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgMzMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjcwMTczLCAwLjQ5NTgyKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg0JSAtIDAlKSkgdHJhbnNsYXRlWSgtMTMwJSkgc2NhbGUoMC43NSk7XG4gIH1cbiAgNjYlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zMDI0NCwgMC4zODEzNSwgMC41NSwgMC45NTYzNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTQlIC0gMCUpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygwIC0gMCUpKSB0cmFuc2xhdGVZKC0xMzAlKSBzY2FsZSgwLjc1KTtcbiAgfVxufVxuXG4vKipcclxuICAgU3R5bGUgQ29sb3IgRm9jdXMgZGVzIElucHV0XHJcbiAqL1xuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1mbG9hdGluZy1sYWJlbCxcbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtZmxvYXRpbmctbGFiZWw6YWZ0ZXIsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLWZsb2F0aW5nLWxhYmVsLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1mbG9hdGluZy1sYWJlbDphZnRlcixcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtZmxvYXRpbmctbGFiZWwsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLWZsb2F0aW5nLWxhYmVsOmFmdGVyIHtcbiAgY29sb3I6IHJnYmEoMjA0LCAxMDIsIDAsIDAuODcpICFpbXBvcnRhbnQ7XG59XG5cbi5tZGMtc2VsZWN0LS1vdXRsaW5lZDpub3QoLm1kYy1zZWxlY3QtLWRpc2FibGVkKS5tZGMtc2VsZWN0LS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19sZWFkaW5nLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX25vdGNoLFxuLm1kYy1zZWxlY3QtLW91dGxpbmVkOm5vdCgubWRjLXNlbGVjdC0tZGlzYWJsZWQpLm1kYy1zZWxlY3QtLWZvY3VzZWQgLm1kYy1ub3RjaGVkLW91dGxpbmUgLm1kYy1ub3RjaGVkLW91dGxpbmVfX3RyYWlsaW5nLFxuLm1kYy10ZXh0LWZpZWxkLS10ZXh0YXJlYS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZDpub3QoLm1kYy10ZXh0LWZpZWxkLS1kaXNhYmxlZCkgLm1kYy1ub3RjaGVkLW91dGxpbmVfX2xlYWRpbmcsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fbm90Y2gsXG4ubWRjLXRleHQtZmllbGQtLXRleHRhcmVhLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKSAubWRjLW5vdGNoZWQtb3V0bGluZV9fdHJhaWxpbmcsXG4ubWRjLXRleHQtZmllbGQtLW91dGxpbmVkOm5vdCgubWRjLXRleHQtZmllbGQtLWRpc2FibGVkKS5tZGMtdGV4dC1maWVsZC0tZm9jdXNlZCAubWRjLW5vdGNoZWQtb3V0bGluZV9fbGVhZGluZyxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX19ub3RjaCxcbi5tZGMtdGV4dC1maWVsZC0tb3V0bGluZWQ6bm90KC5tZGMtdGV4dC1maWVsZC0tZGlzYWJsZWQpLm1kYy10ZXh0LWZpZWxkLS1mb2N1c2VkIC5tZGMtbm90Y2hlZC1vdXRsaW5lX190cmFpbGluZyB7XG4gIGJvcmRlci1jb2xvcjogI0NDNjYwMDtcbn1cblxuLyoqXHJcbiAgIFN0eWxlIFRleHRGaWVsZFxyXG4gKi9cbi5tZGMtdGV4dC1maWVsZCAubWRjLXRleHQtZmllbGRfX2lucHV0IHtcbiAgY2FyZXQtY29sb3I6ICMwMDA7XG59XG5cbi5tZGMtdGV4dC1maWVsZC0tdGV4dGFyZWEgLm1kYy10ZXh0LWZpZWxkX19pbnB1dCB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICBwYWRkaW5nOiAxMHB4IDI1cHggMTZweDtcbn1cblxuLyoqXHJcbiAgIFN0eWxlIFNlbGVjdFxyXG4gKi9cbi5tZGMtc2VsZWN0IC5tZGMtc2VsZWN0X19uYXRpdmUtY29udHJvbCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4ubWRjLXNlbGVjdCBpLm1hdGVyaWFsLWljb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLW91dDtcbn1cblxuLm1kYy1zZWxlY3QubWRjLXNlbGVjdC0tZm9jdXNlZCBpLm1hdGVyaWFsLWljb25zIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gIGNvbG9yOiAjQ0M2NjAwO1xufVxuXG4vKipcclxuICAgRm9ybSBHbG9iYWxcclxuICovXG4ubWRjLXRleHQtZmllbGQsXG4ubWRjLXNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZm9ybSBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZm9ybV9pbnB1dC1ncm91cCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uZm9ybV9pbnB1dC1ncm91cCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mb3JtX2lucHV0LWdyb3VwID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmZvcm1faW5wdXQtZ3JvdXAgPiBkaXY6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvcm1faW5wdXQtZ3JvdXAgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZvcm1faW5wdXQtZ3JvdXAgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZm9ybV9pbnB1dC1ncm91cCA+IGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmZvcm1fY2hlY2tib3gtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZm9ybV9jaGVja2JveC1ncm91cCBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmZvcm1fcmFkaW8tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmZvcm1fbm90aWYge1xuICBwYWRkaW5nOiAxNXB4O1xuICBtYXJnaW46IDE1cHggMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IHNvbGlkIDFweDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5mb3JtX25vdGlmLmZvcm1fbm90aWZfdmFsaWQge1xuICBjb2xvcjogIzE1NTcyNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZWRkYTtcbiAgYm9yZGVyLWNvbG9yOiAjYzNlNmNiO1xufVxuXG4uZm9ybV9ub3RpZi5mb3JtX25vdGlmX2Vycm9yIHtcbiAgY29sb3I6ICNhYjJlNDY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWRkZGQ7XG4gIGJvcmRlci1jb2xvcjogI2Y1ZGRkZDtcbn1cblxuLmZvcm1fbm90aWYuZm9ybV9ub3RpZl93YXJuaW5nIHtcbiAgY29sb3I6ICM4NTY0MDQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gIGJvcmRlci1jb2xvcjogI2ZmZWViYTtcbn1cblxuLmZvcm1fbm90aWYgdWwge1xuICBtYXJnaW46IDVweCAwO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi5mb3JtIC5jaG9pY2Utc2ltcGxlIHtcbiAgbWFyZ2luOiAxNXB4IDA7XG59XG5cbi5mb3JtIC5jaG9pY2Utc2ltcGxlIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZvcm0gLmNob2ljZS1zaW1wbGUgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogMTNweCAxN3B4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTczRDFDO1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzU3M0QxQztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZm9ybSAuY2hvaWNlLXNpbXBsZSBsYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjA0LCAxMDIsIDAsIDAuMSk7XG59XG5cbi5mb3JtIC5jaG9pY2Utc2ltcGxlIGxhYmVsOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xufVxuXG4uZm9ybSAuY2hvaWNlLXNpbXBsZSBsYWJlbDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbn1cblxuLmZvcm0gLmNob2ljZS1zaW1wbGUgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU3M0QxQztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvcm0gLmNob2ljZS1zaW1wbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5mb3JtIC5jaG9pY2Utc2ltcGxlIGxhYmVsIHtcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB9XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2xnJztcbiAgc3JjOiB1cmwoXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5LmpzL2Rpc3QvZm9udHMvbGcudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5LmpzL2Rpc3QvZm9udHMvbGcud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5LmpzL2Rpc3QvZm9udHMvbGcuc3ZnXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubGctaWNvbiB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnbGcnICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0LCAubGctYWN0aW9ucyAubGctcHJldiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40NSk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIHBhZGRpbmc6IDhweCAxMHB4IDlweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgei1pbmRleDogMTA4MDtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmxnLWFjdGlvbnMgLmxnLW5leHQuZGlzYWJsZWQsIC5sZy1hY3Rpb25zIC5sZy1wcmV2LmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmxnLWFjdGlvbnMgLmxnLW5leHQ6aG92ZXIsIC5sZy1hY3Rpb25zIC5sZy1wcmV2OmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0IHtcbiAgcmlnaHQ6IDIwcHg7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDk1XCI7XG59XG5cbi5sZy1hY3Rpb25zIC5sZy1wcmV2IHtcbiAgbGVmdDogMjBweDtcbn1cblxuLmxnLWFjdGlvbnMgLmxnLXByZXY6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTA5NFwiO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBsZy1yaWdodC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDtcbiAgfVxuICA1MCUge1xuICAgIGxlZnQ6IC0zMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuQC1tcy1rZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGctcmlnaHQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGxnLWxlZnQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAzMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5sZy1vdXRlci5sZy1yaWdodC1lbmQgLmxnLW9iamVjdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZy1yaWdodC1lbmQgMC4zcztcbiAgLW8tYW5pbWF0aW9uOiBsZy1yaWdodC1lbmQgMC4zcztcbiAgYW5pbWF0aW9uOiBsZy1yaWdodC1lbmQgMC4zcztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGctb3V0ZXIubGctbGVmdC1lbmQgLmxnLW9iamVjdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZy1sZWZ0LWVuZCAwLjNzO1xuICAtby1hbmltYXRpb246IGxnLWxlZnQtZW5kIDAuM3M7XG4gIGFuaW1hdGlvbjogbGctbGVmdC1lbmQgMC4zcztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGctdG9vbGJhciB7XG4gIHotaW5kZXg6IDEwODI7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbn1cblxuLmxnLXRvb2xiYXIgLmxnLWljb24ge1xuICBjb2xvcjogIzk5OTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgaGVpZ2h0OiA0N3B4O1xuICBsaW5lLWhlaWdodDogMjdweDtcbiAgcGFkZGluZzogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA1MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogY29sb3IgMC4ycyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgbGluZWFyO1xufVxuXG4ubGctdG9vbGJhciAubGctaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubGctdG9vbGJhciAubGctY2xvc2U6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTA3MFwiO1xufVxuXG4ubGctdG9vbGJhciAubGctZG93bmxvYWQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTBmMlwiO1xufVxuXG4ubGctc3ViLWh0bWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICBib3R0b206IDA7XG4gIGNvbG9yOiAjRUVFO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDgwO1xufVxuXG4ubGctc3ViLWh0bWwgaDQge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5sZy1zdWItaHRtbCBwIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW46IDVweCAwIDA7XG59XG5cbiNsZy1jb3VudGVyIHtcbiAgY29sb3I6ICM5OTk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubGctdG9vbGJhciwgLmxnLXByZXYsIC5sZy1uZXh0IHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIGNvbG9yIDAuMnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgY29sb3IgMC4ycyBsaW5lYXI7XG59XG5cbi5sZy1oaWRlLWl0ZW1zIC5sZy1wcmV2IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG59XG5cbi5sZy1oaWRlLWl0ZW1zIC5sZy1uZXh0IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xufVxuXG4ubGctaGlkZS1pdGVtcyAubGctdG9vbGJhciB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xufVxuXG5ib2R5Om5vdCgubGctZnJvbS1oYXNoKSAubGctb3V0ZXIubGctc3RhcnQtem9vbSAubGctb2JqZWN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC41LCAwLjUsIDAuNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgwLjUsIDAuNSwgMC41KTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5cbmJvZHk6bm90KC5sZy1mcm9tLWhhc2gpIC5sZy1vdXRlci5sZy1zdGFydC16b29tIC5sZy1pdGVtLmxnLWNvbXBsZXRlIC5sZy1vYmplY3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLW91dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBEMEEwQTtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDgwO1xuICBtYXgtaGVpZ2h0OiAzNTBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZ3JhYiAubGctdGh1bWItaXRlbSB7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiAtby1ncmFiO1xuICBjdXJzb3I6IC1tcy1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZ3JhYmJpbmcgLmxnLXRodW1iLWl0ZW0ge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICBjdXJzb3I6IC1vLWdyYWJiaW5nO1xuICBjdXJzb3I6IC1tcy1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1vdXRlci5sZy1kcmFnZ2luZyAubGctdGh1bWIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlci5sZy10aHVtYi1vcGVuIC5sZy10aHVtYi1vdXRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCUsIDApO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iIHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG59XG5cbi5sZy1vdXRlciAubGctdGh1bWItaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAubGctb3V0ZXIgLmxnLXRodW1iLWl0ZW0ge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gIH1cbn1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtLmFjdGl2ZSwgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTkwNzA3O1xufVxuXG4ubGctb3V0ZXIgLmxnLXRodW1iLWl0ZW0gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5sZy1vdXRlci5sZy1oYXMtdGh1bWIgLmxnLWl0ZW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG59XG5cbi5sZy1vdXRlci5sZy1jYW4tdG9nZ2xlIC5sZy1pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5sZy1vdXRlci5sZy1wdWxsLWNhcHRpb24tdXAgLmxnLXN1Yi1odG1sIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3R0b20gMC4yNXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYm90dG9tIDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjI1cyBlYXNlO1xufVxuXG4ubGctb3V0ZXIubGctcHVsbC1jYXB0aW9uLXVwLmxnLXRodW1iLW9wZW4gLmxnLXN1Yi1odG1sIHtcbiAgYm90dG9tOiAxMDBweDtcbn1cblxuLmxnLW91dGVyIC5sZy10b2dnbGUtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMEQwQTBBO1xuICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBoZWlnaHQ6IDM5cHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IC0zOXB4O1xuICB3aWR0aDogNTBweDtcbiAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmxnLW91dGVyIC5sZy10b2dnbGUtdGh1bWI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTFmZlwiO1xufVxuXG4ubGctb3V0ZXIgLmxnLXRvZ2dsZS10aHVtYjpob3ZlciB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvLWNvbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTE0MHB4O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA1cHg7XG59XG5cbi5sZy1vdXRlciAubGctdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sZy1vdXRlciAubGctdmlkZW8gLmxnLW9iamVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvIC5sZy12aWRlby1wbGF5IHtcbiAgd2lkdGg6IDg0cHg7XG4gIGhlaWdodDogNTlweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTQycHg7XG4gIG1hcmdpbi10b3A6IC0zMHB4O1xuICB6LWluZGV4OiAxMDgwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLXZpbWVvIC5sZy12aWRlby1wbGF5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2xpZ2h0Z2FsbGVyeS5qcy9kaXN0L2ltZy92aW1lby1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmltZW86aG92ZXIgLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5LmpzL2Rpc3QvaW1nL3ZpbWVvLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAtNThweCB0cmFuc3BhcmVudDtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMtaHRtbDUgLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5LmpzL2Rpc3QvaW1nL3ZpZGVvLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwO1xuICBoZWlnaHQ6IDY0cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMzJweDtcbiAgbWFyZ2luLXRvcDogLTMycHg7XG4gIHdpZHRoOiA2NHB4O1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5sZy1vdXRlciAubGctaGFzLWh0bWw1OmhvdmVyIC5sZy12aWRlby1wbGF5IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMteW91dHViZSAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkuanMvZGlzdC9pbWcveW91dHViZS1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxnLW91dGVyIC5sZy1oYXMteW91dHViZTpob3ZlciAubGctdmlkZW8tcGxheSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkuanMvZGlzdC9pbWcveW91dHViZS1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgLTYwcHggdHJhbnNwYXJlbnQ7XG59XG5cbi5sZy1vdXRlciAubGctdmlkZW8tb2JqZWN0IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy12aWRlbyAubGctdmlkZW8tb2JqZWN0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy12aWRlby5sZy12aWRlby1wbGF5aW5nIC5sZy1vYmplY3QsIC5sZy1vdXRlciAubGctaGFzLXZpZGVvLmxnLXZpZGVvLXBsYXlpbmcgLmxnLXZpZGVvLXBsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGctb3V0ZXIgLmxnLWhhcy12aWRlby5sZy12aWRlby1wbGF5aW5nIC5sZy12aWRlby1vYmplY3Qge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ubGctcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgaGVpZ2h0OiA1cHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA4MztcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDhzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA4cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDhzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4wOHMgZWFzZSAwcztcbn1cblxuLmxnLXByb2dyZXNzLWJhciAubGctcHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTkwNzA3O1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDA7XG59XG5cbi5sZy1wcm9ncmVzcy1iYXIubGctc3RhcnQgLmxnLXByb2dyZXNzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5sZy1zaG93LWF1dG9wbGF5IC5sZy1wcm9ncmVzcy1iYXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctYXV0b3BsYXktYnV0dG9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwMWRcIjtcbn1cblxuLmxnLXNob3ctYXV0b3BsYXkgLmxnLWF1dG9wbGF5LWJ1dHRvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMDFhXCI7XG59XG5cbi5sZy1vdXRlci5sZy1jc3MzLmxnLXpvb20tZHJhZ2dpbmcgLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltZy13cmFwLCAubGctb3V0ZXIubGctY3NzMy5sZy16b29tLWRyYWdnaW5nIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWFnZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xufVxuXG4ubGctb3V0ZXIubGctdXNlLXRyYW5zaXRpb24tZm9yLXpvb20gLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltZy13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG59XG5cbi5sZy1vdXRlci5sZy11c2UtbGVmdC1mb3Item9vbSAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1nLXdyYXAge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIHRvcCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1vLXRyYW5zaXRpb246IGxlZnQgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIHRvcCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xufVxuXG4ubGctb3V0ZXIgLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltZy13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWFnZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjE1cyAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMTVzICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuI2xnLXpvb20taW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTMxMVwiO1xufVxuXG4jbGctYWN0dWFsLXNpemUge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbiNsZy1hY3R1YWwtc2l6ZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMDMzXCI7XG59XG5cbiNsZy16b29tLW91dCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbiNsZy16b29tLW91dDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMzEyXCI7XG59XG5cbi5sZy16b29tZWQgI2xnLXpvb20tb3V0IHtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItb3V0ZXIge1xuICBib3R0b206IDYwcHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogMTA4MDtcbiAgaGVpZ2h0OiAxMHB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLW91dGVyLmxnLXBhZ2VyLWhvdmVyIC5sZy1wYWdlci1jb250IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItY29udCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItY29udDpob3ZlciAubGctcGFnZXItdGh1bWItY29udCB7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci1jb250LmxnLXBhZ2VyLWFjdGl2ZSAubGctcGFnZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggd2hpdGUgaW5zZXQ7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXItdGh1bWItY29udCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjRkZGO1xuICBib3R0b206IDEwMCU7XG4gIGhlaWdodDogODNweDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEyMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjE1cyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcywgLW1vei10cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCAtby10cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlci10aHVtYi1jb250IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5sZy1vdXRlciAubGctcGFnZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSBpbnNldDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTJweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlIDBzO1xuICB3aWR0aDogMTJweDtcbn1cblxuLmxnLW91dGVyIC5sZy1wYWdlcjpob3ZlciwgLmxnLW91dGVyIC5sZy1wYWdlcjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDhweCB3aGl0ZSBpbnNldDtcbn1cblxuLmxnLW91dGVyIC5sZy1jYXJldCB7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDEwcHggZGFzaGVkO1xuICBib3R0b206IC0xMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMDtcbn1cblxuLmxnLWZ1bGxzY3JlZW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTIwY1wiO1xufVxuXG4ubGctZnVsbHNjcmVlbi1vbiAubGctZnVsbHNjcmVlbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMjBkXCI7XG59XG5cbi5sZy1vdXRlciAjbGctZHJvcGRvd24tb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGJvdHRvbTogMDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwODE7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjE4cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG4gIC1vLXRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgbGluZWFyIDAuMThzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC4xOHMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xufVxuXG4ubGctb3V0ZXIubGctZHJvcGRvd24tYWN0aXZlIC5sZy1kcm9wZG93biwgLmxnLW91dGVyLmxnLWRyb3Bkb3duLWFjdGl2ZSAjbGctZHJvcGRvd24tb3ZlcmxheSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMHB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ubGctb3V0ZXIubGctZHJvcGRvd24tYWN0aXZlICNsZy1zaGFyZSB7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRvcDogNTBweDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMThzIGxpbmVhciAwcywgdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC41cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4xOHMgbGluZWFyIDBzLCB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjVzLCBvcGFjaXR5IDAuMThzIGxpbmVhciAwcztcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuMThzIGxpbmVhciAwcywgdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC41cywgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE4cyBsaW5lYXIgMHMsIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuNXMsIG9wYWNpdHkgMC4xOHMgbGluZWFyIDBzO1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNGRkY7XG4gIHJpZ2h0OiAxNnB4O1xuICB0b3A6IC0xNnB4O1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duID4gbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biA+IGxpOmhvdmVyIGEsIC5sZy1vdXRlciAubGctZHJvcGRvd24gPiBsaTpob3ZlciAubGctaWNvbiB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ubGctb3V0ZXIgLmxnLWRyb3Bkb3duIGEge1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDRweCAxMnB4O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIixcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3KTtcbn1cblxuLmxnLW91dGVyIC5sZy1kcm9wZG93biAubGctZHJvcGRvd24tdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5sZy1vdXRlciAubGctZHJvcGRvd24gLmxnLWljb24ge1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgcGFkZGluZzogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTgwZFwiO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLWZhY2Vib29rIC5sZy1pY29uIHtcbiAgY29sb3I6ICMzYjU5OTg7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtZmFjZWJvb2sgLmxnLWljb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuXG4ubGctb3V0ZXIgI2xnLXNoYXJlLXR3aXR0ZXIgLmxnLWljb24ge1xuICBjb2xvcjogIzAwYWNlZDtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS10d2l0dGVyIC5sZy1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cblxuLmxnLW91dGVyICNsZy1zaGFyZS1nb29nbGVwbHVzIC5sZy1pY29uIHtcbiAgY29sb3I6ICNkZDRiMzk7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtZ29vZ2xlcGx1cyAubGctaWNvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtcGludGVyZXN0IC5sZy1pY29uIHtcbiAgY29sb3I6ICNjYjIwMjc7XG59XG5cbi5sZy1vdXRlciAjbGctc2hhcmUtcGludGVyZXN0IC5sZy1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cblxuLmxnLW91dGVyIC5sZy1pbWctcm90YXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAwIDVweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzIsIDAsIDAuNjcsIDApIDBzO1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzIsIDAsIDAuNjcsIDApIDBzO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4zMiwgMCwgMC42NywgMCkgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjMyLCAwLCAwLjY3LCAwKSAwcztcbn1cblxuLmxnLXJvdGF0ZS1sZWZ0OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cblxuLmxnLXJvdGF0ZS1yaWdodDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG5cbi5sZy1pY29uLmxnLWZsaXAtaG9yLCAubGctaWNvbi5sZy1mbGlwLXZlciB7XG4gIGZvbnQtc2l6ZTogMjZweDtcbn1cblxuLmxnLWZsaXAtaG9yOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cblxuLmxnLWZsaXAtdmVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cblxuLmxnLWdyb3VwIHtcbiAgKnpvb206IDE7XG59XG5cbi5sZy1ncm91cDpiZWZvcmUsIC5sZy1ncm91cDphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIlwiO1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuLmxnLWdyb3VwOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5sZy1vdXRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDUwO1xuICBvcGFjaXR5OiAwO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG59XG5cbi5sZy1vdXRlciAqIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5sZy1vdXRlci5sZy12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLW91dGVyLmxnLWNzczMgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSwgLmxnLW91dGVyLmxnLWNzczMgLmxnLWl0ZW0ubGctbmV4dC1zbGlkZSwgLmxnLW91dGVyLmxnLWNzczMgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyLmxnLWNzczMubGctZHJhZ2dpbmcgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSwgLmxnLW91dGVyLmxnLWNzczMubGctZHJhZ2dpbmcgLmxnLWl0ZW0ubGctbmV4dC1zbGlkZSwgLmxnLW91dGVyLmxnLWNzczMubGctZHJhZ2dpbmcgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLW91dGVyLmxnLWdyYWIgaW1nLmxnLW9iamVjdCB7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiAtby1ncmFiO1xuICBjdXJzb3I6IC1tcy1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG59XG5cbi5sZy1vdXRlci5sZy1ncmFiYmluZyBpbWcubGctb2JqZWN0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtby1ncmFiYmluZztcbiAgY3Vyc29yOiAtbXMtZ3JhYmJpbmc7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi5sZy1vdXRlciAubGcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cblxuLmxnLW91dGVyIC5sZy1pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGctb3V0ZXIgLmxnLWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5LmpzL2Rpc3QvaW1nL2xvYWRpbmcuZ2lmXCIpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubGctb3V0ZXIubGctY3NzMyAubGctcHJldi1zbGlkZSwgLmxnLW91dGVyLmxnLWNzczMgLmxnLWN1cnJlbnQsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1uZXh0LXNsaWRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5sZy1vdXRlci5sZy1jc3MgLmxnLWN1cnJlbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtLCAubGctb3V0ZXIgLmxnLWltZy13cmFwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmxnLW91dGVyIC5sZy1pdGVtOmJlZm9yZSwgLmxnLW91dGVyIC5sZy1pbWctd3JhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNTAlO1xuICB3aWR0aDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5sZy1vdXRlciAubGctaW1nLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbS5sZy1jb21wbGV0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5sZy1vdXRlciAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgei1pbmRleDogMTA2MDtcbn1cblxuLmxnLW91dGVyIC5sZy1pbWFnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmxnLW91dGVyLmxnLXNob3ctYWZ0ZXItbG9hZCAubGctaXRlbSAubGctb2JqZWN0LCAubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtIC5sZy12aWRlby1wbGF5IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xufVxuXG4ubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtLmxnLWNvbXBsZXRlIC5sZy1vYmplY3QsIC5sZy1vdXRlci5sZy1zaG93LWFmdGVyLWxvYWQgLmxnLWl0ZW0ubGctY29tcGxldGUgLmxnLXZpZGVvLXBsYXkge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctb3V0ZXIgLmxnLWVtcHR5LWh0bWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGctb3V0ZXIubGctaGlkZS1kb3dubG9hZCAjbGctZG93bmxvYWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGctYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xufVxuXG4ubGctYmFja2Ryb3AuaW4ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGctY3NzMy5sZy1uby10cmFucyAubGctcHJldi1zbGlkZSwgLmxnLWNzczMubGctbm8tdHJhbnMgLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLW5vLXRyYW5zIC5sZy1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lIDBzIGVhc2UgMHMgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lIDBzIGVhc2UgMHMgIWltcG9ydGFudDtcbiAgLW8tdHJhbnNpdGlvbjogbm9uZSAwcyBlYXNlIDBzICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgMHMgZWFzZSAwcyAhaW1wb3J0YW50O1xufVxuXG4ubGctY3NzMy5sZy11c2UtY3NzMyAubGctaXRlbSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGctY3NzMy5sZy11c2UtbGVmdCAubGctaXRlbSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGctY3NzMy5sZy1mYWRlIC5sZy1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctY3NzMy5sZy1mYWRlIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLWZhZGUgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWNzczMgLmxnLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1wcmV2LXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSB7XG4gIGxlZnQ6IC0xMDAlO1xufVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbS5sZy1uZXh0LXNsaWRlIHtcbiAgbGVmdDogMTAwJTtcbn1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1sZWZ0IC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGxlZnQgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGxlZnQgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogbGVmdCAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xufVxuXG4ubWRjLWNhcmQge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXN1cmZhY2UsICNmZmYpO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDFweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDFweCAxcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWRjLWNhcmQtLW91dGxpbmVkIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjZTBlMGUwO1xufVxuXG4ubWRjLWNhcmRfX21lZGlhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5tZGMtY2FyZF9fbWVkaWE6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubWRjLWNhcmRfX21lZGlhOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi5tZGMtY2FyZF9fbWVkaWE6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubWRjLWNhcmRfX21lZGlhLS1zcXVhcmU6OmJlZm9yZSB7XG4gIG1hcmdpbi10b3A6IDEwMCU7XG59XG5cbi5tZGMtY2FyZF9fbWVkaWEtLTE2LTk6OmJlZm9yZSB7XG4gIG1hcmdpbi10b3A6IDU2LjI1JTtcbn1cblxuLm1kYy1jYXJkX19tZWRpYS1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWluLWhlaWdodDogNTJweDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi1idXR0b25zLFxuLm1kYy1jYXJkX19hY3Rpb24taWNvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGZsZXgtZ3JvdzogMTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyArIC5tZGMtY2FyZF9fYWN0aW9uLWljb25zIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbltkaXI9XCJydGxcIl0gLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyArIC5tZGMtY2FyZF9fYWN0aW9uLWljb25zLCAubWRjLWNhcmRfX2FjdGlvbi1idXR0b25zICsgLm1kYy1jYXJkX19hY3Rpb24taWNvbnNbZGlyPVwicnRsXCJdIHtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG5cbi5tZGMtY2FyZF9fYWN0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b24ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBwYWRkaW5nOiAwIDhweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uLCAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgLyogQG5vZmxpcCAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b246bGFzdC1jaGlsZCB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b246bGFzdC1jaGlsZCwgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbjpsYXN0LWNoaWxkW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgLyogQG5vZmxpcCAqL1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtY2FyZF9fYWN0aW9ucy0tZnVsbC1ibGVlZCAubWRjLWNhcmRfX2FjdGlvbi0tYnV0dG9uLCAubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi0taWNvbiB7XG4gIG1hcmdpbjogLTZweCAwO1xuICBwYWRkaW5nOiAxMnB4O1xufVxuXG4ubWRjLWNhcmRfX2FjdGlvbi0taWNvbjpub3QoOmRpc2FibGVkKSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ge1xuICAtLW1kYy1yaXBwbGUtZmctc2l6ZTogMDtcbiAgLS1tZGMtcmlwcGxlLWxlZnQ6IDA7XG4gIC0tbWRjLXJpcHBsZS10b3A6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy1zY2FsZTogMTtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6IDA7XG4gIC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YmVmb3JlLCAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAxNW1zIGxpbmVhcjtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLXVuYm91bmRlZDo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWRlYWN0aXZhdGlvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YmVmb3JlLCAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOjphZnRlciB7XG4gIHRvcDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiBjYWxjKDUwJSAtIDEwMCUpO1xuICB3aWR0aDogMjAwJTtcbiAgaGVpZ2h0OiAyMDAlO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjo6YmVmb3JlLCAubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWNhcmRfX3ByaW1hcnktYWN0aW9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejAge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MSB7XG4gIGJveC1zaGFkb3c6IDBweCAycHggMXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMXB4IDFweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MiB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MyB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggM3B4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggM3B4IDRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCA4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16NCwgLnByb2R1Y3RfaW1hZ2VzIC5saXN0LXBob3RvIGxpOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA0cHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16NSB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggNXB4IDhweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCAxNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejYge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDZweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggMXB4IDE4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16NyB7XG4gIGJveC1zaGFkb3c6IDBweCA0cHggNXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggN3B4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAycHggMTZweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXo4IHtcbiAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejkge1xuICBib3gtc2hhZG93OiAwcHggNXB4IDZweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDlweCAxMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggM3B4IDE2cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTAge1xuICBib3gtc2hhZG93OiAwcHggNnB4IDZweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDEwcHggMTRweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDRweCAxOHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejExIHtcbiAgYm94LXNoYWRvdzogMHB4IDZweCA3cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxMXB4IDE1cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA0cHggMjBweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoxMiB7XG4gIGJveC1zaGFkb3c6IDBweCA3cHggOHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTJweCAxN3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNXB4IDIycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTMge1xuICBib3gtc2hhZG93OiAwcHggN3B4IDhweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDEzcHggMTlweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDVweCAyNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejE0IHtcbiAgYm94LXNoYWRvdzogMHB4IDdweCA5cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxNHB4IDIxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA1cHggMjZweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoxNSB7XG4gIGJveC1zaGFkb3c6IDBweCA4cHggOXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMTVweCAyMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggNnB4IDI4cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTYge1xuICBib3gtc2hhZG93OiAwcHggOHB4IDEwcHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxNnB4IDI0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA2cHggMzBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoxNyB7XG4gIGJveC1zaGFkb3c6IDBweCA4cHggMTFweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDE3cHggMjZweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDZweCAzMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ubWRjLWVsZXZhdGlvbi0tejE4IHtcbiAgYm94LXNoYWRvdzogMHB4IDlweCAxMXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMThweCAyOHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggN3B4IDM0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5tZGMtZWxldmF0aW9uLS16MTkge1xuICBib3gtc2hhZG93OiAwcHggOXB4IDEycHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxOXB4IDI5cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA3cHggMzZweCA2cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoyMCB7XG4gIGJveC1zaGFkb3c6IDBweCAxMHB4IDEzcHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAyMHB4IDMxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA4cHggMzhweCA3cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoyMSB7XG4gIGJveC1zaGFkb3c6IDBweCAxMHB4IDEzcHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAyMXB4IDMzcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA4cHggNDBweCA3cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoyMiB7XG4gIGJveC1zaGFkb3c6IDBweCAxMHB4IDE0cHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAyMnB4IDM1cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA4cHggNDJweCA3cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoyMyB7XG4gIGJveC1zaGFkb3c6IDBweCAxMXB4IDE0cHggLTdweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAyM3B4IDM2cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA5cHggNDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tLXoyNCB7XG4gIGJveC1zaGFkb3c6IDBweCAxMXB4IDE1cHggLTdweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAyNHB4IDM4cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA5cHggNDZweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbiB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjgwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgd2lsbC1jaGFuZ2U6IGJveC1zaGFkb3c7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDEycHg7XG59XG5cbi5tZGMtaWNvbi1idXR0b24gc3ZnLFxuLm1kYy1pY29uLWJ1dHRvbiBpbWcge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG4ubWRjLWljb24tYnV0dG9uOmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS10ZXh0LWRpc2FibGVkLW9uLWxpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1kYy1pY29uLWJ1dHRvbl9faWNvbi5tZGMtaWNvbi1idXR0b25fX2ljb24tLW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbi0tb24gLm1kYy1pY29uLWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZGMtaWNvbi1idXR0b24tLW9uIC5tZGMtaWNvbi1idXR0b25fX2ljb24ubWRjLWljb24tYnV0dG9uX19pY29uLS1vbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1kYy1pY29uLWJ1dHRvbiB7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1bXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tdW5ib3VuZGVkOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIDApO1xuICAvKiBAbm9mbGlwICovXG4gIGxlZnQ6IHZhcigtLW1kYy1yaXBwbGUtbGVmdCwgMCk7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1hY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW4gMjI1bXMgZm9yd2FyZHMsIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiA3NW1zIGZvcndhcmRzO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQtLWZvcmVncm91bmQtZGVhY3RpdmF0aW9uOjphZnRlciB7XG4gIGFuaW1hdGlvbjogbWRjLXJpcHBsZS1mZy1vcGFjaXR5LW91dCAxNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLCAwKSkgc2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwgMSkpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDUwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSA1MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmJlZm9yZSwgLm1kYy1pY29uLWJ1dHRvbi5tZGMtcmlwcGxlLXVwZ3JhZGVkOjphZnRlciB7XG4gIHRvcDogdmFyKC0tbWRjLXJpcHBsZS10b3AsIGNhbGMoNTAlIC0gNTAlKSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogdmFyKC0tbWRjLXJpcHBsZS1sZWZ0LCBjYWxjKDUwJSAtIDUwJSkpO1xuICB3aWR0aDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbiAgaGVpZ2h0OiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xufVxuXG4ubWRjLWljb24tYnV0dG9uLm1kYy1yaXBwbGUtdXBncmFkZWQ6OmFmdGVyIHtcbiAgd2lkdGg6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG4gIGhlaWdodDogdmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLCAxMDAlKTtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjo6YmVmb3JlLCAubWRjLWljb24tYnV0dG9uOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi5tZGMtaWNvbi1idXR0b246aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMDQ7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkOjpiZWZvcmUsIC5tZGMtaWNvbi1idXR0b246bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1czo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4xMjtcbn1cblxuLm1kYy1pY29uLWJ1dHRvbjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpOjphZnRlciB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuXG4ubWRjLWljb24tYnV0dG9uOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gIG9wYWNpdHk6IDAuMTI7XG59XG5cbi5tZGMtaWNvbi1idXR0b24ubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjEyO1xufVxuXG4ubWRjLWZhYiB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggNnB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAxcHggMThweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiA1NnB4O1xuICBoZWlnaHQ6IDU2cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIG9wYWNpdHkgMTVtcyBsaW5lYXIgMzBtcywgdHJhbnNmb3JtIDI3MG1zIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxODc4NjtcbiAgY29sb3I6ICNmZmY7XG4gIC8qIEBhbHRlcm5hdGUgKi9cbiAgY29sb3I6IHZhcigtLW1kYy10aGVtZS1vbi1zZWNvbmRhcnksICNmZmYpO1xufVxuXG4ubWRjLWZhYjpub3QoLm1kYy1mYWItLWV4dGVuZGVkKSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLm1kYy1mYWI6bm90KC5tZGMtZmFiLS1leHRlbmRlZCkgLm1kYy1mYWJfX3JpcHBsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLm1kYy1mYWI6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5tZGMtZmFiOmhvdmVyLCAubWRjLWZhYjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDBweCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggOHB4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAzcHggMTRweCAycHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1mYWI6YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMHB4IDdweCA4cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAxMnB4IDE3cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCA1cHggMjJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLm1kYy1mYWI6YWN0aXZlLCAubWRjLWZhYjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tZGMtZmFiOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWRjLWZhYiA+IHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5Ac3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gIC5tZGMtZmFiIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLXNlY29uZGFyeSwgIzAxODc4Nik7XG4gIH1cbn1cblxuLm1kYy1mYWIgLm1kYy1mYWJfX2ljb24ge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbi5tZGMtZmFiLS1taW5pIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbn1cblxuLm1kYy1mYWItLWV4dGVuZGVkIHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bywgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wODkyOWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4ubWRjLWZhYi0tZXh0ZW5kZWQgLm1kYy1mYWJfX3JpcHBsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG59XG5cbi5tZGMtZmFiLS1leHRlbmRlZCAubWRjLWZhYl9faWNvbiB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xufVxuXG5bZGlyPVwicnRsXCJdIC5tZGMtZmFiLS1leHRlbmRlZCAubWRjLWZhYl9faWNvbiwgLm1kYy1mYWItLWV4dGVuZGVkIC5tZGMtZmFiX19pY29uW2Rpcj1cInJ0bFwiXSB7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xufVxuXG4ubWRjLWZhYi0tZXh0ZW5kZWQgLm1kYy1mYWJfX2xhYmVsICsgLm1kYy1mYWJfX2ljb24ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogLThweDtcbn1cblxuW2Rpcj1cInJ0bFwiXSAubWRjLWZhYi0tZXh0ZW5kZWQgLm1kYy1mYWJfX2xhYmVsICsgLm1kYy1mYWJfX2ljb24sIC5tZGMtZmFiLS1leHRlbmRlZCAubWRjLWZhYl9fbGFiZWwgKyAubWRjLWZhYl9faWNvbltkaXI9XCJydGxcIl0ge1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAvKiBAbm9mbGlwICovXG4gIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLm1kYy1mYWJfX2xhYmVsIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1kYy1mYWJfX2ljb24ge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTgwbXMgOTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuXG4ubWRjLWZhYiAubWRjLWZhYl9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLm1kYy1mYWItLWV4aXRlZCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTVtcyBsaW5lYXIgMTUwbXMsIHRyYW5zZm9ybSAxODBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSk7XG59XG5cbi5tZGMtZmFiLS1leGl0ZWQgLm1kYy1mYWJfX2ljb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTM1bXMgMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpO1xufVxuXG4ubWRjLWZhYiB7XG4gIC0tbWRjLXJpcHBsZS1mZy1zaXplOiAwO1xuICAtLW1kYy1yaXBwbGUtbGVmdDogMDtcbiAgLS1tZGMtcmlwcGxlLXRvcDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXNjYWxlOiAxO1xuICAtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDogMDtcbiAgLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1zdGFydDogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4ubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlOjpiZWZvcmUsXG4ubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNW1zIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAxNW1zIGxpbmVhcjtcbiAgei1pbmRleDogMTtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLWZhYl9fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gIHRvcDogMDtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4ubWRjLWZhYi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS11bmJvdW5kZWQgLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLW1kYy1yaXBwbGUtdG9wLCAwKTtcbiAgLyogQG5vZmxpcCAqL1xuICBsZWZ0OiB2YXIoLS1tZGMtcmlwcGxlLWxlZnQsIDApO1xufVxuXG4ubWRjLWZhYi5tZGMtcmlwcGxlLXVwZ3JhZGVkLS1mb3JlZ3JvdW5kLWFjdGl2YXRpb24gLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLCBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkcztcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tZm9yZWdyb3VuZC1kZWFjdGl2YXRpb24gLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICBhbmltYXRpb246IG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZCwgMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsIDEpKTtcbn1cblxuLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlLFxuLm1kYy1mYWIgLm1kYy1mYWJfX3JpcHBsZTo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gMTAwJSk7XG4gIC8qIEBub2ZsaXAgKi9cbiAgbGVmdDogY2FsYyg1MCUgLSAxMDAlKTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZCAubWRjLWZhYl9fcmlwcGxlOjphZnRlciB7XG4gIHdpZHRoOiB2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsIDEwMCUpO1xuICBoZWlnaHQ6IHZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwgMTAwJSk7XG59XG5cbi5tZGMtZmFiIC5tZGMtZmFiX19yaXBwbGU6OmJlZm9yZSxcbi5tZGMtZmFiIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlOjpiZWZvcmUsXG4gIC5tZGMtZmFiIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgICAvKiBAYWx0ZXJuYXRlICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWRjLXRoZW1lLW9uLXNlY29uZGFyeSwgI2ZmZik7XG4gIH1cbn1cblxuLm1kYy1mYWI6aG92ZXIgLm1kYy1mYWJfX3JpcHBsZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4wODtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZC0tYmFja2dyb3VuZC1mb2N1c2VkIC5tZGMtZmFiX19yaXBwbGU6OmJlZm9yZSwgLm1kYy1mYWI6bm90KC5tZGMtcmlwcGxlLXVwZ3JhZGVkKTpmb2N1cyAubWRjLWZhYl9fcmlwcGxlOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NW1zO1xuICBvcGFjaXR5OiAwLjI0O1xufVxuXG4ubWRjLWZhYjpub3QoLm1kYy1yaXBwbGUtdXBncmFkZWQpIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG5cbi5tZGMtZmFiOm5vdCgubWRjLXJpcHBsZS11cGdyYWRlZCk6YWN0aXZlIC5tZGMtZmFiX19yaXBwbGU6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzVtcztcbiAgb3BhY2l0eTogMC4yNDtcbn1cblxuLm1kYy1mYWIubWRjLXJpcHBsZS11cGdyYWRlZCB7XG4gIC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OiAwLjI0O1xufVxuXG4ubWRjLWZhYiAubWRjLWZhYl9fcmlwcGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKipcbiAgIEJvdXRpcXVlXG4gKi9cbi5jb250YWluZXJfY2VudGVyLCAuZmlsZV9hcmlhbmUge1xuICBtYXgtd2lkdGg6IDk1MHB4O1xufVxuXG4vKipcbiAgIFLDqXBhcnRpdGlvbiBkZSBsYSBib3V0aXF1ZVxuKi9cbi5zaG9wX25hdiB7XG4gIGZsZXg6IDI7XG59XG5cbi5zaG9wX2NvbnRlbnQge1xuICBmbGV4OiA3O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLnNob3Age1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnNob3BfbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qKlxuICAgQXNpZGUgZGUgbGEgYm91dGlxdWVcbiovXG4uc2hvcF9uYXYgaDIge1xuICBwYWRkaW5nOiA1cHggMHB4IDVweCAwO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBmb250LXNpemU6IDEuNGVtO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLnNob3BfbmF2IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAuc2hvcF9uYXYgdWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIH1cbn1cblxuLnNob3BfbmF2IC5jYXRlZ29yeSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBjb250ZW50cztcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLnNob3BfbmF2IC5jYXRlZ29yeSBhIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMCA1MHB4IDUwcHggMDtcbn1cblxuLnNob3BfbmF2IC5jYXRlZ29yeS5hY3RpdmUgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NDNjYwMDtcbn1cblxuLnNob3BfbmF2IC5jYXRlZ29yeTpob3Zlcjpub3QoLmFjdGl2ZSkgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjA0LCAxMDIsIDAsIDAuMTUpO1xufVxuXG4vKiBcbiAgIEZpbGUgZCdhcmluZVxuICAgcHLDqXNlbnQgc3VyIGxlcyBwYWdlcyAve2NhdGVnb3JpZX0gZXQgL3tjYXRlZ29yaWV9L3twcm9kdWN0fSBcbiovXG4uZmlsZV9hcmlhbmUge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDE1cHggYXV0bztcbiAgcGFkZGluZzogNXB4IDA7XG4gIGNvbG9yOiAjNTczRDFDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xufVxuXG4uZmlsZV9hcmlhbmUgYSxcbi5maWxlX2FyaWFuZSBzcGFuIHtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBtYXJnaW46IDVweCAwO1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG4uZmlsZV9hcmlhbmUgYSB7XG4gIGNvbG9yOiBncmF5O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCBncmF5O1xufVxuXG4uZmlsZV9hcmlhbmUgc3BhbiB7XG4gIGNvbG9yOiAjQ0M2NjAwO1xufVxuXG4vKipcbiAgIENvbnRlbnUgZGUgbGEgcGFnZVxuICAgKMOgIGNvdMOpIGRlIGwnYXNpZGUpXG4qL1xuLnNob3BfY29udGVudCB7XG4gIG1hcmdpbjogMCAxMHB4IDEwcHggMjBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zaG9wX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgfVxufVxuXG4vKipcbiAgIEZBQiBQYW5pZXJcbiAgICh2aXNpYmxlIHF1J2VuIG1vZGUgbW9iaWxlKVxuKi9cbi5mb2FsdGluZy1iYXNrZXQge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMzVweDtcbiAgcmlnaHQ6IDM1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQzY2MDA7XG4gIHotaW5kZXg6IDEwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvYWx0aW5nLWJhc2tldCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cbn1cblxuLmZvYWx0aW5nLWJhc2tldCAuY291bnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNjMwMzA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cblxuLmZvYWx0aW5nLWJhc2tldF9fZW1wdHkgLmNvdW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZvYWx0aW5nLWJhc2tldF9fdXAgLmNvdW50IHtcbiAgYW5pbWF0aW9uOiBjb3VudC16b29tIDNzIGZvcndhcmRzIDE7XG59XG5cbi8qIFBhZ2UgZCd1biBwcmR1aXQgKi9cbi5wcm9kdWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4ucHJvZHVjdF9pbWFnZXMsIC5wcm9kdWN0X2RldGFpbHMge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi5wcm9kdWN0X2ltYWdlcyAuY292ZXIge1xuICBoZWlnaHQ6IDM1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5wcm9kdWN0X2ltYWdlcyAuY292ZXIgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdF9pbWFnZXMgLmxpc3QtcGhvdG8ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMTBweCAwIDAgMDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbi5wcm9kdWN0X2ltYWdlcyAubGlzdC1waG90byBsaSB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbjogNXB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogZWFzZS1pbi1vdXQgYm94LXNoYWRvdyAwLjNzO1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnByb2R1Y3RfZGV0YWlscyBoMSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAyLjJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgLnByaWNlX3N0YXJ0LFxuLnByb2R1Y3RfZGV0YWlscyBoMyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgLnByaWNlX3N0YXJ0IHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIC5wcmljZV9zdGFydCArIGgzIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnByb2R1Y3RfZGV0YWlscyBoMyB7XG4gIGZvbnQtc2l6ZTogMS42ZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgLnByb2R1Y3Rfc3RhdHVzIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNHB4IDdweDtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIC5wcm9kdWN0X3N0YXR1c18wIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG59XG5cbi5wcm9kdWN0X2RldGFpbHMgLnByb2R1Y3Rfc3RhdHVzXzEsIC5wcm9kdWN0X2RldGFpbHMgLnByb2R1Y3Rfc3RhdHVzXzIsIC5wcm9kdWN0X2RldGFpbHMgLnByb2R1Y3Rfc3RhdHVzXzMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbn1cblxuLnByb2R1Y3RfZGV0YWlscyAucHJvZHVjdF9zdGF0dXNfNCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ucHJvZHVjdF9kZXRhaWxzIHAge1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnByb2R1Y3Qge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnByb2R1Y3RfaW1hZ2VzIHtcbiAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICB9XG4gIC5wcm9kdWN0X2ltYWdlcyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAucHJvZHVjdF9kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qIETDqXRhaWxzIGR1IHByb2R1aXQgLSBPcHRpb25zICovXG4ucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlIC5wcm9kdWN0LWRldGFpbHNfb3B0aW9uIHtcbiAgZmxleDogMTtcbiAgbWFyZ2luOiAwIDEwcHg7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMucHJvZHVjdC1kZXRhaWxzX19zaW1wbGUgLnByb2R1Y3QtZGV0YWlsc190aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM3Nzc7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlIC5wcm9kdWN0LWRldGFpbHNfY2hvaWNlcyB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucHJvZHVjdC1kZXRhaWxzLnByb2R1Y3QtZGV0YWlsc19fc2ltcGxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5wcm9kdWN0LWRldGFpbHMucHJvZHVjdC1kZXRhaWxzX19zaW1wbGUgLnByb2R1Y3QtZGV0YWlsc19vcHRpb24ge1xuICAgIG1hcmdpbjogMTVweCAwO1xuICB9XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1idWNrbGVfYnVja2xlIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgbWFyZ2luOiAxMHB4IDVweCAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1idWNrbGVfaW1nIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggbGlnaHRncmF5O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtYnVja2xlX2ltZyBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3Ige1xuICAvKiBzdXJjaGFyZ2UgZGVzIHRvb2x0aXBzICovXG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9jb2xvciB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1hcmdpbjogMTBweCA1cHggMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggbGlnaHRncmF5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWc6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNDQzY2MDA7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZy5ub2lyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZy5ibGFuYyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcubWFycm9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkMTkwMTtcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZy5oYXZhbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk1MzIwO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nLnJvdWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NkMDMwMztcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZy5qYXVuZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmM3MDA7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcuYmxldS10dXJxdW9pc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMGY4O1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzIC5jaG9pY2UtY29sb3JfaW1nLm51bGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9pbWcubnVsbDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICB3aWR0aDogMTI0cHg7XG4gIGhlaWdodDogMnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC0zMWRlZyk7XG59XG5cbi5wcm9kdWN0LWRldGFpbHMgLmNob2ljZS1jb2xvcl9jb2xvciBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2ltZyB7XG4gIGJvcmRlci1jb2xvcjogIzU3M0QxQztcbn1cblxuLnByb2R1Y3QtZGV0YWlscyAuY2hvaWNlLWNvbG9yX2NvbG9yIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyAuY2hvaWNlLWNvbG9yX2ltZzphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI3MTQnO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtc2hhZG93OiAtMXB4IDAgYmxhY2ssIDAgMXB4IGJsYWNrLCAxcHggMCBibGFjaywgMCAtMXB4IGJsYWNrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCAyMDE3IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cbi8vXG5cbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9zaGFwZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcblxuLy9cbi8vIFB1YmxpY1xuLy9cblxuQG1peGluIG1kYy1jYXJkLWNvcmUtc3R5bGVzKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgQGluY2x1ZGUgbWRjLWNhcmQtd2l0aG91dC1yaXBwbGUoJHF1ZXJ5KTtcbiAgQGluY2x1ZGUgbWRjLWNhcmQtcmlwcGxlKCRxdWVyeSk7XG59XG5cbi8vIFRoaXMgQVBJIGlzIGludGVuZGVkIGZvciB1c2UgYnkgZnJhbWV3b3JrcyB0aGF0IG1heSB3YW50IHRvIHNlcGFyYXRlIHRoZSByaXBwbGUtcmVsYXRlZCBzdHlsZXMgZnJvbSB0aGUgb3RoZXJcbi8vIGNhcmQgc3R5bGVzLiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IG1vc3QgdXNlcnMgdXNlIGBtZGMtY2FyZC1jb3JlLXN0eWxlc2AgaW5zdGVhZC5cbkBtaXhpbiBtZGMtY2FyZC13aXRob3V0LXJpcHBsZSgkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGNhcmRcblxuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICAubWRjLWNhcmQge1xuICAgIEBpbmNsdWRlIG1kYy1jYXJkLXNoYXBlLXJhZGl1cyhtZWRpdW0sICRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtY2FyZC1maWxsLWNvbG9yKHN1cmZhY2UsICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbigxLCAkcXVlcnk6ICRxdWVyeSk7XG5cbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgQGluY2x1ZGUgbWRjLWNhcmQtY29udGFpbmVyLWxheW91dF87XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jYXJkLS1vdXRsaW5lZCB7XG4gICAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbigwLCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWNhcmQtb3V0bGluZSgkbWRjLWNhcmQtb3V0bGluZS1jb2xvciwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgLy9cbiAgLy8gTWVkaWFcbiAgLy9cblxuICAubWRjLWNhcmRfX21lZGlhIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBDaGlsZCBlbGVtZW50IGBfX21lZGlhLWNvbnRlbnRgIGhhcyBgcG9zaXRpb246IGFic29sdXRlYFxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLWNhcmRfX21lZGlhOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5tZGMtY2FyZF9fbWVkaWE6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAubWRjLWNhcmRfX21lZGlhLS1zcXVhcmUge1xuICAgIEBpbmNsdWRlIG1kYy1jYXJkLW1lZGlhLWFzcGVjdC1yYXRpbygxLCAxLCAkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1jYXJkX19tZWRpYS0tMTYtOSB7XG4gICAgQGluY2x1ZGUgbWRjLWNhcmQtbWVkaWEtYXNwZWN0LXJhdGlvKDE2LCA5LCAkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1jYXJkX19tZWRpYS1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gIH1cblxuICAvL1xuICAvLyBQcmltYXJ5IGFjdGlvblxuICAvL1xuXG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtY2FyZC1jb250YWluZXItbGF5b3V0XztcblxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBOZWVkZWQgdG8gcHJldmVudCB0aGUgcmlwcGxlIHdhc2ggZnJvbSBvdmVyZmxvd2luZyB0aGUgY29udGFpbmVyIGluIElFIGFuZCBFZGdlXG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jYXJkX19wcmltYXJ5LWFjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC8vXG4gIC8vIEFjdGlvbiByb3dcbiAgLy9cblxuICAubWRjLWNhcmRfX2FjdGlvbnMge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtY2FyZC1hY3Rpb25zLWxheW91dF87XG5cbiAgICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jYXJkX19hY3Rpb25zLS1mdWxsLWJsZWVkIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAubWRjLWNhcmRfX2FjdGlvbi1idXR0b25zLFxuICAubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1jYXJkLWFjdGlvbnMtbGF5b3V0XztcbiAgICB9XG4gIH1cblxuICAubWRjLWNhcmRfX2FjdGlvbi1pY29ucyB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1jb2xvcikge1xuICAgICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRtZGMtY2FyZC1hY3Rpb24taWNvbi1jb2xvcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jYXJkX19hY3Rpb24tYnV0dG9ucyArIC5tZGMtY2FyZF9fYWN0aW9uLWljb25zIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgQGluY2x1ZGUgbWRjLXJ0bC1yZWZsZXhpdmUtYm94KG1hcmdpbiwgbGVmdCwgMTZweCk7XG4gICAgfVxuICB9XG5cbiAgLy9cbiAgLy8gQWN0aW9uIGl0ZW1zXG4gIC8vXG5cbiAgLm1kYy1jYXJkX19hY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtY2FyZC1hY3Rpb25zLWxheW91dF8oaW5saW5lLWZsZXgpO1xuXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvL1xuICAvLyBBY3Rpb24gYnV0dG9uc1xuICAvL1xuXG4gIC5tZGMtY2FyZF9fYWN0aW9uLS1idXR0b24ge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtcnRsLXJlZmxleGl2ZS1ib3gobWFyZ2luLCByaWdodCwgOHB4KTtcblxuICAgICAgcGFkZGluZzogMCA4cHg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLWJveChtYXJnaW4sIHJpZ2h0LCAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWRjLWNhcmRfX2FjdGlvbnMtLWZ1bGwtYmxlZWQgLm1kYy1jYXJkX19hY3Rpb24tLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgLyogQG5vZmxpcCAqL1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZGMtcnRsIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAgIC8qIEBub2ZsaXAgKi9cbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9cbiAgLy8gQWN0aW9uIGljb25zXG4gIC8vXG5cbiAgLm1kYy1jYXJkX19hY3Rpb24tLWljb24ge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAvLyBJY29uIGJ1dHRvbnMgYXJlIHRhbGxlciB0aGFuIGJ1dHRvbnMsIHNvIHdlIG5lZWQgdG8gYWRqdXN0IHRoZWlyIG1hcmdpbnMgdG8gcHJldmVudCB0aGUgYWN0aW9uIHJvdyBmcm9tXG4gICAgICAvLyBleHBhbmRpbmcuXG4gICAgICBtYXJnaW46IC02cHggMDtcblxuICAgICAgLy8gU2FtZSBwYWRkaW5nIGFzIG1kYy1pY29uLWJ1dHRvbi5cbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuICB9XG5cbiAgLm1kYy1jYXJkX19hY3Rpb24tLWljb246bm90KDpkaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtY29sb3IpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGNvbG9yLCAkbWRjLWNhcmQtYWN0aW9uLWljb24tY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG59XG5cbi8vIFRoaXMgQVBJIGlzIGludGVuZGVkIGZvciB1c2UgYnkgZnJhbWV3b3JrcyB0aGF0IG1heSB3YW50IHRvIHNlcGFyYXRlIHRoZSByaXBwbGUtcmVsYXRlZCBzdHlsZXMgZnJvbSB0aGUgb3RoZXJcbi8vIGNhcmQgc3R5bGVzLiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IG1vc3QgdXNlcnMgdXNlIGBtZGMtY2FyZC1jb3JlLXN0eWxlc2AgaW5zdGVhZC5cbkBtaXhpbiBtZGMtY2FyZC1yaXBwbGUoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtcmlwcGxlLWNvbW1vbigkcXVlcnkpO1xuXG4gIC5tZGMtY2FyZF9fcHJpbWFyeS1hY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtc3VyZmFjZSgkcXVlcnkpO1xuICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtcmFkaXVzLWJvdW5kZWQoJHF1ZXJ5OiAkcXVlcnkpO1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMoJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2FyZC1maWxsLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWNhcmQtb3V0bGluZSgkY29sb3IsICR0aGlja25lc3M6ICRtZGMtY2FyZC1vdXRsaW5lLXdpZHRoLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWNvbG9yOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgY29sb3IpO1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGhpY2tuZXNzO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgYm9yZGVyLWNvbG9yOiBtZGMtdGhlbWUtcHJvcC12YWx1ZSgkY29sb3IpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtY2FyZC1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmUsICRxdWVyeTogJHF1ZXJ5KTtcbn1cblxuQG1peGluIG1kYy1jYXJkLW1lZGlhLWFzcGVjdC1yYXRpbygkeCwgJHksICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICAvLyBUaGlzIGNsZXZlciB0cmljayBicm91Z2h0IHRvIHlvdSBieTogaHR0cDovL3d3dy5tYWRlbXlkYXkuZGUvY3NzLWhlaWdodC1lcXVhbHMtd2lkdGgtd2l0aC1wdXJlLWNzcy5odG1sXG4gICAgICBtYXJnaW4tdG9wOiBwZXJjZW50YWdlKCR5IC8gJHgpO1xuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gUHJpdmF0ZVxuLy9cblxuQG1peGluIG1kYy1jYXJkLWNvbnRhaW5lci1sYXlvdXRfIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuQG1peGluIG1kYy1jYXJkLWFjdGlvbnMtbGF5b3V0XygkZGlzcGxheTogZmxleCkge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AaW1wb3J0IFwiQG1hdGVyaWFsL3RoZW1lL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS92YXJpYWJsZXNcIjtcblxuJG1kYy1jYXJkLWFjdGlvbi1pY29uLWNvbG9yOiByZ2JhKG1kYy10aGVtZS1wcm9wLXZhbHVlKG9uLXN1cmZhY2UpLCBtZGMtdGhlbWUtdGV4dC1lbXBoYXNpcyhtZWRpdW0pKSAhZGVmYXVsdDtcbiRtZGMtY2FyZC1vdXRsaW5lLWNvbG9yOiBtaXgobWRjLXRoZW1lLXByb3AtdmFsdWUob24tc3VyZmFjZSksIG1kYy10aGVtZS1wcm9wLXZhbHVlKHN1cmZhY2UpLCAxMiUpICFkZWZhdWx0O1xuJG1kYy1jYXJkLW91dGxpbmUtd2lkdGg6IDFweCAhZGVmYXVsdDtcbiIsIi8vIENvcHlyaWdodCAyMDE2IEdvb2dsZSBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuQGltcG9ydCBcIkBtYXRlcmlhbC9hbmltYXRpb24vZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2VsZXZhdGlvbi9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZWxldmF0aW9uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mZWF0dXJlLXRhcmdldGluZy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvZmVhdHVyZS10YXJnZXRpbmcvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3JpcHBsZS9taXhpbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcmlwcGxlL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90aGVtZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvdGhlbWUvbWl4aW5zXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL3NoYXBlL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9zaGFwZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJAbWF0ZXJpYWwvcnRsL21peGluc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC90eXBvZ3JhcGh5L21peGluc1wiO1xuQGltcG9ydCBcIi4vdmFyaWFibGVzXCI7XG5cbiRtZGMtZmFiLXJpcHBsZS10YXJnZXQ6IFwiLm1kYy1mYWJfX3JpcHBsZVwiO1xuXG5AbWl4aW4gbWRjLWZhYi1jb3JlLXN0eWxlcygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1mYWItd2l0aG91dC1yaXBwbGUoJHF1ZXJ5KTtcbiAgQGluY2x1ZGUgbWRjLWZhYi1yaXBwbGUoJHF1ZXJ5KTtcbn1cblxuQG1peGluIG1kYy1mYWItd2l0aG91dC1yaXBwbGUoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAvLyBwb3N0Y3NzLWJlbS1saW50ZXI6IGRlZmluZSBmYWJcblxuICAubWRjLWZhYiB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi1iYXNlXygkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi1jb250YWluZXItY29sb3Ioc2Vjb25kYXJ5LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi1pY29uLXNpemUoMjRweCwgJHF1ZXJ5OiAkcXVlcnkpO1xuICAgIEBpbmNsdWRlIG1kYy1mYWItaW5rLWNvbG9yKG9uLXNlY29uZGFyeSwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgLm1kYy1mYWItLW1pbmkge1xuICAgIEBpbmNsdWRlIG1kYy1mYWItLW1pbmlfKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtZmFiLS1leHRlbmRlZCB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi0tZXh0ZW5kZWRfKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtZmFiX19sYWJlbCB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi0tbGFiZWxfKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtZmFiX19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtZmFiX19pY29uXygkcXVlcnk6ICRxdWVyeSk7XG4gIH1cblxuICAvLyBJbmNyZWFzZSBzcGVjaWZpY2l0eSBmb3IgRkFCIGljb24gc3R5bGVzIHRoYXQgbmVlZCB0byBvdmVycmlkZSBzdHlsZXMgZGVmaW5lZCBmb3IgLm1hdGVyaWFsLWljb25zXG4gIC8vICh3aGljaCBpcyBsb2FkZWQgc2VwYXJhdGVseSBzbyB0aGUgb3JkZXIgb2YgQ1NTIGRlZmluaXRpb25zIGlzIG5vdCBndWFyYW50ZWVkKVxuICAubWRjLWZhYiAubWRjLWZhYl9faWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYl9faWNvbi1vdmVycmlkZXNfKCRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gIC5tZGMtZmFiLS1leGl0ZWQge1xuICAgIEBpbmNsdWRlIG1kYy1mYWItLWV4aXRlZF8oJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgLy8gcG9zdGNzcy1iZW0tbGludGVyOiBlbmRcbn1cblxuQG1peGluIG1kYy1mYWItcmlwcGxlKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtcmlwcGxlLWNvbW1vbigkcXVlcnkpO1xuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZGVmaW5lIGZhYlxuXG4gIC5tZGMtZmFiIHtcbiAgICBAaW5jbHVkZSBtZGMtcmlwcGxlLXN1cmZhY2UoXG4gICAgICAkcXVlcnk6ICRxdWVyeSwgJHJpcHBsZS10YXJnZXQ6ICRtZGMtZmFiLXJpcHBsZS10YXJnZXQpO1xuICAgIEBpbmNsdWRlIG1kYy1yaXBwbGUtcmFkaXVzLWJvdW5kZWQoXG4gICAgICAkcXVlcnk6ICRxdWVyeSwgJHJpcHBsZS10YXJnZXQ6ICRtZGMtZmFiLXJpcHBsZS10YXJnZXQpO1xuICAgIEBpbmNsdWRlIG1kYy1zdGF0ZXMoXG4gICAgICBvbi1zZWNvbmRhcnksICRxdWVyeTogJHF1ZXJ5LCAkcmlwcGxlLXRhcmdldDogJG1kYy1mYWItcmlwcGxlLXRhcmdldCk7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcGx1Z2luL3NlbGVjdG9yLWJlbS1wYXR0ZXJuXG4gICAgI3skbWRjLWZhYi1yaXBwbGUtdGFyZ2V0fSB7XG4gICAgICBAaW5jbHVkZSBtZGMtcmlwcGxlLXRhcmdldC1jb21tb24oJHF1ZXJ5OiAkcXVlcnkpO1xuXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogZW5kXG59XG5cbkBtaXhpbiBtZGMtZmFiLWFjY2Vzc2libGUoJGNvbnRhaW5lci1jb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtZmFiLWNvbnRhaW5lci1jb2xvcigkY29udGFpbmVyLWNvbG9yLCAkcXVlcnk6ICRxdWVyeSk7XG5cbiAgJGZpbGwtdG9uZTogbWRjLXRoZW1lLXRvbmUoJGNvbnRhaW5lci1jb2xvcik7XG5cbiAgQGlmICgkZmlsbC10b25lID09IFwiZGFya1wiKSB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWRhcmssICRxdWVyeTogJHF1ZXJ5KTtcbiAgICBAaW5jbHVkZSBtZGMtc3RhdGVzKFxuICAgICAgdGV4dC1wcmltYXJ5LW9uLWRhcmssXG4gICAgICAkcXVlcnk6ICRxdWVyeSxcbiAgICAgICRyaXBwbGUtdGFyZ2V0OiAkbWRjLWZhYi1yaXBwbGUtdGFyZ2V0KTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgbWRjLWZhYi1pbmstY29sb3IodGV4dC1wcmltYXJ5LW9uLWxpZ2h0LCAkcXVlcnk6ICRxdWVyeSk7XG4gICAgQGluY2x1ZGUgbWRjLXN0YXRlcyhcbiAgICAgIHRleHQtcHJpbWFyeS1vbi1saWdodCxcbiAgICAgICRxdWVyeTogJHF1ZXJ5LFxuICAgICAgJHJpcHBsZS10YXJnZXQ6ICRtZGMtZmFiLXJpcHBsZS10YXJnZXQpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZmFiLWNvbnRhaW5lci1jb2xvcigkY29sb3IsICRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtY29sb3I6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBjb2xvcik7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1jb2xvcikge1xuICAgIEBpbmNsdWRlIG1kYy10aGVtZS1wcm9wKGJhY2tncm91bmQtY29sb3IsICRjb2xvciwgJGVkZ2VPcHRPdXQ6IHRydWUpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZmFiLWljb24tc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIC5tZGMtZmFiX19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgd2lkdGg6ICR3aWR0aDtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIGZvbnQtc2l6ZTogJGhlaWdodDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1mYWItaW5rLWNvbG9yKCRjb2xvciwgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1jb2xvcjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGNvbG9yKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgbWRjLXRoZW1lLXByb3AoY29sb3IsICRjb2xvcik7XG4gIH1cbn1cblxuQG1peGluIG1kYy1mYWItZXh0ZW5kZWQtZmx1aWQoJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1kYy1mYWItZXh0ZW5kZWQtcGFkZGluZygkaWNvbi1wYWRkaW5nLCAkbGFiZWwtcGFkZGluZywgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mYWItZXh0ZW5kZWQtbGFiZWwtcGFkZGluZygkbGFiZWwtcGFkZGluZywgJHF1ZXJ5OiAkcXVlcnkpO1xuXG4gIC8vIE9mZnNldHMgdGhlIG91dGVyIGxhYmVsIHBhZGRpbmcgYnkgZGVkdWN0aW5nIGl0IGZyb20gaWNvbiBwYWRkaW5nLlxuICAubWRjLWZhYl9faWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KG1hcmdpbiwgJGljb24tcGFkZGluZyAtICRsYWJlbC1wYWRkaW5nLCAkaWNvbi1wYWRkaW5nKTtcbiAgICB9XG4gIH1cblxuICAvLyBGb3IgRXh0ZW5kZWQgRkFCIHdpdGggdGV4dCBsYWJlbCBmb2xsb3dlZCBieSBpY29uLlxuICAubWRjLWZhYl9fbGFiZWwgKyAubWRjLWZhYl9faWNvbiB7XG4gICAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICAgIEBpbmNsdWRlIG1kYy1ydGwtcmVmbGV4aXZlLXByb3BlcnR5KG1hcmdpbiwgJGljb24tcGFkZGluZywgJGljb24tcGFkZGluZyAtICRsYWJlbC1wYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1kYy1mYWItZXh0ZW5kZWQtbGFiZWwtcGFkZGluZygkbGFiZWwtcGFkZGluZywgJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgcGFkZGluZzogMCAkbGFiZWwtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZhYi1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICY6bm90KC5tZGMtZmFiLS1leHRlbmRlZCkge1xuICAgIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmUsICRxdWVyeTogJHF1ZXJ5KTtcblxuICAgICN7JG1kYy1mYWItcmlwcGxlLXRhcmdldH0ge1xuICAgICAgQGluY2x1ZGUgbWRjLXNoYXBlLXJhZGl1cygkcmFkaXVzLCAkcnRsLXJlZmxleGl2ZSwgJHF1ZXJ5OiAkcXVlcnkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZhYi1leHRlbmRlZC1zaGFwZS1yYWRpdXMoJHJhZGl1cywgJHJ0bC1yZWZsZXhpdmU6IGZhbHNlLCAkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoXG4gICAgbWRjLXNoYXBlLXJlc29sdmUtcGVyY2VudGFnZS1yYWRpdXMoJG1kYy1mYWItZXh0ZW5kZWQtaGVpZ2h0LCAkcmFkaXVzKSxcbiAgICAkcnRsLXJlZmxleGl2ZSxcbiAgICAkcXVlcnk6ICRxdWVyeVxuICApO1xuXG4gICN7JG1kYy1mYWItcmlwcGxlLXRhcmdldH0ge1xuICAgIEBpbmNsdWRlIG1kYy1zaGFwZS1yYWRpdXMoXG4gICAgICBtZGMtc2hhcGUtcmVzb2x2ZS1wZXJjZW50YWdlLXJhZGl1cygkbWRjLWZhYi1leHRlbmRlZC1oZWlnaHQsICRyYWRpdXMpLFxuICAgICAgJHJ0bC1yZWZsZXhpdmUsXG4gICAgICAkcXVlcnk6ICRxdWVyeVxuICAgICk7XG4gIH1cbn1cblxuJG1kYy1mYWItaWNvbi1lbnRlci1kZWxheV86IDkwbXM7XG4kbWRjLWZhYi1pY29uLWVudGVyLWR1cmF0aW9uXzogMTgwbXM7XG5cbkBtaXhpbiBtZGMtZmFiLWJhc2VfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgQGluY2x1ZGUgbWRjLWVsZXZhdGlvbig2LCAkcXVlcnk6ICRxdWVyeSk7XG4gIEBpbmNsdWRlIG1kYy1mYWItc2hhcGUtcmFkaXVzKDUwJSwgJHF1ZXJ5OiAkcXVlcnkpO1xuXG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkbWRjLWZhYi1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkbWRjLWZhYi1oZWlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtYW5pbWF0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGJveC1zaGFkb3cgJG1kYy1lbGV2YXRpb24tdHJhbnNpdGlvbi1kdXJhdGlvbiAkbWRjLWVsZXZhdGlvbi10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbixcbiAgICAgIG9wYWNpdHkgMTVtcyBsaW5lYXIgMzBtcyxcbiAgICAgIG1kYy1hbmltYXRpb24tZW50ZXIodHJhbnNmb3JtLCAkbWRjLWZhYi1pY29uLWVudGVyLWR1cmF0aW9uXyArICRtZGMtZmFiLWljb24tZW50ZXItZGVsYXlfKTtcbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oOCwgJHF1ZXJ5OiAkcXVlcnkpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIEBpbmNsdWRlIG1kYy1lbGV2YXRpb24oMTIsICRxdWVyeTogJHF1ZXJ5KTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICAvLyBUT0RPKGFjZHZvcmFrKTogU2hvdWxkIHRoaXMgYmUgcGFpcmVkIHdpdGggc3RhdGVzIGFuZC9vciByaXBwbGU/IFdlIGRvbid0IHdhbnQgdG8gZGlzYWJsZSBvdXRsaW5lXG4gICAgLy8gKGFuIGFjY2Vzc2liaWxpdHkvdXNhYmlsaXR5IGZlYXR1cmUpIHVubGVzcyB3ZSdyZSBjb25maWRlbnQgdGhhdCB0aGVyZSBpcyBhbHNvIGEgdmlzdWFsIGluZGljYXRpb24gdGhhdCB0aGVcbiAgICAvLyBlbGVtZW50IGhhcyBmb2N1cy4gSWYgdGhlIGNsaWVudCBoYXMgY3VzdG9taXplZCB0aGUgRE9NIGluIHNvbWUgdW5leHBlY3RlZCB3YXksIGFuZCBpcyBjZXJ0YWluIHRoYXQgYW5vdGhlclxuICAgIC8vIGVsZW1lbnQgd2lsbCByZWNlaXZlIGZvY3VzIGluc3RlYWQsIHRoZXkgY2FuIGFsd2F5cyBvdmVycmlkZSB0aGlzIHByb3BlcnR5IG1hbnVhbGx5IGluIHRoZWlyIENTUy5cbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgYWxsb3dzIGZvciB1c2luZyBTVkdzIHdpdGhpbiB0aGVtIHRvIGFsaWduIHByb3Blcmx5IGluIGFsbCBicm93c2Vycy5cbiAgLy8gQ2FuIHJlbW92ZSBvbmNlOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk0NTE1IGlzIHJlc29sdmVkLlxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlXG4gIC8vIHBvc3Rjc3MtYmVtLWxpbnRlcjogaWdub3JlXG4gID4gc3ZnIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXR5cGVcbn1cblxuQG1peGluIG1kYy1mYWItLW1pbmlfKCRxdWVyeTogbWRjLWZlYXR1cmUtYWxsKCkpIHtcbiAgJGZlYXQtc3RydWN0dXJlOiBtZGMtZmVhdHVyZS1jcmVhdGUtdGFyZ2V0KCRxdWVyeSwgc3RydWN0dXJlKTtcblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgIHdpZHRoOiAkbWRjLWZhYi1taW5pLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRtZGMtZmFiLW1pbmktaGVpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZmFiLS1leHRlbmRlZF8oJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICBAaW5jbHVkZSBtZGMtdHlwb2dyYXBoeShidXR0b24sICRxdWVyeTogJHF1ZXJ5KTtcbiAgQGluY2x1ZGUgbWRjLWZhYi1leHRlbmRlZC1zaGFwZS1yYWRpdXMoNTAlLCAkcXVlcnk6ICRxdWVyeSk7XG4gIEBpbmNsdWRlIG1kYy1mYWItZXh0ZW5kZWQtcGFkZGluZygkbWRjLWZhYi1leHRlbmRlZC1pY29uLXBhZGRpbmcsICRtZGMtZmFiLWV4dGVuZGVkLWxhYmVsLXBhZGRpbmcsICRxdWVyeTogJHF1ZXJ5KTtcblxuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJG1kYy1mYWItZXh0ZW5kZWQtaGVpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZmFiX19pY29uXygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1hbmltYXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiBtZGMtYW5pbWF0aW9uLWVudGVyKHRyYW5zZm9ybSwgJG1kYy1mYWItaWNvbi1lbnRlci1kdXJhdGlvbl8sICRtZGMtZmFiLWljb24tZW50ZXItZGVsYXlfKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIH1cbn1cblxuQG1peGluIG1kYy1mYWJfX2xhYmVsXygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtZmFiX19pY29uLW92ZXJyaWRlc18oJHF1ZXJ5OiBtZGMtZmVhdHVyZS1hbGwoKSkge1xuICAkZmVhdC1zdHJ1Y3R1cmU6IG1kYy1mZWF0dXJlLWNyZWF0ZS10YXJnZXQoJHF1ZXJ5LCBzdHJ1Y3R1cmUpO1xuXG4gIEBpbmNsdWRlIG1kYy1mZWF0dXJlLXRhcmdldHMoJGZlYXQtc3RydWN0dXJlKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gbWRjLWZhYi0tZXhpdGVkXygkcXVlcnk6IG1kYy1mZWF0dXJlLWFsbCgpKSB7XG4gICRmZWF0LWFuaW1hdGlvbjogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIGFuaW1hdGlvbik7XG4gICRmZWF0LXN0cnVjdHVyZTogbWRjLWZlYXR1cmUtY3JlYXRlLXRhcmdldCgkcXVlcnksIHN0cnVjdHVyZSk7XG5cbiAgQGluY2x1ZGUgbWRjLWZlYXR1cmUtdGFyZ2V0cygkZmVhdC1zdHJ1Y3R1cmUpIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb246XG4gICAgICBvcGFjaXR5IDE1bXMgbGluZWFyIDE1MG1zLFxuICAgICAgbWRjLWFuaW1hdGlvbi1leGl0LXBlcm1hbmVudCh0cmFuc2Zvcm0sIDE4MG1zKTtcbiAgfVxuXG4gIC5tZGMtZmFiX19pY29uIHtcbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LXN0cnVjdHVyZSkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZGMtZmVhdHVyZS10YXJnZXRzKCRmZWF0LWFuaW1hdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogbWRjLWFuaW1hdGlvbi1leGl0LXBlcm1hbmVudCh0cmFuc2Zvcm0sIDEzNW1zKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAxOCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG4kbWRjLWZhYi1leHRlbmRlZC1pY29uLXBhZGRpbmc6IDEycHggIWRlZmF1bHQ7XG4kbWRjLWZhYi1leHRlbmRlZC1sYWJlbC1wYWRkaW5nOiAyMHB4ICFkZWZhdWx0O1xuJG1kYy1mYWItaGVpZ2h0OiA1NnB4ICFkZWZhdWx0O1xuJG1kYy1mYWItbWluaS1oZWlnaHQ6IDQwcHggIWRlZmF1bHQ7XG4kbWRjLWZhYi1leHRlbmRlZC1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4iLCJAaW1wb3J0IFwiLi4vYXBwXCI7XG5AaW1wb3J0IFwiLi4vZm9ybVwiO1xuQGltcG9ydCBcImxpZ2h0Z2FsbGVyeS5qc1wiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9jYXJkL21kYy1jYXJkXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2VsZXZhdGlvbi9tZGMtZWxldmF0aW9uXCI7XG5AaW1wb3J0IFwiQG1hdGVyaWFsL2ljb24tYnV0dG9uL21kYy1pY29uLWJ1dHRvblwiO1xuQGltcG9ydCBcIkBtYXRlcmlhbC9mYWIvbWRjLWZhYlwiO1xuXG4kc29tbWFpcmVfaXRlbV9oZWlnaHQ6IDEwMHB4O1xuXG4vKipcbiAgIEJvdXRpcXVlXG4gKi9cbi5jb250YWluZXJfY2VudGVyIHtcbiAgIG1heC13aWR0aDogJHdpZHRoX21heF9jb250ZW50X3Nob3A7XG59XG5cbi8qKlxuICAgUsOpcGFydGl0aW9uIGRlIGxhIGJvdXRpcXVlXG4qL1xuLnNob3Age1xuICAgQGV4dGVuZCAuZmxleC1yb3c7XG4gICBcbiAgIC8vIGFzaWRlXG4gICAmX25hdiB7XG4gICAgICBmbGV4OiAyO1xuICAgfVxuICAgXG4gICAvLyBib2R5IGRlIGxhIGJvdXRpcXVlXG4gICAmX2NvbnRlbnQge1xuICAgICAgZmxleDogNztcbiAgIH1cbiBcbiAgIEBpbmNsdWRlIG1lZGlhKGxhcHRvcCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgJl9uYXYge1xuICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgIH1cbiBcbn1cbiBcbi8qKlxuICAgQXNpZGUgZGUgbGEgYm91dGlxdWVcbiovXG4uc2hvcF9uYXYge1xuXG4gICBoMiB7XG4gICAgICBwYWRkaW5nOiA1cHggMHB4IDVweCAwO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgIH1cblxuICAgdWwge1xuICAgICAgQGV4dGVuZCAuZmxleC1jb2x1bW47XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgXG4gICAgICBAaW5jbHVkZSBtZWRpYShsYXB0b3ApIHtcbiAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICB9XG4gXG4gICB9XG4gXG4gICAuY2F0ZWdvcnkge1xuICAgICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG5cbiAgICAgIGEge1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgIGNvbG9yOiAkY29sb3Jfbm9pcjtcbiAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNTBweCA1MHB4IDA7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgIGEgeyAgIFxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3NlY29uZGFpcmU7XG4gICAgICAgICB9XG4gICAgICB9XG4gICBcbiAgICAgICY6aG92ZXI6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Jfc2Vjb25kYWlyZSwgMC4xNSk7XG4gICAgICAgICB9XG5cbiAgICAgIH1cbiBcbiAgIH1cbn1cblxuLyogXG4gICBGaWxlIGQnYXJpbmVcbiAgIHByw6lzZW50IHN1ciBsZXMgcGFnZXMgL3tjYXRlZ29yaWV9IGV0IC97Y2F0ZWdvcmllfS97cHJvZHVjdH0gXG4qLyAgXG4uZmlsZV9hcmlhbmUge1xuICAgQGV4dGVuZCAuY29udGFpbmVyX2NlbnRlcjtcbiAgIEBleHRlbmQgLmZsZXgtcm93O1xuICAgZmxleC13cmFwOiB3cmFwO1xuICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICBtYXJnaW46IDE1cHggYXV0bztcbiAgIHBhZGRpbmc6IDVweCAwO1xuICAgY29sb3I6ICRjb2xvcl9wcmltYWlyZTtcbiAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XG5cbiAgIGEsXG4gICBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgfVxuICAgYSB7XG4gICAgICBjb2xvcjogZ3JheTtcbiAgICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4IGdyYXk7XG4gICB9XG4gICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkY29sb3Jfc2Vjb25kYWlyZVxuICAgfVxufVxuXG4vKipcbiAgIENvbnRlbnUgZGUgbGEgcGFnZVxuICAgKMOgIGNvdMOpIGRlIGwnYXNpZGUpXG4qL1xuLnNob3BfY29udGVudCB7XG4gICBtYXJnaW46IDAgMTBweCAxMHB4IDIwcHg7XG5cbiAgIEBpbmNsdWRlIG1lZGlhKG1vYmlsZW9ubHkpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgfVxufVxuXG4gXG4vKipcbiAgIEZBQiBQYW5pZXJcbiAgICh2aXNpYmxlIHF1J2VuIG1vZGUgbW9iaWxlKVxuKi9cbi5mb2FsdGluZy1iYXNrZXQge1xuICAgZGlzcGxheTogbm9uZTtcbiAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgIGJvdHRvbTogMzVweDtcbiAgIHJpZ2h0OiAzNXB4O1xuICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFpcmU7XG4gICB6LWluZGV4OiAxMDtcblxuICAgQGluY2x1ZGUgbWVkaWEobW9iaWxlb25seSkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICB9XG5cbiAgIC5jb3VudCB7XG4gICAgICBAZXh0ZW5kIC5mbGV4LXJvdztcbiAgICAgIEBleHRlbmQgLmZsZXgtY2VudGVyLWNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDYzMDMwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JywgJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgfVxuXG4gICAmX19lbXB0eSAuY291bnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgIH1cblxuICAgJl9fdXAgLmNvdW50IHtcbiAgICAgIC8vIGFuaW1hdGlvbiBkYW5zIF9oZWFkZXIuc2Nzc1xuICAgICAgYW5pbWF0aW9uOiBjb3VudC16b29tIDNzIGZvcndhcmRzIDE7XG4gICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/