/* stylelint-disable color-no-hex */
/* stylelint-enable color-no-hex */
/* stylelint-disable string-quotes, order/properties-alphabetical-order */
/* stylelint-disable indentation */
/* stylelint-disable color-no-hex */
[hidden] {
  display: none !important;
}

@media print {
  #nhsuk-cookie-banner {
    display: none;
  }
  #nhsuk-cookie-banner .nhsuk-width-container {
    display: none;
  }
  #nhsuk-cookie-banner h2 {
    display: none;
  }
  #nhsuk-cookie-banner p {
    display: none;
  }
  .nhsuk-back-link {
    display: none;
  }
  .nhsuk-back-link .nhsuk-width-container {
    display: none;
  }
  .nhsuk-back-link h2 {
    display: none;
  }
  .nhsuk-back-link p {
    display: none;
  }
  .nhsuk-grid-column-one-third {
    display: none;
  }
  .nhsuk-grid-column-one-third .nhsuk-width-container {
    display: none;
  }
  .nhsuk-grid-column-one-third h2 {
    display: none;
  }
  .nhsuk-grid-column-one-third p {
    display: none;
  }
  .nhsuk-pagination {
    display: none;
  }
  .nhsuk-pagination .nhsuk-width-container {
    display: none;
  }
  .nhsuk-pagination h2 {
    display: none;
  }
  .nhsuk-pagination p {
    display: none;
  }
  a[href^=tel]::after {
    display: none;
  }
  a[href^=tel]::after .nhsuk-width-container {
    display: none;
  }
  a[href^=tel]::after h2 {
    display: none;
  }
  a[href^=tel]::after p {
    display: none;
  }
  a[id]::after {
    display: none;
  }
  a[id]::after .nhsuk-width-container {
    display: none;
  }
  a[id]::after h2 {
    display: none;
  }
  a[id]::after p {
    display: none;
  }
  .nhsuk-width-container {
    width: 100%;
  }
}
.o-flex {
  display: flex;
}

.o-flex--align-center {
  align-items: center;
}

.o-flex__grow {
  flex-grow: 1;
}

@media (min-width: 320px) {
  .o-flex\@mobile {
    display: flex;
  }
}
@media (min-width: 641px) {
  .o-flex\@tablet {
    display: flex;
  }
}
@media (min-width: 769px) {
  .o-flex\@desktop {
    display: flex;
  }
}
@media (min-width: 990px) {
  .o-flex\@large-desktop {
    display: flex;
  }
}
html {
  background-color: #f0f4f5;
}

.page {
  padding: 0;
}
@media (min-width: 48.0625em) {
  .page {
    padding: 0;
  }
}
.page .page__header.has-microhero, .page .page__header.has-nhsukhero {
  padding-top: 0;
}
.page .page__header.has-microhero .hee-microhero, .page .page__header.has-nhsukhero .hee-microhero {
  margin-bottom: 40px;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .page .page__header.has-microhero .hee-microhero, .page .page__header.has-nhsukhero .hee-microhero {
    margin-bottom: 48px;
  }
}
@media (min-width: 48.0625em) {
  .page .page__header.has-microhero .hee-microhero, .page .page__header.has-nhsukhero .hee-microhero {
    margin: 0 0 48px 0;
  }
}

.page__header h1 ~ span {
  margin-top: -40px;
  margin-bottom: 24px;
}

.page__content {
  word-break: break-word;
}

.page__feature {
  margin-top: 48px;
}
@media (min-width: 40.0625em) {
  .page__feature {
    margin-top: 56px;
  }
}

@media (min-width: 48.0625em) {
  .page__feature h1, .page__feature p, .page__feature span {
    max-width: 66.6667%;
  }
}

.page--fullwidth .page__header {
  padding-top: 40px;
}
@media (min-width: 48.0625em) {
  .page--fullwidth .page__header {
    padding-top: 48px;
  }
}
.page--fullwidth .page__main {
  padding-bottom: 40px;
}
@media (min-width: 40.0625em) {
  .page--fullwidth .page__main {
    padding-bottom: 48px;
  }
}

.page--search .page__header {
  padding-top: 40px;
}
@media (min-width: 40.0625em) {
  .page--search .page__header {
    padding-top: 48px;
  }
}

.page--leftbar .page__header {
  padding-top: 48px;
}
.page--leftbar .page__header h1, .page--leftbar .page__header p, .page--leftbar .page__header span {
  max-width: 66.6667%;
}
.page--leftbar .page__layout {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
}
@media screen\0  {
  .page--leftbar .page__layout:after {
    content: "";
    display: table;
    clear: both;
  }
}
.page--leftbar .page__layout .page__leftbar {
  box-sizing: border-box;
  width: 31.25%;
  flex: 0 0 31.25%;
}
@media screen\0  {
  .page--leftbar .page__layout .page__leftbar {
    float: left;
    flex: none;
  }
}
.page--leftbar .page__layout .page__main {
  box-sizing: border-box;
  width: 66.6666666667%;
  flex: 0 0 66.6666666667%;
  margin-left: 2.0833333333%;
}
@media screen\0  {
  .page--leftbar .page__layout .page__main {
    float: left;
    flex: none;
  }
}
@media (max-width: 48.0525em) {
  .page--leftbar .page__header h1, .page--leftbar .page__header p, .page--leftbar .page__header span {
    max-width: 100%;
  }
  .page--leftbar .page__layout .page__leftbar,
  .page--leftbar .page__layout .page__main {
    box-sizing: border-box;
    width: 100%;
    flex: 0 0 100%;
    margin-left: 0%;
  }
}
@media screen\0  and (max-width: 48.0525em) {
  .page--leftbar .page__layout .page__leftbar,
  .page--leftbar .page__layout .page__main {
    float: left;
    flex: none;
  }
}

.page--rightbar {
  padding-bottom: 40px;
}
.page--rightbar .page__header {
  padding-top: 40px;
}
@media (min-width: 40.0625em) {
  .page--rightbar .page__header {
    padding-top: 48px;
  }
}
.page--rightbar .page__header h1, .page--rightbar .page__header p, .page--rightbar .page__header span {
  max-width: 66.6667%;
}
.page--rightbar .page__header .nhsuk-hero h1, .page--rightbar .page__header .nhsuk-hero p, .page--rightbar .page__header .nhsuk-hero span {
  max-width: 100%;
}
.page--rightbar .page__layout {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
}
@media screen\0  {
  .page--rightbar .page__layout:after {
    content: "";
    display: table;
    clear: both;
  }
}
.page--rightbar .page__layout .page__rightbar {
  box-sizing: border-box;
  width: 31.25%;
  flex: 0 0 31.25%;
  margin-left: 3.3333333333%;
}
@media screen\0  {
  .page--rightbar .page__layout .page__rightbar {
    float: left;
    flex: none;
  }
}
.page--rightbar .page__layout .page__rightbar .nhsuk-card,
.page--rightbar .page__layout .page__rightbar .nhsuk-contact__card,
.page--rightbar .page__layout .page__rightbar .hee-card {
  margin-bottom: 24px;
}
.page--rightbar .page__layout .page__main {
  box-sizing: border-box;
  width: 65.4166666667%;
  flex: 0 0 65.4166666667%;
}
@media screen\0  {
  .page--rightbar .page__layout .page__main {
    float: left;
    flex: none;
  }
}
@media (max-width: 48.0525em) {
  .page--rightbar .page__header h1, .page--rightbar .page__header p, .page--rightbar .page__header span {
    max-width: 100%;
  }
  .page--rightbar .page__layout .page__rightbar,
  .page--rightbar .page__layout .page__main {
    box-sizing: border-box;
    width: 100%;
    flex: 0 0 100%;
    margin-left: 0%;
  }
}
@media screen\0  and (max-width: 48.0525em) {
  .page--rightbar .page__layout .page__rightbar,
  .page--rightbar .page__layout .page__main {
    float: left;
    flex: none;
  }
}
.page--rightbar .page__rightbar {
  margin-bottom: 24px;
}
.page--rightbar .page__rightbar .nhsuk-card:last-of-type, .page--rightbar .page__rightbar .nhsuk-contact:last-of-type {
  margin-bottom: 0;
}

.nhsuk-hee-blocklinks {
  padding-top: 24px;
  padding-bottom: 24px;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks {
  list-style: none;
  padding-left: 0;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li {
  display: inline-block;
  margin: 2px 0;
  width: 100%;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li:last-of-type {
  margin-bottom: 2px;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a {
  background: #005eb8;
  color: #ffffff;
  display: block;
  padding: 12px 24px;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a:hover {
  background: #002f5c;
  box-shadow: none;
  text-decoration: underline;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a:active {
  background: #002f5c;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a:focus {
  background: #ffeb3b;
  box-shadow: inset 0 -4px 0 0 #212b32;
  color: #212b32;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a:focus .nhsuk-icon {
  fill: #212b32;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a:focus:hover {
  text-decoration: none;
}
.nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a .nhsuk-icon {
  fill: #ffffff;
  height: 24px;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 24px;
}
@media (min-width: 48.0625em) {
  .nhsuk-hee-blocklinks .nhsuk-list-blocklinks--two-columns {
    column-count: 2;
    column-gap: 4px;
  }
  .nhsuk-hee-blocklinks .nhsuk-list-blocklinks--one-column {
    column-gap: 4px;
  }
}
@media (max-width: 40.0525em) {
  .nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a {
    padding: 12px 16px;
  }
  .nhsuk-hee-blocklinks .nhsuk-list-blocklinks li a .nhsuk-icon {
    top: 12px;
  }
}

.nhsuk-blocklinks {
  padding-top: 0;
  padding-bottom: 24px;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks {
  list-style: none;
  padding-left: 0;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li {
  display: inline-block;
  margin: 2px 0;
  width: 100%;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li:last-of-type {
  margin-bottom: 2px;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a {
  background: #005eb8;
  color: #ffffff;
  display: block;
  padding: 12px 24px;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a:hover {
  background: #002f5c;
  box-shadow: none;
  text-decoration: underline;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a:active {
  background: #002f5c;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a:focus {
  background: #ffeb3b;
  box-shadow: inset 0 -4px 0 0 #212b32;
  color: #212b32;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a:focus .nhsuk-icon {
  fill: #212b32;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a:focus:hover {
  text-decoration: none;
}
.nhsuk-blocklinks .nhsuk-list-blocklinks li a .nhsuk-icon {
  fill: #ffffff;
  height: 24px;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 24px;
}
@media (min-width: 48.0625em) {
  .nhsuk-blocklinks .nhsuk-list-blocklinks--two-columns {
    column-count: 2;
    column-gap: 4px;
  }
  .nhsuk-blocklinks .nhsuk-list-blocklinks--one-column {
    column-gap: 4px;
  }
}
@media (max-width: 40.0525em) {
  .nhsuk-blocklinks .nhsuk-list-blocklinks li a {
    padding: 12px 16px;
  }
  .nhsuk-blocklinks .nhsuk-list-blocklinks li a .nhsuk-icon {
    top: 12px;
  }
}

.nhsuk-tabs__panel .nhsuk-action-link:last-child {
  margin-bottom: 0 !important;
}

.nhsuk-breadcrumb {
  background-color: transparent;
  padding-bottom: 12px;
  padding-top: 12px;
}

.nhsuk-breadcrumb__item:not(:last-child):after {
  background: url("data:image/svg+xml,%3Csvg class='nhsuk-icon nhsuk-icon__chevron-right' xmlns='http://www.w3.org/2000/svg' fill='%23aeb7bd' height='18' width='18' viewBox='0 0 24 24' aria-hidden='true'%3E%3Cpath d='M15.5 12a1 1 0 0 1-.29.71l-5 5a1 1 0 0 1-1.42-1.42l4.3-4.29-4.3-4.29a1 1 0 0 1 1.42-1.42l5 5a1 1 0 0 1 .29.71z'%3E%3C/path%3E%3C/svg%3E") right 0 top 6px no-repeat;
  height: 19px;
  margin-left: 5px;
  margin-right: 0;
  width: 18px;
}

.nhsuk-breadcrumb__item {
  padding-left: 0;
  padding-right: 2px;
}

.nhsuk-image {
  border: 1px solid #d8dde0;
}

.page__main .nhsuk-image {
  width: 100%;
}

.hee-card--details h3 {
  margin-bottom: 16px;
}
.hee-card--details .hee-card--details__item {
  margin-bottom: 16px;
}
.hee-card--details .hee-card--details__item span {
  font-weight: 600;
}
.hee-card--details .hee-card--details__item:last-child {
  margin-bottom: 0;
}

.hee-google-map {
  border: 1px solid #d8dde0;
  margin-bottom: 24px;
}
.hee-google-map .hee-google-map__wrapper {
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 66%;
}
.hee-google-map .hee-google-map__wrapper iframe {
  height: 100% !important;
  left: 0;
  position: absolute;
  top: 0;
  width: 100% !important;
}
.hee-google-map .hee-google-map__caption {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #ffffff;
  padding: 32px;
}
@media (min-width: 40.0625em) {
  .hee-google-map .hee-google-map__caption {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-google-map .hee-google-map__caption {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.nhsuk-cookie-banner {
  padding-top: 24px;
}
.nhsuk-cookie-banner ul, .nhsuk-cookie-banner li {
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (min-width: 40.0625em) {
  .nhsuk-cookie-banner li {
    display: inline-block;
    margin-right: 24px;
  }
}

.nhsuk__policy-table {
  border: none;
}
.nhsuk__policy-table .nhsuk__expires {
  white-space: nowrap;
}

.nhsuk-header {
  position: relative;
}
.nhsuk-header .nhse-global-menu-descriptor {
  line-height: normal;
}

.nhsuk-header__container {
  margin: 0 16px;
  padding: 20px 0;
  position: relative;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__container {
    margin: 0 32px;
  }
}
@media (min-width: 61.875em) {
  .nhsuk-header__container {
    margin: 0 auto;
  }
}
.nhsuk-header__container .nhsuk-logo {
  display: none;
}
.nhsuk-header__container .nhsuk-logo.visible {
  display: inline;
}

.nhsuk-header__content {
  float: right;
  margin: -48px 0 0 0;
  z-index: 0;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__content {
    margin: 48px 0 0 0;
  }
}
.nhsuk-header__content.js-show {
  border-bottom: 0;
  width: 100%;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__content.js-show {
    width: auto;
  }
}
.nhsuk-header__content.no-search {
  min-height: auto;
}

.nhsuk-header__link .nhsuk-organisation-name,
.nhsuk-header__link .nhsuk-organisation-descriptor {
  display: block;
}

.nhsuk-header__logo {
  display: block;
  float: none;
  max-width: 100%;
  z-index: 0;
}

/* NHSUK-Header__multilogo */
@media (min-width: 48.0625em) {
  .nhsuk-header__multilogo {
    display: flex;
    justify-content: space-between;
  }
}
.nhsuk-header__multilogo .nhsuk-header__logo-home {
  margin-bottom: 16px;
  order: 10;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__multilogo .nhsuk-header__logo-home {
    flex-grow: 2;
    flex-basis: 40%;
    margin-bottom: 0;
    margin-top: 0 !important;
    order: 0;
  }
}

.nhsuk-header__multilogo__container {
  display: flex;
  flex-direction: column;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__multilogo__container {
    flex-direction: row;
    align-items: flex-end;
    column-gap: 8px;
  }
}
.nhsuk-header__multilogo__container .nhsuk-header__logo {
  margin-bottom: 8px;
  order: 2;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__multilogo__container .nhsuk-header__logo {
    display: inline-block;
    order: 0;
    margin-bottom: 0;
  }
}
.nhsuk-header__multilogo__container .nhsuk-header__logo:last-child {
  order: 1;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__multilogo__container .nhsuk-header__logo:last-child {
    order: 0;
  }
}

.nhsuk-header__search {
  display: inline-block;
  width: 100%;
}
.nhsuk-header__search .nhsuk-header__search-wrap {
  width: 100%;
}
.nhsuk-header__search .nhsuk-header__search-wrap.js-show {
  padding-top: 32px;
  margin: 0;
  display: block;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__search .nhsuk-header__search-wrap.js-show {
    padding-top: 0;
  }
}
.nhsuk-header__search .nhsuk-header__search-wrap .nhsuk-header__search-form {
  padding: 0;
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .nhsuk-header__search .nhsuk-header__search-wrap .nhsuk-header__search-form {
    margin-bottom: 0;
  }
}
.nhsuk-header__search .nhsuk-header__search-toggle {
  position: relative;
}
.nhsuk-header__search .autocomplete-container {
  display: inline-block;
}
@media (min-width: 40.0625em) {
  .nhsuk-header__search .autocomplete-container .nhsuk-search__input {
    padding: 0 12px;
  }
}
.nhsuk-header__search .autocomplete-container .nhsuk-search__input::placeholder {
  color: #768692;
}
.nhsuk-header__search .nhsuk-search__close {
  height: auto;
  width: auto;
  margin: 0 -6px 0 0;
  padding: 4px 7px;
}

.nhsuk-search__input--search-results {
  -ms-flex-positive: 2;
  -webkit-appearance: listbox;
  background-color: #ffffff !important;
  border-bottom: 1px solid #aeb7bd;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 0;
  border-left: 1px solid #aeb7bd;
  border-right: 0;
  border-top: 1px solid #aeb7bd;
  border-top-left-radius: 4px;
  border-top-right-radius: 0;
  flex-grow: 2;
  font-size: inherit;
  height: 52px;
  margin: 0;
  outline: 0;
  padding: 0 16px;
  width: 100%;
}
.nhsuk-search__input--search-results:focus {
  border: 4px solid #ffeb3b;
  box-shadow: inset 0 0 0 4px #212b32;
  padding: 0 16px 0 13px;
  outline: 0;
}

.nhsuk-header--white2 .nhsuk-header__search-wrap form {
  background-color: #005eb8;
}
.nhsuk-header--white2 .nhsuk-header__search-wrap .nhsuk-search__close {
  background-color: #005eb8;
}
.nhsuk-header--white2 .nhsuk-header__search-wrap .nhsuk-search__close .nhsuk-icon__close {
  fill: #ffffff;
}

@media (min-width: 40.0625em) {
  .autocomplete__input {
    width: 180px;
  }
}
@media (min-width: 48.0625em) {
  .autocomplete__input {
    width: 200px;
  }
}
.nhsuk-header__navigation {
  overflow: visible;
}
.nhsuk-header__navigation.js-show .nhsuk-width-container {
  margin: 0 16px;
}
@media (min-width: 61.875em) {
  .nhsuk-header__navigation.js-show .nhsuk-width-container {
    margin: 0 auto;
  }
}

.nhsuk-header__navigation-link {
  font-size: 1rem;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__navigation-link {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    justify-content: center;
  }
}

.nhsuk-header__navigation-list {
  display: block;
}

.nhsuk-header__navigation-item {
  display: inline-block;
}
@media (min-width: 48.0625em) {
  .nhsuk-header__navigation-item.nhsuk-subnav .nhsuk-subnav__wrapper {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
}
@media (min-width: 61.875em) {
  .nhsuk-header__navigation-item.nhsuk-subnav .nhsuk-header__navigation-link {
    align-items: stretch;
    flex-direction: row;
    justify-content: space-between;
  }
}
@media (min-width: 48.0625em) {
  .nhsuk-header__navigation-item.nhsuk-subnav .nhsuk-header__navigation-link .nhsuk-icon {
    position: relative;
    top: 0;
  }
}

@media (max-width: 61.865em) {
  .nhsuk-header__navigation-item {
    display: block;
  }
  .nhsuk-header__navigation .nhsuk-width-container {
    margin: 0;
  }
}
.nhsuk-header__menu {
  display: inline-block;
  float: none;
  position: absolute;
  right: 46px;
}
@media (min-width: 40.0625em) {
  .nhsuk-header__menu {
    left: -68px;
    right: 0;
  }
}
@media (min-width: 61.875em) {
  .nhsuk-header__menu {
    position: absolute;
    top: 0;
    left: 0;
  }
}
.nhsuk-header__menu .nhsuk-header__menu-toggle {
  right: auto;
}
.no-search .nhsuk-header__menu {
  position: relative;
}

.nhsuk-subnav .nhsuk-header__navigation-link {
  position: relative;
}
@media (min-width: 61.875em) {
  .nhsuk-subnav .nhsuk-header__navigation-link {
    padding-right: 28px;
  }
  .nhsuk-subnav .nhsuk-header__navigation-link:focus {
    text-decoration: none;
  }
  .nhsuk-subnav .nhsuk-header__navigation-link:focus .nhsuk-icon {
    fill: #212b32;
  }
}
.nhsuk-subnav .nhsuk-header__navigation-link .nhsuk-icon {
  fill: #005eb8;
  height: 22px;
  right: 16px;
  transform: rotate(0) translateX(50%);
  width: 22px;
}
@media (min-width: 61.875em) {
  .nhsuk-subnav .nhsuk-header__navigation-link .nhsuk-icon {
    display: block;
    fill: #ffffff;
    left: 20px;
    right: 0;
    transform: rotate(90deg);
  }
}
.nhsuk-subnav .nhsuk-subnav__list {
  display: none;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
  z-index: 1;
}
@media (min-width: 61.875em) {
  .nhsuk-subnav .nhsuk-subnav__list {
    border: 1px solid #d8dde0;
    border-bottom-width: 4px !important;
    background: #ffffff;
    display: none;
    list-style: none;
    min-width: 16rem;
    padding: 0;
    position: absolute;
    right: 0;
    top: 100%;
    text-align: left;
    z-index: 9999;
  }
}
.nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-item {
  margin-bottom: 0;
  border-top: 1px solid #f0f4f5;
}
.nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link {
  border-bottom: 4px solid transparent;
  border-top: 4px solid transparent;
  color: #005eb8;
  display: inline-block;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  padding: 12px 16px;
  text-decoration: none;
  width: 100%;
}
.nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link:visited {
  color: #005eb8;
  text-decoration: none;
}
.nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link:hover, .nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link:focus {
  text-decoration: underline;
}
.nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link:focus {
  color: #212b32;
}
.nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link.no-link {
  color: #212b32;
  text-decoration: none;
  cursor: default;
}
@media (min-width: 61.875em) {
  .nhsuk-subnav .nhsuk-subnav__list .nhsuk-subnav__list-link {
    display: block;
  }
}
@media (min-width: 61.875em) {
  .nhsuk-subnav .nhsuk-nav__link {
    padding: 8px 16px;
  }
}
@media (min-width: 61.875em) {
  .nhsuk-subnav .nhsuk-header__back-text {
    display: none;
  }
}
.nhsuk-subnav.is-active .nhsuk-header__navigation-link .nhsuk-icon {
  transform: rotate(90deg);
}
.nhsuk-subnav.is-active .nhsuk-subnav__list-link {
  padding-left: 28px;
}
.nhsuk-subnav.is-active .nhsuk-subnav__list {
  display: block;
  left: 0;
  margin-bottom: 0;
  position: inherit;
  width: 100%;
}
@media (min-width: 61.875em) {
  .nhsuk-subnav.is-active .nhsuk-subnav__list {
    display: block;
    left: inherit;
    position: absolute;
  }
}
@media (min-width: 61.875em) {
  .nhsuk-subnav.is-active .nhsuk-subnav__list .nhsuk-subnav__list-link {
    font-size: 1rem;
    line-height: 1.5;
  }
}

.nhsuk-hero .nhsuk-hero__wrapper {
  padding: 48px 0 88px;
}
.nhsuk-hero .nhsuk-hero--border {
  border: 0;
}

.nhsuk-hero--image-description {
  margin-bottom: 90px;
}
@media (min-width: 40.0625em) {
  .nhsuk-hero--image-description {
    margin-bottom: 98px;
  }
}

.nhsuk-hee-hero .nhsuk-hero__wrapper {
  padding: 48px 0 88px;
}

.nhsuk-hee-table {
  margin-bottom: 4em !important;
  background-color: #fff;
  border: 1px solid #d8dde0;
}
.nhsuk-hee-table.has-caption {
  border-top: none;
}
.nhsuk-hee-table.has-caption caption {
  border: 1px solid #d8dde0;
  border-bottom: none;
}

.nhsuk-hee-table--multicols {
  width: 100%;
  background-color: #fff;
}

.nhsuk-hee-table--multicols caption {
  font-size: 1.375rem;
  line-height: 1.45455;
}

.nhsuk-hee-table--multicols .nhsuk-table__head {
  -webkit-clip-path: inset(50%);
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row {
  display: block;
  margin-bottom: 24px;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row .nhsuk-table__cell {
  display: flex;
  justify-content: space-between;
  min-width: 1px;
  padding-right: 0;
  text-align: right;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row .nhsuk-table__cell:last-of-type {
  border-bottom: 3px solid #d8dde0;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row .nhsuk-table-responsive__heading {
  font-weight: 600;
  padding-right: 16px;
  text-align: left;
  display: block;
}

.nhsuk-hee-table {
  background-color: #fff;
  padding: 16px;
}

.nhsuk-hee-table caption {
  background-color: #fff;
  padding: 16px 16px 0 16px;
}

table {
  background-color: #fff;
  border: 1px solid #d8dde0;
  padding: 16px;
  word-break: normal;
}

table caption {
  background-color: #fff;
  padding: 16px 16px 0 16px;
}

.nhsuk-hee-table {
  margin-bottom: 4em !important;
  background-color: #fff;
}

@media (max-width: 48.0525em) {
  .nhsuk-table-responsive .nhsuk-table__body .nhsuk-table__row {
    display: block;
    margin-bottom: 24px;
  }
  .nhsuk-table-responsive .nhsuk-table__body .nhsuk-table__row .nhsuk-table__cell {
    display: block;
    min-width: 1px;
    padding-right: 0;
    text-align: right;
  }
  .nhsuk-table-responsive .nhsuk-table__body .nhsuk-table__row .nhsuk-table__cell:last-of-type {
    border-bottom: 3px solid #d8dde0;
  }
  .nhsuk-table-responsive .nhsuk-table__body .nhsuk-table__row .nhsuk-table-responsive__heading {
    width: 50%;
    font-weight: 600;
    padding-right: 16px;
    text-align: left;
    display: inline-block;
    float: left;
  }
}
.nhsuk-hee-table--multicols {
  width: 100%;
  background-color: #fff;
}

.nhsuk-hee-table--multicols caption {
  font-size: 1.375rem;
  line-height: 1.45455;
}

.nhsuk-hee-table--multicols .nhsuk-table__head {
  -webkit-clip-path: inset(50%);
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row {
  display: block;
  margin-bottom: 24px;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row .nhsuk-table__cell {
  display: flex;
  min-width: 1px;
  padding-right: 0;
  text-align: right;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row .nhsuk-table__cell:last-of-type {
  border-bottom: 3px solid #d8dde0;
}

.nhsuk-hee-table--multicols .nhsuk-table__body .nhsuk-table__row .nhsuk-table-responsive__heading {
  width: 50%;
  font-weight: 600;
  padding-right: 16px;
  text-align: left;
  display: inline-block;
  float: none;
}

.nhsuk-hee-table--multicols .nhsuk-table__cell__container {
  width: 48%;
  padding-left: 16px;
  text-align: left;
  display: inline-block;
}

.nhsuk-details.nhsuk-expander table, .nhsuk-tabs table {
  border: none;
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 0 !important;
  word-break: break-word;
}
.nhsuk-details.nhsuk-expander table caption, .nhsuk-tabs table caption {
  padding-left: 0;
  padding-right: 0;
}
.nhsuk-details.nhsuk-expander table thead, .nhsuk-tabs table thead {
  white-space: normal;
}
.nhsuk-details.nhsuk-expander .nhsuk-table-responsive, .nhsuk-tabs .nhsuk-table-responsive {
  word-break: normal;
}

.nhsuk-table-responsive thead {
  white-space: normal;
}

.nhsuk-related-links-card__list {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  list-style-type: none;
  padding-left: 0;
}
@media (min-width: 40.0625em) {
  .nhsuk-related-links-card__list {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .nhsuk-related-links-card__list {
    font-size: 14pt;
    line-height: 1.2;
  }
}

.nhsuk-related-links-card__list li {
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .nhsuk-related-links-card__list li {
    margin-bottom: 16px;
  }
}

.nhsuk-related-links-card__link {
  text-decoration: none;
}

.nhsuk-related-links-card__link:hover {
  text-decoration: underline;
}

.nhsuk-contact {
  margin-bottom: 40px;
  position: relative;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .nhsuk-contact {
    margin-bottom: 48px;
  }
}
.nhsuk-contact h2, .nhsuk-contact h3, .nhsuk-contact h4, .nhsuk-contact h5 {
  margin-bottom: 0;
}
.nhsuk-contact h4, .nhsuk-contact h5 {
  font-weight: 400;
  font-size: 19px;
  font-size: 1.1875rem;
}
.nhsuk-contact .nhsuk-contact__img-container {
  background: #d8dde0;
  border-radius: 50%;
  color: #4c6272;
  font-size: 3rem;
  font-weight: 700;
  height: 8.375rem;
  line-height: 8.375rem;
  margin-bottom: 24px;
  position: relative;
  text-align: center;
  width: 8.375rem;
}
@media print {
  .nhsuk-contact .nhsuk-contact__img-container {
    display: none;
  }
}
.nhsuk-contact .nhsuk-contact__img {
  border-bottom: 1px solid #f0f4f5;
  border-radius: 50%;
  display: block;
  height: 8.375rem;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 8.375rem;
}
@media print {
  .nhsuk-contact .nhsuk-contact__img {
    display: none;
  }
}
.nhsuk-contact .nhsuk-contact__description,
.nhsuk-contact .nhsuk-contact__heading,
.nhsuk-contact .nhsuk-contact__metadata {
  margin-bottom: 8px;
}
.nhsuk-contact .nhsuk-contact__pronoun {
  color: #4c6272;
}
.nhsuk-contact .nhsuk-contact__secondary-info p {
  word-wrap: break-word;
}

.nhsuk-contact__card {
  background: #ffffff;
  border: 1px solid #d8dde0;
}
.nhsuk-contact__card .nhsuk-contact__content {
  padding: 24px;
  position: relative;
}
@media (min-width: 40.0625em) {
  .nhsuk-contact__card .nhsuk-contact__content {
    padding: 32px;
  }
}
.nhsuk-contact__card .nhsuk-contact__content:first-child {
  margin-top: 0;
}
.nhsuk-contact__card .nhsuk-contact__content:last-child {
  margin-bottom: 0;
}
.nhsuk-contact__card .nhsuk-contact__pronoun {
  margin-bottom: 8px;
}
.nhsuk-contact__card p[aria-label=Address] {
  font-size: 1.1875rem;
  line-height: 1.47368;
}

.nhsuk-contact-group {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0;
}
@media (min-width: 48.0625em) {
  .nhsuk-contact-group {
    margin-bottom: 16px;
  }
}
.nhsuk-contact-group + .nhsuk-heading-l,
.nhsuk-contact-group + .nhsuk-heading-m,
.nhsuk-contact-group + h2,
.nhsuk-contact-group + h3 {
  padding-top: 0;
}
.nhsuk-contact-group .nhsuk-contact-group__item {
  display: flex;
  flex: 0 0 100%;
  list-style-type: none;
  margin-bottom: 0;
}
@media (min-width: 48.0625em) {
  .nhsuk-contact-group .nhsuk-contact-group__item {
    flex: 0 0 50%;
  }
}
.nhsuk-contact-group .nhsuk-contact-group__item .nhsuk-contact {
  margin-bottom: 16px;
}
@media (min-width: 48.0625em) {
  .nhsuk-contact-group .nhsuk-contact-group__item .nhsuk-contact {
    margin-bottom: 32px;
  }
}
.nhsuk-contact-group .nhsuk-contact-group__item:last-child .nhsuk-contact {
  margin-bottom: 0;
}
@media (min-width: 48.0625em) {
  .nhsuk-contact-group .nhsuk-contact-group__item:last-child .nhsuk-contact {
    margin-bottom: 32px;
  }
}

.nhsuk-contact--feature {
  margin-top: 40px;
}
@media (min-width: 40.0625em) {
  .nhsuk-contact--feature {
    margin-top: 56px;
  }
}

.nhsuk-contact__heading--feature {
  background: #005eb8;
  color: #ffffff;
  display: inline-block;
  left: -25px;
  margin-bottom: 8px;
  margin-right: -24px;
  padding: 8px 24px;
  position: relative;
  top: -8px;
}
@media (min-width: 40.0625em) {
  .nhsuk-contact__heading--feature {
    left: -33px;
    margin-right: -32px;
    padding: 8px 32px;
    top: -16px;
  }
}

.nhsuk-contact__content--feature {
  padding-top: 0 !important;
}

.nhsuk-contact__card .nhsuk-contact__secondary-info > * {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
}
@media (min-width: 40.0625em) {
  .nhsuk-contact__card .nhsuk-contact__secondary-info > * {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .nhsuk-contact__card .nhsuk-contact__secondary-info > * {
    font-size: 14pt;
    line-height: 1.2;
  }
}

.nhsuk-contact__secondary-info > * {
  margin-bottom: 12px;
}

.hee-microhero {
  width: 100%;
  height: 260px;
  display: block;
  background-color: #DDD;
  background-size: cover;
  background-position: center center;
}

.nhsuk-image--card {
  border: 1px solid #d8dde0;
  background-color: #ffffff;
  padding: 24px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 24px;
}
.nhsuk-image--card .nhsuk-image__img {
  max-width: 100%;
  height: auto;
}
.nhsuk-image--card .nhsuk-image__caption {
  font-size: 0.9rem;
  color: #212b32;
  padding: 0;
  margin-top: 16px;
}

.hee-media {
  background: #fff;
  border: 1px solid #d8dde0;
  padding: 24px 0;
  margin: 40px 0 80px;
}
.hee-media h2 {
  margin: 0 24px 24px;
}
.hee-media .hee-media__container {
  padding: 0 24px 56.25% 24px;
  position: relative;
}
.hee-media .hee-media__container iframe {
  height: 100%;
  left: 0;
  max-height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
}
.hee-media .hee-media__container.anchor {
  padding: 0;
}
.hee-media .hee-media__container.anchor iframe {
  position: relative;
}
.hee-media .hee-media__description {
  padding: 0 24px 24px;
}
.hee-media .hee-media__description p:last-child {
  margin-bottom: 0;
}
.hee-media .hee-media__info {
  padding: 24px 24px 0;
}
.hee-media .hee-media__reviews p {
  margin: 0;
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  color: #4c6272;
}
@media (min-width: 40.0625em) {
  .hee-media .hee-media__reviews p {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-media .hee-media__reviews p {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-media .hee-media__transcript a {
  position: relative;
  display: flex;
  margin-bottom: 16px;
  padding-left: 24px;
  font-size: 1.1875rem;
  font-weight: 600;
  color: #005eb8;
  text-decoration: underline;
  line-height: 34px;
  cursor: pointer;
}
.hee-media .hee-media__transcript a:hover {
  text-decoration: none;
}
.hee-media .hee-media__transcript a:focus {
  color: #212b32;
  text-decoration: underline;
  background: #ffeb3b;
}
.hee-media .hee-media__transcript a span:before {
  bottom: 0;
  content: "";
  left: 0;
  margin: auto;
  position: absolute;
  top: 0;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  border-width: 8px 0 8px 12px;
  border-left-color: inherit;
}
.hee-media .hee-media__transcript .hee-media__show-text {
  display: block;
}
.hee-media .hee-media__transcript .hee-media__hide-text {
  display: none;
}
.hee-media .hee-media__transcript .hee-media__transcript-text {
  display: none;
  margin-bottom: 24px;
}
.hee-media .hee-media__transcript.hee-media__transcript-expanded a span:before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  border-width: 12px 8px 0 8px;
  border-top-color: inherit;
}
.hee-media .hee-media__transcript.hee-media__transcript-expanded .hee-media__transcript-text,
.hee-media .hee-media__transcript.hee-media__transcript-expanded .hee-media__hide-text {
  display: block;
}
.hee-media .hee-media__transcript.hee-media__transcript-expanded .hee-media__show-text {
  display: none;
}

@media (min-width: 48.0625em) {
  .nhsuk-grid-column-two-thirds .hee-media iframe.youtube, .nhsuk-grid-column-two-thirds .hee-media iframe.vimeo {
    min-height: calc((100vw - 48px) / 16 * 9 - 74px);
  }
}
@media (min-width: 61.875em) {
  .nhsuk-grid-column-two-thirds .hee-media iframe.youtube, .nhsuk-grid-column-two-thirds .hee-media iframe.vimeo {
    min-height: 480px;
  }
}

.page--rightbar .page__content .hee-media__container.anchor iframe {
  height: 100px;
}

.page--fullwidth .page__content .hee-media__container.anchor iframe {
  height: 100px;
}
@media (min-width: 48.0625em) {
  .page--fullwidth .page__content .hee-media__container.anchor iframe {
    height: 162px;
  }
}

/* NHSUK-Map - need swapping to HEE-Navmap */
.nhsuk-map {
  display: flex;
  margin-bottom: 32px;
  margin-left: 0;
  margin-right: 0;
  padding: 40px 0;
  padding-top: 0;
}
@media (min-width: 40.0625em) {
  .nhsuk-map {
    margin-bottom: 40px;
  }
}
.nhsuk-map + .nhsuk-map {
  margin-top: 0;
}
@media (min-width: 40.0625em) {
  .nhsuk-map + .nhsuk-map {
    margin-top: 0;
  }
}

.nhsuk-map__image {
  display: block;
  width: 50%;
}

.nhsuk-map__image {
  display: none;
}

.nhsuk-map__caption {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
}
@media (min-width: 40.0625em) {
  .nhsuk-map__caption {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .nhsuk-map__caption {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.nhsuk-map__caption .nhsuk-map__description {
  width: 100%;
  text-align: left;
  margin-bottom: 32px;
}
.nhsuk-map__caption .nhsuk-map__description h3 {
  margin-bottom: 24px;
}
.nhsuk-map__caption ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.nhsuk-map__caption ul li {
  margin-bottom: 24px;
}
.nhsuk-map__caption ul li a {
  display: block;
  width: 100%;
  text-decoration: none;
}
.nhsuk-map__caption ul li a.hover, .nhsuk-map__caption ul li a:hover {
  text-decoration: underline;
}
.nhsuk-map__caption ul li a:visited {
  color: #005eb8;
}

@media (min-width: 40.0625em) {
  .nhsuk-map .nhsuk-map__image {
    display: block;
  }
  .nhsuk-map .nhsuk-map__caption {
    width: 50%;
    margin-right: 24px;
  }
}
.hee-resources__link .hee-resources__tag,
.hee-resources__link .hee-resources__docSize {
  text-decoration: none;
}
.hee-resources__link .hee-resources__tag {
  display: inline-block;
  position: relative;
  top: -1px;
  min-width: 40px;
  margin: 0 8px;
  padding: 2px 8px;
  color: #ffffff;
  font-size: 0.75em;
  text-align: center;
  text-transform: uppercase;
  border-radius: 12px;
}
.hee-resources__link .hee-resources__pdf {
  background-color: #d5281b;
}
.hee-resources__link .hee-resources__doc,
.hee-resources__link .hee-resources__docx {
  background-color: #2b579a;
}
.hee-resources__link .hee-resources__xls,
.hee-resources__link .hee-resources__xlsx,
.hee-resources__link .hee-resources__csv {
  background-color: #1D6F42;
}
.hee-resources__link .hee-resources__txt,
.hee-resources__link .hee-resources__mrc {
  background-color: #4c6272;
}
.hee-resources__link .hee-resources__odt,
.hee-resources__link .hee-resources__ott,
.hee-resources__link .hee-resources__fodt {
  background-color: #456697;
}
.hee-resources__link .hee-resources__ods,
.hee-resources__link .hee-resources__ots,
.hee-resources__link .hee-resources__fods {
  background-color: #007f3b;
}
.hee-resources__link .hee-resources__odf,
.hee-resources__link .hee-resources__fodf {
  background-color: #106f5a;
}
.hee-resources__link .hee-resources__odp,
.hee-resources__link .hee-resources__otp,
.hee-resources__link .hee-resources__fodp,
.hee-resources__link .hee-resources__ppt,
.hee-resources__link .hee-resources__pptx {
  background-color: #d5281b;
}
.hee-resources__link .hee-resources__oth {
  background-color: #737373;
}
.hee-resources__link .hee-resources__odg,
.hee-resources__link .hee-resources__fodg,
.hee-resources__link .hee-resources__otg {
  background-color: #a5265b;
}
.hee-resources__link .hee-resources__odb,
.hee-resources__link .hee-resources__fodb {
  background-color: #a5265b;
}
.hee-resources__link .hee-resources__odm,
.hee-resources__link .hee-resources__fodm {
  background-color: #344c84;
}
.hee-resources__link .hee-resources__docSize {
  display: inline-block;
  color: #4c6272;
}

.hee-resources__list {
  list-style-type: none;
  padding-left: 0;
}

.hee-card--details .hee-resources__wrapper {
  padding-right: 8px;
  display: block;
  width: 80%;
  word-break: break-word;
}
@media (min-width: 40.0625em) {
  .hee-card--details .hee-resources__wrapper {
    padding-right: 8px;
  }
}
.hee-card--details .hee-resources__wrapper:hover > .hee-resources__text {
  text-decoration: underline;
}
.hee-card--details .hee-resources__link {
  align-content: flex-start;
  align-items: flex-start;
  display: flex;
  text-decoration: none;
}
.hee-card--details .hee-resources__link span {
  font-weight: normal;
}
.hee-card--details .hee-resources__link span.hee-resources__text {
  padding-right: 4px;
}
.hee-card--details .hee-resources__link span.hee-resources__tag {
  border-radius: 6px;
  font-size: 10px;
  margin: 0;
  min-width: 32px;
  padding: 2px 6px 0 6px;
  text-decoration: none;
  top: 4px;
}

.hee-appliesto {
  padding: 24px;
  margin: 48px 0;
  background-color: #005eb8;
}

.hee-appliesto p {
  color: #FFF;
  margin-bottom: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

.hee-appliesto a {
  color: #FFF;
}

.hee-appliesto span {
  font-weight: bold;
}

.hee-anchorlinks__sticky {
  padding: 16px;
  border-top: 1px solid #d8dde0;
  bottom: 0;
  background-color: #f0f4f5;
  display: none;
  height: 91px;
  position: fixed;
  min-height: 91px;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks__sticky {
    padding: 24px;
  }
}
@media (min-width: 48.0625em) {
  .hee-anchorlinks__sticky {
    min-height: 107px;
  }
}
.hee-anchorlinks__sticky.active {
  display: block;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__wrapper {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  position: relative;
}
@media (min-width: 48.0625em) {
  .hee-anchorlinks__sticky .hee-anchorlinks__sticky__wrapper {
    max-width: 960px;
  }
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__wrapper .hee-anchorlinks {
  display: none;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__wrapper .hee-anchorlinks.is-sticky {
  border: 1px solid #d8dde0;
  bottom: 31px;
  display: block;
  left: 0;
  position: absolute;
  z-index: 10;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__btn {
  -webkit-appearance: button;
  align-items: center;
  border: 1px solid #d8dde0;
  background-color: #ffffff;
  box-shadow: none;
  color: #212b32;
  cursor: pointer;
  display: flex;
  font-size: 19px;
  font-weight: 600;
  padding: 16px 14px;
  text-decoration: none;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__btn span {
  color: #212b32;
  padding-right: 15px;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__btn:after {
  background-image: url("data:image/svg+xml,%3Csvg class='nhsuk-icon nhsuk-icon__chevron-right' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' aria-hidden='true'%3E%3Cpath d='M15.5 12a1 1 0 0 1-.29.71l-5 5a1 1 0 0 1-1.42-1.42l4.3-4.29-4.3-4.29a1 1 0 0 1 1.42-1.42l5 5a1 1 0 0 1 .29.71z'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 1px center;
  content: "";
  display: block;
  height: 24px;
  transform: rotate(90deg);
  width: 24px;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__btn.active:after {
  transform: rotate(270deg);
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__top-link {
  background-color: #ffffff;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 8.5C12.3 8.5 12.5 8.6 12.7 8.8L17.7 13.8C18.1 14.2 18.1 14.8 17.7 15.2C17.3 15.6 16.7 15.6 16.3 15.2L12 10.9L7.7 15.2C7.3 15.6 6.7 15.6 6.3 15.2C5.9 14.8 5.9 14.2 6.3 13.8L11.3 8.8C11.5 8.6 11.7 8.5 12 8.5Z' fill='black'/%3E%3Crect x='6' y='5' width='12' height='2' rx='1' fill='black'/%3E%3Crect x='11' y='19' width='10' height='2' rx='1' transform='rotate(-90 11 19)' fill='black'/%3E%3C/svg%3E");
  background-position: center center;
  background-repeat: no-repeat;
  border: 1px solid #d8dde0;
  height: 58px;
  text-indent: -99999px;
  width: 59px;
}
.hee-anchorlinks__sticky .hee-anchorlinks__sticky__top-link:visited {
  color: #005eb8;
}
@media (min-width: 48.0625em) {
  .hee-anchorlinks__sticky .hee-anchorlinks__sticky__top-link {
    font-weight: 400;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
    background-color: transparent;
    background-image: none;
    border: 0;
    height: auto;
    text-indent: 0;
    width: auto;
  }
}
@media (min-width: 48.0625em) and (min-width: 40.0625em) {
  .hee-anchorlinks__sticky .hee-anchorlinks__sticky__top-link {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print and (min-width: 48.0625em) {
  .hee-anchorlinks__sticky .hee-anchorlinks__sticky__top-link {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.hee-anchorlinks {
  background-color: #FFF;
  border: 1px solid #d8dde0;
  padding: 24px;
  margin-bottom: 24px;
}
.hee-anchorlinks h2 {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.55556;
  display: block;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks h2 {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.45455;
  }
}
@media print {
  .hee-anchorlinks h2 {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks h2 {
    margin-bottom: 16px;
  }
}
.hee-anchorlinks ul {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 0;
  list-style-type: none;
  margin-top: 0;
  padding-left: 0;
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-anchorlinks ul {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul {
    margin-bottom: 0;
  }
}
.hee-anchorlinks ul li {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  display: block;
  margin-top: 0;
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul li {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-anchorlinks ul li {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul li {
    margin-bottom: 8px;
  }
}
.hee-anchorlinks ul li.has-children {
  margin-bottom: 0;
}
.hee-anchorlinks ul li a {
  text-decoration: none;
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper {
  align-items: start;
  display: flex;
  margin-bottom: 8px;
  padding-left: 8px;
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul li .hee-anchorlinks__wrapper {
    margin-bottom: 8px;
  }
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper a {
  display: inline-block;
  margin-left: 4px;
  padding-left: 4px;
  position: relative;
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper svg {
  fill: #212b32;
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper.chevron span {
  display: block;
  height: 17px;
  padding-left: 3px;
  width: 7px;
  transform: rotate(90deg);
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper.chevron svg {
  height: 17px;
  width: 7px;
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper.circle {
  align-items: center;
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper.circle span {
  display: flex;
  justify-content: center;
  padding-left: 2px;
  width: 8px;
}
.hee-anchorlinks ul li .hee-anchorlinks__wrapper.circle svg {
  height: 3px;
  width: 3px;
}
.hee-anchorlinks ul ul {
  margin-top: 8px;
  margin-left: 24px;
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul ul {
    margin-top: 8px;
  }
}
@media (min-width: 40.0625em) {
  .hee-anchorlinks ul ul {
    margin-left: 32px;
  }
}

.hee-phasebanner {
  border-bottom: 1px solid #d8dde0;
  padding-top: 8px;
  padding-bottom: 8px;
}
.hee-phasebanner .hee-phasebanner__wrapper {
  align-items: center;
  display: flex;
}
.hee-phasebanner .hee-phasebanner__wrapper .hee-phasebanner__tag {
  background-color: #005eb8;
  color: #ffffff;
  font-weight: bold;
  line-height: 1em;
  margin-right: 16px;
  padding: 8px 16px;
  text-transform: uppercase;
}
@media (max-width: 48.0525em) {
  .hee-phasebanner .hee-phasebanner__wrapper .hee-phasebanner__tag {
    line-height: 1.5;
  }
}
.hee-phasebanner .hee-phasebanner__wrapper .hee-phasebanner__content p {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  margin: 0;
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-phasebanner .hee-phasebanner__wrapper .hee-phasebanner__content p {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-phasebanner .hee-phasebanner__wrapper .hee-phasebanner__content p {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-phasebanner .hee-phasebanner__wrapper .hee-phasebanner__content p:last-child {
  margin-bottom: 0;
}

.hee-phasebanner--notag .hee-phasebanner__tag {
  display: none !important;
}

.nhsuk-tabs {
  margin: 0 0 48px;
  position: relative;
}
.nhsuk-tabs .nhsuk-tabs__title {
  margin-bottom: 16px;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.33333;
  font-weight: 600;
}
@media (min-width: 40.0625em) {
  .nhsuk-tabs .nhsuk-tabs__title {
    margin-bottom: 24px;
  }
}
@media (min-width: 40.0625em) {
  .nhsuk-tabs .nhsuk-tabs__title {
    font-size: 32px;
    font-size: 2rem;
    line-height: 1.25;
  }
}
@media print {
  .nhsuk-tabs .nhsuk-tabs__title {
    font-size: 24pt;
    line-height: 1.05;
  }
}
.nhsuk-tabs .nhsuk-tabs__mobile {
  display: none;
}
@media (max-width: 48.0525em) {
  .nhsuk-tabs .nhsuk-tabs__desktop {
    display: none;
  }
  .nhsuk-tabs .nhsuk-tabs__mobile {
    display: block;
  }
  .nhsuk-tabs .nhsuk-tabs__mobile .nhsuk-tabs__list {
    display: block;
  }
}
.nhsuk-tabs .nhsuk-tabs__list {
  display: flex;
  list-style: none;
  padding: 0;
}
.nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item {
  display: flex;
  align-items: center;
  text-align: left;
  width: 100%;
  border-bottom: 0;
  border: 1px solid #ffffff;
  background-color: #005eb8;
  margin: 0;
  background-image: url("data:image/svg+xml,%3Csvg class='nhsuk-icon nhsuk-icon__plus' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='32' aria-hidden='true'%3E%3Ccircle cx='12' cy='12' r='10' fill='none'%3E%3C/circle%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M12 8v8M8 12h8'%3E%3C/path%3E%3C/svg%3E%0A");
  background-position: right 4px center;
  background-repeat: no-repeat;
  box-shadow: inset 0 -4px 0 #004b93;
  font-size: 1rem;
  line-height: 1.2;
  color: #ffffff;
  padding: 16px 32px 16px 16px;
  position: relative;
  text-decoration: none;
  cursor: pointer;
}
.nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item:focus {
  background: #ffeb3b;
  background-image: url("data:image/svg+xml,%3Csvg class='nhsuk-icon nhsuk-icon__plus' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='32' aria-hidden='true'%3E%3Ccircle cx='12' cy='12' r='10' fill='none'%3E%3C/circle%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M12 8v8M8 12h8'%3E%3C/path%3E%3C/svg%3E%0A");
  background-position: right 4px center;
  background-repeat: no-repeat;
  box-shadow: inset 0 -4px 0 #212b32;
  color: #212b32;
  text-decoration: none;
}
.nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item:active {
  background-image: url("data:image/svg+xml,%3Csvg class='nhsuk-icon nhsuk-icon__plus' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='32' aria-hidden='true'%3E%3Ccircle cx='12' cy='12' r='10' fill='none'%3E%3C/circle%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M12 8v8M8 12h8'%3E%3C/path%3E%3C/svg%3E%0A");
  color: #212b32;
}
.nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item:before {
  content: none;
}
.nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item.nhsuk-tabs__list-item--selected {
  background: #FFF;
  background-image: url("data:image/svg+xml,%3Csvg class='nhsuk-icon nhsuk-icon__minus' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='32' aria-hidden='true'%3E%3Ccircle cx='12' cy='12' r='10' fill='none'%3E%3C/circle%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M8 12h8'%3E%3C/path%3E%3C/svg%3E%0A");
  background-position: right 4px center;
  background-repeat: no-repeat;
  border: 1px solid #d8dde0;
  border-bottom: none;
  border-top: none;
  box-shadow: none;
  font-weight: 600;
  color: #212b32;
  cursor: unset;
}
@media (min-width: 48.0625em) {
  .nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item.nhsuk-tabs__list-item--selected {
    border: 1px solid #d8dde0;
    border-bottom: none;
  }
}
.nhsuk-tabs .nhsuk-tabs__list .nhsuk-tabs__list-item.nhsuk-tabs__list-item--selected:first-child {
  border-top: 1px solid #d8dde0;
}
.nhsuk-tabs .nhsuk-tabs__panel {
  margin-bottom: 0;
  padding: 40px 24px;
  background-color: #ffffff;
  border: 1px solid #d8dde0;
  border-bottom: none;
  border-top: none;
  padding: 16px;
}
@media (min-width: 40.0625em) {
  .nhsuk-tabs .nhsuk-tabs__panel {
    margin-bottom: 0;
  }
}
@media (min-width: 48.0625em) {
  .nhsuk-tabs .nhsuk-tabs__panel {
    border: none;
  }
}
.nhsuk-tabs .nhsuk-tabs__panel img {
  max-width: 100%;
}
.nhsuk-tabs .nhsuk-tabs__panel:last-child {
  border-bottom: 1px solid #d8dde0;
}

@media (min-width: 40.0625em) {
  .js-enabled .nhsuk-tabs__title {
    display: block;
  }
}
.js-enabled .nhsuk-tabs__list {
  border-bottom: none;
}
@media (min-width: 48.0625em) {
  .js-enabled .nhsuk-tabs__list {
    border: none;
  }
}
@media (min-width: 48.0625em) {
  .js-enabled .nhsuk-tabs__panel {
    border: none;
  }
}
@media (min-width: 48.0625em) {
  .js-enabled .nhsuk-tabs__panel {
    border: 1px solid #d8dde0;
    border-top: none;
  }
}
@media (min-width: 40.0625em) {
  .js-enabled .nhsuk-tabs__panel > :last-child {
    margin-bottom: 16px;
  }
}
@media (min-width: 40.0625em) and (min-width: 40.0625em) {
  .js-enabled .nhsuk-tabs__panel > :last-child {
    margin-bottom: 24px;
  }
}
.hee-card--programme-info {
  margin-bottom: 40px;
  background: #fff;
  border: 1px solid #d8dde0;
  position: relative;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-card--programme-info .hee-card--programme-info__heading {
    margin-bottom: 8px;
  }
}
@media (min-width: 40.0625em) and (min-width: 40.0625em) {
  .hee-card--programme-info .hee-card--programme-info__heading {
    margin-bottom: 16px;
  }
}
.hee-card--programme-info .hee-card--programme-info__list {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.hee-card--programme-info .hee-card--programme-info__list li {
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-card--programme-info .hee-card--programme-info__list li {
    margin-bottom: 16px;
  }
}
.hee-card--programme-info .hee-card--programme-info__list li:last-of-type {
  margin-bottom: 0;
}
.hee-card--programme-info .hee-card--programme-info__link {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  text-decoration: none;
}
@media (min-width: 40.0625em) {
  .hee-card--programme-info .hee-card--programme-info__link {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-card--programme-info .hee-card--programme-info__link {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-card--programme-info .hee-card--programme-info__link:hover {
  text-decoration: underline;
}
.hee-card--programme-info .hee-card--programme-info__link.active {
  font-weight: 600;
}
.hee-card--programme-info .hee-card--programme-info__link.active:hover {
  text-decoration: none;
}
.hee-card--programme-info.theme__item-border .hee-card--programme-info__list li {
  border-bottom: 1px solid #d8dde0;
  margin-bottom: 8px;
  padding-bottom: 4px;
}

.hee-card--department .hee-card--department__header {
  border-bottom: 2px solid #d8dde0;
  padding-bottom: 8px;
  margin-bottom: 16px;
}
@media (min-width: 40.0625em) {
  .hee-card.hee-card--person .hee-card--header {
    display: inline-block;
  }
}
@media (min-width: 40.0625em) {
  .hee-card.hee-card--person .hee-card--header .hee-card__image {
    margin-bottom: 24px;
  }
}
.hee-card.hee-card--person .hee-card__jobtitle {
  margin-bottom: 0;
}

.hee-banner {
  background-color: #ffeb3b;
  padding-bottom: 24px;
  padding-top: 24px;
}
@media print {
  .hee-banner {
    display: none;
  }
}
.hee-banner .hee-banner__message {
  position: relative;
}
.hee-banner .hee-banner__message > *:first-child {
  margin-top: 0;
}
.hee-banner .hee-banner__message > *:last-child {
  margin-bottom: 0;
}
.hee-banner .hee-banner__message h1 {
  margin-bottom: 24px;
  line-height: 56px;
}
.hee-banner .hee-banner__message h2 {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.33333;
  margin-bottom: 8px;
  line-height: 40px;
}
@media (min-width: 40.0625em) {
  .hee-banner .hee-banner__message h2 {
    font-size: 32px;
    font-size: 2rem;
    line-height: 1.25;
  }
}
@media print {
  .hee-banner .hee-banner__message h2 {
    font-size: 24pt;
    line-height: 1.05;
  }
}
@media (min-width: 40.0625em) {
  .hee-banner .hee-banner__message h2 {
    margin-bottom: 16px;
  }
}
.hee-banner .hee-banner__message h2:last-child {
  margin-bottom: 0;
}
.hee-banner .hee-banner__message h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.4;
  margin-bottom: 8px;
  font-weight: 400;
  line-height: 32px;
  margin: 0;
}
@media (min-width: 40.0625em) {
  .hee-banner .hee-banner__message h3 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.33333;
  }
}
@media print {
  .hee-banner .hee-banner__message h3 {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .hee-banner .hee-banner__message h3 {
    margin-bottom: 16px;
  }
}
.hee-banner .hee-banner__message h3:last-child {
  margin-bottom: 0;
}
.hee-banner .hee-banner__message p {
  margin-top: 8px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  line-height: 1.5;
  display: block;
  margin-bottom: 16px;
}
@media (min-width: 40.0625em) {
  .hee-banner .hee-banner__message p {
    margin-top: 8px;
  }
}
@media (min-width: 40.0625em) {
  .hee-banner .hee-banner__message p {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-banner .hee-banner__message p {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.hee-banner .hee-banner__message p:last-of-type {
  margin-bottom: 0;
}
.hee-banner .hee-banner__message a {
  color: #005eb8;
}
.hee-banner .hee-banner__message a:focus {
  background-color: #003d78;
  box-shadow: 0 0 0 4px #003d78;
  color: #ffffff;
  outline: 4px solid transparent;
  outline-offset: 4px;
}
.hee-banner .hee-banner__message a:hover {
  background-color: #005eb8;
  box-shadow: 0 0 0 4px #005eb8;
  color: #ffffff;
}
.hee-banner .hee-banner__message a:active {
  background-color: #002f5c;
  box-shadow: 0 0 0 4px #003d78;
  color: #ffffff;
}
.hee-banner.hee-banner--announcement {
  background-color: #7c2855;
}
.hee-banner.hee-banner--mourning {
  background-color: #000000;
}
.hee-banner.hee-banner--announcement, .hee-banner.hee-banner--mourning {
  color: #ffffff;
}
.hee-banner.hee-banner--announcement a, .hee-banner.hee-banner--mourning a {
  color: #005eb8;
  color: #ffffff;
}
.hee-banner.hee-banner--announcement a:focus, .hee-banner.hee-banner--mourning a:focus {
  background-color: #003d78;
  box-shadow: 0 0 0 4px #003d78;
  color: #ffffff;
  outline: 4px solid transparent;
  outline-offset: 4px;
}
.hee-banner.hee-banner--announcement a:hover, .hee-banner.hee-banner--mourning a:hover {
  background-color: #005eb8;
  box-shadow: 0 0 0 4px #005eb8;
  color: #ffffff;
}
.hee-banner.hee-banner--announcement a:active, .hee-banner.hee-banner--mourning a:active {
  background-color: #002f5c;
  box-shadow: 0 0 0 4px #003d78;
  color: #ffffff;
}
.hee-banner.hee-banner--announcement a:visited, .hee-banner.hee-banner--mourning a:visited {
  color: #ffffff;
}
.hee-banner.hee-banner--announcement a:hover, .hee-banner.hee-banner--mourning a:hover {
  color: #ffffff;
  text-decoration: none;
}
.hee-banner.hee-banner--announcement a:focus, .hee-banner.hee-banner--mourning a:focus {
  color: #212b32;
  outline: 4px solid transparent;
  outline-offset: 4px;
  text-decoration: none;
}
.hee-banner.hee-banner--announcement a:active, .hee-banner.hee-banner--mourning a:active {
  color: #002f5c;
}
.hee-banner.hee-banner--announcement a:focus, .hee-banner.hee-banner--mourning a:focus {
  background: #ffeb3b;
  box-shadow: 0 0 0 4px #ffeb3b, 0 4px 0 4px #212b32;
}

.hee-back-to-top {
  margin-bottom: 40px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
}
@media (min-width: 40.0625em) {
  .hee-back-to-top {
    margin-bottom: 48px;
  }
}
@media (min-width: 40.0625em) {
  .hee-back-to-top {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-back-to-top {
    font-size: 14pt;
    line-height: 1.15;
  }
}

@media (min-width: 48.0625em) {
  .nhsuk-footer .nhsuk-footer__list--three-columns {
    -moz-column-count: 3;
    -moz-column-gap: 24px;
    -webkit-column-count: 3;
    -webkit-column-gap: 24px;
    column-count: 3;
    column-gap: 24px;
  }
}
@media (min-width: 48.0625em) {
  .nhsuk-footer .nhsuk-footer__list--three-columns li {
    float: none;
  }
}

.hee-listing .hee-listing__summary {
  border-bottom: 1px solid #d8dde0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.hee-listing .hee-listing__count {
  align-self: center;
}
.hee-listing .hee-listing__count h2 {
  margin-bottom: 0;
}
.hee-listing .hee-listing__results {
  margin-bottom: 40px;
  padding-top: 32px;
}
@media (min-width: 40.0625em) {
  .hee-listing .hee-listing__results {
    margin-bottom: 48px;
  }
}
@media (min-width: 48.0625em) {
  .hee-listing .hee-listing__results.layout-two-col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media (min-width: 48.0625em) {
  .hee-listing .hee-listing__results.layout-two-col .hee-listing-item {
    margin-bottom: 24px;
    flex-basis: 48%;
  }
}
@media (min-width: 48.0625em) {
  .hee-listing .hee-listing__results.layout-two-col .hee-listing-item__details__label {
    display: block;
    width: auto;
  }
}
.hee-listing .hee-listing__tags__group {
  display: block;
  margin-bottom: 8px;
  width: 100%;
}
.hee-listing .hee-listing__tags__group:last-of-type {
  margin-bottom: 0;
}
.hee-listing .hee-listing__tags__group label {
  display: block;
  font-weight: 600;
  margin-right: 8px;
}
.hee-listing .hee-listing__tags {
  margin-bottom: 24px;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-listing .hee-listing__tags {
    margin-bottom: 32px;
  }
}
.hee-listing .nhsuk-pagination {
  margin-top: 0;
}

.hee-listing-item {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #ffffff;
  border: 1px solid #d8dde0;
  padding: 24px;
  margin-bottom: 16px;
}
@media (min-width: 40.0625em) {
  .hee-listing-item {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-listing-item {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.hee-listing-item .hee-listing-item__details__row {
  margin-bottom: 8px;
}
.hee-listing-item .hee-listing-item__details__row span {
  display: inline-block;
}
.hee-listing-item .hee-listing-item__details__row span.hee-listing-item__details__label {
  font-weight: 600;
}
@media (min-width: 40.0625em) {
  .hee-listing-item .hee-listing-item__details__row span.hee-listing-item__details__label {
    width: 33%;
  }
}
.hee-listing-item.has-image {
  padding: 0 0 24px 0;
}
.hee-listing-item.has-image .hee-listing-item__image {
  background-repeat: no-repeat;
  background-size: cover;
  margin-bottom: 24px;
  max-width: 100%;
  padding-bottom: 49.34%;
}
.hee-listing-item.has-image h3 {
  padding: 0 24px 0 24px;
}
.hee-listing-item.has-image .hee-listing-item__details__row {
  margin-bottom: 16px;
  padding: 0 24px 0 24px;
}
.hee-listing-item.has-image .hee-listing-item__details__label {
  display: block;
  width: auto;
}
.hee-listing-item.has-image .hee-listing-item__summary {
  padding: 0 24px 0 24px;
}

.nhsuk-filter .nhsuk-fieldset__legend {
  display: block;
  margin-bottom: 24px;
  width: 100%;
}
.nhsuk-filter .nhsuk-filter__group {
  border-bottom: 1px solid #d8dde0;
  margin-bottom: 24px;
  position: relative;
}
.nhsuk-filter .nhsuk-filter__group:not(.nhsuk-filter__group--closed) {
  padding-bottom: 24px;
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-filter__group__clear {
  display: none;
  position: absolute;
  right: 0;
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-filter__group__clear.visible {
  display: inline-block;
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-hint {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  display: none;
  margin-top: -24px;
  padding-left: 28px;
}
@media (min-width: 40.0625em) {
  .nhsuk-filter .nhsuk-filter__group .nhsuk-hint {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .nhsuk-filter .nhsuk-filter__group .nhsuk-hint {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-hint.visible {
  display: block;
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-checkboxes.scrollable {
  overflow-y: auto;
  height: 190px;
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-checkboxes.scrollable::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 7px;
}
.nhsuk-filter .nhsuk-filter__group .nhsuk-checkboxes.scrollable::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #aeb7bd;
}
.nhsuk-filter .nhsuk-form-group {
  margin-bottom: 0;
}
.nhsuk-filter .nhsuk-form-group.parent-group {
  margin-bottom: 16px;
}
.nhsuk-filter .nhsuk-form-group select {
  width: 100%;
}
.nhsuk-filter__group--closed {
  padding-bottom: 0;
}
.nhsuk-filter__group--closed label, .nhsuk-filter__group--closed .nhsuk-checkboxes, .nhsuk-filter__group--closed .nhsuk-select {
  display: none;
}
.nhsuk-filter__group--closed .nhsuk-hint.visible {
  margin-top: -24px;
}
.nhsuk-filter__group--closed .nhsuk-form-group.parent-group {
  margin-bottom: 0;
}
.nhsuk-filter__group--closed .nhsuk-fieldset__legend {
  /*margin-bottom: 0;*/
}
.nhsuk-filter--js .nhsuk-fieldset__legend {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23000' d='m240.97 130.52 194.34 194.34c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901 0.04l-154.75-154.02-154.74 154.02c-9.379 9.335-24.544 9.317-33.901-0.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941l194.34-194.34c9.372-9.373 24.568-9.373 33.941-1e-3z'/%3E%3C/svg%3E%0A");
  background-position: 0.3em 0.3em;
  background-repeat: no-repeat;
  background-size: 0.75em;
  color: #005eb8;
  cursor: pointer;
  padding-left: 1.6em;
}
.nhsuk-filter--js .nhsuk-filter__group--closed .nhsuk-fieldset__legend {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z'/%3E%3C/svg%3E");
}

.nhsuk-filter-tag {
  padding: 0.75em 1em;
  margin: 0.15em 0;
}
.nhsuk-filter-tag > * {
  display: inline-block;
  vertical-align: middle;
}
.nhsuk-filter-tag__icon {
  background-image: url('data:image/svg+xml,<svg class="nhsuk-icon nhsuk-icon__close" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path fill="%23fff" d="M13.41 12l5.3-5.29a1 1 0 1 0-1.42-1.42L12 10.59l-5.29-5.3a1 1 0 0 0-1.42 1.42l5.3 5.29-5.3 5.29a1 1 0 0 0 0 1.42 1 1 0 0 0 1.42 0l5.29-5.3 5.29 5.3a1 1 0 0 0 1.42 0 1 1 0 0 0 0-1.42z"></path></svg>');
  height: 24px;
  margin-left: 0.5em;
  text-indent: -99999999px;
  width: 24px;
}
.nhsuk-filter-tag--js {
  cursor: pointer;
}

.hee-search-form .hee-search-form__wrapper {
  background-color: transparent;
  display: flex;
  margin-bottom: 40px;
  padding: 0;
  width: 100%;
}
.hee-search-form .hee-search-form__input {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #ffffff !important;
  border: 1px solid #aeb7bd;
  border-right: 0;
  border-radius: 4px 0 0 4px;
  color: #4c6272;
  flex-grow: 2;
  height: 52px;
  margin: 0;
  outline: 0;
  padding: 0 16px;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-search-form .hee-search-form__input {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-search-form .hee-search-form__input {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.hee-search-form .hee-search-form__input:focus {
  border: 4px solid #ffeb3b;
  box-shadow: inset 0 0 0 4px #212b32;
  padding: 0 16px 0 13px;
  outline: 0;
}
.hee-search-form .hee-search-form__submit {
  color: #ffffff;
  background-color: #005eb8;
  border: 0;
  border-radius: 0 4px 4px 0;
  float: right;
  height: 52px;
  line-height: inherit;
  margin: 0;
  outline: 0;
  padding: 8px 8px 0;
  width: 52px;
}
.hee-search-form .hee-search-form__submit:hover {
  background-color: #007f3b;
  cursor: pointer;
}
.hee-search-form .hee-search-form__submit:focus {
  background-color: #ffeb3b;
  border-bottom: 4px solid #212b32;
  box-shadow: none;
}
.hee-search-form .hee-search-form__submit:focus .nhsuk-icon__search {
  fill: #212b32;
}

.hee-search-listing {
  max-width: 100%;
}
@media (min-width: 48.0625em) {
  .hee-search-listing {
    max-width: 66%;
  }
}

.hee-search-listing-item {
  padding-bottom: 16px;
  padding-top: 16px;
  border-top: 1px solid #d8dde0;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item {
    padding-bottom: 24px;
  }
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item {
    padding-top: 24px;
  }
}
.hee-search-listing-item h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.4;
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item h3 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.33333;
  }
}
@media print {
  .hee-search-listing-item h3 {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item h3 {
    margin-bottom: 8px;
  }
}
.hee-search-listing-item .hee-search-listing-item__subtitle {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 16px;
  display: block;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__subtitle {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-search-listing-item .hee-search-listing-item__subtitle {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__subtitle {
    margin-bottom: 24px;
  }
}
.hee-search-listing-item .hee-search-listing-item__summary {
  margin-bottom: 16px;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__summary {
    margin-bottom: 24px;
  }
}
.hee-search-listing-item .hee-search-listing-item__attributes {
  margin-bottom: 16px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__attributes {
    margin-bottom: 24px;
  }
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__attributes {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-search-listing-item .hee-search-listing-item__attributes {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.hee-search-listing-item .hee-search-listing-item__attributes__item {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #d8dde0;
  display: flex;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__attributes__item {
    margin-bottom: 8px;
  }
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__attributes__item {
    padding-bottom: 8px;
  }
}
.hee-search-listing-item .hee-search-listing-item__attributes__label {
  font-weight: 600;
  flex-basis: 33%;
}
.hee-search-listing-item .hee-search-listing-item__url {
  margin-bottom: 16px;
  align-items: center;
  display: none;
}
@media (min-width: 40.0625em) {
  .hee-search-listing-item .hee-search-listing-item__url {
    margin-bottom: 24px;
  }
}
.hee-search-listing-item .hee-search-listing-item__url a {
  display: block;
  padding-left: 8px;
  word-break: break-word;
}
.hee-search-listing-item .hee-search-listing-item__url:before {
  background: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='%23005EB8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 0C5.37242 0 0 5.37242 0 12C0 18.6276 5.37242 24 12 24C18.6276 24 24 18.6276 24 12C24 5.37242 18.6276 0 12 0ZM15.9818 17.3032C15.7931 17.491 15.5952 17.6879 15.4345 17.849C15.2898 17.9942 15.1877 18.1732 15.136 18.3673C15.0629 18.6411 15.0039 18.9179 14.9052 19.1835L14.0637 21.4505C13.3979 21.5956 12.7089 21.6774 12 21.6774V20.3526C12.0818 19.7419 11.6303 18.5981 10.905 17.8727C10.6147 17.5824 10.4516 17.1885 10.4516 16.7777V15.2289C10.4516 14.6656 10.1482 14.1479 9.65516 13.8755C8.95984 13.4908 7.97081 12.9532 7.29339 12.6121C6.7379 12.3324 6.22403 11.9763 5.76194 11.5597L5.72323 11.5248C5.39277 11.2265 5.09938 10.8896 4.84935 10.5213C4.39548 9.855 3.65613 8.75903 3.17564 8.04677C4.16613 5.84516 5.95113 4.0771 8.16919 3.11661L9.33097 3.69774C9.84581 3.95516 10.4516 3.58113 10.4516 3.00532V2.45855C10.8382 2.39613 11.2316 2.35645 11.6318 2.34145L13.0011 3.71081C13.3035 4.01323 13.3035 4.50339 13.0011 4.80581L12.7742 5.03226L12.2739 5.53258C12.1229 5.68355 12.1229 5.92887 12.2739 6.07984L12.5008 6.30677C12.6518 6.45774 12.6518 6.70306 12.5008 6.85403L12.1137 7.24113C12.041 7.31367 11.9425 7.35439 11.8398 7.35435H11.4048C11.3042 7.35435 11.2074 7.39355 11.1348 7.46419L10.6548 7.93113C10.596 7.98842 10.5569 8.06293 10.5431 8.1439C10.5294 8.22487 10.5417 8.30811 10.5784 8.38161L11.3327 9.89081C11.4615 10.1482 11.2742 10.4511 10.9868 10.4511H10.7139C10.6205 10.4511 10.5305 10.4173 10.4603 10.3563L10.0113 9.96629C9.90968 9.87814 9.78687 9.81795 9.65494 9.79165C9.52302 9.76535 9.38652 9.77384 9.25887 9.81629L7.75064 10.319C7.6355 10.3574 7.53535 10.4311 7.4644 10.5296C7.39345 10.628 7.35529 10.7464 7.35532 10.8677C7.35532 11.0869 7.47919 11.2868 7.67516 11.385L8.21129 11.6531C8.66661 11.881 9.16887 11.9995 9.6779 11.9995C10.1869 11.9995 10.771 13.32 11.2263 13.5479H14.4561C14.8669 13.5479 15.2603 13.711 15.5511 14.0013L16.2135 14.6637C16.4903 14.9405 16.6457 15.316 16.6456 15.7074C16.6455 16.004 16.5868 16.2977 16.4729 16.5716C16.359 16.8454 16.1921 17.0941 15.9818 17.3032ZM20.1774 12.8831C19.8973 12.8129 19.6529 12.6411 19.4927 12.4006L18.6227 11.0956C18.4954 10.905 18.4275 10.6809 18.4275 10.4516C18.4275 10.2224 18.4954 9.99824 18.6227 9.80758L19.5706 8.38597C19.6829 8.21806 19.8368 8.08161 20.0177 7.99161L20.6458 7.67758C21.3 8.98016 21.6774 10.4453 21.6774 12C21.6774 12.4195 21.6416 12.8303 21.5894 13.2358L20.1774 12.8831Z' fill='%23005EB8'/%3E%3C/svg%3E") no-repeat;
  content: "";
  display: block;
  height: 24px;
  min-width: 24px;
}
.hee-search-listing-item .hee-search-listing-item__updated {
  color: #4c6272;
  display: block;
}

.hee-review-date {
  margin-bottom: 24px;
  margin-top: 8px;
}
@media (min-width: 48.0625em) {
  .hee-review-date {
    margin-bottom: 0;
  }
}

.nhsuk-list--border > li {
  border-bottom: 1px solid #d8dde0;
  padding: 8px 0 16px;
}
.nhsuk-list--border > li > :first-child {
  margin-top: 0;
}
.nhsuk-list--border > li > :last-child {
  margin-bottom: 0;
}
.nhsuk-list--border > li:first-of-type {
  border-top: 1px solid #d8dde0;
  padding: 16px 0;
}

.hee-card {
  background-color: #FFF;
  border: 1px solid #d8dde0;
  padding: 24px;
  margin-bottom: 24px;
}
.hee-flexgrid-row .hee-card {
  max-width: none;
}
.hee-card .hee-card--header {
  padding-bottom: 16px;
  border-bottom: 2px solid #d8dde0;
  display: inline-block;
  margin-bottom: 16px;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card--header {
    padding-bottom: 24px;
  }
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card--header {
    align-items: center;
    display: flex;
  }
}
.hee-card .hee-card--header .hee-card__image {
  margin-right: 24px;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card--header .hee-card__image {
    margin-bottom: 0;
  }
}
.hee-card .hee-card--header .hee-card__image.has-bg .hee-card__initials {
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.hee-card .hee-card--header .hee-card__image.has-bg span {
  display: none;
}
.hee-card .hee-card--header .hee-card__image .hee-card__initials {
  width: 134px;
}
.hee-card .hee-card--header .hee-card__pronouns {
  margin-bottom: 8px;
}
.hee-card .hee-card__image {
  width: 134px;
  height: 134px;
  display: block;
  margin-bottom: 24px;
}
.hee-card .hee-card__initials {
  display: block;
  background: #d8dde0;
  width: 100%;
  height: 100%;
  border-radius: 134px;
}
.hee-card .hee-card__initials span {
  text-align: center;
  line-height: 134px;
  font-size: 48px;
  font-weight: bold;
  display: block;
  color: #4c6272;
}
.hee-card .hee-card__name {
  margin-bottom: 0.5em;
}
.hee-card .hee-card__pronouns {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  display: block;
  color: #4c6272;
  margin-bottom: 1em;
  margin-top: -0.75em;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__pronouns {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-card .hee-card__pronouns {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-card .hee-card__jobtitle {
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__jobtitle {
    margin-bottom: 8px;
  }
}
.hee-card .hee-card__department,
.hee-card .hee-card__organisation {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 0;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__department,
  .hee-card .hee-card__organisation {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-card .hee-card__department,
  .hee-card .hee-card__organisation {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.hee-card .hee-card__contact {
  margin-bottom: 16px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  list-style: none;
  padding: 0;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__contact {
    margin-bottom: 24px;
  }
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__contact {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-card .hee-card__contact {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__contact {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
    padding-bottom: 16px;
    width: 100%;
  }
}
.hee-card .hee-card__contact li {
  word-wrap: break-word;
}
.hee-card .hee-card__contact .hee-card__contact__item {
  display: inline-block;
  margin-bottom: 0;
  margin-right: 16px;
}
.hee-card .hee-card__contact .hee-card__contact__item a {
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  min-width: 24px;
  padding-left: 8px;
  text-indent: -999999px;
  width: 24px;
  word-break: break-word;
}
.hee-card .hee-card__contact .hee-card__telephone a {
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.19897 14.8011C10.0433 19.6454 16.017 21.5267 18.9221 18.6216C19.3133 18.2304 19.623 17.7775 19.8545 17.2754C19.9837 16.9955 20.0294 16.6843 19.9814 16.3799L19.7787 15.0906C19.6843 14.4895 19.2459 13.9997 18.6585 13.8397L14.9234 12.8231C14.389 12.6776 13.8173 12.8295 13.4253 13.2211L12.3576 14.2888C12.0247 14.6217 11.4998 14.6712 11.1144 14.4011C10.0947 13.6866 9.08645 12.8406 8.12315 11.8769C7.15985 10.9136 6.31349 9.90534 5.59891 8.88566C5.32885 8.50019 5.37837 7.9753 5.71128 7.6424L6.77895 6.57472C7.1709 6.18277 7.32249 5.61142 7.17699 5.07663L6.16036 1.34149C6.00038 0.754138 5.51093 0.315718 4.90948 0.221254L3.62013 0.0186131C3.31579 -0.0293807 3.00459 0.0163277 2.72463 0.145454C2.2226 0.377043 1.76971 0.686718 1.37852 1.07791C-1.52662 3.98306 0.354277 9.95638 5.19897 14.8011Z' fill='%23005EB8'/%3E%3C/svg%3E");
  height: 22px;
  min-width: 20px;
  width: 20px;
}
.hee-card .hee-card__contact .hee-card__email a {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='18' viewBox='0 0 24 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23.5453 5.94375C23.7281 5.79844 24 5.93437 24 6.16406V15.75C24 16.9922 22.9922 18 21.75 18H2.25C1.00781 18 0 16.9922 0 15.75V6.16875C0 5.93438 0.267187 5.80312 0.454687 5.94844C1.50469 6.76406 2.89688 7.8 7.67813 11.2734C8.66719 11.9953 10.3359 13.5141 12 13.5047C13.6734 13.5188 15.375 11.9672 16.3266 11.2734C21.1078 7.8 22.4953 6.75938 23.5453 5.94375ZM12 12C13.0875 12.0188 14.6531 10.6313 15.4406 10.0594C21.6609 5.54531 22.1344 5.15156 23.5687 4.02656C23.8406 3.81562 24 3.4875 24 3.14062V2.25C24 1.00781 22.9922 0 21.75 0H2.25C1.00781 0 0 1.00781 0 2.25V3.14062C0 3.4875 0.159375 3.81094 0.43125 4.02656C1.86563 5.14687 2.33906 5.54531 8.55938 10.0594C9.34688 10.6313 10.9125 12.0188 12 12Z' fill='%23005EB8'/%3E%3C/svg%3E");
  height: 24px;
}
.hee-card .hee-card__contact .hee-card__website a {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 0C5.37242 0 0 5.37242 0 12C0 18.6276 5.37242 24 12 24C18.6276 24 24 18.6276 24 12C24 5.37242 18.6276 0 12 0ZM15.9818 17.3032C15.7931 17.491 15.5952 17.6879 15.4345 17.849C15.2898 17.9942 15.1877 18.1732 15.136 18.3673C15.0629 18.6411 15.0039 18.9179 14.9052 19.1835L14.0637 21.4505C13.3979 21.5956 12.7089 21.6774 12 21.6774V20.3526C12.0818 19.7419 11.6303 18.5981 10.905 17.8727C10.6147 17.5824 10.4516 17.1885 10.4516 16.7777V15.2289C10.4516 14.6656 10.1482 14.1479 9.65516 13.8755C8.95984 13.4908 7.97081 12.9532 7.29339 12.6121C6.7379 12.3324 6.22403 11.9763 5.76194 11.5597L5.72323 11.5248C5.39277 11.2265 5.09938 10.8896 4.84935 10.5213C4.39548 9.855 3.65613 8.75903 3.17564 8.04677C4.16613 5.84516 5.95113 4.0771 8.16919 3.11661L9.33097 3.69774C9.84581 3.95516 10.4516 3.58113 10.4516 3.00532V2.45855C10.8382 2.39613 11.2316 2.35645 11.6318 2.34145L13.0011 3.71081C13.3035 4.01323 13.3035 4.50339 13.0011 4.80581L12.7742 5.03226L12.2739 5.53258C12.1229 5.68355 12.1229 5.92887 12.2739 6.07984L12.5008 6.30677C12.6518 6.45774 12.6518 6.70306 12.5008 6.85403L12.1137 7.24113C12.041 7.31367 11.9425 7.35439 11.8398 7.35435H11.4048C11.3042 7.35435 11.2074 7.39355 11.1348 7.46419L10.6548 7.93113C10.596 7.98842 10.5569 8.06293 10.5431 8.1439C10.5294 8.22487 10.5417 8.30811 10.5784 8.38161L11.3327 9.89081C11.4615 10.1482 11.2742 10.4511 10.9868 10.4511H10.7139C10.6205 10.4511 10.5305 10.4173 10.4603 10.3563L10.0113 9.96629C9.90968 9.87814 9.78687 9.81795 9.65494 9.79165C9.52302 9.76535 9.38652 9.77384 9.25887 9.81629L7.75064 10.319C7.6355 10.3574 7.53535 10.4311 7.4644 10.5296C7.39345 10.628 7.35529 10.7464 7.35532 10.8677C7.35532 11.0869 7.47919 11.2868 7.67516 11.385L8.21129 11.6531C8.66661 11.881 9.16887 11.9995 9.6779 11.9995C10.1869 11.9995 10.771 13.32 11.2263 13.5479H14.4561C14.8669 13.5479 15.2603 13.711 15.5511 14.0013L16.2135 14.6637C16.4903 14.9405 16.6457 15.316 16.6456 15.7074C16.6455 16.004 16.5868 16.2977 16.4729 16.5716C16.359 16.8454 16.1921 17.0941 15.9818 17.3032ZM20.1774 12.8831C19.8973 12.8129 19.6529 12.6411 19.4927 12.4006L18.6227 11.0956C18.4954 10.905 18.4275 10.6809 18.4275 10.4516C18.4275 10.2224 18.4954 9.99824 18.6227 9.80758L19.5706 8.38597C19.6829 8.21806 19.8368 8.08161 20.0177 7.99161L20.6458 7.67758C21.3 8.98016 21.6774 10.4453 21.6774 12C21.6774 12.4195 21.6416 12.8303 21.5894 13.2358L20.1774 12.8831Z' fill='%23005EB8'/%3E%3C/svg%3E");
  height: 24px;
}
.hee-card .hee-card__contact .hee-card__twitter a {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='20' viewBox='0 0 24 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.533 5.11175C21.5482 5.32494 21.5482 5.53817 21.5482 5.75136C21.5482 12.2539 16.599 19.7463 7.5533 19.7463C4.76648 19.7463 2.17767 18.9391 0 17.5382C0.395953 17.5838 0.776625 17.5991 1.18781 17.5991C3.48727 17.5991 5.60405 16.8224 7.29441 15.4976C5.13197 15.4519 3.31978 14.0356 2.69541 12.0864C3 12.132 3.30455 12.1625 3.62437 12.1625C4.06598 12.1625 4.50764 12.1016 4.91878 11.995C2.66498 11.5381 0.974578 9.55845 0.974578 7.16759V7.1067C1.62937 7.47219 2.39086 7.70061 3.19791 7.73103C1.87303 6.84777 1.00505 5.34017 1.00505 3.63458C1.00505 2.72089 1.24866 1.88333 1.67508 1.15236C4.09641 4.13713 7.73602 6.08633 11.8172 6.29956C11.7411 5.93408 11.6954 5.55341 11.6954 5.17269C11.6954 2.462 13.8883 0.253906 16.6141 0.253906C18.0304 0.253906 19.3095 0.847813 20.208 1.8072C21.3197 1.59402 22.3857 1.18283 23.3299 0.619391C22.9643 1.76155 22.1877 2.72094 21.1674 3.33003C22.1573 3.22348 23.1167 2.94931 23.9999 2.56864C23.33 3.54322 22.4924 4.4112 21.533 5.11175Z' fill='%23005EB8'/%3E%3C/svg%3E");
  height: 24px;
}
.hee-card .hee-card__contact .hee-card__linkedin a {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='21' viewBox='0 0 22 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.20062 21H0.846875V6.97971H5.20062V21ZM3.02141 5.06721C1.62922 5.06721 0.5 3.91408 0.5 2.52189C0.5 1.85318 0.765647 1.21185 1.2385 0.738991C1.71136 0.266136 2.35269 0.000488281 3.02141 0.000488281C3.69012 0.000488281 4.33145 0.266136 4.80431 0.738991C5.27716 1.21185 5.54281 1.85318 5.54281 2.52189C5.54281 3.91408 4.41313 5.06721 3.02141 5.06721ZM21.4953 21H17.1509V14.175C17.1509 12.5485 17.1181 10.4625 14.8873 10.4625C12.6237 10.4625 12.2769 12.2297 12.2769 14.0578V21H7.92781V6.97971H12.1034V8.89221H12.1644C12.7456 7.79064 14.1655 6.62814 16.2838 6.62814C20.69 6.62814 21.5 9.52971 21.5 13.2985V21H21.4953Z' fill='%23005EB8'/%3E%3C/svg%3E");
  height: 24px;
  min-width: 22px;
  width: 22px;
}
.hee-card .hee-card__bio,
.hee-card .hee-card__description {
  color: #4c6272;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  margin-bottom: 0;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__bio,
  .hee-card .hee-card__description {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-card .hee-card__bio,
  .hee-card .hee-card__description {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-card .hee-card__authorurl {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  margin-bottom: 0;
  margin-top: 8px;
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__authorurl {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-card .hee-card__authorurl {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 40.0625em) {
  .hee-card .hee-card__authorurl {
    margin-top: 16px;
  }
}
.hee-card hr {
  margin: 24px 0;
}

.hee-publication-doc {
  align-items: flex-start;
  display: flex;
  margin-bottom: 24px;
}
.hee-publication-doc:last-of-type {
  margin-bottom: 0;
}
.hee-publication-doc .hee-publication-doc__wrapper {
  position: relative;
  min-width: 60px;
  width: 60px;
}
.hee-publication-doc .hee-publication-doc__wrapper .hee-publication-doc__icon {
  padding: 4px;
  position: relative;
  width: 56px;
}
.hee-publication-doc .hee-publication-doc__wrapper .hee-publication-doc__icon .hee-publication-doc__icon__page {
  border: 3px solid #212b32;
  border-radius: 2px;
  height: 86px;
  width: 52px;
}
.hee-publication-doc .hee-publication-doc__wrapper .hee-publication-doc__icon .hee-publication-doc__icon__corner {
  position: absolute;
  top: 2px;
  right: 0;
  width: 17px;
  height: 18px;
  background-color: #f0f4f5;
  background-image: url("data:image/svg+xml,%3Csvg width='19' height='17' viewBox='0 0 19 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 16.5V1.5L17 16.5H1Z' fill='black'/%3E%3Cpath d='M1 1.5L1.34197 1.13523L0.5 0.345884V1.5H1ZM1 16.5H0.5C0.5 16.7761 0.723858 17 1 17V16.5ZM17 16.5V17H18.2644L17.342 16.1352L17 16.5ZM0.5 1.5V16.5H1.5V1.5H0.5ZM1 17H17V16H1V17ZM17.342 16.1352L1.34197 1.13523L0.658029 1.86477L16.658 16.8648L17.342 16.1352Z' fill='black'/%3E%3C/svg%3E");
  background-position: -1px 1px;
  background-repeat: no-repeat;
}
.hee-publication-doc .hee-publication-doc__wrapper .hee-publication-doc__icon__title {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  background-color: #212b32;
  border: 1px solid #ffffff;
  border-radius: 2px;
  color: #ffffff;
  position: absolute;
  text-align: center;
  top: 32px;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-publication-doc .hee-publication-doc__wrapper .hee-publication-doc__icon__title {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-publication-doc .hee-publication-doc__wrapper .hee-publication-doc__icon__title {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-publication-doc .hee-publication-doc__details {
  align-self: flex-start;
  padding-left: 24px;
}
.hee-publication-doc .hee-publication-doc__details h3 {
  font-weight: normal;
  margin-bottom: 8px;
  word-break: break-word;
}
.hee-publication-doc .hee-publication-doc__details span {
  color: #4c6272;
  display: block;
  margin-bottom: 8px;
}

.hee-training-journey {
  margin-bottom: 16px;
  background-color: #ffffff;
  border: 1px solid #d8dde0;
  max-width: 640px;
  padding: 24px;
}
@media (min-width: 40.0625em) {
  .hee-training-journey {
    margin-bottom: 24px;
  }
}
.hee-training-journey h3 {
  margin-bottom: 16px;
}
.hee-training-journey h4 {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  margin-bottom: 16px;
}
@media (min-width: 40.0625em) {
  .hee-training-journey h4 {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-training-journey h4 {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-training-journey .hee-training-journey__group {
  margin-bottom: 8px;
}
@media (min-width: 40.0625em) {
  .hee-training-journey .hee-training-journey__group {
    margin-bottom: 16px;
  }
}
.hee-training-journey .hee-training-journey__group:last-child {
  margin: 0;
}
.hee-training-journey .hee-training-journey__group__container {
  padding-left: 8px;
}
@media (min-width: 40.0625em) {
  .hee-training-journey .hee-training-journey__group__container {
    padding-left: 8px;
  }
}
.hee-training-journey .hee-training-journey__item {
  padding-bottom: 8px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  border-left: 4px solid #d8dde0;
  position: relative;
}
@media (min-width: 40.0625em) {
  .hee-training-journey .hee-training-journey__item {
    padding-bottom: 16px;
  }
}
@media (min-width: 40.0625em) {
  .hee-training-journey .hee-training-journey__item {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-training-journey .hee-training-journey__item {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.hee-training-journey .hee-training-journey__item.active .hee-training-journey__item__link {
  font-weight: 600;
  text-decoration: none;
}
.hee-training-journey .hee-training-journey__item.active .hee-training-journey__item__link:before {
  border-color: #005eb8;
}
.hee-training-journey .hee-training-journey__item.last {
  border: none;
  padding-bottom: 0;
}
.hee-training-journey .hee-training-journey__item.last .hee-training-journey__item__link {
  right: 7px;
}
.hee-training-journey .hee-training-journey__item__link {
  bottom: 6px;
  position: relative;
  right: 11px;
}
.hee-training-journey .hee-training-journey__item__link:before {
  margin-right: 8px;
  background-color: #ffffff;
  border: 4px solid #d8dde0;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 18px;
  position: relative;
  top: 2px;
  width: 18px;
}
@media (min-width: 40.0625em) {
  .hee-training-journey .hee-training-journey__item__link:before {
    margin-right: 16px;
  }
}
.hee-training-journey .hee-training-journey__group.optional .hee-training-journey__item {
  border: none;
}
.hee-training-journey .hee-training-journey__group.optional .hee-training-journey__item.last .hee-training-journey__item__link {
  right: 11px;
}

.hee-featured-content .hee-featured-content-wrapper {
  padding-bottom: 24px;
}
.hee-featured-content .hee-featured-content-wrapper:last-of-type {
  padding-bottom: 0;
}
@media (min-width: 48.0625em) {
  .hee-featured-content .hee-featured-content-wrapper {
    align-content: space-between;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media (min-width: 48.0625em) {
  .hee-featured-content .hee-featured-content__item {
    align-items: stretch;
    align-content: stretch;
    display: flex;
    flex-basis: 31.66%;
    row-gap: 10px;
  }
}
@media (min-width: 61.875em) {
  .hee-featured-content .hee-featured-content-wrapper.double .hee-featured-content__item {
    flex-basis: 48%;
    width: 100%;
  }
}
@media (min-width: 48.0625em) {
  .hee-featured-content .hee-listing-item {
    margin-bottom: 32px;
  }
}
@media (min-width: 40.0625em) {
  .hee-featured-content .hee-listing-item span.hee-listing-item__details__label {
    width: auto;
  }
}

@media (min-width: 48.0625em) {
  .page--rightbar .page__content .hee-featured-content__item {
    flex-basis: 48%;
  }
}

@media (min-width: 48.0625em) {
  .page__feature .hee-featured-content-wrapper {
    align-content: flex-start;
    column-gap: 2.5%;
    justify-content: flex-start;
  }
}

.hee-card--summary {
  border: 1px solid #d8dde0;
  max-width: 100%;
  width: 100%;
}
.hee-card--summary .hee-card--summary__toggle {
  background-image: url('data:image/svg+xml,<svg width="12" height="8" viewBox="0 0 12 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 0.5C6.3 0.5 6.5 0.6 6.7 0.8L11.7 5.8C12.1 6.2 12.1 6.8 11.7 7.2C11.3 7.6 10.7 7.6 10.3 7.2L6 2.9L1.7 7.2C1.3 7.6 0.699999 7.6 0.299999 7.2C-0.100001 6.8 -0.100001 6.2 0.299999 5.8L5.3 0.8C5.5 0.6 5.7 0.5 6 0.5Z" fill="black"/></svg>');
  float: right;
  height: 8px;
  margin-top: 8px;
  width: 12px;
}
@media (min-width: 48.0625em) {
  .hee-card--summary .hee-card--summary__toggle {
    transform: rotate(180deg);
  }
}
@media (min-width: 48.0625em) {
  .hee-card--summary .hee-card--summary__heading {
    margin: 0;
  }
}
.hee-card--summary .hee-card--summary__list {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 40.0625em) {
  .hee-card--summary .hee-card--summary__list {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-card--summary .hee-card--summary__list {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 48.0625em) {
  .hee-card--summary .hee-card--summary__list {
    display: none;
  }
}
.hee-card--summary .hee-card--summary__item {
  margin-bottom: 8px;
  padding-bottom: 4px;
  border-bottom: 1px solid #d8dde0;
}
@media (min-width: 40.0625em) {
  .hee-card--summary .hee-card--summary__item {
    margin-bottom: 16px;
  }
}
@media (min-width: 40.0625em) {
  .hee-card--summary .hee-card--summary__item {
    padding-bottom: 4px;
  }
}
@media (min-width: 40.0625em) {
  .hee-card--summary .hee-card--summary__item {
    display: flex;
  }
}
.hee-card--summary .hee-card--summary__item span {
  display: block;
}
@media (min-width: 40.0625em) {
  .hee-card--summary .hee-card--summary__item span {
    flex-basis: 48%;
  }
}
@media (min-width: 40.0625em) {
  .hee-card--summary .hee-card--summary__item span.hee-card--summary__item__label {
    padding-right: 8px;
  }
}
.hee-card--summary .hee-card--summary__item:last-of-type {
  margin-bottom: 0;
}
.hee-card--summary .hee-card--summary__item__label {
  font-weight: 600;
  margin-bottom: 8px;
}
.hee-card--summary .hee-card--summary__item__link {
  text-decoration: none;
}
.hee-card--summary .hee-card--summary__item__link:hover {
  text-decoration: underline;
}
.hee-card--summary.default .hee-card--summary__heading {
  margin-bottom: 0;
}
@media (min-width: 48.0625em) {
  .hee-card--summary.default .hee-card--summary__heading {
    margin-bottom: 16px;
  }
}
@media (min-width: 48.0625em) and (min-width: 40.0625em) {
  .hee-card--summary.default .hee-card--summary__heading {
    margin-bottom: 24px;
  }
}
.hee-card--summary.default .hee-card--summary__list {
  display: none;
}
@media (min-width: 48.0625em) {
  .hee-card--summary.default .hee-card--summary__list {
    display: block;
  }
}
.hee-card--summary.default .hee-card--summary__toggle {
  transform: rotate(180deg);
}
@media (min-width: 48.0625em) {
  .hee-card--summary.default .hee-card--summary__toggle {
    transform: none;
  }
}

.hee-card--author {
  max-width: 100%;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .hee-card--author {
    margin-right: 0;
  }
}
.hee-card--author .hee-card__address {
  margin-bottom: 16px;
}

@media (min-width: 40.0625em) {
  .hee-card--author__container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media (min-width: 40.0625em) {
  .hee-card--author__container .hee-card--author {
    width: 48%;
  }
}

.page__rightbar .hee-card--header, .hee-card--author__container .hee-card--header {
  border-bottom: 2px solid #d8dde0;
  display: inline-block;
  padding-bottom: 8px;
  margin-bottom: 16px;
}
.page__rightbar .hee-card--header .hee-card__image, .hee-card--author__container .hee-card--header .hee-card__image {
  margin-right: 24px;
}
@media (min-width: 40.0625em) {
  .page__rightbar .hee-card--header .hee-card__image, .hee-card--author__container .hee-card--header .hee-card__image {
    margin-bottom: 24px;
  }
}
@media (min-width: 40.0625em) {
  .page__rightbar .hee-card__contact, .hee-card--author__container .hee-card__contact {
    display: block;
    border-bottom: none;
    margin-bottom: 8px;
    padding-bottom: 8px;
  }
}
@media (min-width: 40.0625em) {
  .page__rightbar .hee-card__contact .hee-card__contact__item, .hee-card--author__container .hee-card__contact .hee-card__contact__item {
    width: auto;
  }
}

.hee-table-expander .hee-table-expander__toggle {
  margin-bottom: 16px;
  display: block;
  text-align: right;
}
@media (min-width: 40.0625em) {
  .hee-table-expander .hee-table-expander__toggle {
    margin-bottom: 24px;
  }
}
.hee-table-expander .hee-table-expander__row {
  padding-top: 8px;
  padding-bottom: 8px;
  border-bottom: 2px solid #d8dde0;
}
@media (min-width: 40.0625em) {
  .hee-table-expander .hee-table-expander__row {
    padding-top: 16px;
  }
}
@media (min-width: 40.0625em) {
  .hee-table-expander .hee-table-expander__row {
    padding-bottom: 16px;
  }
}
.hee-table-expander .hee-table-expander__row span {
  display: block;
}
.hee-table-expander .hee-table-expander__row:first-child {
  padding-top: 0;
}
.hee-table-expander .hee-table-expander__row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.hee-table-expander .hee-table-expander__row__heading {
  margin-bottom: 8px;
  font-weight: 600;
}
@media (min-width: 40.0625em) {
  .hee-table-expander .hee-table-expander__row__heading {
    margin-bottom: 8px;
  }
}

.hee-quote {
  background-color: #ffffff;
  border: 1px solid #d8dde0;
  clear: both;
  margin: 56px 0 24px 0;
  padding: 56px 24px 40px 24px;
  position: relative;
}
.hee-quote:before {
  background-color: #005eb8;
  background-image: url("data:image/svg+xml,%3Csvg width='34' height='30' viewBox='0 0 34 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5877 30V21.6985C18.5877 17.3473 19.0995 13.7786 20.1232 10.9924C21.1848 8.20611 22.9668 5.83969 25.4692 3.89313C27.9716 1.94656 30.8152 0.648855 34 0V6.64122C31.763 7.93893 30.4929 9.67557 30.1896 11.8511H34V30H18.5877ZM0 30V21.6985C0 17.3473 0.511848 13.7786 1.53555 10.9924C2.59716 8.20611 4.37915 5.83969 6.88152 3.89313C9.4218 1.94656 12.2654 0.648855 15.4123 0V6.64122C13.1754 7.93893 11.9052 9.67557 11.6019 11.8511H15.4123V30H0Z' fill='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  content: "";
  display: block;
  height: 50px;
  left: 0;
  position: absolute;
  top: -25px;
  width: 90px;
}
.hee-quote .hee-quote__text {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 600;
}
@media (min-width: 40.0625em) {
  .hee-quote .hee-quote__text {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.33333;
  }
}
@media print {
  .hee-quote .hee-quote__text {
    font-size: 18pt;
    line-height: 1.15;
  }
}
.hee-quote .hee-quote__source {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 16px;
}
@media (min-width: 40.0625em) {
  .hee-quote .hee-quote__source {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.47368;
  }
}
@media print {
  .hee-quote .hee-quote__source {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.nhsuk-newsletter-form .nhsuk-select {
  width: 100%;
}

.alpha-fullwidth .page__feature, .alpha-fullwidth .page__footer {
  display: none;
}

.page.double-menu .hee-microhero {
  margin: 0 !important;
}

.nhsuk-skip-link {
  z-index: 150 !important;
}

.breadcrumbs.alpha {
  margin-bottom: 56px;
}

.third-a .hee-secondary-menu {
  margin-bottom: 0;
}

.hee-mega-menu {
  background-color: #005eb8;
  margin: 0 auto;
  position: relative;
  width: 100%;
}
.hee-mega-menu .hee-mega-menu__nav {
  display: none;
}
@media (min-width: 48.0625em) {
  .hee-mega-menu .hee-mega-menu__nav {
    display: block;
    height: 100%;
    margin: 0 auto;
    max-width: 960px;
  }
}
.hee-mega-menu .hee-mega-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 48.0625em) {
  .hee-mega-menu .hee-mega-menu__list {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
}
@media (min-width: 48.0625em) {
  .hee-mega-menu .hee-mega-menu__item {
    align-items: center;
    border-top: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    text-align: center;
  }
}
.hee-mega-menu .hee-mega-menu__item:first-child .hee-mega-menu__link {
  padding-left: 0;
}
.hee-mega-menu .hee-mega-menu__link {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
}
@media (min-width: 40.0625em) {
  .hee-mega-menu .hee-mega-menu__link {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-mega-menu .hee-mega-menu__link {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 48.0625em) {
  .hee-mega-menu .hee-mega-menu__link {
    color: #ffffff;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent;
    display: flex;
    flex-grow: 1;
    justify-content: center;
    padding: 12px 16px 12px 8px;
    text-decoration: none;
  }
}
.hee-mega-menu .hee-mega-menu__link:hover {
  box-shadow: none;
  color: #005eb8;
  text-decoration: underline;
}
@media (min-width: 61.875em) {
  .hee-mega-menu .hee-mega-menu__link:hover {
    color: #ffffff;
  }
}
.hee-mega-menu .hee-mega-menu__link:hover .nhsuk-icon__chevron-right {
  fill: #005eb8;
}
.hee-mega-menu .hee-mega-menu__link:active, .hee-mega-menu .hee-mega-menu__link:focus {
  background-color: #ffeb3b;
  border-bottom: 4px solid #212b32;
  box-shadow: none;
  color: #212b32;
  outline: 4px solid transparent;
  outline-offset: 4px;
  text-decoration: none;
}
.hee-mega-menu .hee-mega-menu__link:active:hover, .hee-mega-menu .hee-mega-menu__link:focus:hover {
  background-color: #ffeb3b;
  color: #212b32;
}
.hee-mega-menu .hee-mega-menu__link:active:hover .nhsuk-icon__chevron-right, .hee-mega-menu .hee-mega-menu__link:focus:hover .nhsuk-icon__chevron-right {
  fill: #212b32;
}
.hee-mega-menu .hee-mega-menu__link:active:visited, .hee-mega-menu .hee-mega-menu__link:focus:visited {
  background-color: #ffeb3b;
  color: #212b32;
}
.hee-mega-menu .hee-mega-menu__link.is-active {
  border-bottom: 4px solid #ffffff;
  font-weight: 600;
}
.hee-mega-menu .hee-mega-menu__link.is-active:active, .hee-mega-menu .hee-mega-menu__link.is-active:focus {
  border-bottom: 4px solid #212b32;
}
.hee-mega-menu .hee-mega-menu__label {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
}
@media (min-width: 40.0625em) {
  .hee-mega-menu .hee-mega-menu__label {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-mega-menu .hee-mega-menu__label {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 48.0625em) {
  .hee-mega-menu .hee-mega-menu__label {
    color: #ffffff;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent;
    padding: 12px 16px 12px 8px;
  }
}
.hee-mega-menu .hee-mega-menu__subnav {
  width: auto;
}
.hee-mega-menu .hee-mega-menu__subnav .hee-mega-menu__link:after {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.13599C3.8 5.13599 3.66667 5.06932 3.53333 4.93599L0.2 1.60265C-0.0666666 1.33599 -0.0666666 0.935987 0.2 0.66932C0.466667 0.402653 0.866666 0.402653 1.13333 0.66932L4 3.53599L6.86667 0.66932C7.13333 0.402653 7.53333 0.402653 7.8 0.66932C8.06667 0.935987 8.06667 1.33599 7.8 1.60265L4.46667 4.93599C4.33333 5.06932 4.2 5.13599 4 5.13599Z' fill='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 8px;
  left: 8px;
  position: relative;
  top: 10px;
  width: 8px;
}
.hee-mega-menu .hee-mega-menu__subnav .hee-mega-menu__link[aria-expanded=true]:after {
  top: 7px;
  transform: rotate(180deg);
}
.hee-mega-menu .hee-mega-menu__subnav .hee-mega-menu__link:active:after, .hee-mega-menu .hee-mega-menu__subnav .hee-mega-menu__link:focus:after {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' viewBox='0 0 8 6' fill='%23000000' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.13599C3.8 5.13599 3.66667 5.06932 3.53333 4.93599L0.2 1.60265C-0.0666666 1.33599 -0.0666666 0.935987 0.2 0.66932C0.466667 0.402653 0.866666 0.402653 1.13333 0.66932L4 3.53599L6.86667 0.66932C7.13333 0.402653 7.53333 0.402653 7.8 0.66932C8.06667 0.935987 8.06667 1.33599 7.8 1.60265L4.46667 4.93599C4.33333 5.06932 4.2 5.13599 4 5.13599Z' fill='%23000000'/%3E%3C/svg%3E");
}
.hee-mega-menu .hee-mega-menu__panel {
  background-color: #fff;
  left: 0;
  opacity: 0;
  padding: 40px 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 100%;
  visibility: hidden;
  width: 100%;
  z-index: 0;
}
.hee-mega-menu .hee-mega-menu__panel.is-active {
  z-index: 110;
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
.hee-mega-menu .hee-mega-menu__panel__wrapper {
  align-items: flex-start;
  display: flex;
  justify-content: flex-start;
  max-width: 960px;
  margin: 0 auto;
  width: 100%;
}
.hee-mega-menu .hee-mega-menu__panel__group {
  flex-basis: 25%;
  text-align: left;
}
.hee-mega-menu .hee-mega-menu__panel__wrapper[data-group-count="1"] .hee-mega-menu__panel__group {
  flex-basis: 40%;
}
.hee-mega-menu .hee-mega-menu__panel__wrapper[data-group-count="2"] .hee-mega-menu__panel__group {
  flex-basis: 26%;
}
.hee-mega-menu .hee-mega-menu__panel__link {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  color: #212b32;
  display: block;
  text-decoration: none;
  padding-bottom: 16px;
}
@media (min-width: 40.0625em) {
  .hee-mega-menu .hee-mega-menu__panel__link {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-mega-menu .hee-mega-menu__panel__link {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.hee-mega-menu .hee-mega-menu__panel__link:visited {
  color: #212b32;
}
.hee-mega-menu .hee-mega-menu__panel__link:hover {
  text-decoration: underline;
}
.hee-mega-menu .hee-mega-menu__panel__link:active, .hee-mega-menu .hee-mega-menu__panel__link:focus {
  background-color: #ffeb3b;
  border-bottom: 4px solid #212b32;
  box-shadow: none;
  color: #212b32;
  outline: 4px solid transparent;
  outline-offset: 4px;
  text-decoration: none;
}
.hee-mega-menu .hee-mega-menu__panel__link:last-child {
  padding-bottom: 0;
}
.hee-mega-menu .hee-mega-menu__item.has-home-icon .hee-mega-menu__label, .hee-mega-menu .hee-mega-menu__item.has-home-icon .hee-mega-menu__link {
  font-weight: 600;
  padding-left: 0;
}
.hee-mega-menu .hee-mega-menu__item.has-home-icon .hee-mega-menu__label:before, .hee-mega-menu .hee-mega-menu__item.has-home-icon .hee-mega-menu__link:before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='14' viewBox='0 0 16 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 0L7.58087 0.378844L0 7.54244L0.838269 8.33456L1.58542 7.62854V14H6.83371V8.48954H9.16629V14H14.4146V7.62854L15.1617 8.33456L16 7.54244L8.41914 0.378844L8 0ZM8 1.56704L13.2483 6.52645V12.8979H10.3326V7.38745H5.66743V12.8979H2.75171V6.52645L8 1.56704Z' fill='black'/%3E%3C/svg%3E");
  content: "";
  display: inline-block;
  height: 14px;
  margin: 3px 4px 0 0;
  width: 16px;
}
.hee-mega-menu.theme-grey {
  background-color: #4c6272;
}
.hee-mega-menu.theme-grey .hee-mega-menu__nav, .hee-mega-menu.theme-grey .hee-mega-menu__panel {
  background-color: #4c6272;
}
.hee-mega-menu.theme-grey .hee-mega-menu__panel__link {
  color: #ffffff;
}
.hee-mega-menu.theme-grey .hee-mega-menu__panel__link:active, .hee-mega-menu.theme-grey .hee-mega-menu__panel__link:focus {
  color: #212b32;
}
.hee-mega-menu.theme-black-white {
  background-color: #ffffff;
}
.hee-mega-menu.theme-black-white .hee-mega-menu__nav, .hee-mega-menu.theme-black-white .hee-mega-menu__panel {
  background-color: #ffffff;
}
.hee-mega-menu.theme-black-white .hee-mega-menu__label, .hee-mega-menu.theme-black-white .hee-mega-menu__link {
  color: #212b32;
}
.hee-mega-menu.theme-black-white .hee-mega-menu__label.is-active, .hee-mega-menu.theme-black-white .hee-mega-menu__link.is-active {
  background-color: #005eb8;
  border-bottom: 4px solid #ffeb3b;
  color: #ffffff;
  font-weight: normal;
}
.hee-mega-menu.theme-black-white .hee-mega-menu__label.is-active:after, .hee-mega-menu.theme-black-white .hee-mega-menu__link.is-active:after {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.33325C3.8 5.33325 3.66667 5.26659 3.53333 5.13325L0.2 1.79992C-0.0666666 1.53325 -0.0666666 1.13325 0.2 0.866586C0.466667 0.599919 0.866666 0.599919 1.13333 0.866586L4 3.73325L6.86667 0.866586C7.13333 0.599919 7.53333 0.599919 7.8 0.866586C8.06667 1.13325 8.06667 1.53325 7.8 1.79992L4.46667 5.13325C4.33333 5.26659 4.2 5.33325 4 5.33325Z' fill='white'/%3E%3C/svg%3E") !important;
}
.hee-mega-menu.theme-black-white .hee-mega-menu__link:active, .hee-mega-menu.theme-black-white .hee-mega-menu__link:focus {
  background-color: #005eb8;
  border-bottom: 4px solid #ffeb3b;
  color: #ffffff;
}
.hee-mega-menu.theme-black-white .hee-mega-menu__subnav .hee-mega-menu__link:after {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.33325C3.8 5.33325 3.66667 5.26659 3.53333 5.13325L0.2 1.79992C-0.0666666 1.53325 -0.0666666 1.13325 0.2 0.866586C0.466667 0.599919 0.866666 0.599919 1.13333 0.866586L4 3.73325L6.86667 0.866586C7.13333 0.599919 7.53333 0.599919 7.8 0.866586C8.06667 1.13325 8.06667 1.53325 7.8 1.79992L4.46667 5.13325C4.33333 5.26659 4.2 5.33325 4 5.33325Z' fill='%23212B32'/%3E%3C/svg%3E");
}
.hee-mega-menu.theme-black-white .hee-mega-menu__subnav .hee-mega-menu__link:active:after, .hee-mega-menu.theme-black-white .hee-mega-menu__subnav .hee-mega-menu__link:focus:after {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.33325C3.8 5.33325 3.66667 5.26659 3.53333 5.13325L0.2 1.79992C-0.0666666 1.53325 -0.0666666 1.13325 0.2 0.866586C0.466667 0.599919 0.866666 0.599919 1.13333 0.866586L4 3.73325L6.86667 0.866586C7.13333 0.599919 7.53333 0.599919 7.8 0.866586C8.06667 1.13325 8.06667 1.53325 7.8 1.79992L4.46667 5.13325C4.33333 5.26659 4.2 5.33325 4 5.33325Z' fill='white'/%3E%3C/svg%3E");
}

.hee-back-to-home-banner {
  background-color: #005eb8;
  padding: 8px 0;
  text-align: right;
}
.hee-back-to-home-banner .hee-back-to-home-banner__link {
  color: #ffffff;
  display: inline-block;
  position: relative;
}
.hee-back-to-home-banner .hee-back-to-home-banner__link:before {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='12' viewBox='0 0 8 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 6C0.5 5.7 0.6 5.5 0.8 5.3L5.8 0.3C6.2 -0.1 6.8 -0.1 7.2 0.3C7.6 0.7 7.6 1.3 7.2 1.7L2.9 6L7.2 10.3C7.6 10.7 7.6 11.3 7.2 11.7C6.8 12.1 6.2 12.1 5.8 11.7L0.8 6.7C0.6 6.5 0.5 6.3 0.5 6Z' fill='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  content: "";
  display: block;
  float: left;
  height: 12px;
  margin-right: 8px;
  margin-top: 6px;
  width: 7px;
}
.hee-back-to-home-banner .hee-back-to-home-banner__link:visited {
  color: #ffffff;
}

.hee-secondary-menu {
  background-color: #ffffff;
  margin-bottom: 48px;
}
.hee-secondary-menu .hee-secondary-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 48.0625em) {
  .hee-secondary-menu .hee-secondary-menu__list {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
}
.hee-secondary-menu .hee-secondary-menu__item {
  margin-bottom: 0;
}
.hee-secondary-menu .hee-secondary-menu__link, .hee-secondary-menu .hee-secondary-menu__label {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
}
@media (min-width: 40.0625em) {
  .hee-secondary-menu .hee-secondary-menu__link, .hee-secondary-menu .hee-secondary-menu__label {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media print {
  .hee-secondary-menu .hee-secondary-menu__link, .hee-secondary-menu .hee-secondary-menu__label {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 48.0625em) {
  .hee-secondary-menu .hee-secondary-menu__link, .hee-secondary-menu .hee-secondary-menu__label {
    color: #4c6272;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent;
    display: flex;
    flex-grow: 1;
    justify-content: center;
    padding: 12px 0;
    text-decoration: none;
  }
}
.hee-secondary-menu .hee-secondary-menu__link.is-active, .hee-secondary-menu .hee-secondary-menu__link:hover, .hee-secondary-menu .hee-secondary-menu__label.is-active, .hee-secondary-menu .hee-secondary-menu__label:hover {
  border-bottom: 2px solid #005eb8;
}
.hee-secondary-menu .hee-secondary-menu__item.has-home-icon .hee-secondary-menu__label, .hee-secondary-menu .hee-secondary-menu__item.has-home-icon .hee-secondary-menu__link {
  font-weight: 600;
}
.hee-secondary-menu .hee-secondary-menu__item.has-home-icon .hee-secondary-menu__label:before, .hee-secondary-menu .hee-secondary-menu__item.has-home-icon .hee-secondary-menu__link:before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='14' viewBox='0 0 16 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 0L7.58087 0.378844L0 7.54244L0.838269 8.33456L1.58542 7.62854V14H6.83371V8.48954H9.16629V14H14.4146V7.62854L15.1617 8.33456L16 7.54244L8.41914 0.378844L8 0ZM8 1.56704L13.2483 6.52645V12.8979H10.3326V7.38745H5.66743V12.8979H2.75171V6.52645L8 1.56704Z' fill='black'/%3E%3C/svg%3E");
  content: "";
  display: inline-block;
  height: 14px;
  margin: 3px 4px 0 0;
  width: 16px;
}
.hee-secondary-menu.theme-black-text .hee-secondary-menu__label, .hee-secondary-menu.theme-black-text .hee-secondary-menu__link {
  color: #212b32;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9uaHN1ay1mcm9udGVuZC9wYWNrYWdlcy9jb3JlL3NldHRpbmdzL19jb2xvdXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbmhzdWstZnJvbnRlbmQvcGFja2FnZXMvY29yZS90b29scy9fc2hhcGUtYXJyb3cuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9uaHN1ay1mcm9udGVuZC9wYWNrYWdlcy9jb3JlL3ZlbmRvci9zYXNzLW1xLnNjc3MiLCJ1dGlscy9fcmVzZXRzLnNjc3MiLCJ1dGlscy9fcHJpbnQuc2NzcyIsInV0aWxzL19vZmxleC5zY3NzIiwidGVtcGxhdGVzL19wYWdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbmhzdWstZnJvbnRlbmQvcGFja2FnZXMvY29yZS90b29scy9fc3BhY2luZy5zY3NzIiwidGVtcGxhdGVzL19mdWxsd2lkdGguc2NzcyIsInRlbXBsYXRlcy9fbGVmdGJhci5zY3NzIiwidXRpbHMvbWl4aW5zL19ncmlkLnNjc3MiLCJ1dGlscy9taXhpbnMvX2Jyb3dzZXIuc2NzcyIsInRlbXBsYXRlcy9fcmlnaHRiYXIuc2NzcyIsImJsb2Nrcy9jb250ZW50L21haW4vbmhzdWstaGVlLWJsb2NrbGlua3MvX2Jsb2NrbGlua3Muc2NzcyIsImJsb2Nrcy9zY2FmZm9sZGluZy9uaHN1ay1oZWUtYnJlYWRjcnVtYi9fYnJlYWRjcnVtYi5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvbWFpbi9uaHN1ay1oZWUtaW1hZ2UvX2ltYWdlLnNjc3MiLCJibG9ja3MvY29udGVudC9zaWRlYmFyL2hlZS1jYXJkLS1kZXRhaWxzL19kZXRhaWxzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbmhzdWstZnJvbnRlbmQvcGFja2FnZXMvY29yZS9zZXR0aW5ncy9fZ2xvYmFscy5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvbWFpbi9oZWUtZ29vZ2xlLW1hcC9fZ29vZ2xlLW1hcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25oc3VrLWZyb250ZW5kL3BhY2thZ2VzL2NvcmUvdG9vbHMvX3R5cG9ncmFwaHkuc2NzcyIsImJsb2Nrcy9zY2FmZm9sZGluZy9uaHN1ay1oZWUtY29va2llcy9jb29raWVzLnNjc3MiLCJibG9ja3Mvc2NhZmZvbGRpbmcvbmhzdWstaGVlLWhlYWRlci9faGVhZGVyLnNjc3MiLCJibG9ja3Mvc2NhZmZvbGRpbmcvbmhzdWstaGVlLWhlYWRlci9sb2dvcy9fbG9nby5zY3NzIiwiYmxvY2tzL3NjYWZmb2xkaW5nL25oc3VrLWhlZS1oZWFkZXIvbG9nb3MvX211bHRpbG9nby5zY3NzIiwiYmxvY2tzL3NjYWZmb2xkaW5nL25oc3VrLWhlZS1oZWFkZXIvc2VhcmNoL19zZWFyY2guc2NzcyIsImJsb2Nrcy9zY2FmZm9sZGluZy9uaHN1ay1oZWUtaGVhZGVyL25hdmlnYXRpb24vX25hdmlnYXRpb24uc2NzcyIsImJsb2Nrcy9zY2FmZm9sZGluZy9uaHN1ay1oZWUtaGVhZGVyL25hdmlnYXRpb24vX21lbnUuc2NzcyIsImJsb2Nrcy9zY2FmZm9sZGluZy9uaHN1ay1oZWUtaGVhZGVyL25hdmlnYXRpb24vX3N1Ym5hdi5zY3NzIiwiYmxvY2tzL2Z1cm5pdHVyZS9wYWdlL25oc3VrLWhlZS1oZXJvL19oZXJvLnNjc3MiLCJibG9ja3MvY29udGVudC9tYWluL25oc3VrLWhlZS10YWJsZS9fdGFibGUuc2NzcyIsImJsb2Nrcy9jb250ZW50L3NpZGViYXIvbmhzdWstcmVsYXRlZC1saW5rcy9fcmVsYXRlZC1saW5rcy5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvc2lkZWJhci9uaHN1ay1jb250YWN0L19jb250YWN0LnNjc3MiLCJibG9ja3MvZnVybml0dXJlL3BhZ2UvaGVlLW1pY3JvaGVyby9fbWljcm9oZXJvLnNjc3MiLCJibG9ja3MvY29udGVudC9zaWRlYmFyL25oc3VrLWltYWdlLWNhcmQvX2ltYWdlLWNhcmQuc2NzcyIsImJsb2Nrcy9jb250ZW50L21haW4vaGVlLW1lZGlhL19tZWRpYS5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvbWFpbi9oZWUtbmF2bWFwL19uYXZtYXAuc2NzcyIsImJsb2Nrcy9jb250ZW50L3NpZGViYXIvaGVlLXJlc291cmNlcy9yZXNvdXJjZXMuc2NzcyIsImJsb2Nrcy9jb250ZW50L21haW4vaGVlLWFwcGxpZXMtdG8vX2FwcGxpZXMtdG8uc2NzcyIsImJsb2Nrcy9jb250ZW50L2Zvb3Rlci9oZWUtYW5jaG9ybGlua3Mtc3RpY2t5L19hbmNob3JsaW5rcy1zdGlja3kuc2NzcyIsImJsb2Nrcy9jb250ZW50L3NpZGViYXIvaGVlLWFuY2hvcmxpbmtzL19hbmNob3JsaW5rcy5zY3NzIiwiYmxvY2tzL3NjYWZmb2xkaW5nL2hlZS1waGFzZWJhbm5lci9fcGhhc2ViYW5uZXIuc2NzcyIsImJsb2Nrcy9jb250ZW50L21haW4vaGVlLXRhYnMvX3RhYnMuc2NzcyIsImJsb2Nrcy9jb250ZW50L3NpZGViYXIvaGVlLWNhcmQtLXByb2dyYW1tZS1pbmZvL19wcm9ncmFtbWUtaW5mby5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvc2lkZWJhci9oZWUtY2FyZC0tZGVwYXJ0bWVudC9fZGVwYXJ0bWVudC5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvc2lkZWJhci9oZWUtY2FyZC0tcGVyc29uL19wZXJzb24uc2NzcyIsImJsb2Nrcy9zY2FmZm9sZGluZy9oZWUtYmFubmVyL19iYW5uZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9uaHN1ay1mcm9udGVuZC9wYWNrYWdlcy9jb3JlL3Rvb2xzL19taXhpbnMuc2NzcyIsInV0aWxzL21peGlucy9fbGluay1zdHlsZS1pbnZlcnRlZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25oc3VrLWZyb250ZW5kL3BhY2thZ2VzL2NvcmUvdG9vbHMvX2xpbmtzLnNjc3MiLCJibG9ja3Mvc2NhZmZvbGRpbmcvaGVlLWJhY2stdG8tdG9wL19iYWNrLXRvLXRvcC5zY3NzIiwiYmxvY2tzL3NjYWZmb2xkaW5nL25oc3VrLWhlZS1mb290ZXIvX2Zvb3Rlci5zY3NzIiwiYmxvY2tzL2Z1cm5pdHVyZS9jb2xsZWN0aW9ucy9oZWUtbGlzdGluZy9fbGlzdGluZy5zY3NzIiwiYmxvY2tzL2Z1cm5pdHVyZS9jb2xsZWN0aW9ucy9oZWUtbGlzdGluZy1pdGVtL19saXN0aW5nLWl0ZW0uc2NzcyIsImJsb2Nrcy9mdXJuaXR1cmUvY29sbGVjdGlvbnMvaGVlLWZpbHRlci9fZmlsdGVyLnNjc3MiLCJibG9ja3MvZnVybml0dXJlL2NvbGxlY3Rpb25zL2hlZS1maWx0ZXJ0YWcvZmlsdGVydGFnLnNjc3MiLCJibG9ja3MvZnVybml0dXJlL3NlYXJjaC9oZWUtc2VhcmNoLWZvcm0vX3NlYXJjaC1mb3JtLnNjc3MiLCJibG9ja3MvZnVybml0dXJlL3NlYXJjaC9oZWUtc2VhcmNoLWxpc3RpbmcvX3NlYXJjaC1saXN0aW5nLnNjc3MiLCJibG9ja3MvZnVybml0dXJlL3NlYXJjaC9oZWUtc2VhcmNoLWxpc3RpbmctaXRlbS9fc2VhcmNoLWxpc3RpbmctaXRlbS5zY3NzIiwiYmxvY2tzL2Z1cm5pdHVyZS9jb250ZW50L25oc3VrLWhlZS1yZXZpZXctZGF0ZS9fcmV2aWV3LWRhdGUuc2NzcyIsImJsb2Nrcy9mdXJuaXR1cmUvYS16LWxpc3RpbmdzL25oc3VrLWhlZS1uYXYtYS16L19uYXYtYS16LnNjc3MiLCJibG9ja3MvY29udGVudC9faGVlLWNhcmQuc2NzcyIsImJsb2Nrcy9jb250ZW50L21haW4vaGVlLXB1YmxpY2F0aW9uLWRvYy9fcHVibGljYXRpb24tZG9jLnNjc3MiLCJibG9ja3MvY29udGVudC9tYWluL2hlZS10cmFpbmluZy1qb3VybmV5L190cmFpbmluZy1qb3VybmV5LnNjc3MiLCJibG9ja3MvY29udGVudC9mZWF0dXJlZC9oZWUtZmVhdHVyZWQtY29udGVudC9fZmVhdHVyZWQtY29udGVudC5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvbWFpbi9oZWUtY2FyZC0tc3VtbWFyeS9fc3VtbWFyeS5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvbWFpbi9oZWUtY2FyZC0tYXV0aG9yL2F1dGhvci5zY3NzIiwiYmxvY2tzL2NvbnRlbnQvbWFpbi9oZWUtdGFibGUtZXhwYW5kZXIvX3RhYmxlLnNjc3MiLCJibG9ja3MvY29udGVudC9tYWluL2hlZS1xdW90ZS9fcXVvdGUuc2NzcyIsImJsb2Nrcy9jb250ZW50L21haW4vaGVlLW5ld3NsZXR0ZXIvX25ld3NsZXR0ZXIuc2NzcyIsInBhcmVudC1hbHBoYS5zY3NzIiwiYmxvY2tzL3NjYWZmb2xkaW5nL21lZ2EtbWVudS9fbWVnYS1tZW51LnNjc3MiLCJibG9ja3Mvc2NhZmZvbGRpbmcvYmFjay10by1ob21lLWJhbm5lci9fYmFjay10by1ob21lLnNjc3MiLCJibG9ja3Mvc2NhZmZvbGRpbmcvc2Vjb25kYXJ5LW1lbnUvX3NlY29uZGFyeS1tZW51LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0JBO0FBK0JBO0FDL0JBO0FDYkE7QUFnVkE7QUNuVkE7RUFDRTs7O0FDREY7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUMxRVI7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtJQUNJOzs7QUFHTjtFQUNFO0lBQ0k7OztBQUdOO0VBQ0U7SUFDSTs7O0FBR047RUFDRTtJQUNJOzs7QUN6Qk47RUFDSTs7O0FBaUJKO0VBQ0k7O0FKNE5BO0VJN05KO0lBSVE7OztBQUdKO0VBQ0k7O0FBRUE7RUFDSTtFQUNBOztBSmlOUjtFSW5OSTtJ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QWdCWixhQWZVOzs7QWpCbUdkO0UyQ2pPRjtJMUJzSU0sV0FWUTtJQVdSLGFBVFU7OztBakJtR2Q7RTJDak9GO0l0Q29HUTs7O0FzQy9GUDtFQUNDOztBQUlGO0UxQnVISSxXQUxVO0VBTVYsV0FMYztFQU1kLGFBTFk7RVpqQ1Y7RVl0RU47RTBCVEM7RUFDQTs7QTNDa05DO0UyQ3ZORjtJMUJpSU0sV0FmUTtJQWdCUixXQWZZO0lBZ0JaLGFBZlU7OztBakJtR2Q7RTJDdk5GO0kxQjRITSxXQVZRO0lBV1IsYUFUVTs7O0FqQm1HZDtFMkN2TkY7SXRDMEZROzs7QXNDbkZQO0VBQ0M7O0FBSUY7RXRDdUVNO0VZb0NGLFdBTFU7RUFNVixXQUxjO0VBTWQsYUFMWTtFMEJyR2Y7RUFDQTtFQUNBOztBM0NzTUM7RTJDM01GO0l0QzhFUTs7O0FMNkhOO0UyQzNNRjtJMUJxSE0sV0FmUTtJQWdCUixXQWZZO0lBZ0JaLGFBZlU7OztBakJtR2Q7RTJDM01GO0kxQmdITSxXQVZRO0lBV1IsYUFUVTs7O0EwQmxHZjtFQUNDOztBQUlGO0VFOUNELE8vQ2dCa0I7O0ErQ2RsQjtFQUNFLGtCL0NtRnlCO0UrQ2xGekI7RUFDQSxPL0NZaUI7RStDWGpCO0VBQ0EsZ0I5QndFaUI7O0E4QnJFbkI7RUFDRSxrQi9DS2dCO0UrQ0poQjtFQUNBLE8vQ0lpQjs7QStDRG5CO0VBQ0Usa0IvQ3NFeUI7RStDckV6QjtFQUNBLE8vQ0ZpQjs7QTZDa0NuQjtFQUNDLGtCN0MvQnNCOztBNkNrQ3ZCO0VBQ0M7O0FBR0Q7RUFDQyxPN0MzQ2tCOztBNkM2Q2xCO0VFOURELE8vQ2dCa0I7RWdEZ0NqQixPaEQvQmtCOztBK0NmbkI7RUFDRSxrQi9DbUZ5QjtFK0NsRnpCO0VBQ0EsTy9DWWlCO0UrQ1hqQjtFQUNBLGdCOUJ3RWlCOztBOEJyRW5CO0VBQ0Usa0IvQ0tnQjtFK0NKaEI7RUFDQSxPL0NJaUI7O0ErQ0RuQjtFQUNFLGtCL0NzRXlCO0UrQ3JFekI7RUFDQSxPL0NGaUI7O0FnRGlDbEI7RUFDRSxPaERsQ2dCOztBZ0RxQ2xCO0VBQ0UsT2hE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QUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFLGtCdkR6QmM7RXVEMEJkOztBQUdGO0VBQ0Usa0J2RDFCZTtFdUQyQmY7RUFDQTs7QUFFQTtFQUNFLE12RHBDWTs7O0F3RHBCcEI7RUFDRTs7QXREK09FO0VzRGhQSjtJQUlJOzs7O0FDSko7RWxENEdRO0VBQUE7RWtEekdOOztBdkQ2T0U7RXVEaFBKO0lsRG1IVTs7O0FMNkhOO0V1RGhQSjtJbERtSFU7OztBa0Q5R1I7RXRDMklJLFdBTFU7RUFNVixXQUxjO0VBTWQsYUFMWTtFWmpDVjs7QUxvSUo7RXVEM09GO0l0Q3FKTSxXQWZRO0lBZ0JSLFdBZlk7SUFnQlosYUFmVTs7O0FqQm1HZDtFdUQzT0Y7SXRDZ0pNLFdBVlE7SUFXUixhQVRVOzs7QWpCbUdkO0V1RDNPRjtJbEQ4R1E7OztBa0R6R1I7RXRDc0lJLFdBTFU7RUFNVixXQUxjO0VBTWQsYUFMWTtFWmpDVjtFa0QvRko7O0F2RG1PQTtFdUR0T0Y7SXRDZ0pNLFdBZlE7SUFnQlIsV0FmWTtJQWdCWixhQWZVOzs7QWpCbUdkO0V1RHRPRjtJdEMySU0sV0FWUTtJQVdSLGFBVFU7OztBakJtR2Q7RXVEdE9GO0lsRHlHUTs7O0FrRG5HUjtFbEQ0Rk07O0FMb0lKO0V1RGhPRjtJbERtR1E7OztBa0QvRlI7RWxEd0ZNO0VZb0NGLFdBTFU7RUFNVixXQUxjO0VBTWQsYUFMWTs7QWpCbUdkO0V1RDVORjtJbEQrRlE7OztBTDZITjtFdUQ1TkY7SXRDc0lNLFdBZlE7SUFnQlIsV0FmWTtJQWdCWixhQWZVOzs7QWpCbUdkO0V1RDVORjtJdENpSU0sV0FWUTtJQVdSLGFBVFU7OztBc0NwSGhCO0VsRG1GTTtFQUFBO0VrRGhGSjtFQUNBOztBdkRtTkE7RXVEdk5GO0lsRDBGUTs7O0FMNkhOO0V1RHZORjtJbEQwRlE7OztBa0RuRlI7RUFDRSxheENwQmM7RXdDcUJkOztBQUdGO0VsRHVFTTtFa0RyRUo7RUFDQTs7QXZEd01BO0V1RDNNRjtJbEQ4RVE7OztBa0R6RU47RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNB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OztBQUdGO0VyRGtCQTtFQTBHSSxXQUxVO0VBTVYsV0FMYztFQU1kLGFBTFk7O0FqQm1HZDtFc0U1TkY7SXJEc0lNLFdBZlE7SUFnQlIsV0FmWTtJQWdCWixhQWZVOzs7QWpCbUdkO0VzRTVORjtJckRpSU0sV0FWUTtJQVdSLGFBVFU7OztBakJtR2Q7RXNFNU5GO0lBSUksT3hFaUJlO0l3RWhCZjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBR0Y7RUFDRTs7QUFNRjtFQUNFLGF2RDdCWTs7QXVEK0JaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9KO0VBQ0UsT3hFdENjIiwiZmlsZSI6ImhlZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU0VUVElOR1MgLyAjQ09MT1VSU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5IUyBjb2xvdXIgcGFsZXR0ZVxuLy9cbi8vIENvbG91cnMgYXJlIHByZWZpeGVkIHdpdGggY29sb3JfIHRvIG1ha2UgdGhlbSBlYXNpZXIgdG9cbi8vIHNlYXJjaCBmb3Igd2l0aGluIHRoZSBjb2RlIGJhc2UuXG4vL1xuLy8gV2UgYWxzbyBwcmVmaXggdGhlbSB3aXRoIG5oc3VrLSB0byBwcmV2ZW50IGNsYXNoaW5nIHdpdGhcbi8vIG90aGVyIGNvbG91cnMgaW4gZXhpc3RpbmcgY29kZSBiYXNlcy5cbi8vXG4vLyBXZSB1c2UgdGhlIHdvcmQgY29sb3IsIG5vdCBjb2xvdXIsIGZvciB2YXJpYWJsZXMuXG4vL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBjb2xvci1uby1oZXggKi9cblxuJGNvbG9yX25oc3VrLWJsdWU6ICMwMDVlYjg7XG4kY29sb3JfbmhzdWstd2hpdGU6ICNmZmZmZmY7XG4kY29sb3JfbmhzdWstYmxhY2s6ICMyMTJiMzI7XG4kY29sb3JfbmhzdWstZ3JlZW46ICMwMDdmM2I7XG4kY29sb3JfbmhzdWstcHVycGxlOiAjMzMwMDcyO1xuJGNvbG9yX25oc3VrLWRhcmstcGluazogIzdjMjg1NTtcbiRjb2xvcl9uaHN1ay1yZWQ6ICNkNTI4MWI7XG4kY29sb3JfbmhzdWsteWVsbG93OiAjZmZlYjNiO1xuXG4vL1xuLy8gU2Vjb25kYXJ5IGNvbG91cnNcbi8vXG5cbiRjb2xvcl9uaHN1ay1wYWxlLXllbGxvdzogI2ZmZjljNDtcbiRjb2xvcl9uaHN1ay13YXJtLXllbGxvdzogI2ZmYjgxYztcbiRjb2xvcl9uaHN1ay1vcmFuZ2U6ICNlZDhiMDA7XG4kY29sb3JfbmhzdWstYXF1YS1ncmVlbjogIzAwYTQ5OTtcbiRjb2xvcl9uaHN1ay1waW5rOiAjYWUyNTczO1xuXG4vL1xuLy8gR3JleXNjYWxlXG4vL1xuXG4kY29sb3JfbmhzdWstZ3JleS0xOiAjNGM2MjcyO1xuJGNvbG9yX25oc3VrLWdyZXktMjogIzc2ODY5MjtcbiRjb2xvcl9uaHN1ay1ncmV5LTM6ICNhZWI3YmQ7XG4kY29sb3JfbmhzdWstZ3JleS00OiAjZDhkZGUwO1xuJGNvbG9yX25oc3VrLWdyZXktNTogI2YwZjRmNTtcblxuLyogc3R5bGVsaW50LWVuYWJsZSBjb2xvci1uby1oZXggKi9cbi8vXG4vLyBSR0IgYW5kIGFscGhhIHZhbHVlc1xuLy9cbi8vIFVzZWQgdG8gY3JlYXRlIGRyb3AvYm94IHNoYWRvd3MgZS5nLiBmb3Igc2VhcmNoIHN1Z2dlc3Rpb25zIGRyb3Bkb3duXG4vL1xuXG4kY29sb3JfbmhzdWstZ3JleS0xLXJnYjogcmdiKDY2LCA4NCwgOTgpO1xuJGFscGhhLXRyYW5zcGFyZW5jeS01MDogMC41O1xuXG4vL1xuLy8gRnVuY3Rpb25zIGZvciB0aW50IGFuZCBzaGFkZVxuLy9cbi8vIFVzYWdlOiB0aW50KGNvbG9yLCBwZXJjZW50YWdlKVxuLy8gICAgICAgIHRpbnQoJGNvbG9yX25oc3VrLWJsYWNrLCAxMCUpXG4vLyAgICAgICAgc2hhZGUoY29sb3IsIHBlcmNlbnRhZ2UpXG4vLyAgICAgICAgc2hhZGUoJGNvbG9yX25oc3VrLWJsdWUsIDUwJSlcbi8vXG5cbkBmdW5jdGlvbiB0aW50KCRjb2xvciwgJHBlcmNlbnRhZ2UpIHtcbiAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xufVxuXG5AZnVuY3Rpb24gc2hhZGUoJGNvbG9yLCAkcGVyY2VudGFnZSkge1xuICBAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkcGVyY2VudGFnZSk7XG59XG5cbi8vXG4vLyBQcmltYXJ5IGNvbG91ciB2YXJpYXRpb25zXG4vL1xuLy8gMS4gdXNlZCBmb3IgbGluayA6YWN0aXZlIHN0YXRlc1xuLy8gMi4gdXNlZCBmb3IgLmlzLWFjdGl2ZSBzdGF0ZSBvbiBtYWluIG5hdmlnYXRpb25cbi8vIDMuIHVzZWQgZm9yIDpob3ZlciBzdGF0ZXMgb24gbWFpbiBuYXZpZ2F0aW9uXG4vLyA0LiB1c2VkIGZvciA6YWN0aXZlIHN0YXRlcyBvbiBtYWluIG5hdmlnYXRpb25cbi8vIDUuIHVzZWQgZm9yIHByaW1hcnkgYnV0dG9uIGFuZCBhY3Rpb24gbGluayBpY29uIDpob3ZlciBzdGF0ZXNcbi8vIDYuIHVzZWQgZm9yIHByaW1hcnkgYnV0dG9uIGFuZCBhY3Rpb24gbGluayBpY29uIDphY3RpdmUgc3RhdGVzXG4vL1xuXG4kY29sb3JfdGludF9uaHN1ay1ibGFjay0xMDogdGludCgkY29sb3JfbmhzdWstYmxhY2ssIDEwJSk7IC8vIFsxXSAvL1xuXG4kY29sb3Jfc2hhZGVfbmhzdWstYmx1ZS0yMDogc2hhZGUoJGNvbG9yX25oc3VrLWJsdWUsIDIwJSk7IC8vIFsyXSAvL1xuJGNvbG9yX3NoYWRlX25oc3VrLWJsdWUtMzU6IHNoYWRlKCRjb2xvcl9uaHN1ay1ibHVlLCAzNSUpOyAvLyBbM10gLy9cbiRjb2xvcl9zaGFkZV9uaHN1ay1ibHVlLTUwOiBzaGFkZSgkY29sb3JfbmhzdWstYmx1ZSwgNTAlKTsgLy8gWzRdIC8vXG5cbiRjb2xvcl9zaGFkZV9uaHN1ay1ncmVlbi0zNTogc2hhZGUoJGNvbG9yX25oc3VrLWdyZWVuLCAzNSUpOyAvLyBbNV0gLy9cbiRjb2xvcl9zaGFkZV9uaHN1ay1ncmVlbi01MDogc2hhZGUoJGNvbG9yX25oc3VrLWdyZWVuLCA1MCUpOyAvLyBbNl0gLy9cblxuJGNvbG9yX3RyYW5zcGFyZW50X25oc3VrLXdoaXRlLTIwOiByZ2JhKCRjb2xvcl9uaHN1ay13aGl0ZSwgMC4yKTtcbiRjb2xvcl90cmFuc3BhcmVudF9uaHN1ay1ibHVlLTUwOiByZ2JhKCRjb2xvcl9zaGFkZV9uaHN1ay1ibHVlLTUwLCAwLjEpO1xuXG4vL1xuLy8gQ29sb3VyIGFsaWFzZXNcbi8vXG5cbi8vIFRleHRcbiRuaHN1ay10ZXh0LWNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG4kbmhzdWstc2Vjb25kYXJ5LXRleHQtY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4kbmhzdWstcHJpbnQtdGV4dC1jb2xvcjogJGNvbG9yX25oc3VrLWJsYWNrO1xuXG4vLyBMaW5rc1xuJG5oc3VrLWxpbmstY29sb3I6ICRjb2xvcl9uaHN1ay1ibHVlO1xuJG5oc3VrLWxpbmstaG92ZXItY29sb3I6ICRjb2xvcl9uaHN1ay1kYXJrLXBpbms7XG4kbmhzdWstbGluay1hY3RpdmUtY29sb3I6IHNoYWRlKCRuaHN1ay1saW5rLWNvbG9yLCA1MCUpO1xuJG5oc3VrLWxpbmstdmlzaXRlZC1jb2xvcjogJGNvbG9yX25oc3VrLXB1cnBsZTtcblxuLy8gRm9jdXNcbiRuaHN1ay1mb2N1cy1jb2xvcjogJGNvbG9yX25oc3VrLXllbGxvdztcbiRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG5cbi8vIEJvcmRlclxuJG5oc3VrLWJvcmRlci1jb2xvcjogJGNvbG9yX25oc3VrLWdyZXktNDtcbiRuaHN1ay1zZWNvbmRhcnktYm9yZGVyLWNvbG9yOiAkY29sb3JfdHJhbnNwYXJlbnRfbmhzdWstd2hpdGUtMjA7XG5cbi8vIEJveCBzaGFkb3dcbiRuaHN1ay1ib3gtc2hhZG93OiByZ2JhKDMzLCA0MywgNTAsIDAuMTYpO1xuJG5oc3VrLWJveC1zaGFkb3ctY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTEtcmdiO1xuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbiRuaHN1ay1lcnJvci1jb2xvcjogJGNvbG9yX25oc3VrLXJlZDtcbiRuaHN1ay1mb3JtLWJvcmRlci1jb2xvcjogJGNvbG9yX25oc3VrLWdyZXktMTtcbiRuaHN1ay1mb3JtLWVsZW1lbnQtYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuXG4vL1xuLy8gQnV0dG9uc1xuLy9cblxuJG5oc3VrLWJ1dHRvbi1jb2xvcjogJGNvbG9yX25oc3VrLWdyZWVuO1xuJG5oc3VrLWJ1dHRvbi1ob3Zlci1jb2xvcjogc2hhZGUoJG5oc3VrLWJ1dHRvbi1jb2xvciwgMjAlKTtcbiRuaHN1ay1idXR0b24tYWN0aXZlLWNvbG9yOiBzaGFkZSgkbmhzdWstYnV0dG9uLWNvbG9yLCA1MCUpO1xuJG5oc3VrLWJ1dHRvbi1zaGFkb3ctY29sb3I6IHNoYWRlKCRuaHN1ay1idXR0b24tY29sb3IsIDUwJSk7XG5cbiRuaHN1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG9yOiAkY29sb3JfbmhzdWstZ3JleS0xO1xuJG5oc3VrLXNlY29uZGFyeS1idXR0b24taG92ZXItY29sb3I6IHNoYWRlKCRuaHN1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG9yLCAyMCUpO1xuJG5oc3VrLXNlY29uZGFyeS1idXR0b24tYWN0aXZlLWNvbG9yOiBzaGFkZSgkbmhzdWstc2Vjb25kYXJ5LWJ1dHRvbi1jb2xvciwgNTAlKTtcbiRuaHN1ay1zZWNvbmRhcnktYnV0dG9uLXNoYWRvdy1jb2xvcjogc2hhZGUoJG5oc3VrLXNlY29uZGFyeS1idXR0b24tY29sb3IsIDUwJSk7XG5cbiRuaHN1ay1yZXZlcnNlLWJ1dHRvbi1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuJG5oc3VrLXJldmVyc2UtYnV0dG9uLWhvdmVyLWNvbG9yOiBzaGFkZSgkbmhzdWstcmV2ZXJzZS1idXR0b24tY29sb3IsIDIwJSk7XG4kbmhzdWstcmV2ZXJzZS1idXR0b24tYWN0aXZlLWNvbG9yOiAkY29sb3ItbmhzdWstYmxhY2s7XG4kbmhzdWstcmV2ZXJzZS1idXR0b24tc2hhZG93LWNvbG9yOiAkY29sb3ItbmhzdWstYmxhY2s7XG5cbiRuaHN1ay1idXR0b24tdGV4dC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuJG5oc3VrLXJldmVyc2UtYnV0dG9uLXRleHQtY29sb3I6ICRjb2xvcl9uaHN1ay1ibGFjaztcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUT09MUyAvICNTSEFQRS1BUlJPV1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE9yaWdpbmFsIGNvZGUgdGFrZW4gZnJvbSBHRFMgKEdvdmVybm1lbnQgRGlnaXRhbCBTZXJ2aWNlKVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kXG4vL1xuLy8gQ2FsY3VsYXRlIHRoZSBoZWlnaHQgb2YgYW4gZXF1aWxhdGVyYWwgdHJpYW5nbGVcbi8vIE11bHRpcGx5aW5nIGhhbGYgdGhlIGxlbmd0aCBvZiB0aGUgYmFzZSBvZiBhbiBlcXVpbGF0ZXJhbCB0cmlhbmdsZSBieSB0aGVcbi8vIHNxdWFyZSByb290IG9mIHRocmVlIGdpdmVzIHVzIGl0cyBoZWlnaHQuIFdlIHVzZSAxLjczMiBhcyBhbiBhcHByb3hpbWF0aW9uLlxuLy9cbi8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIExlbmd0aCBvZiB0aGUgYmFzZSBvZiB0aGUgdHJpYW5nbGVcbi8vIEByZXR1cm4ge051bWJlcn0gQ2FsY3VsYXRlZCBoZWlnaHQgb2YgdGhlIHRyaWFuZ2xlXG4vL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzdHJpbmctcXVvdGVzLCBvcmRlci9wcm9wZXJ0aWVzLWFscGhhYmV0aWNhbC1vcmRlciAqL1xuXG5AZnVuY3Rpb24gX2dvdnVrLWVxdWlsYXRlcmFsLWhlaWdodCgkYmFzZSkge1xuICAkc3F1YXJlLXJvb3Qtb2YtdGhyZWU6IDEuNzMyO1xuXG4gIEByZXR1cm4gKCRiYXNlICogMC41KSAqICRzcXVhcmUtcm9vdC1vZi10aHJlZTtcbn1cblxuLy9cbi8vIEFycm93IG1peGluXG4vL1xuLy8gR2VuZXJhdGUgQXJyb3dzICh0cmlhbmdsZXMpIGJ5IHVzaW5nIGEgbWl4IG9mIHRyYW5zcGFyZW50ICgxKSBhbmQgY29sb3VyZWRcbi8vIGJvcmRlcnMuIFRoZSBjb2xvdXJlZCBib3JkZXJzIGluaGVyaXQgdGhlIHRleHQgY29sb3VyIG9mIHRoZSBlbGVtZW50ICgyKS5cbi8vXG4vLyBFbnN1cmUgdGhlIGFycm93IGlzIHJlbmRlcmVkIGNvcnJlY3RseSBpZiBicm93c2VyIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4gYnlcbi8vIHByb3ZpZGluZyBhIGNsaXAgcGF0aCAoMykuIFdpdGhvdXQgdGhpcyB0aGUgdHJhbnNwYXJlbnQgYm9yZGVycyBhcmVcbi8vIG92ZXJyaWRkZW4gdG8gYmVjb21lIHZpc2libGUgd2hpY2ggcmVzdWx0cyBpbiBhIHNxdWFyZS5cbi8vXG4vLyBXZSBuZWVkIGJvdGggYmVjYXVzZSBvbGRlciBicm93c2VycyBkbyBub3Qgc3VwcG9ydCBjbGlwLXBhdGguXG4vL1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gLSBEaXJlY3Rpb24gZm9yIGFycm93OiB1cCwgcmlnaHQsIGRvd24sIGxlZnQuXG4vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBMZW5ndGggb2YgdGhlIHRyaWFuZ2xlICdiYXNlJyBzaWRlXG4vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbbnVsbF0gLSBIZWlnaHQgb2YgdHJpYW5nbGUuIE9taXQgZm9yIGVxdWlsYXRlcmFsLlxuLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXNwbGF5IFtibG9ja10gLSBDU1MgZGlzcGxheSBwcm9wZXJ0eSBvZiB0aGUgYXJyb3dcbi8vXG5cbkBtaXhpbiBnb3Z1ay1zaGFwZS1hcnJvdygkZGlyZWN0aW9uLCAkYmFzZSwgJGhlaWdodDogbnVsbCwgJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuXG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gMVxuXG4gICRwZXJwZW5kaWN1bGFyOiAkYmFzZSAqIDAuNTtcblxuICBAaWYgKCRoZWlnaHQgPT0gbnVsbCkge1xuICAgICRoZWlnaHQ6IF9nb3Z1ay1lcXVpbGF0ZXJhbC1oZWlnaHQoJGJhc2UpO1xuICB9XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gXCJ1cFwiIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6IDAgJHBlcnBlbmRpY3VsYXIgJGhlaWdodCAkcGVycGVuZGljdWxhcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCIge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwJSAwJSwgMTAwJSA1MCUsIDAlIDEwMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6ICRwZXJwZW5kaWN1bGFyIDAgJHBlcnBlbmRpY3VsYXIgJGhlaWdodDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogaW5oZXJpdDsgLy8gMlxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJkb3duXCIge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwJSAwJSwgNTAlIDEwMCUsIDEwMCUgMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgJHBlcnBlbmRpY3VsYXIgMCAkcGVycGVuZGljdWxhcjtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImxlZnRcIiB7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDUwJSwgMTAwJSAxMDAlLCAxMDAlIDAlKTsgLy8gM1xuXG4gICAgYm9yZGVyLXdpZHRoOiAkcGVycGVuZGljdWxhciAkaGVpZ2h0ICRwZXJwZW5kaWN1bGFyIDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciBcIkludmFsaWQgYXJyb3cgZGlyZWN0aW9uOiBleHBlY3RlZCBgdXBgLCBgcmlnaHRgLCBgZG93bmAgb3IgYGxlZnRgLCBnb3QgYCN7JGRpcmVjdGlvbn1gXCI7XG4gIH1cbn1cbiIsIi8vIG1xKCkgdjQuMC4yXG4vLyBzYXNzLW1xL3Nhc3MtbXFcblxuLyogc3R5bGVsaW50LWRpc2FibGUgaW5kZW50YXRpb24gKi9cbkBjaGFyc2V0IFwiVVRGLThcIjsgLy8gRml4ZXMgYW4gaXNzdWUgd2hlcmUgUnVieSBsb2NhbGUgaXMgbm90IHNldCBwcm9wZXJseVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi8vLyBCYXNlIGZvbnQgc2l6ZSBvbiB0aGUgYDxib2R5PmAgZWxlbWVudFxuLy8vIEB0eXBlIE51bWJlciAodW5pdClcbiRtcS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8vIFJlc3BvbnNpdmUgbW9kZVxuLy8vXG4vLy8gU2V0IHRvIGBmYWxzZWAgdG8gZW5hYmxlIHN1cHBvcnQgZm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgQG1lZGlhIHF1ZXJpZXMsXG4vLy8gKElFIDw9IDgsIEZpcmVmb3ggPD0gMywgT3BlcmEgPD0gOSlcbi8vL1xuLy8vIFlvdSBjb3VsZCBjcmVhdGUgYSBzdHlsZXNoZWV0IHNlcnZlZCBleGNsdXNpdmVseSB0byBvbGRlciBicm93c2Vycyxcbi8vLyB3aGVyZSBAbWVkaWEgcXVlcmllcyBhcmUgcmFzdGVyaXplZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBvbGQtaWUuc2Nzc1xuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcbi8vL1xuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vZmYgRGlzYWJsZWQgcmVzcG9uc2l2ZSBtb2RlIGRvY3VtZW50YXRpb25cbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBsaXN0XG4vLy9cbi8vLyBOYW1lIHlvdXIgYnJlYWtwb2ludHMgaW4gYSB3YXkgdGhhdCBjcmVhdGVzIGEgdWJpcXVpdG91cyBsYW5ndWFnZVxuLy8vIGFjcm9zcyB0ZWFtIG1lbWJlcnMuIEl0IHdpbGwgaW1wcm92ZSBjb21tdW5pY2F0aW9uIGJldHdlZW5cbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXG4vLy9cbi8vLyBAdHlwZSBNYXBcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1icmVha3BvaW50czogKFxuICBtb2JpbGU6IDMyMHB4LFxuICB0YWJsZXQ6IDc0MHB4LFxuICBkZXNrdG9wOiA5ODBweCxcbiAgd2lkZTogMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2Nzcy9hdC1mdW5jdGlvbi1wYXR0ZXJuICovXG5cbiAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgIEB3YXJuIFwiQXNzdW1pbmcgI3skcHh9IHRvIGJlIGluIHBpeGVscywgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGl0IGludG8gcGl4ZWxzLlwiOyAvKiBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGF0LXJ1bGUtZGlzYWxsb3dlZC1saXN0LCBzdHJpbmctcXVvdGVzICovXG4gICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gIH0gQGVsc2UgaWYgdW5pdCgkcHgpID09IGVtIHtcbiAgICBAcmV0dXJuICRweDtcbiAgfVxuICBAcmV0dXJuIG1hdGguZGl2KCRweCwgJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7IC8qIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgYXQtcnVsZS1kaXNhbGxvd2VkLWxpc3QgKi9cbiAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAkZnJvbTogZmFsc2UsXG4gICR1bnRpbDogZmFsc2UsXG4gICRhbmQ6IGZhbHNlLFxuICAkbWVkaWEtdHlwZTogJG1xLW1lZGlhLXR5cGUsXG4gICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzLFxuICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XG4pIHtcbiAgJG1pbi13aWR0aDogMDtcbiAgJG1heC13aWR0aDogMDtcbiAgJG1lZGlhLXF1ZXJ5OiBcIlwiO1xuXG4gIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxuICBAaWYgJGZyb20ge1xuICAgIEBpZiB0eXBlLW9mKCRmcm9tKSA9PSBudW1iZXIge1xuICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0oJGZyb20pO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcbiAgQGlmICR1bnRpbCB7XG4gICAgQGlmIHR5cGUtb2YoJHVudGlsKSA9PSBudW1iZXIge1xuICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0oJHVudGlsKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAwLjAxZW07XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGRpc2FibGVkLCByYXN0ZXJpemUgdGhlIG91dHB1dCBvdXRzaWRlIEBtZWRpYSBibG9ja3NcbiAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgQGlmICRyZXNwb25zaXZlID09IGZhbHNlIHtcbiAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAkdGFyZ2V0LXdpZHRoOiBtcS1weDJlbSgkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGgpO1xuXG4gICAgLy8gT3V0cHV0IG9ubHkgcnVsZXMgdGhhdCBzdGFydCBhdCBvciBzcGFuIG91ciB0YXJnZXQgd2lkdGhcbiAgICBAaWYgKFxuICAgICAgJGFuZCA9PVxuICAgICAgICBmYWxzZSBhbmRcbiAgICAgICAgJG1pbi13aWR0aCA8PVxuICAgICAgICAkdGFyZ2V0LXdpZHRoIGFuZFxuICAgICAgICAoJHVudGlsID09IGZhbHNlIG9yICRtYXgtd2lkdGggPj0gJHRhcmdldC13aWR0aCkgYW5kXG4gICAgICAgICRtZWRpYS10eXBlICE9XG4gICAgICAgIFwicHJpbnRcIlxuICAgICkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcbiAgQGVsc2Uge1xuICAgIEBpZiAkbWluLXdpZHRoICE9IDAge1xuICAgICAgJG1lZGlhLXF1ZXJ5OiBcIiN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSlcIjtcbiAgICB9XG4gICAgQGlmICRtYXgtd2lkdGggIT0gMCB7XG4gICAgICAkbWVkaWEtcXVlcnk6IFwiI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KVwiO1xuICAgIH1cbiAgICBAaWYgJGFuZCB7XG4gICAgICAkbWVkaWEtcXVlcnk6IFwiI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9XCI7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHVubmVjZXNzYXJ5IG1lZGlhIHF1ZXJ5IHByZWZpeCAnYWxsIGFuZCAnXG4gICAgQGlmICgkbWVkaWEtdHlwZSA9PSBcImFsbFwiIGFuZCAkbWVkaWEtcXVlcnkgIT0gXCJcIikge1xuICAgICAgJG1lZGlhLXR5cGU6IFwiXCI7XG4gICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtZWRpYS10eXBlICsgJG1lZGlhLXF1ZXJ5fSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFF1aWNrIHNvcnRcbi8vL1xuLy8vIEBhdXRob3IgU2FtIFJpY2hhcmRzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtMaXN0fSBTb3J0ZWQgTGlzdFxuQGZ1bmN0aW9uIF9tcS1xdWljay1zb3J0KCRsaXN0KSB7XG4gICRsZXNzOiAoKTtcbiAgJGVxdWFsOiAoKTtcbiAgJGxhcmdlOiAoKTtcblxuICBAaWYgbGVuZ3RoKCRsaXN0KSA+IDEge1xuICAgICRzZWVkOiBudGgoJGxpc3QsIGNlaWwobGVuZ3RoKCRsaXN0KSAqIDAuNSkpO1xuXG4gICAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgICAgQGlmICgkaXRlbSA9PSAkc2VlZCkge1xuICAgICAgICAkZXF1YWw6IGFwcGVuZCgkZXF1YWwsICRpdGVtKTtcbiAgICAgIH0gQGVsc2UgaWYgKCRpdGVtIDwgJHNlZWQpIHtcbiAgICAgICAgJGxlc3M6IGFwcGVuZCgkbGVzcywgJGl0ZW0pO1xuICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPiAkc2VlZCkge1xuICAgICAgICAkbGFyZ2U6IGFwcGVuZCgkbGFyZ2UsICRpdGVtKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIGpvaW4oam9pbihfbXEtcXVpY2stc29ydCgkbGVzcyksICRlcXVhbCksIF9tcS1xdWljay1zb3J0KCRsYXJnZSkpO1xuICB9XG5cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFNvcnQgYSBtYXAgYnkgdmFsdWVzICh3b3JrcyB3aXRoIG51bWJlcnMgb25seSlcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNvcnRcbi8vLyBAcmV0dXJucyB7TWFwfSBNYXAgc29ydGVkIGJ5IHZhbHVlXG5AZnVuY3Rpb24gX21xLW1hcC1zb3J0LWJ5LXZhbHVlKCRtYXApIHtcbiAgJG1hcC1zb3J0ZWQ6ICgpO1xuICAkbWFwLWtleXM6IG1hcC1rZXlzKCRtYXApO1xuICAkbWFwLXZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJG1hcC12YWx1ZXMtc29ydGVkOiBfbXEtcXVpY2stc29ydCgkbWFwLXZhbHVlcyk7XG5cbiAgLy8gUmVvcmRlciBrZXkvdmFsdWUgcGFpcnMgYmFzZWQgb24ga2V5IHZhbHVlc1xuICBAZWFjaCAkdmFsdWUgaW4gJG1hcC12YWx1ZXMtc29ydGVkIHtcbiAgICAkaW5kZXg6IGluZGV4KCRtYXAtdmFsdWVzLCAkdmFsdWUpO1xuICAgICRrZXk6IG50aCgkbWFwLWtleXMsICRpbmRleCk7XG4gICAgJG1hcC1zb3J0ZWQ6IG1hcC1tZXJnZShcbiAgICAgICRtYXAtc29ydGVkLFxuICAgICAgKFxuICAgICAgICAka2V5OiAkdmFsdWVcbiAgICAgIClcbiAgICApO1xuXG4gICAgLy8gVW5zZXQgdGhlIHZhbHVlIGluICRtYXAtdmFsdWVzIHRvIHByZXZlbnQgdGhlIGxvb3BcbiAgICAvLyBmcm9tIGZpbmRpbmcgdGhlIHNhbWUgaW5kZXggdHdpY2VcbiAgICAkbWFwLXZhbHVlczogc2V0LW50aCgkbWFwLXZhbHVlcywgJGluZGV4LCAwKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1hcC1zb3J0ZWQ7XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgJG5ldy1icmVha3BvaW50OiAoXG4gICAgJG5hbWU6ICR3aWR0aFxuICApO1xuICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbiAgJG1xLWJyZWFrcG9pbnRzOiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1xLWJyZWFrcG9pbnRzKSAhZ2xvYmFsO1xufVxuXG4vLy8gU2hvdyB0aGUgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgdGhlIHZpZXdwb3J0XG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvdy1icmVha3BvaW50cyAoJG1xLXNob3ctYnJlYWtwb2ludHMpIC0gTGlzdCBvZiBicmVha3BvaW50cyB0byBzaG93IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKSAtIEJyZWFrcG9pbnQgbmFtZXMgYW5kIHNpemVzXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc2hvdy1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGdsb2JhbCBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xuLy8vXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgY3VzdG9tIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xuLyogc3R5bGVsaW50LWRpc2FibGUgY29sb3Itbm8taGV4ICovXG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gIGJvZHk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmJlZWQ1O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZiZWVkNTtcbiAgICBjb2xvcjogI2MwOTg1MztcbiAgICBmb250OiBzbWFsbC1jYXB0aW9uO1xuICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBjb2xvci1uby1oZXggKi9cbiAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXG4gICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICBAaW5jbHVkZSBtcSgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAgICAgICBjb250ZW50OiBcIiN7JHNob3ctYnJlYWtwb2ludH0g4omlICN7JHdpZHRofSAoI3ttcS1weDJlbSgkd2lkdGgpfSlcIjsgLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBzdHJpbmctcXVvdGVzICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpZiBsZW5ndGgoJG1xLXNob3ctYnJlYWtwb2ludHMpID4gMCB7XG4gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG4iLCJbaGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn0iLCJAbWVkaWEgcHJpbnQge1xuICAgICNuaHN1ay1jb29raWUtYmFubmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI25oc3VrLWNvb2tpZS1iYW5uZXIgLm5oc3VrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICNuaHN1ay1jb29raWUtYmFubmVyIGgyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI25oc3VrLWNvb2tpZS1iYW5uZXIgcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uaHN1ay1iYWNrLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubmhzdWstYmFjay1saW5rIC5uaHN1ay13aWR0aC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubmhzdWstYmFjay1saW5rIGgyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm5oc3VrLWJhY2stbGluayBwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm5oc3VrLWdyaWQtY29sdW1uLW9uZS10aGlyZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uaHN1ay1ncmlkLWNvbHVtbi1vbmUtdGhpcmQgLm5oc3VrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uaHN1ay1ncmlkLWNvbHVtbi1vbmUtdGhpcmQgaDIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubmhzdWstZ3JpZC1jb2x1bW4tb25lLXRoaXJkIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubmhzdWstcGFnaW5hdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uaHN1ay1wYWdpbmF0aW9uIC5uaHN1ay13aWR0aC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubmhzdWstcGFnaW5hdGlvbiBoMiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uaHN1ay1wYWdpbmF0aW9uIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBhW2hyZWZePVwidGVsXCJdOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGFbaHJlZl49XCJ0ZWxcIl06OmFmdGVyIC5uaHN1ay13aWR0aC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBhW2hyZWZePVwidGVsXCJdOjphZnRlciBoMiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGFbaHJlZl49XCJ0ZWxcIl06OmFmdGVyIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBhW2lkXTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBhW2lkXTo6YWZ0ZXIgLm5oc3VrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGFbaWRdOjphZnRlciBoMiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGFbaWRdOjphZnRlciBwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm5oc3VrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn0iLCIuby1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5vLWZsZXgtLWFsaWduLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uby1mbGV4X19ncm93IHtcbiAgZmxleC1ncm93OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5vLWZsZXhcXEBtb2JpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDY0MXB4KSB7XG4gIC5vLWZsZXhcXEB0YWJsZXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIC5vLWZsZXhcXEBkZXNrdG9wIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTBweCkge1xuICAuby1mbGV4XFxAbGFyZ2UtZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59IiwiLy8gVGVtcGxhdGVBcmVhc1xuaHRtbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbn1cblxuLnBhZ2Uge31cbi5wYWdlX19oZWFkZXIsXG4ucGFnZV9fbWFpbixcbi5wYWdlX19sZWZ0YmFyLFxuLnBhZ2VfX3JpZ2h0YmFyLFxuLnBhZ2VfX2Zvb3Rlcixcbi5wYWdlX19mZWF0dXJlICxcbi5wYWdlX19uYXYge1xuICAgIC5wcm90b3R5cGUgJiB7XG4gICAgICAgIC8vYm9yZGVyOiAycHggZGFzaGVkICNDQ0M7XG4gICAgICAgIC8vbWluLWhlaWdodDogMjBweDtcbiAgICB9XG59XG5cbi5wYWdlIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAucGFnZV9faGVhZGVyLmhhcy1taWNyb2hlcm8sIC5wYWdlX19oZWFkZXIuaGFzLW5oc3VraGVybyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgIC5oZWUtbWljcm9oZXJvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNik7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgbmhzdWstc3BhY2luZyg3KSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFnZV9faGVhZGVyIHtcbiAgICBoMSB+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtIG5oc3VrLXNwYWNpbmcoNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgfVxufVxuXG4ucGFnZV9fY29udGVudCB7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cblxuLnBhZ2VfX2ZlYXR1cmUge1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDgsICd0b3AnKTtcbn1cblxuLnBhZ2VfX2ZlYXR1cmUge1xuICAgIGgxLCBwLCBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjYuNjY2NyU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbXBvcnQgJy4uL3RlbXBsYXRlcy9mdWxsd2lkdGgnO1xuQGltcG9ydCAnLi4vdGVtcGxhdGVzL2xlZnRiYXInO1xuQGltcG9ydCAnLi4vdGVtcGxhdGVzL3JpZ2h0YmFyJzsiLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVE9PTFMgLSAjU1BBQ0lOR1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gU2luZ2xlIHBvaW50IHNwYWNpbmdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZXR1cm5zIG1lYXN1cmVtZW50IGNvcnJlc3BvbmRpbmcgdG8gdGhlIHNwYWNpbmcgcG9pbnQgcmVxdWVzdGVkLlxuLy9cbi8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZy1wb2ludCAtIFBvaW50IG9uIHRoZSBzcGFjaW5nIHNjYWxlIChzZXQgaW4gYHNldHRpbmdzL19zcGFjaW5nLnNjY3NgKVxuLy9cbi8vIEByZXR1cm5zIHtTdHJpbmd9IFNwYWNpbmcgTWVhc3VyZW1lbnQgZWcuIDhweFxuLy9cbi8vIEBleGFtcGxlIHNjc3Ncbi8vICAuZm9vIHtcbi8vICAgIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoNSk7XG4vLyAgICB0b3A6IG5oc3VrLXNwYWNpbmcoMikgIWltcG9ydGFudDsgLy8gaWYgYCFpbXBvcnRhbnRgIGlzIHJlcXVpcmVkXG4vLyAgIH1cbi8vXG4vLyBPcmlnaW5hbCBjb2RlIHRha2VuIGZyb20gR0RTIChHb3Zlcm5tZW50IERpZ2l0YWwgU2VydmljZSlcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYWdvdi9nb3Z1ay1mcm9udGVuZFxuLy9cblxuQGZ1bmN0aW9uIG5oc3VrLXNwYWNpbmcoJHNwYWNpbmctcG9pbnQpIHtcbiAgJGFjdHVhbC1pbnB1dC10eXBlOiB0eXBlLW9mKCRzcGFjaW5nLXBvaW50KTtcbiAgQGlmICRhY3R1YWwtaW5wdXQtdHlwZSAhPSBcIm51bWJlclwiIHtcbiAgICBAZXJyb3IgXCJFeHBlY3RlZCBhIG51bWJlciAoaW50ZWdlciksIGJ1dCBnb3QgYSBcIlxuICAgICsgXCIjeyRhY3R1YWwtaW5wdXQtdHlwZX0uXCI7IC8qIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgaW5kZW50YXRpb24gKi9cbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJG5oc3VrLXNwYWNpbmctcG9pbnRzLCAkc3BhY2luZy1wb2ludCkge1xuICAgIEBlcnJvciBcIlVua25vd24gc3BhY2luZyB2YXJpYWJsZSBgI3skc3BhY2luZy1wb2ludH1gLiBNYWtlIHN1cmUgeW91IGFyZSB1c2luZyBhIHBvaW50IGZyb20gdGhlIHNwYWNpbmcgc2NhbGUgaW4gYF9zZXR0aW5ncy9zcGFjaW5nLnNjc3NgLlwiO1xuICB9XG5cbiAgQHJldHVybiBtYXAtZ2V0KCRuaHN1ay1zcGFjaW5nLXBvaW50cywgJHNwYWNpbmctcG9pbnQpO1xufVxuXG4vLyBSZXNwb25zaXZlIHNwYWNpbmdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRzIHJlc3BvbnNpdmUgc3BhY2luZyAoZWl0aGVyIHBhZGRpbmcgb3IgbWFyZ2luLCBkZXBlbmRpbmcgb24gYCRwcm9wZXJ0eWApXG4vLyBieSBmZXRjaGluZyBhICdzcGFjaW5nIG1hcCcgZnJvbSB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlLCB3aGljaCBkZWZpbmVzXG4vLyBkaWZmZXJlbnQgc3BhY2luZyB2YWx1ZXMgYXQgZGlmZmVyZW50IGJyZWFrcG9pbnRzLlxuLy9cbi8vIFRvIGdlbmVyYXRlIHJlc3BvbnNpdmUgc3BhY2luZywgdXNlICduaHN1ay1yZXNwb25zaXZlLW1hcmdpbicgb3Jcbi8vICduaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcnIG1peGluc1xuLy9cbi8vIEBwYXJhbSB7TnVtYmVyfSAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50IC0gUG9pbnQgb24gdGhlIHJlc3BvbnNpdmUgc3BhY2luZ1xuLy8gIHNjYWxlLCBjb3JyZXNwb25kcyB0byBhIG1hcCBvZiBicmVha3BvaW50cyBhbmQgc3BhY2luZyB2YWx1ZXNcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHkgLSBQcm9wZXJ0eSB0byBhZGQgc3BhY2luZyB0byAoZS5nLiAnbWFyZ2luJylcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZGlyZWN0aW9uIFthbGxdIC0gRGlyZWN0aW9uIHRvIGFkZCBzcGFjaW5nIHRvXG4vLyAgKGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgLCBgYWxsYClcbi8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGFzIGAhaW1wb3J0YW50YFxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRhZGp1c3RtZW50IFtmYWxzZV0gLSBPZmZzZXQgdG8gYWRqdXN0IHNwYWNpbmcgYnlcbi8vXG4vLyBAZXhhbXBsZSBzY3NzXG4vLyAgLmZvbyB7XG4vLyAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDUpO1xuLy8gICAgdG9wOiBuaHN1ay1zcGFjaW5nKDIpICFpbXBvcnRhbnQ7IC8vIGlmIGAhaW1wb3J0YW50YCBpcyByZXF1aXJlZFxuLy8gICB9XG4vL1xuLy8gMS4gTWFrZSBzdXJlIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBmcm9tIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYCBpcyBhIG1hcC5cbi8vIDIuIExvb3AgdGhyb3VnaCBlYWNoIGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuLy8gMy4gVGhlICdudWxsJyBicmVha3BvaW50IGlzIGZvciBtb2JpbGUuXG4vL1xuLy8gT3JpZ2luYWwgY29kZSB0YWtlbiBmcm9tIEdEUyAoR292ZXJubWVudCBEaWdpdGFsIFNlcnZpY2UpXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYWxwaGFnb3YvZ292dWstZnJvbnRlbmRcbi8vXG5cbkBtaXhpbiBfbmhzdWstcmVzcG9uc2l2ZS1zcGFjaW5nKFxuICAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LFxuICAkcHJvcGVydHksXG4gICRkaXJlY3Rpb246IFwiYWxsXCIsXG4gICRpbXBvcnRhbnQ6IGZhbHNlLFxuICAkYWRqdXN0bWVudDogZmFsc2Vcbikge1xuICAkYWN0dWFsLWlucHV0LXR5cGU6IHR5cGUtb2YoJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCk7XG4gIEBpZiAkYWN0dWFsLWlucHV0LXR5cGUgIT0gXCJudW1iZXJcIiB7XG4gICAgQGVycm9yIFwiRXhwZWN0ZWQgYSBudW1iZXIgKGludGVnZXIpLCBidXQgZ290IGEgXCIgKyBcIiN7JGFjdHVhbC1pbnB1dC10eXBlfS5cIjtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJG5oc3VrLXNwYWNpbmctcmVzcG9uc2l2ZS1zY2FsZSwgJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCkge1xuICAgIEBlcnJvciBcIlVua25vd24gc3BhY2luZyBwb2ludCBgI3skcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50fWAuIE1ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIGEgcG9pbnQgZnJvbSB0aGUgXCJcbiAgICArIFwicmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlIGluIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYC5cIjsgLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBpbmRlbnRhdGlvbiAqL1xuICB9XG5cbiAgJHNjYWxlLW1hcDogbWFwLWdldCgkbmhzdWstc3BhY2luZy1yZXNwb25zaXZlLXNjYWxlLCAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50KTsgLy8gWzFdIC8vXG4gICRhY3R1YWwtbWFwLXR5cGU6IHR5cGUtb2YoJHNjYWxlLW1hcCk7XG4gIEBpZiAkYWN0dWFsLW1hcC10eXBlICE9IFwibWFwXCIge1xuICAgIEBlcnJvciBcIkV4cGVjdGVkIGEgbnVtYmVyIChpbnRlZ2VyKSwgYnV0IGdvdCBhIFwiXG4gICAgKyBcIiN7JGFjdHVhbC1tYXAtdHlwZX0uIE1ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIGEgbWFwIHRvIHNldCB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIGluIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYClcIjsgLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBpbmRlbnRhdGlvbiAqL1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRicmVha3BvaW50LXZhbHVlIGluICRzY2FsZS1tYXAge1xuICAgIC8vIFsyXSAvL1xuXG4gICAgQGlmICgkYWRqdXN0bWVudCkge1xuICAgICAgJGJyZWFrcG9pbnQtdmFsdWU6ICRicmVha3BvaW50LXZhbHVlICsgJGFkanVzdG1lbnQ7XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50ID09IG51bGwge1xuICAgICAgLy8gWzNdIC8vXG5cbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGFsbCB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJGJyZWFrcG9pbnQtdmFsdWUgaWZmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259OiAkYnJlYWtwb2ludC12YWx1ZSBpZmYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgQGlmICRkaXJlY3Rpb24gPT0gYWxsIHtcbiAgICAgICAgICAjeyRwcm9wZXJ0eX06ICRicmVha3BvaW50LXZhbHVlIGlmZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRicmVha3BvaW50LXZhbHVlIGlmZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIG1hcmdpblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHMgcmVzcG9uc2l2ZSBtYXJnaW4gYnkgZmV0Y2hpbmcgYSAnc3BhY2luZyBtYXAnIGZyb20gdGhlIHJlc3BvbnNpdmVcbi8vIHNwYWNpbmcgc2NhbGUsIHdoaWNoIGRlZmluZXMgZGlmZmVyZW50IHNwYWNpbmcgdmFsdWVzIGF0IGRpZmZlcmVudFxuLy8gYnJlYWtwb2ludHMuIFdyYXBwZXIgZm9yIHRoZSBgX25oc3VrLXJlc3BvbnNpdmUtc3BhY2luZ2AgbWl4aW4uXG4vL1xuLy8gQHNlZSB7bWl4aW59IF9uaHN1ay1yZXNwb25zaXZlLXNwYWNpbmdcbi8vXG4vLyBAcGFyYW0ge051bWJlcn0gJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCAtIFBvaW50IG9uIHRoZSByZXNwb25zaXZlIHNwYWNpbmdcbi8vIHNjYWxlLCBjb3JyZXNwb25kcyB0byBhIG1hcCBvZiBicmVha3BvaW50cyBhbmQgc3BhY2luZyB2YWx1ZXNcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZGlyZWN0aW9uIFthbGxdIC0gRGlyZWN0aW9uIHRvIGFkZCBzcGFjaW5nIHRvXG4vLyAgIChgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIGBsZWZ0YCwgYGFsbGApXG4vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vIEBwYXJhbSB7TnVtYmVyfSAkYWRqdXN0bWVudCBbZmFsc2VdIC0gT2Zmc2V0IHRvIGFkanVzdCBzcGFjaW5nIGJ5XG4vL1xuLy8gQGV4YW1wbGUgc2Nzc1xuLy8gICAuZm9vIHtcbi8vICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgJ2xlZnQnLCAkYWRqdXN0bWVudDogMXB4KTtcbi8vICAgfVxuLy9cbi8vIE9yaWdpbmFsIGNvZGUgdGFrZW4gZnJvbSBHRFMgKEdvdmVybm1lbnQgRGlnaXRhbCBTZXJ2aWNlKVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kXG4vL1xuXG5AbWl4aW4gbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCwgJGRpcmVjdGlvbjogXCJhbGxcIiwgJGltcG9ydGFudDogZmFsc2UsICRhZGp1c3RtZW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSBfbmhzdWstcmVzcG9uc2l2ZS1zcGFjaW5nKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsIFwibWFyZ2luXCIsICRkaXJlY3Rpb24sICRpbXBvcnRhbnQsICRhZGp1c3RtZW50KTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBwYWRkaW5nXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcyByZXNwb25zaXZlIHBhZGRpbmcgYnkgZmV0Y2hpbmcgYSAnc3BhY2luZyBtYXAnIGZyb20gdGhlIHJlc3BvbnNpdmVcbi8vIHNwYWNpbmcgc2NhbGUsIHdoaWNoIGRlZmluZXMgZGlmZmVyZW50IHNwYWNpbmcgdmFsdWVzIGF0IGRpZmZlcmVudFxuLy8gYnJlYWtwb2ludHMuIFdyYXBwZXIgZm9yIHRoZSBgX25oc3VrLXJlc3BvbnNpdmUtc3BhY2luZ2AgbWl4aW4uXG4vL1xuLy8gQHNlZSB7bWl4aW59IF9uaHN1ay1yZXNwb25zaXZlLXNwYWNpbmdcbi8vXG4vLyBAcGFyYW0ge051bWJlcn0gJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCAtIFBvaW50IG9uIHRoZSByZXNwb25zaXZlIHNwYWNpbmdcbi8vICAgc2NhbGUsIGNvcnJlc3BvbmRzIHRvIGEgbWFwIG9mIGJyZWFrcG9pbnRzIGFuZCBzcGFjaW5nIHZhbHVlc1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gW2FsbF0gLSBEaXJlY3Rpb24gdG8gYWRkIHNwYWNpbmcgdG9cbi8vICAgKGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgLCBgYWxsYClcbi8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGFzIGAhaW1wb3J0YW50YFxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRhZGp1c3RtZW50IFtmYWxzZV0gLSBPZmZzZXQgdG8gYWRqdXN0IHNwYWNpbmdcbi8vXG4vLyBAZXhhbXBsZSBzY3NzXG4vLyAgIC5mb28ge1xuLy8gICAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcoNiwgJ2xlZnQnLCAkYWRqdXN0bWVudDogMXB4KTtcbi8vICAgfVxuLy9cbi8vIE9yaWdpbmFsIGNvZGUgdGFrZW4gZnJvbSBHRFMgKEdvdmVybm1lbnQgRGlnaXRhbCBTZXJ2aWNlKVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kXG4vL1xuXG5AbWl4aW4gbmhzdWstcmVzcG9uc2l2ZS1wYWRkaW5nKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsICRkaXJlY3Rpb246IFwiYWxsXCIsICRpbXBvcnRhbnQ6IGZhbHNlLCAkYWRqdXN0bWVudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgX25oc3VrLXJlc3BvbnNpdmUtc3BhY2luZygkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LCBcInBhZGRpbmdcIiwgJGRpcmVjdGlvbiwgJGltcG9ydGFudCwgJGFkanVzdG1lbnQpO1xufVxuIiwiLy8gRlVMTFdJRFRIIFxuLnBhZ2UtLWZ1bGx3aWR0aCB7XG4gIC5wYWdlX19oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiBuaHN1ay1zcGFjaW5nKDYpO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIHBhZGRpbmctdG9wOiBuaHN1ay1zcGFjaW5nKDcpO1xuICAgIH1cbiAgfVxuICAucGFnZV9fbWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IG5oc3VrLXNwYWNpbmcoNik7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogbmhzdWstc3BhY2luZyg3KTtcbiAgICB9XG4gIH1cbn1cblxuLnBhZ2UtLXNlYXJjaCB7XG4gIC5wYWdlX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtcGFkZGluZyg3LCAndG9wJylcbiAgfVxufSIsIi8vIExFRlRCQVIrTUFJTlxuLnBhZ2UtLWxlZnRiYXIge1xuXG4gICAgLnBhZ2VfX2hlYWRlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBuaHN1ay1zcGFjaW5nKDcpO1xuICAgICAgICBoMSwgcCwgc3BhbiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY2LjY2NjclO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wYWdlX19sYXlvdXQge1xuICAgICAgICBAaW5jbHVkZSBoZWUtZmxleGdyaWQtcm93O1xuICAgICAgICAucGFnZV9fbGVmdGJhciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBoZWUtZmxleGdyaWQtY29sKDMuNzUpO1xuICAgICAgICB9XG4gICAgICAgIC5wYWdlX19tYWluIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlZS1mbGV4Z3JpZC1jb2woOCwkY29sLW9mZnNldDowLjI1KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogZGVza3RvcCkge1xuICAgICAgICAucGFnZV9faGVhZGVyIHtcbiAgICAgICAgICAgIGgxLCBwLCBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnBhZ2VfX2xheW91dCB7XG4gICAgICAgICAgICAucGFnZV9fbGVmdGJhciwgXG4gICAgICAgICAgICAucGFnZV9fbWFpbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaGVlLWZsZXhncmlkLWNvbCgxMiwkY29sLW9mZnNldDowKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG59XG4iLCJcbi8vIEdyaWRcbiRncmlkLWNvbHVtbnM6IDEyO1xuQG1peGluIGhlZS1mbGV4Z3JpZC1yb3coXG4gICAgJGZsZXgtZGlzcGxheTogZmxleCxcbiAgICAkZmxleC1kaXJlY3Rpb246IG51bGwsIFxuICAgICRmbGV4LXdyYXA6IHdyYXAsIFxuICAgICRmbGV4LWZsb3c6IG51bGwsIFxuICAgICRqdXN0aWZ5LWNvbnRlbnQ6IG51bGwsIFxuICAgICRhbGlnbi1pdGVtczogbnVsbCwgXG4gICAgJGFsaWduLWNvbnRlbnQ6IG51bGwsIFxuICAgICRndXR0ZXI6IG51bGxcbikge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpZiAkZmxleC1kaXNwbGF5IHtcblx0XHRkaXNwbGF5OiAkZmxleC1kaXNwbGF5O1xuXHR9XG5cdEBpZiAkZmxleC1kaXJlY3Rpb24ge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiAkZmxleC1kaXJlY3Rpb247XG5cdH1cblx0QGlmICRmbGV4LXdyYXAge1xuXHRcdGZsZXgtd3JhcDogJGZsZXgtd3JhcDtcblx0fVxuXHRAaWYgJGZsZXgtZmxvdyB7XG5cdFx0ZmxleC1mbG93OiAkZmxleC1mbG93O1xuXHR9XG5cdEBpZiAkanVzdGlmeS1jb250ZW50IHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5LWNvbnRlbnQ7XG5cdH1cblx0QGlmICRhbGlnbi1pdGVtcyB7XG5cdFx0YWxpZ24taXRlbXM6ICRhbGlnbi1pdGVtcztcblx0fVxuXHRAaWYgJGFsaWduLWNvbnRlbnQge1xuXHRcdGFsaWduLWNvbnRlbnQ6ICRhbGlnbi1jb250ZW50O1xuXHR9XG5cdEBpZiAkZ3V0dGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGd1dHRlciAqIDAuNSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSgkZ3V0dGVyICogMC41KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJvd3NlcihpZSkge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgfVxuXHRAY29udGVudDtcbn1cblxuQG1peGluIGhlZS1mbGV4Z3JpZC1jb2woXG4gICAgJGNvbDogbnVsbCwgXG4gICAgJGdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucywgXG4gICAgJGNvbC1vZmZzZXQ6IG51bGwsIFxuICAgICRpbXBvcnRhbnQ6IG51bGwsXG4gICAgJGd1dHRlcjogbnVsbCwgXG4gICAgJGFsaWduLXNlbGY6IG51bGwsIFxuICAgICRmbGV4LWdyb3c6IDAsIFxuICAgICRmbGV4LXNocmluazogMSwgXG4gICAgJGZsZXgtYmFzaXM6IGF1dG8sIFxuICAgICRvcmRlcjogbnVsbFxuKSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdEBpZiB0eXBlLW9mKCRjb2wpID09IG51bWJlciB7XG5cdFx0JGZsZXgtZ3JvdzogMDtcblx0XHQkZmxleC1zaHJpbms6IDA7XG4gICAgICAgIFxuICAgICAgICBAaWYgdW5pdCgkY29sKSA9PSAncHgnIG9yIHVuaXQoJGNvbCkgPT0gJyUnIHtcbiAgICAgICAgICAgIEBpZiAkaW1wb3J0YW50ID09IHRydWUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkY29sO1xuICAgICAgICAgICAgICAgICRmbGV4LWJhc2lzOiAkY29sO1xuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRjb2whaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICRmbGV4LWJhc2lzOiAkY29sIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBpZiAkaW1wb3J0YW50ID09IHRydWUge1xuICAgICAgICAgICAgICAgICRmbGV4LWJhc2lzOiBjYWxjKCRjb2wgLyAkZ3JpZC1jb2x1bW5zKSAqIDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygkY29sIC8gJGdyaWQtY29sdW1ucykgKiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygkY29sIC8gJGdyaWQtY29sdW1ucykgKiAxMDAlO1xuICAgICAgICAgICAgICAgICRmbGV4LWJhc2lzOiBjYWxjKCRjb2wgLyAkZ3JpZC1jb2x1bW5zKSAqIDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXHR9IEBlbHNlIGlmIHR5cGUtb2YoJGNvbCkgPT0gc3RyaW5nIGFuZCAkY29sID09ICdhdXRvJyB7XG5cdFx0JGZsZXgtZ3JvdzogMTtcblx0XHQkZmxleC1zaHJpbms6IDE7XG5cdFx0JGZsZXgtYmFzaXM6IGF1dG87XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHR9IEBlbHNlIGlmIHR5cGUtb2YoJGNvbCkgPT0gc3RyaW5nIGFuZCAkY29sID09ICdlcXVhbCcge1xuXHRcdCRmbGV4LWdyb3c6IDE7XG5cdFx0JGZsZXgtc2hyaW5rOiAxO1xuXHRcdCRmbGV4LWJhc2lzOiAwO1xuICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkY29sKSA9PSBzdHJpbmcgYW5kICRjb2wgPT0gJ2JyZWFrcG9pbnQnIHtcblx0XHQkZmxleC1ncm93OiAwO1xuXHRcdCRmbGV4LXNocmluazogMTtcblx0XHQkZmxleC1iYXNpczogYXV0bztcblx0XHR3aWR0aDogMTAwJTtcblx0fSBAZWxzZSBpZiB0eXBlLW9mKCRjb2wpID09IHN0cmluZyBhbmQgJGNvbCA9PSAnbm9uZScge1xuXHRcdCRmbGV4LWdyb3c6IDA7XG5cdFx0JGZsZXgtc2hyaW5rOiAwO1xuXHRcdCRmbGV4LWJhc2lzOiBhdXRvO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAkZmxleC1ncm93OiAxO1xuXHRcdCRmbGV4LXNocmluazogMTtcblx0XHQkZmxleC1iYXNpczogMDtcbiAgICB9XG4gICAgQGlmICRndXR0ZXIgYW5kIHVuaXRsZXNzKCRndXR0ZXIpID09IGZhbHNlIHtcbiAgICAgICAgcGFkZGluZzogMCAkZ3V0dGVyICogMC41O1xuICAgIH1cblx0ZmxleDogJGZsZXgtZ3JvdyAkZmxleC1zaHJpbmsgJGZsZXgtYmFzaXM7XG4gICAgQGlmICRjb2wtb2Zmc2V0IGFuZCB1bml0bGVzcygkY29sLW9mZnNldCkgPT0gdHJ1ZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCRjb2wtb2Zmc2V0IC8gJGdyaWQtY29sdW1ucykgKiAxMDAlO1xuICAgIH1cblx0QGlmICRhbGlnbi1zZWxmIHtcblx0XHRhbGlnbi1zZWxmOiAkYWxpZ24tc2VsZjtcblx0fVxuXHRAaWYgdHlwZS1vZigkb3JkZXIpID09IG51bWJlciB7XG5cdFx0b3JkZXI6ICRvcmRlcjtcblx0fVxuXG4gICAgQGluY2x1ZGUgYnJvd3NlcihpZSkge1xuICAgICAgICBmbG9hdDogbGVmdDsgXG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgfVxuXG5cdEBjb250ZW50O1xufVxuXG4iLCJAbWl4aW4gYnJvd3NlcigkYnJvd3Nlcikge1xuICAgIFxuICBAaWYgJGJyb3dzZXIgPT0gaWUge1xuICAgICAgQG1lZGlhIHNjcmVlblxcMCB7IEBjb250ZW50OyB9XG4gIH1cbiAgXG59IiwiLy8gTUFJTitSSUdIVEJBUlxuLnBhZ2UtLXJpZ2h0YmFyIHtcbiAgcGFkZGluZy1ib3R0b206IG5oc3VrLXNwYWNpbmcoNik7XG4gIC5wYWdlX19oZWFkZXIge1xuICAgICAgcGFkZGluZy10b3A6IG5oc3VrLXNwYWNpbmcoNik7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IG5oc3VrLXNwYWNpbmcoNyk7XG4gICAgICB9XG5cbiAgICAgIGgxLCBwLCBzcGFuIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2Ni42NjY3JTtcbiAgICAgIH1cblxuICAgICAgLm5oc3VrLWhlcm8ge1xuICAgICAgICBoMSwgcCwgc3BhbiB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gIH1cbiAgLnBhZ2VfX2xheW91dCB7XG4gICAgICBAaW5jbHVkZSBoZWUtZmxleGdyaWQtcm93O1xuICAgICAgLnBhZ2VfX3JpZ2h0YmFyIHtcbiAgICAgICAgICBAaW5jbHVkZSBoZWUtZmxleGdyaWQtY29sKDMuNzUsJGNvbC1vZmZzZXQ6MC40KTtcblxuICAgICAgICAgIC5uaHN1ay1jYXJkLFxuICAgICAgICAgIC5uaHN1ay1jb250YWN0X19jYXJkLFxuICAgICAgICAgIC5oZWUtY2FyZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wYWdlX19tYWluIHtcbiAgICAgICAgICBAaW5jbHVkZSBoZWUtZmxleGdyaWQtY29sKDcuODUpO1xuICAgICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEoJHVudGlsOiBkZXNrdG9wKSB7XG4gICAgLnBhZ2VfX2hlYWRlciB7XG4gICAgICAgIGgxLCBwLCBzcGFuIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFnZV9fbGF5b3V0IHtcbiAgICAgIC5wYWdlX19yaWdodGJhcixcbiAgICAgIC5wYWdlX19tYWluIHtcbiAgICAgICAgICBAaW5jbHVkZSBoZWUtZmxleGdyaWQtY29sKDEyLCRjb2wtb2Zmc2V0OjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYWdlX19yaWdodGJhciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICAgIC5uaHN1ay1jYXJkOmxhc3Qtb2YtdHlwZSwgLm5oc3VrLWNvbnRhY3Q6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLS10ZW1wbGF0ZS1zdGFuZGFyZCB7fVxuLnBhZ2UtLXRlbXBsYXRlLW1pbmlodWIge31cbi5wYWdlLS10ZW1wbGF0ZS1zZWN0aW9uaG9tZSB7fVxuLnBhZ2UtLXNpbmdsZS1uZXdzIHt9XG4ucGFnZS0tc2luZ2xlLWJsb2cge31cbi5wYWdlLS1zaW5nbGUtcHVibGljYXRpb24ge31cbi5wYWdlLS1zaW5nbGUtZXZlbnQge31cbi5wYWdlLS10ZW1wbGF0ZS1sZWdhbCB7fSIsIi5uaHN1ay1oZWUtYmxvY2tsaW5rcyB7XG5cdHBhZGRpbmctdG9wOiAyNHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMjRweDtcblxuXHQubmhzdWstbGlzdC1ibG9ja2xpbmtzIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblxuXHRcdGxpIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbjogMnB4IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdCY6bGFzdC1vZi10eXBlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMnB4O1xuXHRcdFx0fVxuXG5cdFx0XHRhIHtcblx0XHRcdFx0YmFja2dyb3VuZDogICRjb2xvcl9uaHN1ay1ibHVlXHQ7XG5cdFx0XHRcdGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nOiAxMnB4IDI0cHg7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkbmhzdWstbGluay1hY3RpdmUtY29sb3I7XG5cdFx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkbmhzdWstbGluay1hY3RpdmUtY29sb3I7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkbmhzdWstZm9jdXMtY29sb3I7XG5cdFx0XHRcdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAtNHB4IDAgMCAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcblx0XHRcdFx0XHRjb2xvcjogJG5oc3VrLWZvY3VzLXRleHQtY29sb3I7XG5cblx0XHRcdFx0XHQubmhzdWstaWNvbiB7XG5cdFx0XHRcdFx0XHRmaWxsOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQubmhzdWstaWNvbiB7XG5cdFx0XHRcdFx0ZmlsbDogJGNvbG9yX25oc3VrLXdoaXRlO1xuXHRcdFx0XHRcdGhlaWdodDogMjRweDtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0cmlnaHQ6IDEycHg7XG5cdFx0XHRcdFx0dG9wOiAxNHB4O1xuXHRcdFx0XHRcdHdpZHRoOiAyNHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhIChtaW4td2lkdGg6NDguMDYyNWVtKSB7XG5cdFx0Lm5oc3VrLWxpc3QtYmxvY2tsaW5rcy0tdHdvLWNvbHVtbnMge1xuXHRcdFx0Y29sdW1uLWNvdW50OiAyO1xuXHRcdFx0Y29sdW1uLWdhcDogNHB4O1xuXHRcdH1cblx0XHQubmhzdWstbGlzdC1ibG9ja2xpbmtzLS1vbmUtY29sdW1uIHtcblx0XHRcdGNvbHVtbi1nYXA6IDRweDtcblx0XHR9XG5cdH1cblxuXHRAbWVkaWEgKG1heC13aWR0aDo0MC4wNTI1ZW0pIHtcblx0XHQubmhzdWstbGlzdC1ibG9ja2xpbmtzIHtcblx0XHRcdGxpIHtcblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0cGFkZGluZzogMTJweCAxNnB4O1xuXHRcdFx0XHRcdC5uaHN1ay1pY29uIHtcblx0XHRcdFx0XHRcdHRvcDogMTJweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLm5oc3VrLWJsb2NrbGlua3Mge1xuXHRwYWRkaW5nLXRvcDogMDtcblx0cGFkZGluZy1ib3R0b206IDI0cHg7XG5cblx0Lm5oc3VrLWxpc3QtYmxvY2tsaW5rcyB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cblx0XHRsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW46IDJweCAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDJweDtcblx0XHRcdH1cblxuXHRcdFx0YSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICAkY29sb3JfbmhzdWstYmx1ZVx0O1xuXHRcdFx0XHRjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZzogMTJweCAyNHB4O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJG5oc3VrLWxpbmstYWN0aXZlLWNvbG9yO1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJG5oc3VrLWxpbmstYWN0aXZlLWNvbG9yO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJG5oc3VrLWZvY3VzLWNvbG9yO1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6IGluc2V0IDAgLTRweCAwIDAgJG5oc3VrLWZvY3VzLXRleHQtY29sb3I7XG5cdFx0XHRcdFx0Y29sb3I6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuXG5cdFx0XHRcdFx0Lm5oc3VrLWljb24ge1xuXHRcdFx0XHRcdFx0ZmlsbDogJG5oc3VrLWZvY3VzLXRleHQtY29sb3I7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lm5oc3VrLWljb24ge1xuXHRcdFx0XHRcdGZpbGw6ICRjb2xvcl9uaHN1ay13aGl0ZTtcblx0XHRcdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHJpZ2h0OiAxMnB4O1xuXHRcdFx0XHRcdHRvcDogMTRweDtcblx0XHRcdFx0XHR3aWR0aDogMjRweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBtZWRpYSAobWluLXdpZHRoOjQ4LjA2MjVlbSkge1xuXHRcdC5uaHN1ay1saXN0LWJsb2NrbGlua3MtLXR3by1jb2x1bW5zIHtcblx0XHRcdGNvbHVtbi1jb3VudDogMjtcblx0XHRcdGNvbHVtbi1nYXA6IDRweDtcblx0XHR9XG5cdFx0Lm5oc3VrLWxpc3QtYmxvY2tsaW5rcy0tb25lLWNvbHVtbiB7XG5cdFx0XHRjb2x1bW4tZ2FwOiA0cHg7XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhIChtYXgtd2lkdGg6NDAuMDUyNWVtKSB7XG5cdFx0Lm5oc3VrLWxpc3QtYmxvY2tsaW5rcyB7XG5cdFx0XHRsaSB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDEycHggMTZweDtcblx0XHRcdFx0XHQubmhzdWstaWNvbiB7XG5cdFx0XHRcdFx0XHR0b3A6IDEycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5uaHN1ay10YWJzX19wYW5lbCB7XG5cdC5uaHN1ay1hY3Rpb24tbGluayB7XG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cbn1cbiIsIi5uaHN1ay1icmVhZGNydW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbn1cblxuLm5oc3VrLWJyZWFkY3J1bWJfX2l0ZW06bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyBjbGFzcz0nbmhzdWstaWNvbiBuaHN1ay1pY29uX19jaGV2cm9uLXJpZ2h0JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2FlYjdiZCcgaGVpZ2h0PScxOCcgd2lkdGg9JzE4JyB2aWV3Qm94PScwIDAgMjQgMjQnIGFyaWEtaGlkZGVuPSd0cnVlJyUzRSUzQ3BhdGggZD0nTTE1LjUgMTJhMSAxIDAgMCAxLS4yOS43MWwtNSA1YTEgMSAwIDAgMS0xLjQyLTEuNDJsNC4zLTQuMjktNC4zLTQuMjlhMSAxIDAgMCAxIDEuNDItMS40Mmw1IDVhMSAxIDAgMCAxIC4yOS43MXonJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpIHJpZ2h0IDAgdG9wIDZweCBuby1yZXBlYXQ7XG4gICAgaGVpZ2h0OiAxOXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxOHB4O1xufVxuXG4ubmhzdWstYnJlYWRjcnVtYl9faXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbn1cblxuXG5cbiIsIi5uaHN1ay1pbWFnZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG59XG5cbi5wYWdlX19tYWluIC5uaHN1ay1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLmhlZS1jYXJkLS1kZXRhaWxzIHtcbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuaGVlLWNhcmQtLWRldGFpbHNfX2l0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMyk7XG5cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTRVRUSU5HUyAvICNHTE9CQUxTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gRm9udHNcbi8vXG4vLyAxLiBGYWxsYmFjayBmb250cyBpZiBGcnV0aWdlciBmYWlscyB0byBsb2FkXG4vL1xuXG4kbmhzdWstZm9udDogRnJ1dGlnZXIgVzAxICFkZWZhdWx0O1xuJG5oc3VrLWZvbnQtZmFsbGJhY2s6IEFyaWFsLCBTYW5zLXNlcmlmICFkZWZhdWx0OyAvLyBbMV0gLy9cbiRuaHN1ay1mb250LWZhbWlseS1wcmludDogc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRuaHN1ay1mb250LWJvbGQ6IDYwMCAhZGVmYXVsdDtcbiRuaHN1ay1mb250LW5vcm1hbDogNDAwICFkZWZhdWx0O1xuJG5oc3VrLWZvbnQtbGlnaHQ6ICRuaHN1ay1mb250LW5vcm1hbCAhZGVmYXVsdDtcbiRuaHN1ay1mb250cy1wYXRoOiBcImh0dHBzOi8vYXNzZXRzLm5ocy51ay9mb250cy9cIiAhZGVmYXVsdDtcbiRuaHN1ay1pbmNsdWRlLWZvbnQtZmFjZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy9cbi8vIEZvbnQgc2l6aW5nIGFuZCBzcGFjaW5nXG4vL1xuXG4kbmhzdWstYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kbmhzdWstYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy9cbi8vIEljb24gZGVmYXVsdCBzaXppbmdcbi8vXG5cbiRuaHN1ay1pY29uLXNpemU6IDM0cHggIWRlZmF1bHQ7XG5cbi8vXG4vLyBHcmlkIHNwYWNpbmdcbi8vXG5cbiRuaHN1ay1wYWdlLXdpZHRoOiA5NjBweDtcbiRuaHN1ay1ndXR0ZXI6IDMycHg7XG4kbmhzdWstZ3V0dGVyLWhhbGY6ICRuaHN1ay1ndXR0ZXIgKiAwLjU7XG5cbi8vXG4vLyBCb3JkZXIgc2l6ZXNcbi8vXG5cbiRuaHN1ay1ib3JkZXItd2lkdGgtaW5zZXQtdGV4dDogOHB4ICFkZWZhdWx0O1xuJG5oc3VrLWNhcmUtY2FyZC10cmlhbmdsZS1ib3JkZXI6IDE2cHggIWRlZmF1bHQ7XG4kbmhzdWstaGVyby1jb250ZW50LXRyaWFuZ2xlLWJvcmRlcjogMTZweCAhZGVmYXVsdDtcbiRuaHN1ay1oZXJvLWJvcmRlcjogMXB4ICFkZWZhdWx0O1xuJG5oc3VrLWJvcmRlci10YWJsZS1oZWFkZXItd2lkdGg6IDJweCAhZGVmYXVsdDtcbiRuaHN1ay1ib3JkZXItdGFibGUtY2VsbC13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gQm9yZGVyIHJhZGl1c1xuLy9cblxuJG5oc3VrLWJvcmRlci1yYWRpdXM6IDRweCAhZGVmYXVsdDtcblxuLy9cbi8vIEJveCBzaGFkb3dcbi8vXG5cbiRuaHN1ay1ib3gtc2hhZG93LXNwcmVhZDogNHB4ICFkZWZhdWx0O1xuJG5oc3VrLWJveC1zaGFkb3ctYmx1cjogNHB4ICFkZWZhdWx0O1xuJG5oc3VrLWJveC1zaGFkb3ctbGluazogNHB4ICFkZWZhdWx0O1xuJG5oc3VrLWJveC1kZXRhaWxzOiA4cHggIWRlZmF1bHQ7XG4kbmhzdWstYm94LWV4cGFuZGVyOiA0cHggIWRlZmF1bHQ7XG4kbmhzdWstYm94LXNoYWRvdy1wYWdpbmF0aW9uOiAxNnB4ICFkZWZhdWx0O1xuJG5oc3VrLWJveC1zaGFkb3ctbGluazogNHB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gSGVhZGVyIHNwYWNpbmdcbi8vXG5cbiRuaHN1ay1oZWFkZXItc3BhY2luZzogMjBweDtcblxuLy9cbi8vIEZvcm0gZWxlbWVudHNcbi8vXG5cbiRuaHN1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50OiAycHggIWRlZmF1bHQ7XG4kbmhzdWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudC1lcnJvcjogMnB4ICFkZWZhdWx0O1xuJG5oc3VrLWZvY3VzLXdpZHRoOiA0cHggIWRlZmF1bHQ7XG4kbmhzdWstYm9yZGVyLXdpZHRoOiA0cHggIWRlZmF1bHQ7XG4kbmhzdWstYm9yZGVyLXdpZHRoLW1vYmlsZTogNHB4ICFkZWZhdWx0O1xuJG5oc3VrLWJvcmRlci13aWR0aC1mb3JtLWdyb3VwLWVycm9yOiAkbmhzdWstYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuIiwiLmhlZS1nb29nbGUtbWFwIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcblxuXG4gIC5oZWUtZ29vZ2xlLW1hcF9fd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA2NiU7IC8vIFRoaXMgaXMgdGhlIGFzcGVjdCByYXRpb1xuXG4gICAgaWZyYW1lIHtcbiAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1nb29nbGUtbWFwX19jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMTkpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoNSk7XG4gIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUT09MUyAvICNUWVBPR1JBUEhZXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gVGhlc2UgbWl4aW5zIGFsbG93IHVzIHRvIHF1aWNrbHkgYW5kIGNvbnNpc3RlbnRseSBnZW5lcmF0ZSBjb21tb24gdGV4dFxuLy8gcGF0dGVybnMgc3VjaCBhcyBjb2xvdXJzIGFuZCBmb250LXdlaWdodFxuLy9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBUZXh0IGNvbG91clxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFNldHMgdGhlIHRleHQgY29sb3VyLCBpbmNsdWRpbmcgYSBzdWl0YWJsZSBvdmVycmlkZSBmb3IgcHJpbnQuXG4vL1xuLy8gT3JpZ2luYWwgY29kZSB0YWtlbiBmcm9tIEdEUyAoR292ZXJubWVudCBEaWdpdGFsIFNlcnZpY2UpXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYWxwaGFnb3YvZ292dWstZnJvbnRlbmRcbi8vXG5cbkBtaXhpbiBuaHN1ay10ZXh0LWNvbG9yIHtcbiAgY29sb3I6ICRuaHN1ay10ZXh0LWNvbG9yO1xuXG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgIGNvbG9yOiAkbmhzdWstcHJpbnQtdGV4dC1jb2xvcjtcbiAgfVxufVxuXG4vLyBOb3JtYWwgZm9udCB3ZWlnaHRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vICAgYCFpbXBvcnRhbnRgLiBHZW5lcmFsbHkgVXNlZCB0byBjcmVhdGUgb3ZlcnJpZGUgY2xhc3Nlcy5cbi8vXG5cbkBtaXhpbiBuaHN1ay10eXBvZ3JhcGh5LXdlaWdodC1ub3JtYWwoJGltcG9ydGFudDogZmFsc2UpIHtcbiAgZm9udC13ZWlnaHQ6ICRuaHN1ay1mb250LW5vcm1hbCBpZmYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG59XG5cbi8vIEJvbGQgZm9udCB3ZWlnaHRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vICAgYCFpbXBvcnRhbnRgLiBHZW5lcmFsbHkgVXNlZCB0byBjcmVhdGUgb3ZlcnJpZGUgY2xhc3Nlcy5cbi8vXG5cbkBtaXhpbiBuaHN1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkKCRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkIGlmZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbn1cblxuLy8gTGluZSBoZWlnaHRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBDb252ZXJ0IGxpbmUtaGVpZ2h0cyBzcGVjaWZpZWQgaW4gcGl4ZWxzIGludG8gYSByZWxhdGl2ZSB2YWx1ZSwgdW5sZXNzXG4vLyB0aGV5IGFyZSBhbHJlYWR5IHVuaXQtbGVzcyAoYW5kIHRodXMgYWxyZWFkeSB0cmVhdGVkIGFzIHJlbGF0aXZlIHZhbHVlcylcbi8vIG9yIHRoZSB1bml0cyBkbyBub3QgbWF0Y2ggdGhlIHVuaXRzIHVzZWQgZm9yIHRoZSBmb250IHNpemUuXG4vL1xuLy8gQHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCBMaW5lIGhlaWdodFxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgRm9udCBzaXplXG4vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBsaW5lIGhlaWdodCBhcyBlaXRoZXIgYSByZWxhdGl2ZSB2YWx1ZSBvciB1bm1vZGlmaWVkXG4vL1xuXG5AZnVuY3Rpb24gX25oc3VrLWxpbmUtaGVpZ2h0KCRsaW5lLWhlaWdodCwgJGZvbnQtc2l6ZSkge1xuICBAaWYgbm90IHVuaXRsZXNzKCRsaW5lLWhlaWdodCkgYW5kIHVuaXQoJGxpbmUtaGVpZ2h0KSA9PSB1bml0KCRmb250LXNpemUpIHtcbiAgICAvLyBFeHBsaWNpdGx5IHJvdW5kaW5nIHRvIDUgZGVjaW1hbCBwbGFjZXMgdG8gbWF0Y2ggdGhlIG5vZGUtc2Fzcy9saWJzYXNzIGRlZmF1bHQgcHJlY2lzaW9uLlxuICAgIC8vIFRoaXMgaXMgZXhwYW5kZWQgdG8gMTAgaW4gZGFydC1zYXNzIGFuZCByZXN1bHRzIGluIHNpZ25pZmljYW50IGxpbmUgaGVpZ2h0IGRpZmZlcmVuY2VzXG4gICAgLy8gVGhlcmVmb3JlIGJ5IHJvdW5kaW5nIGl0IGhlcmUgd2UgYWNoaWV2ZSBjb25zaXN0ZW50IHJlbmRlcmluZyBhY3Jvc3Mgbm9kZS1zYXNzIGFuZCBkYXJ0LXNhc3NcbiAgICAkdGVuLXRvLXRoZS1wb3dlci1maXZlOiAxMDAwMDA7XG4gICAgJGxpbmUtaGVpZ2h0OiBtYXRoLmRpdihyb3VuZChtYXRoLmRpdigkbGluZS1oZWlnaHQsICRmb250LXNpemUpICogJHRlbi10by10aGUtcG93ZXItZml2ZSksICR0ZW4tdG8tdGhlLXBvd2VyLWZpdmUpO1xuICB9XG5cbiAgQHJldHVybiAkbGluZS1oZWlnaHQ7XG59XG5cbi8vIFJlc3BvbnNpdmUgdHlwb2dyYXBoeVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFRha2VzIGEgJ2ZvbnQgbWFwJyBhcyBhbiBhcmd1bWVudCBhbmQgdXNlcyBpdCB0byBjcmVhdGUgZm9udC1zaXplIGFuZFxuLy8gbGluZS1oZWlnaHQgZGVjbGFyYXRpb25zIGZvciBkaWZmZXJlbnQgYnJlYWtwb2ludHMsIGFuZCBmb3IgcHJpbnQuXG4vL1xuLy8gRXhhbXBsZSBmb250IG1hcDpcbi8vXG4vLyAkbXktZm9udC1tYXA6IChcbi8vICAgbnVsbDogKFxuLy8gICAgIGZvbnQtc2l6ZTogMTZweCxcbi8vICAgICBsaW5lLWhlaWdodDogMjBweFxuLy8gICApLFxuLy8gICB0YWJsZXQ6IChcbi8vICAgICBmb250LXNpemU6IDE5cHgsXG4vLyAgICAgbGluZS1oZWlnaHQ6IDI1cHhcbi8vICAgKSxcbi8vICAgcHJpbnQ6IChcbi8vICAgICBmb250LXNpemU6IDE0cHQsXG4vLyAgICAgbGluZS1oZWlnaHQ6IDEuMTVcbi8vICAgKVxuLy8gKTtcXFxuLy9cbi8vIEBleGFtcGxlIHNjc3Ncbi8vICAuZm9vIHtcbi8vICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxOSk7XG4vLyAgIH1cbi8vXG4vLyAgLmZvbyB7XG4vLyAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMzIsICRpbXBvcnRhbnQ6IHRydWUpO1xuLy8gICB9XG4vL1xuLy8gQHBhcmFtIHtNYXB9ICRmb250LW1hcCAtIEZvbnQgbWFwXG4vLyBAcGFyYW0ge051bWJlcn0gJG92ZXJyaWRlLWxpbmUtaGVpZ2h0IFtmYWxzZV0gLSBOb24gcmVzcG9uc2l2ZSBjdXN0b20gbGluZVxuLy8gICBoZWlnaHQuIE9taXQgdG8gdXNlIHRoZSBsaW5lIGhlaWdodCBmcm9tIHRoZSBmb250IG1hcC5cbi8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGRlY2xhcmF0aW9ucyBhc1xuLy8gICBgIWltcG9ydGFudGAuXG4vL1xuLy8gMS4gTWFyayBydWxlcyBhcyAhaW1wb3J0YW50IGlmICRpbXBvcnRhbnQgaXMgdHJ1ZSAtIHRoaXMgd2lsbCByZXN1bHQgaW5cbi8vICAgIHRoZXNlIHZhcmlhYmxlcyBiZWNvbWluZyBzdHJpbmdzLCBzbyB0aGlzIG5lZWRzIHRvIGhhcHBlbi8vYWZ0ZXIqIHRoZXlcbi8vICAgIGFyZSB1c2VkIGluIGNhbGN1bGF0aW9uc1xuLy9cblxuQG1peGluIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgkc2l6ZSwgJG92ZXJyaWRlLWxpbmUtaGVpZ2h0OiBmYWxzZSwgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbmhzdWstdHlwb2dyYXBoeS1zY2FsZSwgJHNpemUpIHtcbiAgICBAZXJyb3IgXCJVbmtub3duIGZvbnQgc2l6ZSBgI3skc2l6ZX1gIC0gZXhwZWN0ZWQgYSBwb2ludCBmcm9tIHRoZSB0eXBvZ3JhcGh5IHNjYWxlLlwiO1xuICB9XG5cbiAgJGZvbnQtbWFwOiBtYXAtZ2V0KCRuaHN1ay10eXBvZ3JhcGh5LXNjYWxlLCAkc2l6ZSk7XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRicmVha3BvaW50LW1hcCBpbiAkZm9udC1tYXAge1xuICAgICRmb250LXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnQtbWFwLCBcImZvbnQtc2l6ZVwiKTtcbiAgICAkZm9udC1zaXplLXJlbTogbmhzdWstcHgtdG8tcmVtKCRmb250LXNpemUpO1xuXG4gICAgJGxpbmUtaGVpZ2h0OiBfbmhzdWstbGluZS1oZWlnaHQoXG4gICAgICAkbGluZS1oZWlnaHQ6IGlmKCRvdmVycmlkZS1saW5lLWhlaWdodCwgJG92ZXJyaWRlLWxpbmUtaGVpZ2h0LCBtYXAtZ2V0KCRicmVha3BvaW50LW1hcCwgXCJsaW5lLWhlaWdodFwiKSksXG4gICAgICAkZm9udC1zaXplOiAkZm9udC1zaXplXG4gICAgKTtcblxuICAgIC8vIFsxXSAvL1xuICAgICRmb250LXNpemU6ICRmb250LXNpemUgaWZmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuICAgICRmb250LXNpemUtcmVtOiAkZm9udC1zaXplLXJlbSBpZmYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG4gICAgJGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQgaWZmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuXG4gICAgQGlmICRicmVha3BvaW50ID09IG51bGwge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInByaW50XCIge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiAkYnJlYWtwb2ludCkge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZvbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBAZXhhbXBsZSBzY3NzXG4vLyAgLmZvbyB7XG4vLyAgICBAaW5jbHVkZSBuaHN1ay1mb250KDE5KTtcbi8vICAgfVxuLy9cbi8vICAuZm9vIHtcbi8vICAgIEBpbmNsdWRlIG5oc3VrLWZvbnQoMzIsICR3ZWlnaHQ6IGJvbGQpO1xuLy8gICB9XG4vL1xuLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gU2l6ZSBvZiB0aGUgZm9udCBhcyBpdCB3b3VsZCBhcHBlYXIgb24gZGVza3RvcCAtXG4vLyAgIHVzZXMgdGhlIHJlc3BvbnNpdmUgZm9udCBzaXplIG1hcFxuLy8gQHBhcmFtIHtTdHJpbmd9ICR3ZWlnaHQgW25vcm1hbF0gLSBXZWlnaHQ6IGBib2xkYCBvciBgbm9ybWFsYFxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCBbZmFsc2VdIC0gTGluZS1oZWlnaHQsIGlmIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHRcbi8vXG5cbkBtaXhpbiBuaHN1ay1mb250KCRzaXplLCAkd2VpZ2h0OiBub3JtYWwsICRsaW5lLWhlaWdodDogZmFsc2UpIHtcbiAgQGlmICR3ZWlnaHQgPT0gbm9ybWFsIHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXdlaWdodC1ub3JtYWw7XG4gIH0gQGVsc2UgaWYgJHdlaWdodCA9PSBib2xkIHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgQGlmICRzaXplIHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoJHNpemUsICRvdmVycmlkZS1saW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0KTtcbiAgfVxufVxuIiwiLm5oc3VrLWNvb2tpZS1iYW5uZXIge1xuICBwYWRkaW5nLXRvcDogMjRweDtcblxuICB1bCwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRuaHN1ay1zcGFjaW5nLXBvaW50cywgNClcbiAgICB9XG4gIH1cbn1cblxuLm5oc3VrX19wb2xpY3ktdGFibGUge1xuICBib3JkZXI6IG5vbmU7XG5cbiAgLm5oc3VrX19leHBpcmVzIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG4iLCIubmhzdWstaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5uaHNlLWdsb2JhbC1tZW51LWRlc2NyaXB0b3Ige1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLm5oc3VrLWhlYWRlcl9fY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIG5oc3VrLXNwYWNpbmcoMyk7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgbWFyZ2luOiAwIDMycHg7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2UtZGVza3RvcCkge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLm5oc3VrLWxvZ28ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLnZpc2libGUge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgfVxufVxuLm5oc3VrLWhlYWRlcl9fY29udGVudCB7XG4gIGZsb2F0OnJpZ2h0O1xuICBtYXJnaW46IC00OHB4IDAgMCAwO1xuICB6LWluZGV4OiAwO1xuXG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgbWFyZ2luOiBuaHN1ay1zcGFjaW5nKDcpIDAgMCAwO1xuICB9XG5cbiAgJi5qcy1zaG93IHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuICAmLm5vLXNlYXJjaCB7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubmhzdWstaGVhZGVyX19saW5rIHtcbiAgLm5oc3VrLW9yZ2FuaXNhdGlvbi1uYW1lLFxuICAubmhzdWstb3JnYW5pc2F0aW9uLWRlc2NyaXB0b3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59IiwiLm5oc3VrLWhlYWRlcl9fbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuIiwiLyogTkhTVUstSGVhZGVyX19tdWx0aWxvZ28gKi9cblxuLm5oc3VrLWhlYWRlcl9fbXVsdGlsb2dvIHtcbiAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5uaHN1ay1oZWFkZXJfX2xvZ28taG9tZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygzKTtcbiAgICBvcmRlcjogMTA7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgZmxleC1ncm93OiAyO1xuICAgICAgZmxleC1iYXNpczogNDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgIG9yZGVyOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubmhzdWstaGVhZGVyX19tdWx0aWxvZ29fX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBjb2x1bW4tZ2FwOiBuaHN1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLm5oc3VrLWhlYWRlcl9fbG9nbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIG9yZGVyOiAyO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG9yZGVyOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgb3JkZXI6IDE7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIG9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm5oc3VrLWhlYWRlcl9fc2VhcmNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAubmhzdWstaGVhZGVyX19zZWFyY2gtd3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmpzLXNob3cge1xuICAgICAgcGFkZGluZy10b3A6IDMycHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5uaHN1ay1oZWFkZXJfX3NlYXJjaC1mb3JtIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmhzdWstaGVhZGVyX19zZWFyY2gtdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuYXV0b2NvbXBsZXRlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgLm5oc3VrLXNlYXJjaF9faW5wdXQge1xuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgICB9XG5cbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5oc3VrLXNlYXJjaF9fY2xvc2Uge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDAgLTZweCAwIDA7XG4gICAgcGFkZGluZzogNHB4IDdweDtcbiAgfVxufVxuXG4ubmhzdWstc2VhcmNoX19pbnB1dC0tc2VhcmNoLXJlc3VsdHMge1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktMztcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktMztcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgZmxleC1ncm93OiAyO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGhlaWdodDogNTJweDtcbiAgbWFyZ2luOiAwO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAwIDE2cHg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb2xvcl9uaHN1ay15ZWxsb3c7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICRjb2xvcl9uaHN1ay1ibGFjaztcbiAgICBwYWRkaW5nOiAwIDE2cHggMCAxM3B4O1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLm5oc3VrLWhlYWRlci0td2hpdGUyIHtcbiAgLm5oc3VrLWhlYWRlcl9fc2VhcmNoLXdyYXAge1xuICAgIGZvcm0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG4gICAgfVxuXG4gICAgLm5oc3VrLXNlYXJjaF9fY2xvc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG5cbiAgICAgIC5uaHN1ay1pY29uX19jbG9zZSB7XG4gICAgICAgIGZpbGw6ICRjb2xvci1uaHN1ay13aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAuYXV0b2NvbXBsZXRlX19pbnB1dCB7XG4gICAgd2lkdGg6IDE4MHB4O1xuICB9XG59XG5cbkBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gIC5hdXRvY29tcGxldGVfX2lucHV0IHtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cbn1cbiIsIi5uaHN1ay1oZWFkZXJfX25hdmlnYXRpb24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAmLmpzLXNob3d7XG4gICAgLm5oc3VrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW46IDAgMTZweDtcblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uaHN1ay1oZWFkZXJfX25hdmlnYXRpb24tbGluayB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcblxuICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLm5oc3VrLWhlYWRlcl9fbmF2aWdhdGlvbi1saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5uaHN1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmLm5oc3VrLXN1Ym5hdiB7XG5cbiAgICAubmhzdWstc3VibmF2X193cmFwcGVyIHtcbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmhzdWstaGVhZGVyX19uYXZpZ2F0aW9uLWxpbmsge1xuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cblxuICAgICAgLm5oc3VrLWljb24ge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbXEoJHVudGlsOiBsYXJnZS1kZXNrdG9wKSB7XG4gIC5uaHN1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm5oc3VrLWhlYWRlcl9fbmF2aWdhdGlvbiB7XG4gICAgLm5oc3VrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG4iLCIubmhzdWstaGVhZGVyX19tZW51IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNDZweDtcblxuICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgbGVmdDogLTY4cHg7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2UtZGVza3RvcCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxuXG5cbiAgLm5oc3VrLWhlYWRlcl9fbWVudS10b2dnbGUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLm5vLXNlYXJjaCAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgXG59XG4iLCIubmhzdWstc3VibmF2IHtcblxuICAubmhzdWstaGVhZGVyX19uYXZpZ2F0aW9uLWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZS1kZXNrdG9wKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgLm5oc3VrLWljb24ge1xuICAgICAgICAgIGZpbGw6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5oc3VrLWljb24ge1xuICAgICAgZmlsbDogJGNvbG9yX25oc3VrLWJsdWU7XG4gICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICByaWdodDogMTZweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApIHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgIHdpZHRoOiAyMnB4O1xuXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2UtZGVza3RvcCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmlsbDogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uaHN1ay1zdWJuYXZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2UtZGVza3RvcCkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IG5oc3VrLXNwYWNpbmcoMSkhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtaW4td2lkdGg6IDE2cmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgfVxuXG4gICAgLm5oc3VrLXN1Ym5hdl9fbGlzdC1pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNTtcbiAgICB9XG5cbiAgICAubmhzdWstc3VibmF2X19saXN0LWxpbmsge1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvclxuICAgICAgfVxuICAgICAgJi5uby1saW5rIHtcbiAgICAgICAgY29sb3I6ICRuaHN1ay10ZXh0LWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZS1kZXNrdG9wKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uaHN1ay1uYXZfX2xpbmsge1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZS1kZXNrdG9wKSB7XG4gICAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDIpIG5oc3VrLXNwYWNpbmcoMyk7XG4gICAgfVxuICB9XG5cbiAgLm5oc3VrLWhlYWRlcl9fYmFjay10ZXh0IHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2UtZGVza3RvcCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgLm5oc3VrLWhlYWRlcl9fbmF2aWdhdGlvbi1saW5rIHtcbiAgICAgIC5uaHN1ay1pY29uIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uaHN1ay1zdWJuYXZfX2xpc3QtbGluayB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG4gICAgfVxuXG4gICAgLm5oc3VrLXN1Ym5hdl9fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIH1cblxuICAgICAgLm5oc3VrLXN1Ym5hdl9fbGlzdC1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5uaHN1ay1oZXJvIHtcbiAgLm5oc3VrLWhlcm9fX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDQ4cHggMCA4OHB4O1xuICB9XG5cbiAgJiAmLS1ib3JkZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4ubmhzdWstaGVyby0taW1hZ2UtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuXG4gIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5OHB4O1xuICB9XG59XG5cbi5uaHN1ay1oZWUtaGVybyB7XG4gIC5uaHN1ay1oZXJvX193cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA0OHB4IDAgODhweDtcbiAgfVxufVxuIiwiLm5oc3VrLWhlZS10YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNGVtICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuXG4gICAgJi5oYXMtY2FwdGlvbiB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG5cbiAgICAgICAgY2FwdGlvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5uaHN1ay1oZWUtdGFibGUtLW11bHRpY29scyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5uaHN1ay1oZWUtdGFibGUtLW11bHRpY29scyBjYXB0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1NDU1O1xufVxuLm5oc3VrLWhlZS10YWJsZS0tbXVsdGljb2xzIC5uaHN1ay10YWJsZV9faGVhZCB7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDFweDtcbn1cbi5uaHN1ay1oZWUtdGFibGUtLW11bHRpY29scyAubmhzdWstdGFibGVfX2JvZHkgLm5oc3VrLXRhYmxlX19yb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4ubmhzdWstaGVlLXRhYmxlLS1tdWx0aWNvbHMgLm5oc3VrLXRhYmxlX19ib2R5IC5uaHN1ay10YWJsZV9fcm93IC5uaHN1ay10YWJsZV9fY2VsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWluLXdpZHRoOiAxcHg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5uaHN1ay1oZWUtdGFibGUtLW11bHRpY29scyAubmhzdWstdGFibGVfX2JvZHkgLm5oc3VrLXRhYmxlX19yb3cgLm5oc3VrLXRhYmxlX19jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNkOGRkZTA7XG59XG4ubmhzdWstaGVlLXRhYmxlLS1tdWx0aWNvbHMgLm5oc3VrLXRhYmxlX19ib2R5IC5uaHN1ay10YWJsZV9fcm93IC5uaHN1ay10YWJsZS1yZXNwb25zaXZlX19oZWFkaW5nIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm5oc3VrLWhlZS10YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAxNnB4O1xufVxuLm5oc3VrLWhlZS10YWJsZSBjYXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDE2cHggMTZweCAwIDE2cHg7XG59XG5cbnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG50YWJsZSBjYXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDE2cHggMTZweCAwIDE2cHg7XG59XG4ubmhzdWstaGVlLXRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0ZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjA1MjVlbSkge1xuICAgIC5uaHN1ay10YWJsZS1yZXNwb25zaXZlIC5uaHN1ay10YWJsZV9fYm9keSAubmhzdWstdGFibGVfX3JvdyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIH1cbiAgICAubmhzdWstdGFibGUtcmVzcG9uc2l2ZSAubmhzdWstdGFibGVfX2JvZHkgLm5oc3VrLXRhYmxlX19yb3cgLm5oc3VrLXRhYmxlX19jZWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1pbi13aWR0aDogMXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gICAgLm5oc3VrLXRhYmxlLXJlc3BvbnNpdmUgLm5oc3VrLXRhYmxlX19ib2R5IC5uaHN1ay10YWJsZV9fcm93IC5uaHN1ay10YWJsZV9fY2VsbDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgI2Q4ZGRlMDtcbiAgICB9XG4gICAgLm5oc3VrLXRhYmxlLXJlc3BvbnNpdmUgLm5oc3VrLXRhYmxlX19ib2R5IC5uaHN1ay10YWJsZV9fcm93IC5uaHN1ay10YWJsZS1yZXNwb25zaXZlX19oZWFkaW5nIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG59XG4ubmhzdWstaGVlLXRhYmxlLS1tdWx0aWNvbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4ubmhzdWstaGVlLXRhYmxlLS1tdWx0aWNvbHMgY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NTQ1NTtcbn1cbi5uaHN1ay1oZWUtdGFibGUtLW11bHRpY29scyAubmhzdWstdGFibGVfX2hlYWQge1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdpZHRoOiAxcHg7XG59XG4ubmhzdWstaGVlLXRhYmxlLS1tdWx0aWNvbHMgLm5oc3VrLXRhYmxlX19ib2R5IC5uaHN1ay10YWJsZV9fcm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuLm5oc3VrLWhlZS10YWJsZS0tbXVsdGljb2xzIC5uaHN1ay10YWJsZV9fYm9keSAubmhzdWstdGFibGVfX3JvdyAubmhzdWstdGFibGVfX2NlbGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLXdpZHRoOiAxcHg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5uaHN1ay1oZWUtdGFibGUtLW11bHRpY29scyAubmhzdWstdGFibGVfX2JvZHkgLm5oc3VrLXRhYmxlX19yb3cgLm5oc3VrLXRhYmxlX19jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNkOGRkZTA7XG59XG4ubmhzdWstaGVlLXRhYmxlLS1tdWx0aWNvbHMgLm5oc3VrLXRhYmxlX19ib2R5IC5uaHN1ay10YWJsZV9fcm93IC5uaHN1ay10YWJsZS1yZXNwb25zaXZlX19oZWFkaW5nIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbn1cblxuLm5oc3VrLWhlZS10YWJsZS0tbXVsdGljb2xzIHtcbiAgICAubmhzdWstdGFibGVfX2NlbGxfX2NvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLm5oc3VrLWRldGFpbHMubmhzdWstZXhwYW5kZXIsIC5uaHN1ay10YWJzIHtcbiAgICB0YWJsZSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgICAgICAgY2FwdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uaHN1ay10YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgIH1cbn1cblxuLm5oc3VrLXRhYmxlLXJlc3BvbnNpdmUgdGhlYWQge1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59IiwiLm5oc3VrLXJlbGF0ZWQtbGlua3MtY2FyZF9fbGlzdCB7XG4gICAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDE2KTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLm5oc3VrLXJlbGF0ZWQtbGlua3MtY2FyZF9fbGlzdCBsaSB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMywgJ2JvdHRvbScpO1xufVxuLm5oc3VrLXJlbGF0ZWQtbGlua3MtY2FyZF9fbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLm5oc3VrLXJlbGF0ZWQtbGlua3MtY2FyZF9fbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4iLCIubmhzdWstY29udGFjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg2KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNyk7XG4gICAgfVxuXG4gICAgaDIsIGgzLCBoNCwgaDUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGg0LCBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgICB9XG5cbiAgICAubmhzdWstY29udGFjdF9faW1nLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgaGVpZ2h0OiA4LjM3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDguMzc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDQpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDguMzc1cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uaHN1ay1jb250YWN0X19pbWcge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA4LjM3NXJlbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogOC4zNzVyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5oc3VrLWNvbnRhY3RfX2Rlc2NyaXB0aW9uLFxuICAgIC5uaHN1ay1jb250YWN0X19oZWFkaW5nLFxuICAgIC5uaHN1ay1jb250YWN0X19tZXRhZGF0YSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMik7XG4gICAgfVxuXG4gICAgLm5oc3VrLWNvbnRhY3RfX3Byb25vdW4ge1xuICAgICAgICBjb2xvcjogJGNvbG9yX25oc3VrLWdyZXktMTtcbiAgICB9XG5cbiAgICAubmhzdWstY29udGFjdF9fc2Vjb25kYXJ5LWluZm8gcCB7XG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICB9XG59XG5cbi5uaHN1ay1jb250YWN0X19jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcblxuICAgIC5uaHN1ay1jb250YWN0X19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogbmhzdWstc3BhY2luZyg0KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uaHN1ay1jb250YWN0X19wcm9ub3VuIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygyKTtcbiAgICB9XG5cbiAgICBwW2FyaWEtbGFiZWw9XCJBZGRyZXNzXCJdIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ3MzY4O1xuICAgIH1cbn1cblxuLm5oc3VrLWNvbnRhY3QtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNik7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMyk7XG4gICAgfVxuXG4gICAgKyAubmhzdWstaGVhZGluZy1sLFxuICAgICsgLm5oc3VrLWhlYWRpbmctbSxcbiAgICArIGgyLFxuICAgICsgaDMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAubmhzdWstY29udGFjdC1ncm91cF9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAubmhzdWstY29udGFjdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgLm5oc3VrLWNvbnRhY3Qge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4ubmhzdWstY29udGFjdC0tZmVhdHVyZSB7XG4gICAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZyg2KTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZyg4KTtcbiAgICB9XG59XG5cbi5uaHN1ay1jb250YWN0X19oZWFkaW5nLS1mZWF0dXJlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfbmhzdWstYmx1ZTtcbiAgICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsZWZ0OiAtMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDIpO1xuICAgIG1hcmdpbi1yaWdodDogbmhzdWstc3BhY2luZyg0KSAqIC0xO1xuICAgIHBhZGRpbmc6IDhweCAyNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC04cHg7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgIGxlZnQ6IC0zM3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zMnB4O1xuICAgICAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDIpIG5oc3VrLXNwYWNpbmcoNSk7XG4gICAgICAgIHRvcDogbmhzdWstc3BhY2luZygzKSAqIC0xO1xuICAgIH1cbn1cblxuLm5oc3VrLWNvbnRhY3RfX2NvbnRlbnQtLWZlYXR1cmUge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uaHN1ay1jb250YWN0X19jYXJkIC5uaHN1ay1jb250YWN0X19zZWNvbmRhcnktaW5mbyA+ICoge1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxNik7XG59XG5cbi5uaHN1ay1jb250YWN0X19zZWNvbmRhcnktaW5mbyA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG4iLCIuaGVlLW1pY3JvaGVybyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyNjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREREO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbn1cbiIsIi5uaHN1ay1pbWFnZS0tY2FyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRuaHN1ay1ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgcGFkZGluZzogbmhzdWstc3BhY2luZyg0KTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcblxuICAubmhzdWstaW1hZ2VfX2ltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC5uaHN1ay1pbWFnZV9fY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgY29sb3I6ICRuaHN1ay10ZXh0LWNvbG9yO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZygzKTtcbiAgfVxufVxuIiwiLmhlZS1tZWRpYSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoNCkgMDtcbiAgbWFyZ2luOiBuaHN1ay1zcGFjaW5nKDYpIDAgODBweDtcblxuICBoMiB7XG4gICAgbWFyZ2luOiAwIG5oc3VrLXNwYWNpbmcoNCkgbmhzdWstc3BhY2luZyg0KTtcbiAgfVxuXG4gIC5oZWUtbWVkaWFfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCBuaHN1ay1zcGFjaW5nKDQpIDU2LjI1JSBuaHN1ay1zcGFjaW5nKDQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGlmcmFtZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYuYW5jaG9yIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGVlLW1lZGlhX19kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZzogMCBuaHN1ay1zcGFjaW5nKDQpIG5oc3VrLXNwYWNpbmcoNCk7XG5cbiAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuaGVlLW1lZGlhX19pbmZvIHtcbiAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDQpIG5oc3VrLXNwYWNpbmcoNCkgMDtcbiAgfVxuXG4gIC5oZWUtbWVkaWFfX3Jldmlld3Mge1xuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgbmhzdWstZm9udCgxNik7XG4gICAgICBjb2xvcjogJG5oc3VrLXNlY29uZGFyeS1idXR0b24tY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1tZWRpYV9fdHJhbnNjcmlwdCB7XG5cbiAgICBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDMpO1xuICAgICAgcGFkZGluZy1sZWZ0OiBuaHN1ay1zcGFjaW5nKDQpO1xuICAgICAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRuaHN1ay1mb2N1cy1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgc3BhbjpiZWZvcmUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgLy9jbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDEwMCUgNTAlLCAwJSAxMDAlKTtcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSA1MCUsIDAgMTAwJSk7XG4gICAgICAgIGJvcmRlci13aWR0aDogOHB4IDAgOHB4IDEycHg7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmhlZS1tZWRpYV9fc2hvdy10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5oZWUtbWVkaWFfX2hpZGUtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5oZWUtbWVkaWFfX3RyYW5zY3JpcHQtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcbiAgICB9XG5cbiAgICAmLmhlZS1tZWRpYV9fdHJhbnNjcmlwdC1leHBhbmRlZCB7XG4gICAgICBhIHtcbiAgICAgICAgc3BhbjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgLy9jbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDUwJSAxMDAlLCAxMDAlIDAlKTtcbiAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA1MCUgMTAwJSwgMTAwJSAwKTtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDEycHggOHB4IDAgOHB4O1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmhlZS1tZWRpYV9fdHJhbnNjcmlwdC10ZXh0LFxuICAgICAgLmhlZS1tZWRpYV9faGlkZS10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAuaGVlLW1lZGlhX19zaG93LXRleHQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmhzdWstZ3JpZC1jb2x1bW4tdHdvLXRoaXJkcyB7XG4gIC5oZWUtbWVkaWEge1xuICAgIGlmcmFtZSB7XG4gICAgICAmLnlvdXR1YmUsXG4gICAgICAmLnZpbWVve1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCl7XG4gICAgICAgICAgbWluLWhlaWdodDogY2FsYygoKDEwMHZ3IC0gNDhweCkgLyAxNiAqIDkpIC0gNzRweCk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDYxLjg3NWVtKXtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA0ODBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBBZGp1c3QgcmVzcG9uc2l2ZSBoZWlnaHQgZm9yIGFuY2hvciBlbWJlZCB3aXRoaW4gcmlnaHQgaGFuZCBzaWRlYmFyIHRlbXBsYXRlLlxuLnBhZ2UtLXJpZ2h0YmFyIC5wYWdlX19jb250ZW50IHtcbiAgLmhlZS1tZWRpYV9fY29udGFpbmVyLmFuY2hvciB7XG4gICAgaWZyYW1lIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkanVzdCByZXNwb25zaXZlIGhlaWdodCBmb3IgYW5jaG9yIGVtYmVkIHdpdGhpbiBmdWxsd2lkdGggdGVtcGxhdGUuXG4ucGFnZS0tZnVsbHdpZHRoIC5wYWdlX19jb250ZW50IHtcbiAgLmhlZS1tZWRpYV9fY29udGFpbmVyLmFuY2hvciB7XG4gICAgaWZyYW1lIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIGhlaWdodDogMTYycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBOSFNVSy1NYXAgLSBuZWVkIHN3YXBwaW5nIHRvIEhFRS1OYXZtYXAgKi9cblxuLm5oc3VrLW1hcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgJ2JvdHRvbScpO1xuXG4gIG1hcmdpbi1sZWZ0OiAwOyBcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDYpIDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuXG4gICYgKyAubmhzdWstbWFwIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigwLCAndG9wJyk7XG4gIH1cbn1cblxuLm5oc3VrLW1hcF9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDUwJTtcbn0gXG5cbi5uaHN1ay1tYXBfX2ltYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuICAubmhzdWstbWFwX19jYXB0aW9uIHtcbiAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDE2KTtcblxuICAubmhzdWstbWFwX19kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDUpO1xuXG4gICAgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcbiAgICB9XG4gIH1cblxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgICBcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgXG4gICAgICAgICYuaG92ZXIsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOnZpc2l0ZWR7XG4gICAgICAgICAgY29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgLm5oc3VrLW1hcCB7XG4gICAgLm5oc3VrLW1hcF9faW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5uaHN1ay1tYXBfX2NhcHRpb24ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogbmhzdWstc3BhY2luZyg0KTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLmhlZS1yZXNvdXJjZXNfX2xpbmsge1xuXG4gICAgLmhlZS1yZXNvdXJjZXNfX3RhZyxcbiAgICAuaGVlLXJlc291cmNlc19fZG9jU2l6ZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAuaGVlLXJlc291cmNlc19fdGFnIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgbWluLXdpZHRoOiBuaHN1ay1zcGFjaW5nKDYpO1xuICAgICAgICBtYXJnaW46IDAgbmhzdWstc3BhY2luZygyKTtcbiAgICAgICAgcGFkZGluZzogMnB4IG5oc3VrLXNwYWNpbmcoMik7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICB9XG5cbiAgICAuaGVlLXJlc291cmNlc19fcGRmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXJlZDtcbiAgICB9XG4gICAgLmhlZS1yZXNvdXJjZXNfX2RvYyxcbiAgICAuaGVlLXJlc291cmNlc19fZG9jeCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYjU3OWE7XG4gICAgfVxuICAgIC5oZWUtcmVzb3VyY2VzX194bHMsXG4gICAgLmhlZS1yZXNvdXJjZXNfX3hsc3gsXG4gICAgLmhlZS1yZXNvdXJjZXNfX2NzdiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxRDZGNDI7XG4gICAgfVxuICAgIC5oZWUtcmVzb3VyY2VzX190eHQsXG4gICAgLmhlZS1yZXNvdXJjZXNfX21yYyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4gICAgfVxuICAgIC5oZWUtcmVzb3VyY2VzX19vZHQsXG4gICAgLmhlZS1yZXNvdXJjZXNfX290dCxcbiAgICAuaGVlLXJlc291cmNlc19fZm9kdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0NTY2OTc7XG4gICAgfVxuICAgIC5oZWUtcmVzb3VyY2VzX19vZHMsXG4gICAgLmhlZS1yZXNvdXJjZXNfX290cyxcbiAgICAuaGVlLXJlc291cmNlc19fZm9kcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ncmVlbjtcbiAgICB9XG4gICAgLmhlZS1yZXNvdXJjZXNfX29kZixcbiAgICAuaGVlLXJlc291cmNlc19fZm9kZiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMDZmNWE7XG4gICAgfVxuICAgIC5oZWUtcmVzb3VyY2VzX19vZHAsXG4gICAgLmhlZS1yZXNvdXJjZXNfX290cCxcbiAgICAuaGVlLXJlc291cmNlc19fZm9kcCxcbiAgICAuaGVlLXJlc291cmNlc19fcHB0LFxuICAgIC5oZWUtcmVzb3VyY2VzX19wcHR4IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXJlZDtcbiAgICB9XG4gICAgLmhlZS1yZXNvdXJjZXNfX290aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3MzczNzM7XG4gICAgfVxuICAgIC5oZWUtcmVzb3VyY2VzX19vZGcsXG4gICAgLmhlZS1yZXNvdXJjZXNfX2ZvZGcsXG4gICAgLmhlZS1yZXNvdXJjZXNfX290ZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTI2NWI7O1xuICAgIH1cbiAgICAuaGVlLXJlc291cmNlc19fb2RiLFxuICAgIC5oZWUtcmVzb3VyY2VzX19mb2RiIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1MjY1YjtcbiAgICB9XG4gICAgLmhlZS1yZXNvdXJjZXNfX29kbSxcbiAgICAuaGVlLXJlc291cmNlc19fZm9kbSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDRjODQ7XG4gICAgfVxuXG5cbiAgICAuaGVlLXJlc291cmNlc19fZG9jU2l6ZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4gICAgfVxuXG59XG5cbi5oZWUtcmVzb3VyY2VzX19saXN0IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4vLyBDYXJkIGFkanVzdG1lbnRzXG4uaGVlLWNhcmQtLWRldGFpbHMge1xuICAgIC5oZWUtcmVzb3VyY2VzX193cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1wYWRkaW5nKDIsICdyaWdodCcpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgID4gLmhlZS1yZXNvdXJjZXNfX3RleHQge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1yZXNvdXJjZXNfX2xpbmsge1xuICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgJi5oZWUtcmVzb3VyY2VzX190ZXh0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBuaHN1ay1zcGFjaW5nKDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmhlZS1yZXNvdXJjZXNfX3RhZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCA2cHggMCA2cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmhlZS1hcHBsaWVzdG8ge1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgbWFyZ2luOiA0OHB4IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNWViODtcbn1cblxuLmhlZS1hcHBsaWVzdG8gcCB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5oZWUtYXBwbGllc3RvIGEge1xuICAgIGNvbG9yOiAjRkZGO1xufVxuXG4uaGVlLWFwcGxpZXN0byBzcGFuIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cbiIsIi8vIFN0aWNreSBUT0MuXG4uaGVlLWFuY2hvcmxpbmtzX19zdGlja3kge1xuICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcoNCk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogOTFweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBtaW4taGVpZ2h0OiA5MXB4O1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgIG1pbi1oZWlnaHQ6IDEwN3B4O1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmhlZS1hbmNob3JsaW5rc19fc3RpY2t5X193cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICAgIH1cblxuICAgIC5oZWUtYW5jaG9ybGlua3Mge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJi5pcy1zdGlja3kge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICAgICAgICBib3R0b206IDMxcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWUtYW5jaG9ybGlua3NfX3N0aWNreV9fYnRuIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ibGFjaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gICAgZm9udC13ZWlnaHQ6ICRuaHN1ay1mb250LWJvbGQ7XG4gICAgcGFkZGluZzogMTZweCAxNHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ibGFjaztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIGNsYXNzPSduaHN1ay1pY29uIG5oc3VrLWljb25fX2NoZXZyb24tcmlnaHQnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI0IDI0JyBhcmlhLWhpZGRlbj0ndHJ1ZSclM0UlM0NwYXRoIGQ9J00xNS41IDEyYTEgMSAwIDAgMS0uMjkuNzFsLTUgNWExIDEgMCAwIDEtMS40Mi0xLjQybDQuMy00LjI5LTQuMy00LjI5YTEgMSAwIDAgMSAxLjQyLTEuNDJsNSA1YTEgMSAwIDAgMSAuMjkuNzF6JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMXB4IGNlbnRlcjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWUtYW5jaG9ybGlua3NfX3N0aWNreV9fdG9wLWxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTIgOC41QzEyLjMgOC41IDEyLjUgOC42IDEyLjcgOC44TDE3LjcgMTMuOEMxOC4xIDE0LjIgMTguMSAxNC44IDE3LjcgMTUuMkMxNy4zIDE1LjYgMTYuNyAxNS42IDE2LjMgMTUuMkwxMiAxMC45TDcuNyAxNS4yQzcuMyAxNS42IDYuNyAxNS42IDYuMyAxNS4yQzUuOSAxNC44IDUuOSAxNC4yIDYuMyAxMy44TDExLjMgOC44QzExLjUgOC42IDExLjcgOC41IDEyIDguNVonIGZpbGw9J2JsYWNrJy8lM0UlM0NyZWN0IHg9JzYnIHk9JzUnIHdpZHRoPScxMicgaGVpZ2h0PScyJyByeD0nMScgZmlsbD0nYmxhY2snLyUzRSUzQ3JlY3QgeD0nMTEnIHk9JzE5JyB3aWR0aD0nMTAnIGhlaWdodD0nMicgcng9JzEnIHRyYW5zZm9ybT0ncm90YXRlKC05MCAxMSAxOSknIGZpbGw9J2JsYWNrJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICAgIGhlaWdodDogNThweDtcbiAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gICAgd2lkdGg6IDU5cHg7XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ibHVlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBAaW5jbHVkZSBuaHN1ay1mb250KDE5KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIuaGVlLWFuY2hvcmxpbmtzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgcGFkZGluZzogbmhzdWstc3BhY2luZyg0KTtcbiAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDQpO1xuICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDIyKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigzLCAnYm90dG9tJyk7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDE5KTtcbiAgICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMCwgJ2JvdHRvbScpO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMTYpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMiwgJ2JvdHRvbScpO1xuXG4gICAgICAgICAgICAmLmhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVlLWFuY2hvcmxpbmtzX193cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigyLCAnYm90dG9tJyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBtYXAtZ2V0KCRuaHN1ay1zcGFjaW5nLXBvaW50cywgMik7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogbWFwLWdldCgkbmhzdWstc3BhY2luZy1wb2ludHMsIDEpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IG1hcC1nZXQoJG5oc3VrLXNwYWNpbmctcG9pbnRzLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRjb2xvcl9uaHN1ay1ibGFjaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmNoZXZyb24ge1xuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMiwgJ3RvcCcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNSwgJ2xlZnQnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5oZWUtcGhhc2ViYW5uZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5oc3VrLWJvcmRlci1jb2xvcjtcbiAgcGFkZGluZy10b3A6IG5oc3VrLXNwYWNpbmcoMik7XG4gIHBhZGRpbmctYm90dG9tOiBuaHN1ay1zcGFjaW5nKDIpO1xuXG4gIC5oZWUtcGhhc2ViYW5uZXJfX3dyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5oZWUtcGhhc2ViYW5uZXJfX3RhZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfbmhzdWstYmx1ZTtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IG5oc3VrLXNwYWNpbmcoMyk7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogZGVza3RvcCkge1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWUtcGhhc2ViYW5uZXJfX2NvbnRlbnQge1xuICAgICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIG5oc3VrLWZvbnQoMTYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMik7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5oZWUtcGhhc2ViYW5uZXItLW5vdGFnIHtcbiAgLmhlZS1waGFzZWJhbm5lcl9fdGFnIHtcbiAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLm5oc3VrLXRhYnMge1xuICAgIG1hcmdpbjogMCAwIG5oc3VrLXNwYWNpbmcoNyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5uaHN1ay10YWJzX190aXRsZSB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgJ2JvdHRvbScpO1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgzMik7XG4gICAgZm9udC13ZWlnaHQ6ICRuaHN1ay1mb250LWJvbGQ7XG4gIH1cblxuICAubmhzdWstdGFic19fbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJHVudGlsOiBkZXNrdG9wKSB7XG4gICAgLm5oc3VrLXRhYnNfX2Rlc2t0b3Age1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmhzdWstdGFic19fbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAubmhzdWstdGFic19fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uaHN1ay10YWJzX19saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAvL2hlaWdodDoxMDAlO1xuXG4gICAgICAgIC5uaHN1ay10YWJzX19saXN0LWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5oc3VrLWxpbmstY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIGNsYXNzPSduaHN1ay1pY29uIG5oc3VrLWljb25fX3BsdXMnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI0IDI0JyB3aWR0aD0nMzInIGFyaWEtaGlkZGVuPSd0cnVlJyUzRSUzQ2NpcmNsZSBjeD0nMTInIGN5PScxMicgcj0nMTAnIGZpbGw9J25vbmUnJTNFJTNDL2NpcmNsZSUzRSUzQ3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J00xMiA4djhNOCAxMmg4JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IG5oc3VrLXNwYWNpbmcoMSkgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKG5oc3VrLXNwYWNpbmcoMSkgKiAtMSkgMCAjMDA0YjkzO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDMpIG5oc3VrLXNwYWNpbmcoNSkgbmhzdWstc3BhY2luZygzKSBuaHN1ay1zcGFjaW5nKDMpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbmhzdWstZm9jdXMtY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyBjbGFzcz0nbmhzdWstaWNvbiBuaHN1ay1pY29uX19wbHVzJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgd2lkdGg9JzMyJyBhcmlhLWhpZGRlbj0ndHJ1ZSclM0UlM0NjaXJjbGUgY3g9JzEyJyBjeT0nMTInIHI9JzEwJyBmaWxsPSdub25lJyUzRSUzQy9jaXJjbGUlM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDAwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMTIgOHY4TTggMTJoOCclM0UlM0MvcGF0aCUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgbmhzdWstc3BhY2luZygxKSBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIChuaHN1ay1zcGFjaW5nKDEpICogLTEpIDAgIzIxMmIzMjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5oc3VrLWZvY3VzLXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyBjbGFzcz0nbmhzdWstaWNvbiBuaHN1ay1pY29uX19wbHVzJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgd2lkdGg9JzMyJyBhcmlhLWhpZGRlbj0ndHJ1ZSclM0UlM0NjaXJjbGUgY3g9JzEyJyBjeT0nMTInIHI9JzEwJyBmaWxsPSdub25lJyUzRSUzQy9jaXJjbGUlM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDAwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMTIgOHY4TTggMTJoOCclM0UlM0MvcGF0aCUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmhzdWstdGFic19fbGlzdC1pdGVtLm5oc3VrLXRhYnNfX2xpc3QtaXRlbS0tc2VsZWN0ZWQge1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiAkbmhzdWstZm9jdXMtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyBjbGFzcz0nbmhzdWstaWNvbiBuaHN1ay1pY29uX19taW51cycgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjQgMjQnIHdpZHRoPSczMicgYXJpYS1oaWRkZW49J3RydWUnJTNFJTNDY2lyY2xlIGN4PScxMicgY3k9JzEyJyByPScxMCcgZmlsbD0nbm9uZSclM0UlM0MvY2lyY2xlJTNFJTNDcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTggMTJoOCclM0UlM0MvcGF0aCUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBuaHN1ay1zcGFjaW5nKDEpIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIGN1cnNvcjogdW5zZXQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uaHN1ay10YWJzX19wYW5lbCB7XG4gICAgICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDAsIFwiYm90dG9tXCIpO1xuICAgICAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDYpIG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogbmhzdWstc3BhY2luZygzKTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uanMtZW5hYmxlZCB7XG4gIC5uaHN1ay10YWJzX190aXRsZSB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLm5oc3VrLXRhYnNfX2xpc3Qge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubmhzdWstdGFic19fcGFuZWwge1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cblxuICAgICY+Omxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmhzdWstdGFic19fcGFuZWw+Omxhc3QtY2hpbGQge1xuXG4gIH1cbn1cblxuIiwiLmhlZS1jYXJkLS1wcm9ncmFtbWUtaW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkOGRkZTA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmhlZS1jYXJkLS1wcm9ncmFtbWUtaW5mb19faGVhZGluZyB7XG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDMsICdib3R0b20nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVlLWNhcmQtLXByb2dyYW1tZS1pbmZvX19saXN0IHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMywgJ2JvdHRvbScpO1xuICAgICAgfVxuXG4gICAgICBsaTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVlLWNhcmQtLXByb2dyYW1tZS1pbmZvX19saW5rIHtcbiAgICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxNik7XG5cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkanVzdG1lbnRzIGZvciBpdGVtIGJvcmRlciB2YXJpYW50LlxuICAgICYudGhlbWVfX2l0ZW0tYm9yZGVyIHtcbiAgICAgIC5oZWUtY2FyZC0tcHJvZ3JhbW1lLWluZm9fX2xpc3Qge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygyKTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogbmhzdWstc3BhY2luZygxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbn1cbiIsIi5oZWUtY2FyZC0tZGVwYXJ0bWVudCB7XG5cbiAgICAuaGVlLWNhcmQtLWRlcGFydG1lbnRfX2hlYWRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbmhzdWstYm9yZGVyLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogbmhzdWstc3BhY2luZygyKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygzKTtcbiAgICB9XG5cbiAgICAuaGVlLWNhcmRfX3RpdGxlIHt9XG4gICAgLmhlZS1jYXJkX19uYW1lIHt9XG4gICAgLmhlZS1jYXJkX19pbml0aWFscyB7fVxuICAgIC5oZWUtY2FyZF9fcHJvbm91bnMge31cbiAgICAuaGVlLWNhcmRfX2pvYnRpdGxlIHt9XG4gICAgLmhlZS1jYXJkX19kZXBhcnRtZW50IHt9XG4gICAgLmhlZS1jYXJkX19vcmdhbmlzYXRpb24ge31cbiAgICAuaGVlLWNhcmRfX2FkZHJlc3Mge31cbiAgICAuaGVlLWNhcmRfX2ltYWdlIHt9XG4gICAgLmhlZS1jYXJkX19lbWFpbCB7fVxuICAgIC5oZWUtY2FyZF9fdGVsZXBob25lIHt9XG4gICAgLmhlZS1jYXJkX193ZWJzaXRlIHt9XG4gICAgLmhlZS1jYXJkX190d2l0dGVyIHt9XG4gICAgLmhlZS1jYXJkX19saW5rZWRpbiB7fVxuXG59IiwiLmhlZS1jYXJkLmhlZS1jYXJkLS1wZXJzb24ge1xuICAgIC5oZWUtY2FyZC0taGVhZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlZS1jYXJkX19pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWUtY2FyZF9fam9idGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cbiIsIi5oZWUtYmFubmVyIHtcblx0QGluY2x1ZGUgcHJpbnQtaGlkZSgpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfbmhzdWsteWVsbG93O1xuXHRwYWRkaW5nLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcblx0cGFkZGluZy10b3A6IG5oc3VrLXNwYWNpbmcoNCk7XG5cblx0LmhlZS1iYW5uZXJfX21lc3NhZ2Uge1xuXHRcdEBpbmNsdWRlIHRvcC1hbmQtYm90dG9tO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdGgxIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDI0cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNTZweDtcblx0XHR9XG5cblx0XHRoMiB7XG5cdFx0XHRAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMzIpO1xuXHRcdFx0QGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMywgJ2JvdHRvbScpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDQwcHg7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aDMge1xuXHRcdFx0QGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDI0KTtcblx0XHRcdEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDMsICdib3R0b20nKTtcblx0XHRcdEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktd2VpZ2h0LW5vcm1hbCgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDMycHg7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcblx0XHRwIHtcblx0XHRcdEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDIsICd0b3AnKTtcblx0XHRcdEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxOSk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxNnB4O1xuXHRcdFx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0QGluY2x1ZGUgbmhzdWstbGluay1zdHlsZS1pbnZlcnRlZDtcblx0XHR9XG5cdH1cblxuXHQmLmhlZS1iYW5uZXItLWFubm91bmNlbWVudCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWRhcmstcGluaztcblx0fVxuXG5cdCYuaGVlLWJhbm5lci0tbW91cm5pbmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG5cdH1cblxuXHQmLmhlZS1iYW5uZXItLWFubm91bmNlbWVudCwgJi5oZWUtYmFubmVyLS1tb3VybmluZyB7XG5cdFx0Y29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcblxuXHRcdGEge1xuXHRcdFx0QGluY2x1ZGUgbmhzdWstbGluay1zdHlsZS1pbnZlcnRlZDtcblx0XHRcdEBpbmNsdWRlIG5oc3VrLWxpbmstc3R5bGUtd2hpdGU7XG5cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkbmhzdWstZm9jdXMtY29sb3I7XG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAwICRuaHN1ay1mb2N1cy13aWR0aCAkbmhzdWstZm9jdXMtY29sb3IsIDAgJG5oc3VrLWZvY3VzLXdpZHRoIDAgJG5oc3VrLWZvY3VzLXdpZHRoICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRPT0xTIC8gI01JWElOU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENsZWFyZml4IG1peGluXG4vL1xuLy8gVXNhZ2U6IEBpbmNsdWRlIGNsZWFyZml4KCk7XG4vLyBTZWUgdXRpbGl0aWVzL2NsZWFyZml4XG4vL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy9cbi8vIFJlYWRpbmcgd2lkdGggbWl4aW4sIGFkZCBhIG1heGltdW0gd2lkdGhcbi8vIHRvIGxhcmdlIHBpZWNlcyBvZiBjb250ZW50XG4vL1xuLy8gVXNhZ2U6IEBpbmNsdWRlIHJlYWRpbmctd2lkdGgoKTtcbi8vIFNlZSB1dGlsaXRpZXMvcmVhZGluZy13aWR0aFxuLy9cblxuQG1peGluIHJlYWRpbmctd2lkdGgoKSB7XG4gIG1heC13aWR0aDogNDRlbTtcbn1cblxuLy9cbi8vIFZpc3VhbGx5IGhpZGRlbiBtaXhpbiwgdXNlZCBmb3IgaGlkaW5nXG4vLyBjb250ZW50IHZpc3VhbGx5IGJ1dCBrZWVwaW5nIGl0IGluIHRoZSBET01cbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG4vLyBTZWUgdXRpbGl0aWVzL3Zpc3VhbGx5LWhpZGRlblxuLy9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8vXG4vLyBWaXN1YWxseSBzaG93biBtaXhpbiwgdXNlZCBmb3IgZGlzcGxheWluZ1xuLy8gY29udGVudCB2aXN1YWxseSB0aGF0IGhhcyBwcmV2aW91c2x5IGJlZW4gaGlkZGVuXG4vLyBieSB2aXN1YWxseS1oaWRkZW5cbi8vIERpZmZlcmVuY2VzIGJldHdlZW4gbW9iaWxlIGFuZCBkZXNrdG9wIHZpZXdzXG4vLyBVc2UgJGRpc3BsYXktcHJvcGVydHkgdG8gYXNzaWduIGRpc3BsYXlcbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgdmlzdWFsbHktc2hvd24odGFibGUtaGVhZGVyLWdyb3VwKTtcbi8vXG5cbkBtaXhpbiB2aXN1YWxseS1zaG93bigkZGlzcGxheS1wcm9wZXJ0eSkge1xuICBjbGlwOiBhdXRvO1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5pdGlhbDtcbiAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICBkaXNwbGF5OiAkZGlzcGxheS1wcm9wZXJ0eTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbn1cblxuLy9cbi8vIFRvcCBhbmQgYm90dG9tIG1hcmdpbiBtaXhpbiwgcmVtb3ZlXG4vLyB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luIHNwYWNpbmdcbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgdG9wLWFuZC1ib3R0b20oKTtcbi8vIFNlZSB1dGlsaXRpZXMvdG9wLWFuZC1ib3R0b21cbi8vXG5cbkBtaXhpbiB0b3AtYW5kLWJvdHRvbSgpIHtcbiAgJiA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgJiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vL1xuLy8gUGFuZWwgbWl4aW5cbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgcGFuZWwtd2l0aC1sYWJlbCgkY29sb3JfbmhzdWstYmx1ZSwgJGNvbG9yX25oc3VrLXdoaXRlKTtcbi8vIFNlZSBjb21wb25lbnRzL19wYW5lbFxuLy9cblxuQG1peGluIHBhbmVsKCRwYW5lbC1iYWNrZ3JvdW5kLWNvbG9yLCAkcGFuZWwtdGV4dC1jb2xvcikge1xuICBAaW5jbHVkZSB0b3AtYW5kLWJvdHRvbSgpO1xuICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbig3LCBcImJvdHRvbVwiKTtcbiAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNywgXCJ0b3BcIik7XG4gIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtcGFkZGluZyg1KTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFuZWwtYmFja2dyb3VuZC1jb2xvcjtcbiAgY29sb3I6ICRwYW5lbC10ZXh0LWNvbG9yO1xuXG4gIEBpbmNsdWRlIG1xKCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuaHN1ay1wcmludC10ZXh0LWNvbG9yO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxufVxuXG4vL1xuLy8gUGFuZWwgd2l0aCBsYWJlbCBtaXhpbiwgaW5oZXJpdHMgcGFuZWwgc3R5bGluZ1xuLy8gYW5kIHJlbW92ZXMgcGFkZGluZyB0b3AgZm9yIHRoZSBsYWJlbCBwb3NpdGlvbmluZy5cbi8vXG4vLyBVc2VkIGluLWNvbmp1bmN0aW9uIHdpdGggQG1peGluIGhlYWRpbmctbGFiZWxcbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgcGFuZWwtd2l0aC1sYWJlbCgkY29sb3JfbmhzdWstYmx1ZSwgJGNvbG9yX25oc3VrLXdoaXRlKTtcbi8vIFNlZSBjb21wb25lbnRzL193YXJuaW5nLWNvbXBvbmVudFxuLy9cblxuQG1peGluIHBhbmVsLXdpdGgtbGFiZWwoJHBhbmVsLWJhY2tncm91bmQtY29sb3IsICRwYW5lbC10ZXh0LWNvbG9yLCAkcGFuZWwtYm9yZGVyLWNvbG9yKSB7XG4gIEBpbmNsdWRlIHBhbmVsKCRwYW5lbC1iYWNrZ3JvdW5kLWNvbG9yLCAkcGFuZWwtdGV4dC1jb2xvcik7XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJHBhbmVsLWJvcmRlci1jb2xvcjtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbn1cblxuLy9cbi8vIEhlYWRpbmcgbGFiZWwgbWl4aW4sIGFkZHMgYSB0YWIgaGVhZGluZyB0b1xuLy8gd2FybmluZyBjYWxsb3V0LCBkbyBhbmQgZG9uJ3QgbGlzdHMgYW5kIHBhbmVsLlxuLy9cbi8vIFVzZWQgaW4tY29uanVuY3Rpb24gd2l0aCBAbWl4aW4gcGFuZWwtd2l0aC1sYWJlbFxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBoZWFkaW5nLWxhYmVsKCRjb2xvcl9uaHN1ay1ibHVlLCAkY29sb3JfbmhzdWstd2hpdGUpO1xuLy8gU2VlIGNvbXBvbmVudHMvX3dhcm5pbmctY29tcG9uZW50XG4vL1xuLy8gMS4gQmFja2dyb3VuZCBjb2xvdXIgdG8gYmUgc2V0IG9uIHRoZSBAaW5jbHVkZS5cbi8vIDIuIFRleHQgY29sb3VyIHRvIGJlIHNldCBvbiB0aGUgQGluY2x1ZGUuXG4vLyAzLiBEaXNwbGF5IGlubGluZS1ibG9jayBzbyBpdCBkb2VzIG5vdCB0YWtlIHVwIHRoZSBmdWxsIHdpZHRoLlxuLy8gNC4gTWFyZ2luIC0yNHB4IGxlZnQgYW5kIHJpZ2h0IGFsaWducyB0aGUgaGVhZGluZyB0byB0aGUgYm94LlxuLy8gNS4gVG9wIHBvc2l0aW9uaW5nIHNldCB0byBtaW51cyB0byBtYWtlIHRoZSBoZWFkaW5nXG4vLyAgICBzaXQganVzdCBvdXRzaWRlIHRoZSBib3guXG4vL1xuXG5AbWl4aW4gaGVhZGluZy1sYWJlbCgkaGVhZGluZy1iYWNrZ3JvdW5kLWNvbG9yLCAkaGVhZGluZy10ZXh0LWNvbG9yKSB7XG4gIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgyNCk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmFja2dyb3VuZC1jb2xvcjsgLy8gWzFdIC8vXG4gIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yOyAvLyBbMl0gLy9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBbM10gLy9cbiAgbWFyZ2luOiBuaHN1ay1zcGFjaW5nKDApIG5oc3VrLXNwYWNpbmcoMCkgbmhzdWstc3BhY2luZygyKSAtMzNweDtcbiAgcGFkZGluZzogbmhzdWstc3BhY2luZygyKSBuaHN1ay1zcGFjaW5nKDUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTE2cHg7IC8vIFs1XSAvL1xuXG4gIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDIpIG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgdG9wOiAtOHB4OyAvLyBbNV0gLy9cbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ibGFjaztcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuLy9cbi8vIENhcmUgY2FyZCBtaXhpbiwgdXNlZCBmb3IgY3JlYXRpbmdcbi8vIGRpZmZlcmVudCBjb2xvdXJlZCBjYXJlIGNhcmRzLlxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBjYXJlLWNhcmQoJGNvbG9yX25oc3VrLWJsdWUsICRjb2xvcl9uaHN1ay13aGl0ZSwgNHB4KTtcbi8vIFNlZSBjb21wb25lbnRzL2NhcmQvY2FyZFxuLy9cblxuQG1peGluIGNhcmUtY2FyZCgkaGVhZGluZy1iYWNrZ3JvdW5kLWNvbG9yLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkcHJpbnQtYm9yZGVyLXNpemUpIHtcbiAgLm5oc3VrLWNhcmQtLWNhcmVfX2hlYWRpbmctY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgYm9yZGVyOiAkcHJpbnQtYm9yZGVyLXNpemUgc29saWQgJG5oc3VrLXByaW50LXRleHQtY29sb3I7XG4gICAgY29sb3I6ICRuaHN1ay1wcmludC10ZXh0LWNvbG9yO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxufVxuXG4vL1xuLy8gUHJpbnQgY29sb3VyIG1peGluLCBzZXRzIHRoZSB0ZXh0IHByaW50IGNvbG91clxuLy8gd2FybmluZyBjYWxsb3V0LCBkbyBhbmQgZG9uJ3QgbGlzdHMgYW5kIHBhbmVscy5cbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgcHJpbnQtY29sb3IoJG5oc3VrLXByaW50LXRleHQtY29sb3IpO1xuLy8gU2VlIGNvbXBvbmVudHMvX2NhcmUtY2FyZFxuLy9cblxuQG1peGluIHByaW50LWNvbG9yKCRwcmludC1jb2xvcikge1xuICBAaW5jbHVkZSBtcSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICBjb2xvcjogJHByaW50LWNvbG9yO1xuICAgIGZpbGw6ICRwcmludC1jb2xvcjtcblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMsXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAkbmhzdWstcHJpbnQtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFByaW50IGhpZGUgbWl4aW4sIGhpZGVzIHRoZSBlbGVtZW50IGZyb20gcHJpbnQuXG4vL1xuLy8gVXNhZ2U6IEBpbmNsdWRlIHByaW50LWhpZGUoKTtcbi8vIFNlZSBjb21wb25lbnRzL19jYXJlLWNhcmRcbi8vXG5cbkBtaXhpbiBwcmludC1oaWRlKCkge1xuICBAaW5jbHVkZSBtcSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vXG4vLyBGbGV4IG1peGluXG4vLyBVc2FnZTogQGluY2x1ZGUgZmxleCgpO1xuLy9cblxuQG1peGluIGZsZXgoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLy9cbi8vIEZsZXggaXRlbSBtaXhpblxuLy8gVXNhZ2U6IEBpbmNsdWRlIGZsZXgtaXRlbSgpO1xuLy9cblxuQG1peGluIGZsZXgtaXRlbSgpIHtcbiAgZGlzcGxheTogZmxleDtcblxuICBAaW5jbHVkZSBtcSgkdW50aWw6IGRlc2t0b3ApIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxufVxuXG4vL1xuLy8gVG9nZ2xlIGJ1dHRvbiBtaXhpblxuLy8gdXNlZCB0byB0b2dnbGUgY29udGVudFxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSB0b2dnbGUtYnV0dG9uKCk7XG4vLyBTZWUgY29tcG9uZW50cy9oZWFkZXJcbi8vXG4vLyAxLiBSZW1vdmUgaW5uZXIgYm9yZGVyIG9uIGJ1dHRvbnMgZm9yIEZpcmVmb3gsIHNlZVxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMzkzXG4vLyAyLiAhaW1wb3J0YW50IG92ZXJyaWRlcyBmb2N1cyBzdHlsZSBib3JkZXI6IDA7XG4vL1xuXG5AbWl4aW4gdG9nZ2xlLWJ1dHRvbigpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogJG5oc3VrLWJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7IC8vIFsxXSAvL1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3NoYWRlX25oc3VrLWJsdWUtMzU7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JfbmhzdWstZ3JleS01O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmhzdWstZm9jdXMtY29sb3IgIWltcG9ydGFudDsgLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi8gLyogWzJdICovXG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9zaGFkZV9uaHN1ay1ibHVlLTUwO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX25oc3VrLWdyZXktNTtcbiAgICBjb2xvcjogJGNvbG9yX25oc3VrLWdyZXktNTtcbiAgfVxufVxuXG4vL1xuLy8gQ2xvc2UgYnV0dG9uIG1peGluXG4vLyB1c2VkIHRvIGNsb3NlIGEgY29udGVudCBhcmVhXG4vL1xuLy8gVXNhZ2U6IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbigpO1xuLy8gU2VlIGNvbXBvbmVudHMvaGVhZGVyXG4vL1xuLy8gMS4gQ3VzdG9tIGhlaWdodCBhbmQgd2lkdGggb2YgZm9ybSBpdGVtc1xuLy8gMi4gQ3VzdG9tIGhlaWdodCBhbmQgd2lkdGggb2Ygc3ZnIGljb25zXG4vLyAzLiBSZW1vdmUgaW5uZXIgYm9yZGVyIG9uIGJ1dHRvbnMgZm9yIEZpcmVmb3gsIHNlZVxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMzkzXG4vL1xuXG5AbWl4aW4gY2xvc2UtYnV0dG9uKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogNDBweDsgLy8gWzFdIC8vXG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA0MHB4OyAvLyBbMV0gLy9cblxuICAubmhzdWstaWNvbl9fY2xvc2Uge1xuICAgIGZpbGw6ICRjb2xvcl9uaHN1ay1ibHVlO1xuICAgIGhlaWdodDogNDBweDsgLy8gWzJdIC8vXG4gICAgd2lkdGg6IDQwcHg7IC8vIFsyXSAvL1xuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwOyAvLyBbM10gLy9cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIC5uaHN1ay1pY29uX19jbG9zZSB7XG4gICAgICBmaWxsOiAkbmhzdWstc2Vjb25kYXJ5LWJ1dHRvbi1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1mb2N1c2VkLXRleHQ7XG4gIH1cbn1cblxuLy9cbi8vIFJlbW92ZSBtYXJnaW4gbW9iaWxlIG1peGluLCByZW1vdmVzIGxlZnQgYW5kIHJpZ2h0XG4vLyBtYXJnaW4gYXQgdGFibGV0IGJyZWFrcG9pbnQuXG4vL1xuXG5AbWl4aW4gcmVtb3ZlLW1hcmdpbi1tb2JpbGUoKSB7XG4gIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kbmhzdWstZ3V0dGVyLWhhbGY7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5oc3VrLWd1dHRlci1oYWxmO1xuICB9XG59XG5cbi8vLyBOSFMgbG9nbyBzaXplIGhlbHBlclxuLy8vXG4vLy8gU2F2ZXMgZHVwbGljYXRpbmcgdGhlIGNvZGUgZm9yIHdoZW4gdXNpbmcgdGhlIGxvZ28gYXMgYSBsaW5rLlxuLy8vIFVzZWQgaW4gdGhlIGhlYWRlciBhbmQgZm9vdGVyLlxuXG5AbWl4aW4gbmhzdWstbG9nby1zaXplIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogMTAwcHg7XG59XG5cbkBtaXhpbiBuaHN1ay1sb2dvLXNpemUtc21hbGwge1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiA4MHB4O1xufVxuIiwiLy8gSW52ZXJ0IGxpbmsgc3R5bGVcbkBtaXhpbiBuaHN1ay1saW5rLXN0eWxlLWludmVydGVkIHtcblx0Y29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuXG5cdCY6Zm9jdXMge1xuXHQgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9zaGFkZV9uaHN1ay1ibHVlLTM1O1xuXHQgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAkY29sb3Jfc2hhZGVfbmhzdWstYmx1ZS0zNTtcblx0ICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuXHQgIG91dGxpbmU6ICRuaHN1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0ICBvdXRsaW5lLW9mZnNldDogJG5oc3VrLWZvY3VzLXdpZHRoO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdCAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG5cdCAgYm94LXNoYWRvdzogMCAwIDAgNHB4ICRjb2xvcl9uaHN1ay1ibHVlO1xuXHQgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG5cdH1cblxuXHQmOmFjdGl2ZSB7XG5cdCAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3NoYWRlX25oc3VrLWJsdWUtNTA7XG5cdCAgYm94LXNoYWRvdzogMCAwIDAgNHB4ICRjb2xvcl9zaGFkZV9uaHN1ay1ibHVlLTM1O1xuXHQgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG5cdH1cbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVE9PTFMgLyAjTElOS1Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBEZWZhdWx0IGxpbmsgc3R5bGluZ1xuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBuaHN1ay1saW5rLXN0eWxlLWRlZmF1bHQ7XG4vL1xuXG5AbWl4aW4gbmhzdWstbGluay1zdHlsZS1kZWZhdWx0IHtcbiAgY29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRuaHN1ay1saW5rLXZpc2l0ZWQtY29sb3I7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJG5oc3VrLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgbmhzdWstZm9jdXNlZC10ZXh0KCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuICAgIH1cblxuICAgIC5uaHN1ay1pY29uIHtcbiAgICAgIGZpbGw6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJG5oc3VrLWxpbmstYWN0aXZlLWNvbG9yO1xuICB9XG59XG5cbi8vXG4vLyBXaGl0ZSBsaW5rIHN0eWxpbmcsIHVzZWQgaW4gdGhlIGZvb3Rlci5cbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgbmhzdWstbGluay1zdHlsZS13aGl0ZTtcbi8vXG5cbkBtaXhpbiBuaHN1ay1saW5rLXN0eWxlLXdoaXRlIHtcbiAgY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcblxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgICBvdXRsaW5lOiAkbmhzdWstZm9jdXMtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6ICRuaHN1ay1mb2N1cy13aWR0aDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRuaHN1ay1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuXG4vL1xuLy8gRGVmYXVsdCBsaW5rIGhvdmVyIG9ubHkgc3R5bGluZ1xuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBuaHN1ay1saW5rLXN0eWxlLWhvdmVyO1xuLy9cblxuQG1peGluIG5oc3VrLWxpbmstc3R5bGUtaG92ZXIge1xuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8vIE5vIHZpc2l0ZWQgc3RhdGUgbGluayBtaXhpblxuLy8vXG4vLy8gVXNlZCBpbiBjYXNlcyB3aGVyZSBpdCBpcyBub3QgaGVscGZ1bCB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIHZpc2l0ZWQgYW5kXG4vLy8gbm9uLXZpc2l0ZWQgbGlua3MuXG4vLy9cbi8vLyBGb3IgZXhhbXBsZSwgbmF2aWdhdGlvbiBsaW5rcyB0byBwYWdlcyB3aXRoIGR5bmFtaWMgY29udGVudCBsaWtlIGFkbWluXG4vLy8gZGFzaGJvYXJkcy4gVGhlIGNvbnRlbnQgb24gdGhlIHBhZ2UgaXMgY2hhbmdpbmcgYWxsIHRoZSB0aW1lLCBzbyB0aGUgZmFjdFxuLy8vIHRoYXQgeW914oCZdmUgdmlzaXRlZCBpdCBiZWZvcmUgaXMgbm90IGltcG9ydGFudC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlXG4vLy8gbmhzdWstbGluay1zdHlsZS1kZWZhdWx0IG1peGluIGluIG9yZGVyIHRvIGdldCB0aGUgZm9jdXMgc3RhdGUuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAubmhzdWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgbmhzdWstbGluay1zdHlsZS1kZWZhdWx0O1xuLy8vICAgICBAaW5jbHVkZSBuaHN1ay1saW5rLXN0eWxlLW5vLXZpc2l0ZWQtc3RhdGU7XG4vLy8gICB9XG4vLy9cblxuQG1peGluIG5oc3VrLWxpbmstc3R5bGUtbm8tdmlzaXRlZC1zdGF0ZSB7XG4gICY6bGluayB7XG4gICAgY29sb3I6ICRuaHN1ay1saW5rLWNvbG9yO1xuICB9XG5cbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJG5oc3VrLWxpbmstY29sb3I7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJG5oc3VrLWxpbmstaG92ZXItY29sb3I7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRuaHN1ay1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgfVxufVxuXG4vLy8gVGV4dCBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3MgdXNlIHRoZSBwcmltYXJ5IHRleHQgY29sb3VyLCBpbiBhbGwgc3RhdGVzLiBVc2UgdGhpcyBtaXhpbiBmb3Jcbi8vLyBuYXZpZ2F0aW9uIGNvbXBvbmVudHMsIHN1Y2ggYXMgYnJlYWRjcnVtYnMgb3IgdGhlIGJhY2sgbGluay5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBuaHN1ay1saW5rLXN0eWxlLWRlZmF1bHRgIG1peGluIHRvIGdldCB0aGUgY29ycmVjdCBmb2N1cyBhbmQgaG92ZXIgc3RhdGVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLm5oc3VrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIG5oc3VrLWxpbmstc3R5bGUtZGVmYXVsdDtcbi8vLyAgICAgQGluY2x1ZGUgbmhzdWstbGluay1zdHlsZS10ZXh0O1xuLy8vICAgfVxuLy8vXG5cbkBtaXhpbiBuaHN1ay1saW5rLXN0eWxlLXRleHQge1xuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRuaHN1ay10ZXh0LWNvbG9yO1xuICB9XG5cbiAgLy8gRm9yY2UgYSBjb2xvdXIgY2hhbmdlIG9uIGhvdmVyIHRvIHdvcmsgYXJvdW5kIGEgYnVnIGluIFNhZmFyaVxuICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0NDgzXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKCRuaHN1ay10ZXh0LWNvbG9yLCAwLjk5KTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJG5oc3VrLXRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi5oZWUtYmFjay10by10b3Age1xuICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbig3LCAnYm90dG9tJyk7XG4gIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxOSk7XG4gIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktd2VpZ2h0LW5vcm1hbDtcbn0iLCIubmhzdWstZm9vdGVyIHtcbiAgLm5oc3VrLWZvb3Rlcl9fbGlzdC0tdGhyZWUtY29sdW1ucyB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xuICAgICAgLW1vei1jb2x1bW4tZ2FwOiAyNHB4O1xuICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDM7XG4gICAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDI0cHg7XG4gICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICBjb2x1bW4tZ2FwOiAyNHB4O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmhlZS1saXN0aW5nIHtcbiAgLmhlZS1saXN0aW5nX19zdW1tYXJ5IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmhlZS1saXN0aW5nX19jb3VudCB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuaGVlLWxpc3RpbmdfX3Jlc3VsdHMge1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDcsICdib3R0b20nKTtcbiAgICBwYWRkaW5nLXRvcDogbmhzdWstc3BhY2luZyg1KTtcblxuICAgICYubGF5b3V0LXR3by1jb2wge1xuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB9XG5cbiAgICAgIC5oZWUtbGlzdGluZy1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDQpO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDQ4JTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaGVlLWxpc3RpbmctaXRlbV9fZGV0YWlsc19fbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlZS1saXN0aW5nX190YWdzX19ncm91cCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygyKTtcbiAgICB3aWR0aDoxMDAlO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBuaHN1ay1zcGFjaW5nKDIpO1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtbGlzdGluZ19fdGFncyB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNSwgJ2JvdHRvbScpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm5oc3VrLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbiIsIi5oZWUtbGlzdGluZy1pdGVtIHtcbiAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDE5KTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoNCk7XG4gIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMyk7XG5cbiAgLmhlZS1saXN0aW5nLWl0ZW1fX2RldGFpbHNfX3JvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygyKTtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAmLmhlZS1saXN0aW5nLWl0ZW1fX2RldGFpbHNfX2xhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRuaHN1ay1mb250LWJvbGQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbWFnZSB2YXJpYW50LlxuICAmLmhhcy1pbWFnZSB7XG4gICAgcGFkZGluZzogMCAwIG5oc3VrLXNwYWNpbmcoNCkgMDtcblxuICAgIC5oZWUtbGlzdGluZy1pdGVtX19pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDkuMzQlO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIHBhZGRpbmc6IDAgbmhzdWstc3BhY2luZyg0KSAwIG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgfVxuXG4gICAgLmhlZS1saXN0aW5nLWl0ZW1fX2RldGFpbHNfX3JvdyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDMpO1xuICAgICAgcGFkZGluZzogMCBuaHN1ay1zcGFjaW5nKDQpIDAgbmhzdWstc3BhY2luZyg0KTtcbiAgICB9XG5cbiAgICAuaGVlLWxpc3RpbmctaXRlbV9fZGV0YWlsc19fbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAuaGVlLWxpc3RpbmctaXRlbV9fc3VtbWFyeSB7XG4gICAgICBwYWRkaW5nOiAwIG5oc3VrLXNwYWNpbmcoNCkgMCBuaHN1ay1zcGFjaW5nKDQpO1xuICAgIH1cbiAgfVxufVxuIiwiLm5oc3VrLWZpbHRlciB7XG4gIC5uaHN1ay1maWVsZHNldF9fbGVnZW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDQpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm5oc3VrLWZpbHRlcl9fZ3JvdXAge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpub3QoLm5oc3VrLWZpbHRlcl9fZ3JvdXAtLWNsb3NlZCkge1xuICAgICAgcGFkZGluZy1ib3R0b206IG5oc3VrLXNwYWNpbmcoNCk7XG4gICAgfVxuXG4gICAgLm5oc3VrLWZpbHRlcl9fZ3JvdXBfX2NsZWFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcblxuICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uaHN1ay1oaW50IHtcbiAgICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxNik7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZyg0KSAqIC0xO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyOHB4O1xuXG4gICAgICAmLnZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmhzdWstY2hlY2tib3hlcyB7XG4gICAgICAmLnNjcm9sbGFibGUge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDE5MHB4O1xuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWdyZXktMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uaHN1ay1mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJi5wYXJlbnQtZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygzKTtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2xvc2VkIGdyb3Vwc1xuICAmX19ncm91cC0tY2xvc2VkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgIGxhYmVsLCAubmhzdWstY2hlY2tib3hlcywgLm5oc3VrLXNlbGVjdCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uaHN1ay1oaW50LnZpc2libGUge1xuICAgICAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZyg0KSAqIC0xO1xuICAgIH1cblxuICAgIC5uaHN1ay1mb3JtLWdyb3VwLnBhcmVudC1ncm91cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2dyb3VwLS1jbG9zZWQgLm5oc3VrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIC8qbWFyZ2luLWJvdHRvbTogMDsqL1xuICB9XG5cbiAgLy8gSlMgZW5hYmxlZCAodmFyaWFudClcbiAgJi0tanMgLm5oc3VrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDQ0OCA1MTInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyMzAwMCcgZD0nbTI0MC45NyAxMzAuNTIgMTk0LjM0IDE5NC4zNGM5LjM3MyA5LjM3MyA5LjM3MyAyNC41NjkgMCAzMy45NDFsLTIyLjY2NyAyMi42NjdjLTkuMzU3IDkuMzU3LTI0LjUyMiA5LjM3NS0zMy45MDEgMC4wNGwtMTU0Ljc1LTE1NC4wMi0xNTQuNzQgMTU0LjAyYy05LjM3OSA5LjMzNS0yNC41NDQgOS4zMTctMzMuOTAxLTAuMDRsLTIyLjY2Ny0yMi42NjdjLTkuMzczLTkuMzczLTkuMzczLTI0LjU2OSAwLTMzLjk0MWwxOTQuMzQtMTk0LjM0YzkuMzcyLTkuMzczIDI0LjU2OC05LjM3MyAzMy45NDEtMWUtM3onLyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLjNlbSAuM2VtO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAuNzVlbTtcbiAgICBjb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmctbGVmdDogMS42ZW07XG4gIH1cblxuICAmLS1qcyAmX19ncm91cC0tY2xvc2VkIC5uaHN1ay1maWVsZHNldF9fbGVnZW5kIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQ0OCA1MTInJTNFJTNDcGF0aCBmaWxsPSclMjMwMDAnIGQ9J00yMDcuMDI5IDM4MS40NzZMMTIuNjg2IDE4Ny4xMzJjLTkuMzczLTkuMzczLTkuMzczLTI0LjU2OSAwLTMzLjk0MWwyMi42NjctMjIuNjY3YzkuMzU3LTkuMzU3IDI0LjUyMi05LjM3NSAzMy45MDEtLjA0TDIyNCAyODQuNTA1bDE1NC43NDUtMTU0LjAyMWM5LjM3OS05LjMzNSAyNC41NDQtOS4zMTcgMzMuOTAxLjA0bDIyLjY2NyAyMi42NjdjOS4zNzMgOS4zNzMgOS4zNzMgMjQuNTY5IDAgMzMuOTQxTDI0MC45NzEgMzgxLjQ3NmMtOS4zNzMgOS4zNzItMjQuNTY5IDkuMzcyLTMzLjk0MiAweicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgfVxufVxuIiwiLm5oc3VrLWZpbHRlci10YWcge1xuICBwYWRkaW5nOiAuNzVlbSAxZW07XG4gIG1hcmdpbjogLjE1ZW0gMDtcblxuICA+ICoge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgJl9faWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyBjbGFzcz1cIm5oc3VrLWljb24gbmhzdWstaWNvbl9fY2xvc2VcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZvY3VzYWJsZT1cImZhbHNlXCI+PHBhdGggZmlsbD1cIiUyM2ZmZlwiIGQ9XCJNMTMuNDEgMTJsNS4zLTUuMjlhMSAxIDAgMSAwLTEuNDItMS40MkwxMiAxMC41OWwtNS4yOS01LjNhMSAxIDAgMCAwLTEuNDIgMS40Mmw1LjMgNS4yOS01LjMgNS4yOWExIDEgMCAwIDAgMCAxLjQyIDEgMSAwIDAgMCAxLjQyIDBsNS4yOS01LjMgNS4yOSA1LjNhMSAxIDAgMCAwIDEuNDIgMCAxIDEgMCAwIDAgMC0xLjQyelwiPjwvcGF0aD48L3N2Zz4nKTtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5OTk5OXB4O1xuICAgIHdpZHRoOiAyNHB4O1xuICB9XG5cbiAgLy8gSlNcbiAgJi0tanMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufSIsIi5oZWUtc2VhcmNoLWZvcm0ge1xuXG4gIC5oZWUtc2VhcmNoLWZvcm1fX3dyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmhlZS1zZWFyY2gtZm9ybV9faW5wdXQge1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxOSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktMztcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4gICAgZmxleC1ncm93OiAyO1xuICAgIGhlaWdodDogNTJweDtcbiAgICBtYXJnaW46IDA7XG4gICAgb3V0bGluZTogMDtcbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb2xvcl9uaHN1ay15ZWxsb3c7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJGNvbG9yX25oc3VrLWJsYWNrO1xuICAgICAgcGFkZGluZzogMCAxNnB4IDAgMTNweDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1zZWFyY2gtZm9ybV9fc3VibWl0IHtcbiAgICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ibHVlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIG1hcmdpbjogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDhweCA4cHggMDtcbiAgICB3aWR0aDogNTJweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWdyZWVuO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXllbGxvdztcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3JfbmhzdWstYmxhY2s7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAubmhzdWstaWNvbl9fc2VhcmNoIHtcbiAgICAgICAgZmlsbDogJGNvbG9yX25oc3VrLWJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmhlZS1zZWFyY2gtbGlzdGluZyB7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgIG1heC13aWR0aDogNjYlO1xuICB9XG59XG4iLCIuaGVlLXNlYXJjaC1saXN0aW5nLWl0ZW0ge1xuICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcoNCwgJ2JvdHRvbScpO1xuICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcoNCwgJ3RvcCcpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcblxuICBoMyB7XG4gICAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDI0KTtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigyLCAnYm90dG9tJyk7XG4gIH1cblxuICAuaGVlLXNlYXJjaC1saXN0aW5nLWl0ZW1fX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMTkpO1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDQsICdib3R0b20nKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5oZWUtc2VhcmNoLWxpc3RpbmctaXRlbV9fc3VtbWFyeSB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgJ2JvdHRvbScpO1xuICB9XG5cbiAgLmhlZS1zZWFyY2gtbGlzdGluZy1pdGVtX19hdHRyaWJ1dGVzIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbig0LCAnYm90dG9tJyk7XG4gICAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDE5KTtcbiAgfVxuXG4gIC5oZWUtc2VhcmNoLWxpc3RpbmctaXRlbV9fYXR0cmlidXRlc19faXRlbSB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMiwgJ2JvdHRvbScpO1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtcGFkZGluZygyLCAnYm90dG9tJyk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5oZWUtc2VhcmNoLWxpc3RpbmctaXRlbV9fYXR0cmlidXRlc19fbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICAgIGZsZXgtYmFzaXM6IDMzJTtcbiAgfVxuXG4gIC5oZWUtc2VhcmNoLWxpc3RpbmctaXRlbV9fdXJsIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbig0LCAnYm90dG9tJyk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSclMjMwMDVFQjgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00xMiAwQzUuMzcyNDIgMCAwIDUuMzcyNDIgMCAxMkMwIDE4LjYyNzYgNS4zNzI0MiAyNCAxMiAyNEMxOC42Mjc2IDI0IDI0IDE4LjYyNzYgMjQgMTJDMjQgNS4zNzI0MiAxOC42Mjc2IDAgMTIgMFpNMTUuOTgxOCAxNy4zMDMyQzE1Ljc5MzEgMTcuNDkxIDE1LjU5NTIgMTcuNjg3OSAxNS40MzQ1IDE3Ljg0OUMxNS4yODk4IDE3Ljk5NDIgMTUuMTg3NyAxOC4xNzMyIDE1LjEzNiAxOC4zNjczQzE1LjA2MjkgMTguNjQxMSAxNS4wMDM5IDE4LjkxNzkgMTQuOTA1MiAxOS4xODM1TDE0LjA2MzcgMjEuNDUwNUMxMy4zOTc5IDIxLjU5NTYgMTIuNzA4OSAyMS42Nzc0IDEyIDIxLjY3NzRWMjAuMzUyNkMxMi4wODE4IDE5Ljc0MTkgMTEuNjMwMyAxOC41OTgxIDEwLjkwNSAxNy44NzI3QzEwLjYxNDcgMTcuNTgyNCAxMC40NTE2IDE3LjE4ODUgMTAuNDUxNiAxNi43Nzc3VjE1LjIyODlDMTAuNDUxNiAxNC42NjU2IDEwLjE0ODIgMTQuMTQ3OSA5LjY1NTE2IDEzLjg3NTVDOC45NTk4NCAxMy40OTA4IDcuOTcwODEgMTIuOTUzMiA3LjI5MzM5IDEyLjYxMjFDNi43Mzc5IDEyLjMzMjQgNi4yMjQwMyAxMS45NzYzIDUuNzYxOTQgMTEuNTU5N0w1LjcyMzIzIDExLjUyNDhDNS4zOTI3NyAxMS4yMjY1IDUuMDk5MzggMTAuODg5NiA0Ljg0OTM1IDEwLjUyMTNDNC4zOTU0OCA5Ljg1NSAzLjY1NjEzIDguNzU5MDMgMy4xNzU2NCA4LjA0Njc3QzQuMTY2MTMgNS44NDUxNiA1Ljk1MTEzIDQuMDc3MSA4LjE2OTE5IDMuMTE2NjFMOS4zMzA5NyAzLjY5Nzc0QzkuODQ1ODEgMy45NTUxNiAxMC40NTE2IDMuNTgxMTMgMTAuNDUxNiAzLjAwNTMyVjIuNDU4NTVDMTAuODM4MiAyLjM5NjEzIDExLjIzMTYgMi4zNTY0NSAxMS42MzE4IDIuMzQxNDVMMTMuMDAxMSAzLjcxMDgxQzEzLjMwMzUgNC4wMTMyMyAxMy4zMDM1IDQuNTAzMzkgMTMuMDAxMSA0LjgwNTgxTDEyLjc3NDIgNS4wMzIyNkwxMi4yNzM5IDUuNTMyNThDMTIuMTIyOSA1LjY4MzU1IDEyLjEyMjkgNS45Mjg4NyAxMi4yNzM5IDYuMDc5ODRMMTIuNTAwOCA2LjMwNjc3QzEyLjY1MTggNi40NTc3NCAxMi42NTE4IDYuNzAzMDYgMTIuNTAwOCA2Ljg1NDAzTDEyLjExMzcgNy4yNDExM0MxMi4wNDEgNy4zMTM2NyAxMS45NDI1IDcuMzU0MzkgMTEuODM5OCA3LjM1NDM1SDExLjQwNDhDMTEuMzA0MiA3LjM1NDM1IDExLjIwNzQgNy4zOTM1NSAxMS4xMzQ4IDcuNDY0MTlMMTAuNjU0OCA3LjkzMTEzQzEwLjU5NiA3Ljk4ODQyIDEwLjU1NjkgOC4wNjI5MyAxMC41NDMxIDguMTQzOUMxMC41Mjk0IDguMjI0ODcgMTAuNTQxNyA4LjMwODExIDEwLjU3ODQgOC4zODE2MUwxMS4zMzI3IDkuODkwODFDMTEuNDYxNSAxMC4xNDgyIDExLjI3NDIgMTAuNDUxMSAxMC45ODY4IDEwLjQ1MTFIMTAuNzEzOUMxMC42MjA1IDEwLjQ1MTEgMTAuNTMwNSAxMC40MTczIDEwLjQ2MDMgMTAuMzU2M0wxMC4wMTEzIDkuOTY2MjlDOS45MDk2OCA5Ljg3ODE0IDkuNzg2ODcgOS44MTc5NSA5LjY1NDk0IDkuNzkxNjVDOS41MjMwMiA5Ljc2NTM1IDkuMzg2NTIgOS43NzM4NCA5LjI1ODg3IDkuODE2MjlMNy43NTA2NCAxMC4zMTlDNy42MzU1IDEwLjM1NzQgNy41MzUzNSAxMC40MzExIDcuNDY0NCAxMC41Mjk2QzcuMzkzNDUgMTAuNjI4IDcuMzU1MjkgMTAuNzQ2NCA3LjM1NTMyIDEwLjg2NzdDNy4zNTUzMiAxMS4wODY5IDcuNDc5MTkgMTEuMjg2OCA3LjY3NTE2IDExLjM4NUw4LjIxMTI5IDExLjY1MzFDOC42NjY2MSAxMS44ODEgOS4xNjg4NyAxMS45OTk1IDkuNjc3OSAxMS45OTk1QzEwLjE4NjkgMTEuOTk5NSAxMC43NzEgMTMuMzIgMTEuMjI2MyAxMy41NDc5SDE0LjQ1NjFDMTQuODY2OSAxMy41NDc5IDE1LjI2MDMgMTMuNzExIDE1LjU1MTEgMTQuMDAxM0wxNi4yMTM1IDE0LjY2MzdDMTYuNDkwMyAxNC45NDA1IDE2LjY0NTcgMTUuMzE2IDE2LjY0NTYgMTUuNzA3NEMxNi42NDU1IDE2LjAwNCAxNi41ODY4IDE2LjI5NzcgMTYuNDcyOSAxNi41NzE2QzE2LjM1OSAxNi44NDU0IDE2LjE5MjEgMTcuMDk0MSAxNS45ODE4IDE3LjMwMzJaTTIwLjE3NzQgMTIuODgzMUMxOS44OTczIDEyLjgxMjkgMTkuNjUyOSAxMi42NDExIDE5LjQ5MjcgMTIuNDAwNkwxOC42MjI3IDExLjA5NTZDMTguNDk1NCAxMC45MDUgMTguNDI3NSAxMC42ODA5IDE4LjQyNzUgMTAuNDUxNkMxOC40Mjc1IDEwLjIyMjQgMTguNDk1NCA5Ljk5ODI0IDE4LjYyMjcgOS44MDc1OEwxOS41NzA2IDguMzg1OTdDMTkuNjgyOSA4LjIxODA2IDE5LjgzNjggOC4wODE2MSAyMC4wMTc3IDcuOTkxNjFMMjAuNjQ1OCA3LjY3NzU4QzIxLjMgOC45ODAxNiAyMS42Nzc0IDEwLjQ0NTMgMjEuNjc3NCAxMkMyMS42Nzc0IDEyLjQxOTUgMjEuNjQxNiAxMi44MzAzIDIxLjU4OTQgMTMuMjM1OEwyMC4xNzc0IDEyLjg4MzFaJyBmaWxsPSclMjMwMDVFQjgnLyUzRSUzQy9zdmclM0VcIikgbm8tcmVwZWF0O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgbWluLXdpZHRoOiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtc2VhcmNoLWxpc3RpbmctaXRlbV9fdXBkYXRlZCB7XG4gICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn0iLCIuaGVlLXJldmlldy1kYXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcbiAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZygyKTtcblxuICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi5uaHN1ay1saXN0LS1ib3JkZXIge1xuICA+bGkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmhzdWstYm9yZGVyLWNvbG9yO1xuICAgIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoMikgMCBuaHN1ay1zcGFjaW5nKDMpO1xuICAgID4ge1xuICAgICAgOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbmhzdWstYm9yZGVyLWNvbG9yO1xuICAgICAgcGFkZGluZzogbmhzdWstc3BhY2luZygzKSAwO1xuICAgIH1cbiAgfVxufVxuIiwiLmhlZS1jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgcGFkZGluZzogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg0KTtcblxuICAuaGVlLWZsZXhncmlkLXJvdyAmIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICAuaGVlLWNhcmQtLWhlYWRlciB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1wYWRkaW5nKDQsICdib3R0b20nKTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJG5oc3VrLWJvcmRlci1jb2xvcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygzKTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5oZWUtY2FyZF9faW1hZ2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBuaHN1ay1zcGFjaW5nKDQpO1xuXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgICYuaGFzLWJnIHtcbiAgICAgICAgLmhlZS1jYXJkX19pbml0aWFscyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmhlZS1jYXJkX19pbml0aWFscyB7XG4gICAgICAgIHdpZHRoOiAxMzRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVlLWNhcmRfX3Byb25vdW5zIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMik7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1jYXJkX19pbWFnZSB7XG4gICAgd2lkdGg6IDEzNHB4O1xuICAgIGhlaWdodDogMTM0cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgfVxuXG4gIC5oZWUtY2FyZF9faW5pdGlhbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6JGNvbG9yX25oc3VrLWdyZXktNDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTM0cHg7XG5cbiAgICBzcGFuIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMzRweDtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJG5oc3VrLXNlY29uZGFyeS10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtY2FyZF9fbmFtZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIH1cblxuICAuaGVlLWNhcmRfX3Byb25vdW5zIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1mb250KDE2KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJG5oc3VrLXNlY29uZGFyeS10ZXh0LWNvbG9yO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC43NWVtO1xuICB9XG5cbiAgLmhlZS1jYXJkX19qb2J0aXRsZSB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oMiwgJ2JvdHRvbScpO1xuICB9XG4gIC5oZWUtY2FyZF9fZGVwYXJ0bWVudCxcbiAgLmhlZS1jYXJkX19vcmdhbmlzYXRpb24ge1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxOSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5oZWUtY2FyZF9fY29udGFjdCB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgJ2JvdHRvbScpO1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxNik7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogbmhzdWstc3BhY2luZygzKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICAuaGVlLWNhcmRfX2NvbnRhY3RfX2l0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogbmhzdWstc3BhY2luZygzKTtcblxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1pbi13aWR0aDogMjRweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OTk5cHg7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWUtY2FyZF9fdGVsZXBob25lIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNNS4xOTg5NyAxNC44MDExQzEwLjA0MzMgMTkuNjQ1NCAxNi4wMTcgMjEuNTI2NyAxOC45MjIxIDE4LjYyMTZDMTkuMzEzMyAxOC4yMzA0IDE5LjYyMyAxNy43Nzc1IDE5Ljg1NDUgMTcuMjc1NEMxOS45ODM3IDE2Ljk5NTUgMjAuMDI5NCAxNi42ODQzIDE5Ljk4MTQgMTYuMzc5OUwxOS43Nzg3IDE1LjA5MDZDMTkuNjg0MyAxNC40ODk1IDE5LjI0NTkgMTMuOTk5NyAxOC42NTg1IDEzLjgzOTdMMTQuOTIzNCAxMi44MjMxQzE0LjM4OSAxMi42Nzc2IDEzLjgxNzMgMTIuODI5NSAxMy40MjUzIDEzLjIyMTFMMTIuMzU3NiAxNC4yODg4QzEyLjAyNDcgMTQuNjIxNyAxMS40OTk4IDE0LjY3MTIgMTEuMTE0NCAxNC40MDExQzEwLjA5NDcgMTMuNjg2NiA5LjA4NjQ1IDEyLjg0MDYgOC4xMjMxNSAxMS44NzY5QzcuMTU5ODUgMTAuOTEzNiA2LjMxMzQ5IDkuOTA1MzQgNS41OTg5MSA4Ljg4NTY2QzUuMzI4ODUgOC41MDAxOSA1LjM3ODM3IDcuOTc1MyA1LjcxMTI4IDcuNjQyNEw2Ljc3ODk1IDYuNTc0NzJDNy4xNzA5IDYuMTgyNzcgNy4zMjI0OSA1LjYxMTQyIDcuMTc2OTkgNS4wNzY2M0w2LjE2MDM2IDEuMzQxNDlDNi4wMDAzOCAwLjc1NDEzOCA1LjUxMDkzIDAuMzE1NzE4IDQuOTA5NDggMC4yMjEyNTRMMy42MjAxMyAwLjAxODYxMzFDMy4zMTU3OSAtMC4wMjkzODA3IDMuMDA0NTkgMC4wMTYzMjc3IDIuNzI0NjMgMC4xNDU0NTRDMi4yMjI2IDAuMzc3MDQzIDEuNzY5NzEgMC42ODY3MTggMS4zNzg1MiAxLjA3NzkxQy0xLjUyNjYyIDMuOTgzMDYgMC4zNTQyNzcgOS45NTYzOCA1LjE5ODk3IDE0LjgwMTFaJyBmaWxsPSclMjMwMDVFQjgnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgbWluLXdpZHRoOiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVlLWNhcmRfX2VtYWlsIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScxOCcgdmlld0JveD0nMCAwIDI0IDE4JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMjMuNTQ1MyA1Ljk0Mzc1QzIzLjcyODEgNS43OTg0NCAyNCA1LjkzNDM3IDI0IDYuMTY0MDZWMTUuNzVDMjQgMTYuOTkyMiAyMi45OTIyIDE4IDIxLjc1IDE4SDIuMjVDMS4wMDc4MSAxOCAwIDE2Ljk5MjIgMCAxNS43NVY2LjE2ODc1QzAgNS45MzQzOCAwLjI2NzE4NyA1LjgwMzEyIDAuNDU0Njg3IDUuOTQ4NDRDMS41MDQ2OSA2Ljc2NDA2IDIuODk2ODggNy44IDcuNjc4MTMgMTEuMjczNEM4LjY2NzE5IDExLjk5NTMgMTAuMzM1OSAxMy41MTQxIDEyIDEzLjUwNDdDMTMuNjczNCAxMy41MTg4IDE1LjM3NSAxMS45NjcyIDE2LjMyNjYgMTEuMjczNEMyMS4xMDc4IDcuOCAyMi40OTUzIDYuNzU5MzggMjMuNTQ1MyA1Ljk0Mzc1Wk0xMiAxMkMxMy4wODc1IDEyLjAxODggMTQuNjUzMSAxMC42MzEzIDE1LjQ0MDYgMTAuMDU5NEMyMS42NjA5IDUuNTQ1MzEgMjIuMTM0NCA1LjE1MTU2IDIzLjU2ODcgNC4wMjY1NkMyMy44NDA2IDMuODE1NjIgMjQgMy40ODc1IDI0IDMuMTQwNjJWMi4yNUMyNCAxLjAwNzgxIDIyLjk5MjIgMCAyMS43NSAwSDIuMjVDMS4wMDc4MSAwIDAgMS4wMDc4MSAwIDIuMjVWMy4xNDA2MkMwIDMuNDg3NSAwLjE1OTM3NSAzLjgxMDk0IDAuNDMxMjUgNC4wMjY1NkMxLjg2NTYzIDUuMTQ2ODcgMi4zMzkwNiA1LjU0NTMxIDguNTU5MzggMTAuMDU5NEM5LjM0Njg4IDEwLjYzMTMgMTAuOTEyNSAxMi4wMTg4IDEyIDEyWicgZmlsbD0nJTIzMDA1RUI4Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1jYXJkX193ZWJzaXRlIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTIgMEM1LjM3MjQyIDAgMCA1LjM3MjQyIDAgMTJDMCAxOC42Mjc2IDUuMzcyNDIgMjQgMTIgMjRDMTguNjI3NiAyNCAyNCAxOC42Mjc2IDI0IDEyQzI0IDUuMzcyNDIgMTguNjI3NiAwIDEyIDBaTTE1Ljk4MTggMTcuMzAzMkMxNS43OTMxIDE3LjQ5MSAxNS41OTUyIDE3LjY4NzkgMTUuNDM0NSAxNy44NDlDMTUuMjg5OCAxNy45OTQyIDE1LjE4NzcgMTguMTczMiAxNS4xMzYgMTguMzY3M0MxNS4wNjI5IDE4LjY0MTEgMTUuMDAzOSAxOC45MTc5IDE0LjkwNTIgMTkuMTgzNUwxNC4wNjM3IDIxLjQ1MDVDMTMuMzk3OSAyMS41OTU2IDEyLjcwODkgMjEuNjc3NCAxMiAyMS42Nzc0VjIwLjM1MjZDMTIuMDgxOCAxOS43NDE5IDExLjYzMDMgMTguNTk4MSAxMC45MDUgMTcuODcyN0MxMC42MTQ3IDE3LjU4MjQgMTAuNDUxNiAxNy4xODg1IDEwLjQ1MTYgMTYuNzc3N1YxNS4yMjg5QzEwLjQ1MTYgMTQuNjY1NiAxMC4xNDgyIDE0LjE0NzkgOS42NTUxNiAxMy44NzU1QzguOTU5ODQgMTMuNDkwOCA3Ljk3MDgxIDEyLjk1MzIgNy4yOTMzOSAxMi42MTIxQzYuNzM3OSAxMi4zMzI0IDYuMjI0MDMgMTEuOTc2MyA1Ljc2MTk0IDExLjU1OTdMNS43MjMyMyAxMS41MjQ4QzUuMzkyNzcgMTEuMjI2NSA1LjA5OTM4IDEwLjg4OTYgNC44NDkzNSAxMC41MjEzQzQuMzk1NDggOS44NTUgMy42NTYxMyA4Ljc1OTAzIDMuMTc1NjQgOC4wNDY3N0M0LjE2NjEzIDUuODQ1MTYgNS45NTExMyA0LjA3NzEgOC4xNjkxOSAzLjExNjYxTDkuMzMwOTcgMy42OTc3NEM5Ljg0NTgxIDMuOTU1MTYgMTAuNDUxNiAzLjU4MTEzIDEwLjQ1MTYgMy4wMDUzMlYyLjQ1ODU1QzEwLjgzODIgMi4zOTYxMyAxMS4yMzE2IDIuMzU2NDUgMTEuNjMxOCAyLjM0MTQ1TDEzLjAwMTEgMy43MTA4MUMxMy4zMDM1IDQuMDEzMjMgMTMuMzAzNSA0LjUwMzM5IDEzLjAwMTEgNC44MDU4MUwxMi43NzQyIDUuMDMyMjZMMTIuMjczOSA1LjUzMjU4QzEyLjEyMjkgNS42ODM1NSAxMi4xMjI5IDUuOTI4ODcgMTIuMjczOSA2LjA3OTg0TDEyLjUwMDggNi4zMDY3N0MxMi42NTE4IDYuNDU3NzQgMTIuNjUxOCA2LjcwMzA2IDEyLjUwMDggNi44NTQwM0wxMi4xMTM3IDcuMjQxMTNDMTIuMDQxIDcuMzEzNjcgMTEuOTQyNSA3LjM1NDM5IDExLjgzOTggNy4zNTQzNUgxMS40MDQ4QzExLjMwNDIgNy4zNTQzNSAxMS4yMDc0IDcuMzkzNTUgMTEuMTM0OCA3LjQ2NDE5TDEwLjY1NDggNy45MzExM0MxMC41OTYgNy45ODg0MiAxMC41NTY5IDguMDYyOTMgMTAuNTQzMSA4LjE0MzlDMTAuNTI5NCA4LjIyNDg3IDEwLjU0MTcgOC4zMDgxMSAxMC41Nzg0IDguMzgxNjFMMTEuMzMyNyA5Ljg5MDgxQzExLjQ2MTUgMTAuMTQ4MiAxMS4yNzQyIDEwLjQ1MTEgMTAuOTg2OCAxMC40NTExSDEwLjcxMzlDMTAuNjIwNSAxMC40NTExIDEwLjUzMDUgMTAuNDE3MyAxMC40NjAzIDEwLjM1NjNMMTAuMDExMyA5Ljk2NjI5QzkuOTA5NjggOS44NzgxNCA5Ljc4Njg3IDkuODE3OTUgOS42NTQ5NCA5Ljc5MTY1QzkuNTIzMDIgOS43NjUzNSA5LjM4NjUyIDkuNzczODQgOS4yNTg4NyA5LjgxNjI5TDcuNzUwNjQgMTAuMzE5QzcuNjM1NSAxMC4zNTc0IDcuNTM1MzUgMTAuNDMxMSA3LjQ2NDQgMTAuNTI5NkM3LjM5MzQ1IDEwLjYyOCA3LjM1NTI5IDEwLjc0NjQgNy4zNTUzMiAxMC44Njc3QzcuMzU1MzIgMTEuMDg2OSA3LjQ3OTE5IDExLjI4NjggNy42NzUxNiAxMS4zODVMOC4yMTEyOSAxMS42NTMxQzguNjY2NjEgMTEuODgxIDkuMTY4ODcgMTEuOTk5NSA5LjY3NzkgMTEuOTk5NUMxMC4xODY5IDExLjk5OTUgMTAuNzcxIDEzLjMyIDExLjIyNjMgMTMuNTQ3OUgxNC40NTYxQzE0Ljg2NjkgMTMuNTQ3OSAxNS4yNjAzIDEzLjcxMSAxNS41NTExIDE0LjAwMTNMMTYuMjEzNSAxNC42NjM3QzE2LjQ5MDMgMTQuOTQwNSAxNi42NDU3IDE1LjMxNiAxNi42NDU2IDE1LjcwNzRDMTYuNjQ1NSAxNi4wMDQgMTYuNTg2OCAxNi4yOTc3IDE2LjQ3MjkgMTYuNTcxNkMxNi4zNTkgMTYuODQ1NCAxNi4xOTIxIDE3LjA5NDEgMTUuOTgxOCAxNy4zMDMyWk0yMC4xNzc0IDEyLjg4MzFDMTkuODk3MyAxMi44MTI5IDE5LjY1MjkgMTIuNjQxMSAxOS40OTI3IDEyLjQwMDZMMTguNjIyNyAxMS4wOTU2QzE4LjQ5NTQgMTAuOTA1IDE4LjQyNzUgMTAuNjgwOSAxOC40Mjc1IDEwLjQ1MTZDMTguNDI3NSAxMC4yMjI0IDE4LjQ5NTQgOS45OTgyNCAxOC42MjI3IDkuODA3NThMMTkuNTcwNiA4LjM4NTk3QzE5LjY4MjkgOC4yMTgwNiAxOS44MzY4IDguMDgxNjEgMjAuMDE3NyA3Ljk5MTYxTDIwLjY0NTggNy42Nzc1OEMyMS4zIDguOTgwMTYgMjEuNjc3NCAxMC40NDUzIDIxLjY3NzQgMTJDMjEuNjc3NCAxMi40MTk1IDIxLjY0MTYgMTIuODMwMyAyMS41ODk0IDEzLjIzNThMMjAuMTc3NCAxMi44ODMxWicgZmlsbD0nJTIzMDA1RUI4Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1jYXJkX190d2l0dGVyIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDI0IDIwJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMjEuNTMzIDUuMTExNzVDMjEuNTQ4MiA1LjMyNDk0IDIxLjU0ODIgNS41MzgxNyAyMS41NDgyIDUuNzUxMzZDMjEuNTQ4MiAxMi4yNTM5IDE2LjU5OSAxOS43NDYzIDcuNTUzMyAxOS43NDYzQzQuNzY2NDggMTkuNzQ2MyAyLjE3NzY3IDE4LjkzOTEgMCAxNy41MzgyQzAuMzk1OTUzIDE3LjU4MzggMC43NzY2MjUgMTcuNTk5MSAxLjE4NzgxIDE3LjU5OTFDMy40ODcyNyAxNy41OTkxIDUuNjA0MDUgMTYuODIyNCA3LjI5NDQxIDE1LjQ5NzZDNS4xMzE5NyAxNS40NTE5IDMuMzE5NzggMTQuMDM1NiAyLjY5NTQxIDEyLjA4NjRDMyAxMi4xMzIgMy4zMDQ1NSAxMi4xNjI1IDMuNjI0MzcgMTIuMTYyNUM0LjA2NTk4IDEyLjE2MjUgNC41MDc2NCAxMi4xMDE2IDQuOTE4NzggMTEuOTk1QzIuNjY0OTggMTEuNTM4MSAwLjk3NDU3OCA5LjU1ODQ1IDAuOTc0NTc4IDcuMTY3NTlWNy4xMDY3QzEuNjI5MzcgNy40NzIxOSAyLjM5MDg2IDcuNzAwNjEgMy4xOTc5MSA3LjczMTAzQzEuODczMDMgNi44NDc3NyAxLjAwNTA1IDUuMzQwMTcgMS4wMDUwNSAzLjYzNDU4QzEuMDA1MDUgMi43MjA4OSAxLjI0ODY2IDEuODgzMzMgMS42NzUwOCAxLjE1MjM2QzQuMDk2NDEgNC4xMzcxMyA3LjczNjAyIDYuMDg2MzMgMTEuODE3MiA2LjI5OTU2QzExLjc0MTEgNS45MzQwOCAxMS42OTU0IDUuNTUzNDEgMTEuNjk1NCA1LjE3MjY5QzExLjY5NTQgMi40NjIgMTMuODg4MyAwLjI1MzkwNiAxNi42MTQxIDAuMjUzOTA2QzE4LjAzMDQgMC4yNTM5MDYgMTkuMzA5NSAwLjg0NzgxMyAyMC4yMDggMS44MDcyQzIxLjMxOTcgMS41OTQwMiAyMi4zODU3IDEuMTgyODMgMjMuMzI5OSAwLjYxOTM5MUMyMi45NjQzIDEuNzYxNTUgMjIuMTg3NyAyLjcyMDk0IDIxLjE2NzQgMy4zMzAwM0MyMi4xNTczIDMuMjIzNDggMjMuMTE2NyAyLjk0OTMxIDIzLjk5OTkgMi41Njg2NEMyMy4zMyAzLjU0MzIyIDIyLjQ5MjQgNC40MTEyIDIxLjUzMyA1LjExMTc1WicgZmlsbD0nJTIzMDA1RUI4Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1jYXJkX19saW5rZWRpbiB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjInIGhlaWdodD0nMjEnIHZpZXdCb3g9JzAgMCAyMiAyMScgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTUuMjAwNjIgMjFIMC44NDY4NzVWNi45Nzk3MUg1LjIwMDYyVjIxWk0zLjAyMTQxIDUuMDY3MjFDMS42MjkyMiA1LjA2NzIxIDAuNSAzLjkxNDA4IDAuNSAyLjUyMTg5QzAuNSAxLjg1MzE4IDAuNzY1NjQ3IDEuMjExODUgMS4yMzg1IDAuNzM4OTkxQzEuNzExMzYgMC4yNjYxMzYgMi4zNTI2OSAwLjAwMDQ4ODI4MSAzLjAyMTQxIDAuMDAwNDg4MjgxQzMuNjkwMTIgMC4wMDA0ODgyODEgNC4zMzE0NSAwLjI2NjEzNiA0LjgwNDMxIDAuNzM4OTkxQzUuMjc3MTYgMS4yMTE4NSA1LjU0MjgxIDEuODUzMTggNS41NDI4MSAyLjUyMTg5QzUuNTQyODEgMy45MTQwOCA0LjQxMzEzIDUuMDY3MjEgMy4wMjE0MSA1LjA2NzIxWk0yMS40OTUzIDIxSDE3LjE1MDlWMTQuMTc1QzE3LjE1MDkgMTIuNTQ4NSAxNy4xMTgxIDEwLjQ2MjUgMTQuODg3MyAxMC40NjI1QzEyLjYyMzcgMTAuNDYyNSAxMi4yNzY5IDEyLjIyOTcgMTIuMjc2OSAxNC4wNTc4VjIxSDcuOTI3ODFWNi45Nzk3MUgxMi4xMDM0VjguODkyMjFIMTIuMTY0NEMxMi43NDU2IDcuNzkwNjQgMTQuMTY1NSA2LjYyODE0IDE2LjI4MzggNi42MjgxNEMyMC42OSA2LjYyODE0IDIxLjUgOS41Mjk3MSAyMS41IDEzLjI5ODVWMjFIMjEuNDk1M1onIGZpbGw9JyUyMzAwNUVCOCcvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtaW4td2lkdGg6IDIycHg7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWUtY2FyZF9fYmlvLFxuICAuaGVlLWNhcmRfX2Rlc2NyaXB0aW9uXG4gIHtcbiAgICBjb2xvcjogJGNvbG9yX25oc3VrLWdyZXktMTtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuaGVlLWNhcmRfX2F1dGhvcnVybCB7XG4gICAgQGluY2x1ZGUgbmhzdWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKDE2KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDMsICd0b3AnKTtcbiAgfVxuXG4gIGhyIHtcbiAgICBtYXJnaW46IDI0cHggMDtcbiAgfVxuXG59XG4iLCIuaGVlLXB1YmxpY2F0aW9uLWRvYyB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCRuaHN1ay1zcGFjaW5nLXBvaW50cywgNCk7XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuaGVlLXB1YmxpY2F0aW9uLWRvY19fd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi13aWR0aDogNjBweDtcbiAgICB3aWR0aDogNjBweDtcblxuICAgIC5oZWUtcHVibGljYXRpb24tZG9jX19pY29uIHtcbiAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiA1NnB4O1xuXG4gICAgICAuaGVlLXB1YmxpY2F0aW9uLWRvY19faWNvbl9fcGFnZSB7XG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRjb2xvcl9uaHN1ay1ibGFjaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBoZWlnaHQ6IDg2cHg7XG4gICAgICAgIHdpZHRoOiA1MnB4O1xuICAgICAgfVxuXG4gICAgICAuaGVlLXB1YmxpY2F0aW9uLWRvY19faWNvbl9fY29ybmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE5JyBoZWlnaHQ9JzE3JyB2aWV3Qm94PScwIDAgMTkgMTcnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00xIDE2LjVWMS41TDE3IDE2LjVIMVonIGZpbGw9J2JsYWNrJy8lM0UlM0NwYXRoIGQ9J00xIDEuNUwxLjM0MTk3IDEuMTM1MjNMMC41IDAuMzQ1ODg0VjEuNUgxWk0xIDE2LjVIMC41QzAuNSAxNi43NzYxIDAuNzIzODU4IDE3IDEgMTdWMTYuNVpNMTcgMTYuNVYxN0gxOC4yNjQ0TDE3LjM0MiAxNi4xMzUyTDE3IDE2LjVaTTAuNSAxLjVWMTYuNUgxLjVWMS41SDAuNVpNMSAxN0gxN1YxNkgxVjE3Wk0xNy4zNDIgMTYuMTM1MkwxLjM0MTk3IDEuMTM1MjNMMC42NTgwMjkgMS44NjQ3N0wxNi42NTggMTYuODY0OEwxNy4zNDIgMTYuMTM1MlonIGZpbGw9J2JsYWNrJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMXB4IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVlLXB1YmxpY2F0aW9uLWRvY19faWNvbl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgbmhzdWstZm9udCgxNik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdG9wOiBtYXAtZ2V0KCRuaHN1ay1zcGFjaW5nLXBvaW50cywgNSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaGVlLXB1YmxpY2F0aW9uLWRvY19fZGV0YWlscyB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nLWxlZnQ6IG1hcC1nZXQoJG5oc3VrLXNwYWNpbmctcG9pbnRzLCA0KTtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCRuaHN1ay1zcGFjaW5nLXBvaW50cywgMik7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IG1hcC1nZXQoJG5oc3VrLXNwYWNpbmctcG9pbnRzLCAyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5oZWUtdHJhaW5pbmctam91cm5leSB7XG4gIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDQsICdib3R0b20nKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICBtYXgtd2lkdGg6IDY0MHB4O1xuICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDQpO1xuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDMpO1xuICB9XG5cbiAgaDQge1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxNik7XG4gICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5oZWUtdHJhaW5pbmctam91cm5leV9fZ3JvdXAge1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDMsICdib3R0b20nKTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLmhlZS10cmFpbmluZy1qb3VybmV5X19ncm91cF9fY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcoMiwgJ2xlZnQnKTtcbiAgfVxuXG4gIC5oZWUtdHJhaW5pbmctam91cm5leV9faXRlbSB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1wYWRkaW5nKDMsICdib3R0b20nKTtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMTkpO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBBY3RpdmUgam91cm5leSBpdGVtIHdpdGhpbiBncm91cC5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAuaGVlLXRyYWluaW5nLWpvdXJuZXlfX2l0ZW1fX2xpbmsge1xuICAgICAgICBmb250LXdlaWdodDogJG5oc3VrLWZvbnQtYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9uaHN1ay1ibHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFzdCBqb3VybmV5IGl0ZW0gdG8gYXBwZWFyIHdpdGhpbiBncm91cC5cbiAgICAmLmxhc3Qge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgIC5oZWUtdHJhaW5pbmctam91cm5leV9faXRlbV9fbGluayB7XG4gICAgICAgIHJpZ2h0OiA3cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlZS10cmFpbmluZy1qb3VybmV5X19pdGVtX19saW5rIHtcbiAgICBib3R0b206IDZweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDExcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigzLCAncmlnaHQnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAycHg7XG4gICAgICB3aWR0aDogMThweDtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsaW5nIGZvciBvcHRpb25hbCByb3V0ZSBncm91cC5cbiAgLmhlZS10cmFpbmluZy1qb3VybmV5X19ncm91cC5vcHRpb25hbCB7XG4gICAgLmhlZS10cmFpbmluZy1qb3VybmV5X19pdGVtIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAuaGVlLXRyYWluaW5nLWpvdXJuZXlfX2l0ZW0ubGFzdCB7XG4gICAgICAuaGVlLXRyYWluaW5nLWpvdXJuZXlfX2l0ZW1fX2xpbmsge1xuICAgICAgICByaWdodDogMTFweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5oZWUtZmVhdHVyZWQtY29udGVudCB7XG5cbiAgLmhlZS1mZWF0dXJlZC1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiBuaHN1ay1zcGFjaW5nKDQpO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtZmVhdHVyZWQtY29udGVudF9faXRlbSB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWJhc2lzOiAzMS42NiU7XG4gICAgICByb3ctZ2FwOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtZmVhdHVyZWQtY29udGVudC13cmFwcGVyLmRvdWJsZSB7XG4gICAgLmhlZS1mZWF0dXJlZC1jb250ZW50X19pdGVtIHtcbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsYXJnZS1kZXNrdG9wKSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDQ4JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlZS1saXN0aW5nLWl0ZW0ge1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDUpO1xuICAgIH1cblxuICAgIHNwYW4uaGVlLWxpc3RpbmctaXRlbV9fZGV0YWlsc19fbGFiZWwge1xuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhZ2UtLXJpZ2h0YmFyIC5wYWdlX19jb250ZW50IHtcbiAgLmhlZS1mZWF0dXJlZC1jb250ZW50X19pdGVtIHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgZmxleC1iYXNpczogNDglO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZV9fZmVhdHVyZSB7XG4gIC5oZWUtZmVhdHVyZWQtY29udGVudC13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGNvbHVtbi1nYXA6IDIuNSU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG59XG4iLCIuaGVlLWNhcmQtLXN1bW1hcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5oZWUtY2FyZC0tc3VtbWFyeV9fdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI4XCIgdmlld0JveD1cIjAgMCAxMiA4XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHBhdGggZD1cIk02IDAuNUM2LjMgMC41IDYuNSAwLjYgNi43IDAuOEwxMS43IDUuOEMxMi4xIDYuMiAxMi4xIDYuOCAxMS43IDcuMkMxMS4zIDcuNiAxMC43IDcuNiAxMC4zIDcuMkw2IDIuOUwxLjcgNy4yQzEuMyA3LjYgMC42OTk5OTkgNy42IDAuMjk5OTk5IDcuMkMtMC4xMDAwMDEgNi44IC0wLjEwMDAwMSA2LjIgMC4yOTk5OTkgNS44TDUuMyAwLjhDNS41IDAuNiA1LjcgMC41IDYgMC41WlwiIGZpbGw9XCJibGFja1wiLz48L3N2Zz4nKTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luLXRvcDogbmhzdWstc3BhY2luZygyKTtcbiAgICB3aWR0aDogMTJweDtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtY2FyZC0tc3VtbWFyeV9faGVhZGluZyB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuaGVlLWNhcmQtLXN1bW1hcnlfX2xpc3Qge1xuICAgIEBpbmNsdWRlIG5oc3VrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZSgxOSk7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1jYXJkLS1zdW1tYXJ5X19pdGVtIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigzLCAnYm90dG9tJyk7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1wYWRkaW5nKDEsICdib3R0b20nKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX25oc3VrLWdyZXktNDtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICBmbGV4LWJhc2lzOiA0OCU7XG4gICAgICB9XG5cbiAgICAgICYuaGVlLWNhcmQtLXN1bW1hcnlfX2l0ZW1fX2xhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IG5oc3VrLXNwYWNpbmcoMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtY2FyZC0tc3VtbWFyeV9faXRlbV9fbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuaGVlLWNhcmQtLXN1bW1hcnlfX2l0ZW1fX2xpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmYXVsdCBzdGF0ZSBzdHlsaW5nIChjbG9zZWQgZm9yIG1vYmlsZSwgb3BlbiBmb3IgZGVza3RvcCkuXG4gICYuZGVmYXVsdCB7XG4gICAgLmhlZS1jYXJkLS1zdW1tYXJ5X19oZWFkaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDQsICdib3R0b20nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVlLWNhcmQtLXN1bW1hcnlfX2xpc3Qge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1jYXJkLS1zdW1tYXJ5X190b2dnbGUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmhlZS1jYXJkLS1hdXRob3Ige1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5oZWUtY2FyZF9fYWRkcmVzcyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMyk7XG4gICAgfVxufVxuXG4vLyBMYXlvdXQgc3R5bGluZyBmb3IgbXVsdGlwbGUgYXV0aG9ycyB3aXRoaW4gcGFnZSBib2R5LlxuLmhlZS1jYXJkLS1hdXRob3JfX2NvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAuaGVlLWNhcmQtLWF1dGhvciB7XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgICAgIHdpZHRoOiA0OCVcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVGhpcmQgd2lkdGggYW5kIHNpZGViYXIgc3R5bGluZyB0d2Vha3MuXG4ucGFnZV9fcmlnaHRiYXIsIC5oZWUtY2FyZC0tYXV0aG9yX19jb250YWluZXIge1xuICAgIC5oZWUtY2FyZC0taGVhZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRuaHN1ay1ib3JkZXItY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IG5oc3VrLXNwYWNpbmcoMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoMyk7XG5cbiAgICAgICAgLmhlZS1jYXJkX19pbWFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IG5oc3VrLXNwYWNpbmcoNCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBuaHN1ay1zcGFjaW5nKDQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1jYXJkX19jb250YWN0IHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZygyKTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBuaHN1ay1zcGFjaW5nKDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlZS1jYXJkX19jb250YWN0X19pdGVtIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5oZWUtdGFibGUtZXhwYW5kZXIge1xuICAuaGVlLXRhYmxlLWV4cGFuZGVyX190b2dnbGUge1xuICAgIEBpbmNsdWRlIG5oc3VrLXJlc3BvbnNpdmUtbWFyZ2luKDQsICdib3R0b20nKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5oZWUtdGFibGUtZXhwYW5kZXJfX3JvdyB7XG4gICAgQGluY2x1ZGUgbmhzdWstcmVzcG9uc2l2ZS1wYWRkaW5nKDMsICd0b3AnKTtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLXBhZGRpbmcoMywgJ2JvdHRvbScpO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3JfbmhzdWstZ3JleS00O1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmhlZS10YWJsZS1leHBhbmRlcl9fcm93X19oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1yZXNwb25zaXZlLW1hcmdpbigyLCAnYm90dG9tJyk7XG4gICAgZm9udC13ZWlnaHQ6ICRuaHN1ay1mb250LWJvbGQ7XG4gIH1cbn1cbiIsIi5oZWUtcXVvdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9uaHN1ay1ncmV5LTQ7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IG5oc3VrLXNwYWNpbmcoOCkgMCBuaHN1ay1zcGFjaW5nKDQpIDA7XG4gIHBhZGRpbmc6IG5oc3VrLXNwYWNpbmcoOCkgbmhzdWstc3BhY2luZyg0KSBuaHN1ay1zcGFjaW5nKDYpIG5oc3VrLXNwYWNpbmcoNCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMzQnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzNCAzMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTE4LjU4NzcgMzBWMjEuNjk4NUMxOC41ODc3IDE3LjM0NzMgMTkuMDk5NSAxMy43Nzg2IDIwLjEyMzIgMTAuOTkyNEMyMS4xODQ4IDguMjA2MTEgMjIuOTY2OCA1LjgzOTY5IDI1LjQ2OTIgMy44OTMxM0MyNy45NzE2IDEuOTQ2NTYgMzAuODE1MiAwLjY0ODg1NSAzNCAwVjYuNjQxMjJDMzEuNzYzIDcuOTM4OTMgMzAuNDkyOSA5LjY3NTU3IDMwLjE4OTYgMTEuODUxMUgzNFYzMEgxOC41ODc3Wk0wIDMwVjIxLjY5ODVDMCAxNy4zNDczIDAuNTExODQ4IDEzLjc3ODYgMS41MzU1NSAxMC45OTI0QzIuNTk3MTYgOC4yMDYxMSA0LjM3OTE1IDUuODM5NjkgNi44ODE1MiAzLjg5MzEzQzkuNDIxOCAxLjk0NjU2IDEyLjI2NTQgMC42NDg4NTUgMTUuNDEyMyAwVjYuNjQxMjJDMTMuMTc1NCA3LjkzODkzIDExLjkwNTIgOS42NzU1NyAxMS42MDE5IDExLjg1MTFIMTUuNDEyM1YzMEgwWicgZmlsbD0nd2hpdGUnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTI1cHg7XG4gICAgd2lkdGg6IDkwcHg7XG4gIH1cblxuICAuaGVlLXF1b3RlX190ZXh0IHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMjQpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICB9XG5cbiAgLmhlZS1xdW90ZV9fc291cmNlIHtcbiAgICBAaW5jbHVkZSBuaHN1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoMTkpO1xuICAgIG1hcmdpbi10b3A6IG5oc3VrLXNwYWNpbmcoMyk7XG4gIH1cbn1cbiIsIi5uaHN1ay1uZXdzbGV0dGVyLWZvcm0ge1xuICAubmhzdWstc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufSIsIi5hbHBoYS1mdWxsd2lkdGgge1xuICAucGFnZV9fZmVhdHVyZSwgLnBhZ2VfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucGFnZS5kb3VibGUtbWVudSB7XG4gIC5oZWUtbWljcm9oZXJvIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubmhzdWstc2tpcC1saW5rIHtcbiAgei1pbmRleDogMTUwICFpbXBvcnRhbnQ7XG59XG5cbi5icmVhZGNydW1icy5hbHBoYSB7XG4gIG1hcmdpbi1ib3R0b206IG5oc3VrLXNwYWNpbmcoOCk7XG59XG5cbi50aGlyZC1hIHtcbiAgLmhlZS1zZWNvbmRhcnktbWVudSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufSIsIi5oZWUtbWVnYS1tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5oZWUtbWVnYS1tZW51X19uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogOTYwcHg7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1tZWdhLW1lbnVfX2xpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cbiAgfVxuXG4gIC5oZWUtbWVnYS1tZW51X19pdGVtIHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLmhlZS1tZWdhLW1lbnVfX2xpbmsge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlZS1tZWdhLW1lbnVfX2xpbmsge1xuICAgIEBpbmNsdWRlIG5oc3VrLWZvbnQoMTYpO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxMnB4IG5oc3VrLXNwYWNpbmcoMykgMTJweCBuaHN1ay1zcGFjaW5nKDIpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstYmx1ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGFyZ2UtZGVza3RvcCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgfVxuXG4gICAgICAubmhzdWstaWNvbl9fY2hldnJvbi1yaWdodCB7XG4gICAgICAgIGZpbGw6ICRjb2xvcl9uaHN1ay1ibHVlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmhzdWstZm9jdXMtY29sb3I7XG4gICAgICBib3JkZXItYm90dG9tOiAkbmhzdWstZm9jdXMtd2lkdGggc29saWQgJG5oc3VrLWZvY3VzLXRleHQtY29sb3I7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgY29sb3I6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuICAgICAgb3V0bGluZTogJG5oc3VrLWZvY3VzLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6ICRuaHN1ay1mb2N1cy13aWR0aDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuaHN1ay1mb2N1cy1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuXG4gICAgICAgIC5uaHN1ay1pY29uX19jaGV2cm9uLXJpZ2h0IHtcbiAgICAgICAgICBmaWxsOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmhzdWstZm9jdXMtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRuaHN1ay1mb250LWJvbGQ7XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3JfbmhzdWstYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlZS1tZWdhLW1lbnVfX2xhYmVsIHtcbiAgICBAaW5jbHVkZSBuaHN1ay1mb250KDE2KTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBjb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogMTJweCBuaHN1ay1zcGFjaW5nKDMpIDEycHggbmhzdWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cblxuICAvLyBIYXMgY2hpbGQgaXRlbXMuXG4gIC5oZWUtbWVnYS1tZW51X19zdWJuYXYge1xuICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgLmhlZS1tZWdhLW1lbnVfX2xpbmsge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzgnIGhlaWdodD0nNicgdmlld0JveD0nMCAwIDggNicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTQgNS4xMzU5OUMzLjggNS4xMzU5OSAzLjY2NjY3IDUuMDY5MzIgMy41MzMzMyA0LjkzNTk5TDAuMiAxLjYwMjY1Qy0wLjA2NjY2NjYgMS4zMzU5OSAtMC4wNjY2NjY2IDAuOTM1OTg3IDAuMiAwLjY2OTMyQzAuNDY2NjY3IDAuNDAyNjUzIDAuODY2NjY2IDAuNDAyNjUzIDEuMTMzMzMgMC42NjkzMkw0IDMuNTM1OTlMNi44NjY2NyAwLjY2OTMyQzcuMTMzMzMgMC40MDI2NTMgNy41MzMzMyAwLjQwMjY1MyA3LjggMC42NjkzMkM4LjA2NjY3IDAuOTM1OTg3IDguMDY2NjcgMS4zMzU5OSA3LjggMS42MDI2NUw0LjQ2NjY3IDQuOTM1OTlDNC4zMzMzMyA1LjA2OTMyIDQuMiA1LjEzNTk5IDQgNS4xMzU5OVonIGZpbGw9J3doaXRlJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIGxlZnQ6IDhweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICB9XG5cbiAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzgnIGhlaWdodD0nNicgdmlld0JveD0nMCAwIDggNicgZmlsbD0nJTIzMDAwMDAwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNNCA1LjEzNTk5QzMuOCA1LjEzNTk5IDMuNjY2NjcgNS4wNjkzMiAzLjUzMzMzIDQuOTM1OTlMMC4yIDEuNjAyNjVDLTAuMDY2NjY2NiAxLjMzNTk5IC0wLjA2NjY2NjYgMC45MzU5ODcgMC4yIDAuNjY5MzJDMC40NjY2NjcgMC40MDI2NTMgMC44NjY2NjYgMC40MDI2NTMgMS4xMzMzMyAwLjY2OTMyTDQgMy41MzU5OUw2Ljg2NjY3IDAuNjY5MzJDNy4xMzMzMyAwLjQwMjY1MyA3LjUzMzMzIDAuNDAyNjUzIDcuOCAwLjY2OTMyQzguMDY2NjcgMC45MzU5ODcgOC4wNjY2NyAxLjMzNTk5IDcuOCAxLjYwMjY1TDQuNDY2NjcgNC45MzU5OUM0LjMzMzMzIDUuMDY5MzIgNC4yIDUuMTM1OTkgNCA1LjEzNTk5WicgZmlsbD0nJTIzMDAwMDAwJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlZS1tZWdhLW1lbnVfX3BhbmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiA0MHB4IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTAwJTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMDtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDExMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB9XG4gIH1cblxuICAuaGVlLW1lZ2EtbWVudV9fcGFuZWxfX3dyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1heC13aWR0aDogOTYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuaGVlLW1lZ2EtbWVudV9fcGFuZWxfX2dyb3VwIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5oZWUtbWVnYS1tZW51X19wYW5lbF9fd3JhcHBlcltkYXRhLWdyb3VwLWNvdW50PVwiMVwiXSB7XG4gICAgLmhlZS1tZWdhLW1lbnVfX3BhbmVsX19ncm91cCB7XG4gICAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgfVxuICB9XG5cbiAgLmhlZS1tZWdhLW1lbnVfX3BhbmVsX193cmFwcGVyW2RhdGEtZ3JvdXAtY291bnQ9XCIyXCJdIHtcbiAgICAuaGVlLW1lZ2EtbWVudV9fcGFuZWxfX2dyb3VwIHtcbiAgICAgIGZsZXgtYmFzaXM6IDI2JTtcbiAgICB9XG4gIH1cblxuICAuaGVlLW1lZ2EtbWVudV9fcGFuZWxfX2xpbmsge1xuICAgIEBpbmNsdWRlIG5oc3VrLWZvbnQoMTYpO1xuICAgIGNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBhZGRpbmctYm90dG9tOiBuaHN1ay1zcGFjaW5nKDMpO1xuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuaHN1ay1mb2N1cy1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206ICRuaHN1ay1mb2N1cy13aWR0aCBzb2xpZCAkbmhzdWstZm9jdXMtdGV4dC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBjb2xvcjogJG5oc3VrLWZvY3VzLXRleHQtY29sb3I7XG4gICAgICBvdXRsaW5lOiAkbmhzdWstZm9jdXMtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogJG5oc3VrLWZvY3VzLXdpZHRoO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb21lIGljb24gdmFyaWFudCBzdHlsaW5nLlxuICAuaGVlLW1lZ2EtbWVudV9faXRlbS5oYXMtaG9tZS1pY29uIHtcbiAgICAuaGVlLW1lZ2EtbWVudV9fbGFiZWwsIC5oZWUtbWVnYS1tZW51X19saW5rIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE2JyBoZWlnaHQ9JzE0JyB2aWV3Qm94PScwIDAgMTYgMTQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J004IDBMNy41ODA4NyAwLjM3ODg0NEwwIDcuNTQyNDRMMC44MzgyNjkgOC4zMzQ1NkwxLjU4NTQyIDcuNjI4NTRWMTRINi44MzM3MVY4LjQ4OTU0SDkuMTY2MjlWMTRIMTQuNDE0NlY3LjYyODU0TDE1LjE2MTcgOC4zMzQ1NkwxNiA3LjU0MjQ0TDguNDE5MTQgMC4zNzg4NDRMOCAwWk04IDEuNTY3MDRMMTMuMjQ4MyA2LjUyNjQ1VjEyLjg5NzlIMTAuMzMyNlY3LjM4NzQ1SDUuNjY3NDNWMTIuODk3OUgyLjc1MTcxVjYuNTI2NDVMOCAxLjU2NzA0WicgZmlsbD0nYmxhY2snLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBtYXJnaW46IDNweCA0cHggMCAwO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBHcmV5IHRoZW1lLlxuICAmLnRoZW1lLWdyZXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ncmV5LTE7XG5cbiAgICAuaGVlLW1lZ2EtbWVudV9fbmF2LCAuaGVlLW1lZ2EtbWVudV9fcGFuZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWdyZXktMTtcbiAgICB9XG5cbiAgICAuaGVlLW1lZ2EtbWVudV9fcGFuZWxfX2xpbmsge1xuICAgICAgY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcblxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuaHN1ay1mb2N1cy10ZXh0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJsYWNrIHRleHQgb24gd2hpdGUgYmFja2dyb3VuZCB0aGVtZS5cbiAgJi50aGVtZS1ibGFjay13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLXdoaXRlO1xuXG4gICAgLmhlZS1tZWdhLW1lbnVfX25hdiwgLmhlZS1tZWdhLW1lbnVfX3BhbmVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgICB9XG5cbiAgICAuaGVlLW1lZ2EtbWVudV9fbGFiZWwsIC5oZWUtbWVnYS1tZW51X19saW5rIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRuaHN1ay1mb2N1cy13aWR0aCBzb2xpZCAkbmhzdWstZm9jdXMtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nOCcgaGVpZ2h0PSc2JyB2aWV3Qm94PScwIDAgOCA2JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNNCA1LjMzMzI1QzMuOCA1LjMzMzI1IDMuNjY2NjcgNS4yNjY1OSAzLjUzMzMzIDUuMTMzMjVMMC4yIDEuNzk5OTJDLTAuMDY2NjY2NiAxLjUzMzI1IC0wLjA2NjY2NjYgMS4xMzMyNSAwLjIgMC44NjY1ODZDMC40NjY2NjcgMC41OTk5MTkgMC44NjY2NjYgMC41OTk5MTkgMS4xMzMzMyAwLjg2NjU4Nkw0IDMuNzMzMjVMNi44NjY2NyAwLjg2NjU4NkM3LjEzMzMzIDAuNTk5OTE5IDcuNTMzMzMgMC41OTk5MTkgNy44IDAuODY2NTg2QzguMDY2NjcgMS4xMzMyNSA4LjA2NjY3IDEuNTMzMjUgNy44IDEuNzk5OTJMNC40NjY2NyA1LjEzMzI1QzQuMzMzMzMgNS4yNjY1OSA0LjIgNS4zMzMyNSA0IDUuMzMzMjVaJyBmaWxsPSd3aGl0ZScvJTNFJTNDL3N2ZyUzRVwiKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1tZWdhLW1lbnVfX2xpbmsge1xuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX25oc3VrLWJsdWU7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRuaHN1ay1mb2N1cy13aWR0aCBzb2xpZCAkbmhzdWstZm9jdXMtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlZS1tZWdhLW1lbnVfX3N1Ym5hdiB7XG4gICAgICAuaGVlLW1lZ2EtbWVudV9fbGluayB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzgnIGhlaWdodD0nNicgdmlld0JveD0nMCAwIDggNicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTQgNS4zMzMyNUMzLjggNS4zMzMyNSAzLjY2NjY3IDUuMjY2NTkgMy41MzMzMyA1LjEzMzI1TDAuMiAxLjc5OTkyQy0wLjA2NjY2NjYgMS41MzMyNSAtMC4wNjY2NjY2IDEuMTMzMjUgMC4yIDAuODY2NTg2QzAuNDY2NjY3IDAuNTk5OTE5IDAuODY2NjY2IDAuNTk5OTE5IDEuMTMzMzMgMC44NjY1ODZMNCAzLjczMzI1TDYuODY2NjcgMC44NjY1ODZDNy4xMzMzMyAwLjU5OTkxOSA3LjUzMzMzIDAuNTk5OTE5IDcuOCAwLjg2NjU4NkM4LjA2NjY3IDEuMTMzMjUgOC4wNjY2NyAxLjUzMzI1IDcuOCAxLjc5OTkyTDQuNDY2NjcgNS4xMzMyNUM0LjMzMzMzIDUuMjY2NTkgNC4yIDUuMzMzMjUgNCA1LjMzMzI1WicgZmlsbD0nJTIzMjEyQjMyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nOCcgaGVpZ2h0PSc2JyB2aWV3Qm94PScwIDAgOCA2JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNNCA1LjMzMzI1QzMuOCA1LjMzMzI1IDMuNjY2NjcgNS4yNjY1OSAzLjUzMzMzIDUuMTMzMjVMMC4yIDEuNzk5OTJDLTAuMDY2NjY2NiAxLjUzMzI1IC0wLjA2NjY2NjYgMS4xMzMyNSAwLjIgMC44NjY1ODZDMC40NjY2NjcgMC41OTk5MTkgMC44NjY2NjYgMC41OTk5MTkgMS4xMzMzMyAwLjg2NjU4Nkw0IDMuNzMzMjVMNi44NjY2NyAwLjg2NjU4NkM3LjEzMzMzIDAuNTk5OTE5IDcuNTMzMzMgMC41OTk5MTkgNy44IDAuODY2NTg2QzguMDY2NjcgMS4xMzMyNSA4LjA2NjY3IDEuNTMzMjUgNy44IDEuNzk5OTJMNC40NjY2NyA1LjEzMzI1QzQuMzMzMzMgNS4yNjY1OSA0LjIgNS4zMzMyNSA0IDUuMzMzMjVaJyBmaWxsPSd3aGl0ZScvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5oZWUtYmFjay10by1ob21lLWJhbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay1ibHVlO1xuICBwYWRkaW5nOiBuaHN1ay1zcGFjaW5nKDIpIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5oZWUtYmFjay10by1ob21lLWJhbm5lcl9fbGluayB7XG4gICAgY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nOCcgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDggMTInIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00wLjUgNkMwLjUgNS43IDAuNiA1LjUgMC44IDUuM0w1LjggMC4zQzYuMiAtMC4xIDYuOCAtMC4xIDcuMiAwLjNDNy42IDAuNyA3LjYgMS4zIDcuMiAxLjdMMi45IDZMNy4yIDEwLjNDNy42IDEwLjcgNy42IDExLjMgNy4yIDExLjdDNi44IDEyLjEgNi4yIDEyLjEgNS44IDExLjdMMC44IDYuN0MwLjYgNi41IDAuNSA2LjMgMC41IDZaJyBmaWxsPSd3aGl0ZScvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIG1hcmdpbi1yaWdodDogbmhzdWstc3BhY2luZygyKTtcbiAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgIHdpZHRoOiA3cHg7XG4gICAgfVxuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstd2hpdGU7XG4gICAgfVxuICB9XG59IiwiLmhlZS1zZWNvbmRhcnktbWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uaHN1ay13aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTogbmhzdWstc3BhY2luZyg3KTtcblxuICAuaGVlLXNlY29uZGFyeS1tZW51X19saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG4gIH1cblxuICAuaGVlLXNlY29uZGFyeS1tZW51X19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmhlZS1zZWNvbmRhcnktbWVudV9fbGluaywgLmhlZS1zZWNvbmRhcnktbWVudV9fbGFiZWwge1xuICAgIEBpbmNsdWRlIG5oc3VrLWZvbnQoMTYpO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstZ3JleS0xO1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlLCAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3JfbmhzdWstYmx1ZTtcbiAgICB9XG4gIH1cblxuICAvLyBIb21lIGljb24gdmFyaWFudCBzdHlsaW5nLlxuICAuaGVlLXNlY29uZGFyeS1tZW51X19pdGVtLmhhcy1ob21lLWljb24ge1xuICAgIC5oZWUtc2Vjb25kYXJ5LW1lbnVfX2xhYmVsLCAuaGVlLXNlY29uZGFyeS1tZW51X19saW5rIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbmhzdWstZm9udC1ib2xkO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE2JyBoZWlnaHQ9JzE0JyB2aWV3Qm94PScwIDAgMTYgMTQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J004IDBMNy41ODA4NyAwLjM3ODg0NEwwIDcuNTQyNDRMMC44MzgyNjkgOC4zMzQ1NkwxLjU4NTQyIDcuNjI4NTRWMTRINi44MzM3MVY4LjQ4OTU0SDkuMTY2MjlWMTRIMTQuNDE0NlY3LjYyODU0TDE1LjE2MTcgOC4zMzQ1NkwxNiA3LjU0MjQ0TDguNDE5MTQgMC4zNzg4NDRMOCAwWk04IDEuNTY3MDRMMTMuMjQ4MyA2LjUyNjQ1VjEyLjg5NzlIMTAuMzMyNlY3LjM4NzQ1SDUuNjY3NDNWMTIuODk3OUgyLjc1MTcxVjYuNTI2NDVMOCAxLjU2NzA0WicgZmlsbD0nYmxhY2snLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBtYXJnaW46IDNweCA0cHggMCAwO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUaGVtZSBibGFjayB0ZXh0LlxuICAmLnRoZW1lLWJsYWNrLXRleHQge1xuICAgIC5oZWUtc2Vjb25kYXJ5LW1lbnVfX2xhYmVsLCAuaGVlLXNlY29uZGFyeS1tZW51X19saW5rIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfbmhzdWstYmxhY2s7XG4gICAgfVxuICB9XG59Il19 */
