@charset "UTF-8";
body input[type="text"], body input[type="email"], body input[type="password"], body input[type="telephone"],
body select {
  height: 2.625rem;
  display: block;
  padding-left: .5rem;
  padding-right: .5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 100%;
  font-family: "Barlow", sans-serif;
  font-size: 1rem;
  line-height: 1.625rem;
  border: 2px solid #252525; }
  @media screen and (min-width: 80.25rem) {
    body input[type="text"], body input[type="email"], body input[type="password"], body input[type="telephone"],
    body select {
      font-size: 1rem;
      line-height: 1.625rem; } }
  @media screen and (min-width: 35rem) {
    body input[type="text"], body input[type="email"], body input[type="password"], body input[type="telephone"],
    body select {
      max-width: 18.75rem; } }

body select {
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
  background-color: #ffffff;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAEBAMAAABB42PDAAAAD1BMVEUAAAA0NDQzMzMzMzP///+isCFkAAAAA3RSTlMAgIgilleHAAAAAWJLR0QEj2jZUQAAABxJREFUCB1jUDY2NmJgNDYWYGAQNmRgYGAUYAAAFJEBiN5ZPCIAAAAASUVORK5CYII=");
  background-repeat: no-repeat;
  background-position: calc(100% - .5rem) 50%;
  background-size: 8px 4px;
  padding-right: 1.5rem; }
  body select::-ms-expand {
    display: none; }

body label {
  font-size: 0.875rem;
  line-height: 1.5rem;
  font-family: "Barlow", sans-serif;
  font-weight: bold; }
  @media screen and (min-width: 80.25rem) {
    body label {
      font-size: 0.875rem;
      line-height: 1.5rem; } }

body input[type="submit"] {
  display: block;
  margin: 0;
  line-height: 1; }

.form--inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
  margin-left: -.5rem;
  margin-right: -.5rem;
  margin-bottom: 1rem; }
  .form--inline > * {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    padding-left: .5rem;
    padding-right: .5rem;
    padding-bottom: .5rem;
    margin-bottom: 0 !important; }
  .form--inline input[type="text"] {
    max-width: 15.625rem; }
  .form--inline label {
    display: block; }

.exposed-filters__filter-label {
  min-width: 6.25rem;
  font-size: 1.25rem;
  line-height: 1.875rem;
  font-weight: 600;
  font-style: italic; }
  @media screen and (min-width: 80.25rem) {
    .exposed-filters__filter-label {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

.exposed-filters .chip {
  font-family: "Barlow", sans-serif;
  font-size: 0.875rem;
  line-height: 1.5rem;
  border: none;
  background-color: #dbe9f3;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAMAAAC67D+PAAAAXVBMVEUAAAAAL1cAMVYAMVgAL1YAMVYAMFgAMFcAL1YAMVgAMVcAMFgAL1cAL1YAMVgAMFcAMFgAL1cAMVYAMVcAMVgAMFcAMFcAL1cAMFcAMFcAMFcAMFcAMFcAMFf///+4YRiMAAAAHnRSTlMAUlNUVllaW1xdXmBhYmNkZmdoaW5v0NfY+Pn6+/0xthXlAAAAAWJLR0QecgogKwAAAEdJREFUCB0FwQkCQzAAALAUY9icK9PW/78pcXyA76EvE8zlTZ1/xFxDU2IsDbDe9wJor+sF7CmEtMGeAlXa6PIAQ+78R2A8H8AQA2erRjNyAAAAAElFTkSuQmCC");
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-position: calc(100% - .5rem) 50%;
  padding: .5rem 1.5rem .5rem .5rem;
  cursor: pointer; }
  @media screen and (min-width: 80.25rem) {
    .exposed-filters .chip {
      font-size: 0.875rem;
      line-height: 1.5rem; } }
  .exposed-filters .chip:hover {
    background-color: #c1c8cf; }

.exposed-filters .form-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  .exposed-filters .form-actions > * {
    margin-right: 0.5rem; }
  .exposed-filters .form-actions input, .exposed-filters .form-actions button {
    height: 2.625rem; }
  .exposed-filters .form-actions[data-drupal-selector="edit-actions"] {
    margin-top: 0.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
    -webkit-column-gap: 1rem;
            column-gap: 1rem;
    row-gap: 0.5rem; }
    .exposed-filters .form-actions[data-drupal-selector="edit-actions"] > * {
      height: auto;
      margin: 0;
      font-size: 1rem;
      line-height: 1.625rem; }

.exposed-filters input[type="submit"] {
  cursor: pointer; }

@media screen and (min-width: 61rem) {
  .exposed-filters {
    margin-bottom: 2.5rem; } }

.webform-submission-form.webform-submission-form label, .webform-submission-form.webform-submission-form legend {
  color: #4A4A4A;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500; }

.webform-submission-form.webform-submission-form legend {
  margin-bottom: 0.5rem; }

.webform-submission-form.webform-submission-form input + label {
  margin-left: 0.5rem; }

.webform-submission-form.webform-submission-form label + input,
.webform-submission-form.webform-submission-form label + select,
.webform-submission-form.webform-submission-form label ~ .select2-container {
  margin-top: 0.25rem; }

.webform-submission-form.webform-submission-form input[type="text"],
.webform-submission-form.webform-submission-form input[type="email"],
.webform-submission-form.webform-submission-form select,
.webform-submission-form.webform-submission-form .select2-selection--single,
.webform-submission-form.webform-submission-form .select2-selection--multiple {
  border-radius: 0.375rem;
  border: 2px solid #A6A6A6;
  height: 2.625rem; }

.webform-submission-form.webform-submission-form .select2-selection--single {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.webform-submission-form.webform-submission-form .select2-selection__arrow {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.webform-submission-form.webform-submission-form textarea {
  border-radius: 0.375rem;
  border: 2px solid #A6A6A6;
  padding: 0.5rem;
  font-size: 1rem;
  font-family: inherit; }

.webform-submission-form.webform-submission-form > * + * {
  margin-top: 1.75rem; }

.webform-submission-form.webform-submission-form > fieldset {
  margin-left: 0;
  margin-right: 0; }

.webform-submission-form.webform-submission-form .form-name-wrapper,
.webform-submission-form.webform-submission-form .form-primary-phone-wrapper,
.webform-submission-form.webform-submission-form .form-secondary-phone-wrapper,
.webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper,
.webform-submission-form.webform-submission-form .webform-email-confirm--wrapper .fieldset-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 1rem;
  -webkit-column-gap: 2rem;
          column-gap: 2rem; }

.webform-submission-form.webform-submission-form .form-name-wrapper > *,
.webform-submission-form.webform-submission-form .form-primary-phone-wrapper > *,
.webform-submission-form.webform-submission-form .form-secondary-phone-wrapper > *,
.webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > *,
.webform-submission-form.webform-submission-form .webform-email-confirm--wrapper .fieldset-wrapper > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

@media screen and (min-width: 61rem) {
  .webform-submission-form.webform-submission-form .form-name-wrapper > * > *,
  .webform-submission-form.webform-submission-form .form-primary-phone-wrapper > * > *,
  .webform-submission-form.webform-submission-form .form-secondary-phone-wrapper > * > *,
  .webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > * > *,
  .webform-submission-form.webform-submission-form .webform-email-confirm--wrapper .fieldset-wrapper > * > * {
    max-width: 100% !important;
    min-width: 100%; }
  .webform-submission-form.webform-submission-form .form-primary-phone-wrapper > *,
  .webform-submission-form.webform-submission-form .form-secondary-phone-wrapper > *,
  .webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > .form-item-address-address,
  .webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > .form-item-address-address-2,
  .webform-submission-form.webform-submission-form .webform-email-confirm--wrapper .fieldset-wrapper > * {
    min-width: calc((100% - 2rem) / 2);
    max-width: calc((100% - 2rem) / 2); }
  .webform-submission-form.webform-submission-form .form-name-wrapper > *,
  .webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > .form-item-address-city,
  .webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > .form-item-address-state-province,
  .webform-submission-form.webform-submission-form .webform-address--wrapper .fieldset-wrapper > .form-item-address-postal-code {
    min-width: calc((100% - 4rem) / 3);
    max-width: calc((100% - 4rem) / 3); } }

.webform-submission-form.webform-submission-form .js-form-type-radio,
.webform-submission-form.webform-submission-form .js-form-type-checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.25rem; }

.webform-submission-form.webform-submission-form input[type="radio"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 9999px;
  border: 2px solid #B2B2B2;
  position: relative; }
  .webform-submission-form.webform-submission-form input[type="radio"]::before {
    content: '';
    position: absolute;
    height: 0.7rem;
    width: 0.7rem;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%);
    background-color: transparent;
    border-radius: 9999px;
    -webkit-transition-property: background-color;
    transition-property: background-color;
    -webkit-transition-duration: 150ms;
            transition-duration: 150ms; }
  .webform-submission-form.webform-submission-form input[type="radio"]:checked::before {
    background-color: #D0021B; }

.webform-submission-form.webform-submission-form input[type="checkbox"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid #B2B2B2;
  position: relative; }
  .webform-submission-form.webform-submission-form input[type="checkbox"]::before {
    content: '';
    position: absolute;
    height: 1.15rem;
    width: 1.15rem;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%);
    background-color: transparent;
    -webkit-transition-property: background-color;
    transition-property: background-color;
    -webkit-transition-duration: 150ms;
            transition-duration: 150ms;
    -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 21 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m0 8.812 2.333-3.015L8.4 10.9 18.2 0 21 2.55 8.633 16 0 8.812Z'/%3E%3C/svg%3E") no-repeat 50% 50%;
            mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 21 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m0 8.812 2.333-3.015L8.4 10.9 18.2 0 21 2.55 8.633 16 0 8.812Z'/%3E%3C/svg%3E") no-repeat 50% 50%; }
  .webform-submission-form.webform-submission-form input[type="checkbox"]:checked::before {
    background-color: #D0021B; }

/* gets the `_header.scss` styles, and then this file has any needed supplements and overrides */
.community-header-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media screen and (min-width: 61rem) {
  .slab.header.community-header {
    background-color: white; } }

.community-area-label-mobile {
  color: #000;
  font-family: Barlow Condensed;
  font-style: normal;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1;
  margin: 0;
  -ms-flex-item-align: center;
      align-self: center; }
  @media screen and (min-width: 61rem) {
    .community-area-label-mobile {
      display: none; } }
  @media (min-width: 360px) {
    .community-area-label-mobile {
      font-size: 1.3125rem; } }
  @media screen and (min-width: 35rem) {
    .community-area-label-mobile {
      font-size: 2.25rem; } }

.community-header .header__main {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 1rem; }
  .community-header .header__main .header__main-nav {
    padding-top: 0.5rem; }

.community-header .header__main .global-nav__menu .menu-level-0 > ul > li {
  margin-bottom: 0;
  padding: 0.4rem 0; }
  @media screen and (min-width: 61rem) {
    .community-header .header__main .global-nav__menu .menu-level-0 > ul > li {
      padding: 0 .5rem; } }

@media screen and (min-width: 61rem) {
  .community-header-menu-extras {
    display: none; } }

.community-header .header__dropdown.header__dropdown {
  background-color: white;
  margin: -1rem;
  margin-top: 1rem;
  padding: 0 1rem;
  -webkit-transition-property: max-height, padding-bottom;
  transition-property: max-height, padding-bottom;
  -webkit-transition-duration: .3s, .1s;
          transition-duration: .3s, .1s;
  -webkit-transition-delay: 0s, .1s;
          transition-delay: 0s, .1s;
  -webkit-transition-timing-function: ease-in;
          transition-timing-function: ease-in;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .community-header .header__dropdown.header__dropdown.opened {
    padding-bottom: 1rem;
    -webkit-transition-delay: 0s, 0s;
            transition-delay: 0s, 0s; }
  @media screen and (min-width: 61rem) {
    .community-header .header__dropdown.header__dropdown {
      margin: 0 !important;
      padding: 0 !important;
      background-color: transparent !important;
      -webkit-transition: none;
      transition: none; } }
  .community-header .header__dropdown.header__dropdown > p {
    display: none;
    padding-left: 0.5rem;
    font-family: Barlow Condensed;
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 600;
    line-height: 2.25rem;
    /* 100% */
    text-transform: uppercase;
    margin: 0; }
    @media screen and (min-width: 61rem) {
      .community-header .header__dropdown.header__dropdown > p {
        display: block; } }

.slab.community-header__top-bar {
  display: none;
  background-color: #F0F0F0;
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin: 0 !important; }
  @media screen and (min-width: 61rem) {
    .slab.community-header__top-bar {
      display: block; } }
  .slab.community-header__top-bar .top-bar-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .slab.community-header__top-bar .top-bar-links {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.75rem; }
    .slab.community-header__top-bar .top-bar-links li:not(:last-child) {
      padding-right: 0.75rem;
      position: relative; }
      .slab.community-header__top-bar .top-bar-links li:not(:last-child)::after {
        content: '';
        position: absolute;
        right: 0;
        top: 0.3em;
        width: 1px;
        height: 0.75em;
        background-color: #9E9E9E; }
    .slab.community-header__top-bar .top-bar-links a {
      font-size: 0.875rem;
      font-style: normal;
      font-weight: 400;
      line-height: 1.125rem;
      text-decoration: none;
      color: black; }
      .slab.community-header__top-bar .top-bar-links a:hover, .slab.community-header__top-bar .top-bar-links a:focus-visible {
        color: #D0021B; }
  .slab.community-header__top-bar .profile-links {
    background-color: #4A4A4A;
    border-radius: 1.25rem;
    padding: 0.2rem 1rem 0.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.75rem; }
    .slab.community-header__top-bar .profile-links > :first-child:not(:last-child) {
      padding-right: 0.75rem;
      position: relative; }
      .slab.community-header__top-bar .profile-links > :first-child:not(:last-child)::after {
        content: '';
        position: absolute;
        right: 0;
        top: 0.3em;
        width: 1px;
        height: 0.75em;
        background-color: #9E9E9E; }
      .slab.community-header__top-bar .profile-links > :first-child:not(:last-child) a {
        font-weight: 400; }
    .slab.community-header__top-bar .profile-links a {
      font-size: 0.875rem;
      font-style: normal;
      font-weight: 700;
      line-height: 1.125rem;
      text-decoration: none;
      color: white; }
      .slab.community-header__top-bar .profile-links a:hover, .slab.community-header__top-bar .profile-links a:focus-visible {
        color: #F0F0F0; }

.community-header-menu-extras ul.extra-links {
  margin: 0;
  margin-top: 1.5rem;
  padding: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem; }
  .community-header-menu-extras ul.extra-links a {
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 0.4375rem;
    color: #4A4A4A; }
    .community-header-menu-extras ul.extra-links a:hover, .community-header-menu-extras ul.extra-links a:focus-visible {
      color: #D0021B; }

.community-header-menu-extras .profile-links {
  margin-left: auto;
  margin-top: 1rem;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  background-color: #4A4A4A;
  border-radius: 1.25rem;
  padding: 0.2rem 1rem 0.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem; }
  .community-header-menu-extras .profile-links > :first-child {
    padding-right: 0.75rem;
    position: relative; }
    .community-header-menu-extras .profile-links > :first-child::after {
      content: '';
      position: absolute;
      right: 0;
      top: 0.3em;
      width: 1px;
      height: 0.75em;
      background-color: #9E9E9E; }
    .community-header-menu-extras .profile-links > :first-child a {
      font-weight: 400; }
  .community-header-menu-extras .profile-links a {
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.125rem;
    text-decoration: none;
    color: white; }
    .community-header-menu-extras .profile-links a:hover, .community-header-menu-extras .profile-links a:focus-visible {
      color: #F0F0F0; }

.footer {
  background-color: #252525;
  color: #DADADA; }
  .footer a {
    color: #DADADA; }
    .footer a:hover, .footer a:active {
      color: #d0001b; }
  .footer__main {
    padding-bottom: 1rem; }
    .footer__main > * {
      margin: 0 auto; }
  .footer__branding {
    width: 151px; }
  .footer__menu {
    padding: 1rem 1rem; }
    .footer__menu ul {
      list-style: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .footer__menu ul li:not(:last-child)::after {
        content: '|';
        padding: 0 .5rem; }
    .footer__menu li, .footer__menu a {
      font-size: 1.25rem;
      line-height: 1.875rem; }
      @media screen and (min-width: 80.25rem) {
        .footer__menu li, .footer__menu a {
          font-size: 1.25rem;
          line-height: 1.875rem; } }
    .footer__menu a {
      font-weight: 600;
      text-decoration: none; }
  .footer__social ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .footer__social ul li {
      margin-bottom: .5rem; }
    @media screen and (min-width: 35rem) {
      .footer__social ul {
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }
        .footer__social ul li {
          margin-bottom: 0; } }
  .footer__social a {
    font-size: 1.25rem;
    line-height: 1.875rem; }
    @media screen and (min-width: 80.25rem) {
      .footer__social a {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .footer .footer__social__intro {
    text-align: center;
    padding-bottom: 0.5625rem;
    font-weight: 600;
    font-style: italic; }
  @media screen and (min-width: 61rem) {
    .footer__main {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      padding-bottom: 0; }
      .footer__main > * {
        margin: 0 0; }
    .footer__social {
      padding-bottom: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .footer__social li {
        padding-bottom: 0; }
    .footer .footer__social__intro {
      margin-right: 2.1875rem;
      padding-bottom: 0; } }

.footer-sub {
  padding-top: 1rem;
  padding-bottom: 1rem;
  text-align: center;
  background-color: #252525;
  color: #ffffff; }
  .footer-sub p {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.5rem; }
    @media screen and (min-width: 80.25rem) {
      .footer-sub p {
        font-size: 0.875rem;
        line-height: 1.5rem; } }
  @media screen and (min-width: 61rem) {
    .footer-sub {
      text-align: left; } }

.slab.header {
  padding: 0;
  border-bottom: 4px solid #d0001b;
  background-color: #f9f9f9; }

.header__main {
  padding: 1rem; }
  .header__main .header__branding {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .header__main .header__branding a {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 8.9375rem;
              flex: 0 0 8.9375rem; }
    .header__main .header__branding img, .header__main .header__branding svg {
      height: 3.125rem;
      width: auto; }
  .header__main .header__dropdown {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height .3s ease-in;
    transition: max-height .3s ease-in; }
    .header__main .header__dropdown.opened {
      max-height: 700px; }
  .header__main .header__nav-open {
    text-transform: uppercase; }
    .header__main .header__nav-open .close {
      display: none; }
    .header__main .header__nav-open.open .close {
      display: inherit; }
    .header__main .header__nav-open.open .open {
      display: none; }
  .header__main .header__main-nav {
    padding-top: 1.25rem; }
  @media screen and (min-width: 80.25rem) {
    .header__main .back-to-button {
      padding-top: 3rem; } }
  .header__main.header__main--stretched {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  @media screen and (max-width: 60.9375rem) {
    .header__main .header__dropdown .global-nav__menu {
      margin-bottom: 0.875rem; }
      .header__main .header__dropdown .global-nav__menu button {
        padding: 0; }
      .header__main .header__dropdown .global-nav__menu ul li {
        padding: 0.3125rem 0;
        position: relative; }
      .header__main .header__dropdown .global-nav__menu .open-children {
        position: absolute;
        right: 0;
        top: .4rem; }
        .header__main .header__dropdown .global-nav__menu .open-children .close {
          display: none; }
        .header__main .header__dropdown .global-nav__menu .open-children.open .close {
          display: inherit; }
        .header__main .header__dropdown .global-nav__menu .open-children.open .open {
          display: none; }
      .header__main .header__dropdown .global-nav__menu .menu-level-0 > ul > li {
        border-bottom: 1px solid #C3C3C3; }
      .header__main .header__dropdown .global-nav__menu .menu-level-1 {
        overflow: hidden;
        max-height: 0;
        padding-left: 1.25rem; }
        .header__main .header__dropdown .global-nav__menu .menu-level-1 .open-children {
          display: none; }
        .header__main .header__dropdown .global-nav__menu .menu-level-1.opened {
          max-height: 700px;
          margin-bottom: -0.3125rem;
          padding-bottom: 0.3125rem;
          background-color: #F0F0F0;
          border-top: 1px solid #C3C3C3; }
        .header__main .header__dropdown .global-nav__menu .menu-level-1 .is-active .menu-level-2 {
          display: inherit; }
      .header__main .header__dropdown .global-nav__menu .menu-level-2 {
        padding-left: 1.25rem;
        display: none; }
      .header__main .header__dropdown .global-nav__menu .menu-level-3 li::before {
        content: '— '; }
      .header__main .header__dropdown .global-nav__menu .menu-level-3 li, .header__main .header__dropdown .global-nav__menu .menu-level-3 a {
        font-size: 0.875rem;
        line-height: 1.5rem; } }
    @media screen and (max-width: 60.9375rem) and (min-width: 80.25rem) {
      .header__main .header__dropdown .global-nav__menu .menu-level-3 li, .header__main .header__dropdown .global-nav__menu .menu-level-3 a {
        font-size: 0.875rem;
        line-height: 1.5rem; } }
  @media screen and (min-width: 35rem) {
    .header__main .global-nav__menu .menu-level-0 > ul > li {
      padding: 0; } }
  @media screen and (min-width: 61rem) {
    .header__main {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
      .header__main .header__branding {
        display: block;
        -webkit-box-flex: 0;
            -ms-flex: 0 1 12.625rem;
                flex: 0 1 12.625rem; }
        .header__main .header__branding img, .header__main .header__branding svg {
          height: 4.5rem;
          width: auto; }
      .header__main .header__dropdown {
        overflow: visible;
        max-height: none;
        padding-top: 0;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
        .header__main .header__dropdown .header__main-nav {
          -webkit-box-flex: 1;
              -ms-flex: 1 1 auto;
                  flex: 1 1 auto; }
        .header__main .header__dropdown .header__utility {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 auto;
                  flex: 0 0 auto; }
      .header__main .header__nav-open {
        display: none; }
      .header__main .global-nav__menu .menu-level-0 > ul > li {
        padding: 0 .5rem; } }
  @media screen and (min-width: 80.25rem) {
    .header__main {
      padding: 0 0 0.9375rem 0; }
      .header__main .header__dropdown {
        padding-left: 2.5rem; } }

.global-nav a, .global-nav button {
  text-decoration: none;
  font-size: 1rem;
  line-height: 1.625rem;
  font-weight: 600;
  color: #151515; }
  @media screen and (min-width: 80.25rem) {
    .global-nav a, .global-nav button {
      font-size: 1rem;
      line-height: 1.625rem; } }
  .global-nav a:hover, .global-nav a:active, .global-nav button:hover, .global-nav button:active {
    color: #d0001b; }

.global-nav__menu ul {
  margin: 0;
  padding: 0;
  list-style: none; }

@media screen and (min-width: 61rem) {
  .global-nav .dropdown {
    padding: 0; }
    .global-nav .dropdown::after {
      font-family: "iconfont";
      font-style: normal;
      font-weight: normal;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "";
      font-size: 9px;
      display: inline-block;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg);
      -webkit-transform-origin: center;
              transform-origin: center;
      -webkit-transition: .3s ease-in;
      transition: .3s ease-in;
      padding: 0 1em; }
    .global-nav .dropdown.open::after {
      -webkit-transform: rotate(0);
              transform: rotate(0); }
  .global-nav .open-children {
    display: none; }
  .global-nav .real-page .submenu {
    display: none; }
  .global-nav__menu {
    padding-right: 1.25rem; }
    .global-nav__menu ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .global-nav__menu ul li {
        -webkit-box-flex: 1;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto;
        margin-bottom: 0.85rem; }
    .global-nav__menu .menu-level-0 > ul > li {
      position: relative;
      padding: 0 1.25rem;
      -webkit-transition-delay: .3s;
              transition-delay: .3s; }
      .global-nav__menu .menu-level-0 > ul > li.children-open {
        background-color: #ffffff;
        -webkit-box-shadow: 0px 12px 12px 0px rgba(0, 0, 0, 0.28);
                box-shadow: 0px 12px 12px 0px rgba(0, 0, 0, 0.28);
        -webkit-transition-delay: 0s;
                transition-delay: 0s; }
    .global-nav__menu .menu-level-1 {
      max-height: 0;
      overflow: hidden;
      -webkit-transition: .3s ease-in;
      transition: .3s ease-in;
      position: absolute;
      top: 100%;
      left: 0;
      width: 15.625rem;
      background-color: #ffffff;
      -webkit-box-shadow: 0px 12px 12px 0px rgba(0, 0, 0, 0.28);
              box-shadow: 0px 12px 12px 0px rgba(0, 0, 0, 0.28);
      z-index: 99; }
      .global-nav__menu .menu-level-1 > ul {
        padding: 1rem 1.25rem 0.625rem 1.25rem;
        display: block; }
      .global-nav__menu .menu-level-1.opened {
        max-height: 700px; }
    .global-nav__menu .menu-level-2 {
      display: none; } }

@media screen and (min-width: 80.25rem) {
  .global-nav a, .global-nav button {
    font-size: 1.25rem;
    line-height: 1.875rem; } }
  @media screen and (min-width: 80.25rem) and (min-width: 80.25rem) {
    .global-nav a, .global-nav button {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

.utility-nav a {
  font-weight: 600;
  color: #4A4A4A;
  font-size: 0.875rem;
  line-height: 1.5rem; }
  .utility-nav a:hover, .utility-nav a:active {
    color: #d0001b; }
  @media screen and (min-width: 80.25rem) {
    .utility-nav a {
      font-size: 0.875rem;
      line-height: 1.5rem; } }

.utility-nav__menu ul {
  margin: 0;
  padding: 0;
  list-style: none; }

.header__dropdown.opened .utility-nav .utility-nav__menu {
  margin-bottom: 1.5rem; }

@media screen and (min-width: 61rem) {
  .utility-nav {
    display: inline-block; }
    .utility-nav a {
      font-size: 1rem;
      line-height: 1.625rem; } }
    @media screen and (min-width: 61rem) and (min-width: 80.25rem) {
      .utility-nav a {
        font-size: 1rem;
        line-height: 1.625rem; } }

@media screen and (min-width: 61rem) {
    .utility-nav__menu {
      padding: 0.8125rem 0; }
      .utility-nav__menu ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .utility-nav__menu ul li:not(:last-child)::after {
          padding: 0 .25rem;
          content: '|'; } }

.site-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .site-search #search_q {
    height: 2.75rem;
    border: none;
    background-color: #EBEBEB;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.9375rem;
    width: calc(100% - 44px);
    max-width: none; }
  .site-search button {
    display: inline-block;
    padding: 0.75rem;
    margin: 0; }
    .site-search button::before {
      display: none; }

.contact-info {
  overflow: hidden; }
  .contact-info img {
    display: block;
    width: 100%;
    height: 100%;
    font-family: 'object-fit: contain; object-position: center';
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center; }
  .contact-info .contact-info__photo {
    width: 6.25rem;
    float: right; }
  .contact-info .contact-info__value--name {
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-weight: bold; }
    @media screen and (min-width: 80.25rem) {
      .contact-info .contact-info__value--name {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .contact-info .contact-info__value--title {
    font-size: 0.875rem;
    line-height: 1.5rem;
    font-weight: bold; }
    @media screen and (min-width: 80.25rem) {
      .contact-info .contact-info__value--title {
        font-size: 0.875rem;
        line-height: 1.5rem; } }
  .contact-info .contact-info__value--phone {
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-size: 1rem !important;
    line-height: 1.5rem !important; }
    @media screen and (min-width: 80.25rem) {
      .contact-info .contact-info__value--phone {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .contact-info .contact-info__value--email {
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-size: 1rem !important;
    line-height: 1.5rem !important; }
    @media screen and (min-width: 80.25rem) {
      .contact-info .contact-info__value--email {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .contact-info .contact-info__label--fax {
    display: inline-block;
    font-size: 1rem;
    line-height: 1.625rem;
    float: left; }
    @media screen and (min-width: 80.25rem) {
      .contact-info .contact-info__label--fax {
        font-size: 1rem;
        line-height: 1.625rem; } }
    .contact-info .contact-info__label--fax + dd {
      float: left;
      font-size: 1rem;
      line-height: 1.625rem; }
      @media screen and (min-width: 80.25rem) {
        .contact-info .contact-info__label--fax + dd {
          font-size: 1rem;
          line-height: 1.625rem; } }

.cta h2 {
  font-size: 2rem;
  line-height: 2.625rem; }
  @media screen and (min-width: 80.25rem) {
    .cta h2 {
      font-size: 2.5rem;
      line-height: 3.125rem; } }

.cta .editorial {
  margin-bottom: 0; }

@media screen and (min-width: 35rem) {
  .cta .editorial {
    margin-bottom: 1rem; } }

@media screen and (min-width: 61rem) {
  .cta .editorial {
    margin-bottom: 1.5rem; } }

.feature__header h2 {
  font-family: "Barlow", sans-serif;
  font-size: 2rem;
  line-height: 2.625rem;
  margin-top: 0; }
  @media screen and (min-width: 80.25rem) {
    .feature__header h2 {
      font-size: 2.5rem;
      line-height: 3.125rem; } }

.feature__content p:first-child {
  margin-top: 0; }

.feature__content p:last-child {
  margin-bottom: 0; }

.feature__content .inner-lists ul li:last-child, .feature__content .inner-lists ol li:last-child {
  margin-bottom: 0; }

.feature__actions {
  margin-top: 1rem; }
  .feature__actions .button:not(:last-child) {
    margin-bottom: 1rem; }

.feature__media {
  margin-top: 1rem; }

.feature--media {
  background-color: #F0F0F0;
  padding: 1rem; }

.collection-items--single .feature.feature--media {
  max-width: 100%; }
  @media screen and (min-width: 35rem) {
    .collection-items--single .feature.feature--media {
      padding: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .collection-items--single .feature.feature--media .feature__text,
      .collection-items--single .feature.feature--media .feature__media {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1 1; }
      .collection-items--single .feature.feature--media .feature__media {
        margin-top: 0; }
        .collection-items--single .feature.feature--media .feature__media * {
          height: 100%; }
        .collection-items--single .feature.feature--media .feature__media img {
          -o-object-fit: cover;
             object-fit: cover;
          -o-object-position: center;
             object-position: center;
          width: 100%; }
      .collection-items--single .feature.feature--media .feature__text {
        padding: 2rem; } }
  @media screen and (min-width: 61rem) {
    .collection-items--single .feature.feature--media .feature__text {
      padding: 3.75rem 6.5625rem; } }

@media screen and (min-width: 35rem) {
  .collection-items--single.slab--flip-feature .feature.feature--media {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }

.collection-items--multiple .feature.feature--media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  .collection-items--multiple .feature.feature--media > * {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }

.collection-items--multiple .feature__media {
  margin-bottom: 1rem;
  margin-top: 0; }
  .collection-items--multiple .feature__media * {
    width: 100%; }
  .collection-items--multiple .feature__media img {
    -o-object-fit: cover;
       object-fit: cover; }

.teaser--icon .teaser__text {
  padding: 1rem; }

.teaser__icon {
  background-color: #d0001b;
  height: 5rem;
  padding: 2.5rem;
  text-align: center; }
  .teaser__icon .icon__glyph {
    color: #ffffff;
    margin-bottom: 0.5rem; }
    .teaser__icon .icon__glyph::before {
      font-size: 5rem; }
  .teaser__icon svg {
    margin: 0 auto;
    height: 5rem;
    color: #ffffff; }
    .teaser__icon svg path {
      fill: #ffffff; }

.teaser__icon-links {
  padding-top: 0.5rem; }
  .teaser__icon-links ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    .teaser__icon-links ul li {
      margin-bottom: 0.5rem; }

.promo-text[class*='bg--'] {
  padding: 2.375rem 2.5rem; }

.promo-text__content p {
  font-size: 1.5rem;
  line-height: 2.125rem;
  margin-top: 0; }
  @media screen and (min-width: 80.25rem) {
    .promo-text__content p {
      font-size: 1.5rem;
      line-height: 2.125rem; } }

@media screen and (min-width: 35rem) {
  .promo-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .promo-text__media {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 200px;
              flex: 0 0 200px;
      margin-right: 1.875rem; } }

.image-list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 2rem 0; }
  .image-list-item__image {
    margin-left: 2rem; }

.image-list__items .image-list-item:not(:last-child) {
  border-bottom: 2px solid #c1c8cf; }

.pulltext p {
  margin-top: 0;
  font-style: italic;
  font-weight: 500; }

.teaser {
  display: block;
  text-decoration: none;
  max-width: 100%; }
  .teaser .teaser__title {
    font-size: 1.5rem;
    line-height: 2.125rem;
    font-weight: 600; }
    @media screen and (min-width: 80.25rem) {
      .teaser .teaser__title {
        font-size: 1.5rem;
        line-height: 2.125rem; } }
  .teaser .teaser__media picture, .teaser .teaser__media img {
    width: 100%;
    height: auto; }
  .teaser--news {
    color: #252525 !important;
    padding: 1.8125rem 1.8125rem 3.75rem 1.8125rem;
    position: relative; }
    .teaser--news:hover {
      color: #252525; }
    .teaser--news::after {
      content: '';
      background-image: url("../images/teaser-decoration.png");
      background-repeat: no-repeat;
      background-size: cover;
      height: 20px;
      width: 91px;
      position: absolute;
      bottom: 0;
      left: 2rem; }
    .teaser--news .teaser__text {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      height: 100%; }
      .teaser--news .teaser__text > * {
        max-width: 100%; }
    .teaser--news .date {
      display: block;
      text-transform: uppercase;
      margin-bottom: 0.6875rem;
      color: #151515;
      font-weight: normal; }
  .teaser--feature {
    position: relative; }
    .teaser--feature .teaser__title a {
      -webkit-text-decoration-style: dotted;
              text-decoration-style: dotted; }
    .teaser--feature[class*="bg--"] .teaser__text {
      padding: 1.25rem; }
    .teaser--feature img {
      display: block; }
    @media screen and (min-width: 35rem) {
      .teaser--feature {
        height: 100%; } }
  .teaser--gallery {
    background-color: #F0F0F0; }
    .teaser--gallery .teaser__title {
      padding: 1rem 1.25rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -ms-flex-line-pack: start;
          align-content: flex-start; }
      .teaser--gallery .teaser__title .icon {
        color: #d0001b; }
        .teaser--gallery .teaser__title .icon .icon__glyph {
          padding-left: 1rem;
          margin-right: 0;
          font-size: 1.25rem;
          line-height: 1.875rem; }
          @media screen and (min-width: 80.25rem) {
            .teaser--gallery .teaser__title .icon .icon__glyph {
              font-size: 1.25rem;
              line-height: 1.875rem; } }
    .teaser--gallery .media__heading {
      font-size: 1.25rem;
      line-height: 1.875rem; }
      @media screen and (min-width: 80.25rem) {
        .teaser--gallery .media__heading {
          font-size: 1.25rem;
          line-height: 1.875rem; } }

a.teaser--news {
  border: 2px solid #dbe9f3; }
  a.teaser--news .teaser__title {
    color: #285d76; }
  a.teaser--news:hover, a.teaser--news:focus, a.teaser--news:active {
    border-color: #d0001b; }
    a.teaser--news:hover .teaser__title, a.teaser--news:focus .teaser__title, a.teaser--news:active .teaser__title {
      color: #d0001b; }

.news-teasers a.teaser--news {
  border: none; }
  .news-teasers a.teaser--news .teaser__title {
    color: inherit; }
  .news-teasers a.teaser--news .date {
    position: relative;
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    margin-bottom: 2.75rem;
    color: inherit; }
    .news-teasers a.teaser--news .date::before {
      position: absolute;
      left: -29px;
      bottom: 8px;
      width: 20px;
      border-bottom: 2px solid #252525;
      content: ''; }

.block.bg--primary .block__header,
.block.bg--primary .block__footer,
.block.bg--primary .block__content {
  padding: 1rem; }

.block.bg--secondary .block__header,
.block.bg--secondary .block__footer,
.block.bg--secondary .block__content {
  padding: 1rem; }

.block.bg--tertiary .block__header,
.block.bg--tertiary .block__footer,
.block.bg--tertiary .block__content {
  padding: 1rem; }

.block.bg--quaternary .block__header,
.block.bg--quaternary .block__footer,
.block.bg--quaternary .block__content {
  padding: 1rem; }

.block.bg--accent .block__header,
.block.bg--accent .block__footer,
.block.bg--accent .block__content {
  padding: 1rem; }

.block.bg--dark-grey .block__header,
.block.bg--dark-grey .block__footer,
.block.bg--dark-grey .block__content {
  padding: 1rem; }

.block.bg--neutral-grey .block__header,
.block.bg--neutral-grey .block__footer,
.block.bg--neutral-grey .block__content {
  padding: 1rem; }

.block.bg--light-grey .block__header,
.block.bg--light-grey .block__footer,
.block.bg--light-grey .block__content {
  padding: 1rem; }

.block.bg--subtle-grey .block__header,
.block.bg--subtle-grey .block__footer,
.block.bg--subtle-grey .block__content {
  padding: 1rem; }

.block.bg--off-white .block__header,
.block.bg--off-white .block__footer,
.block.bg--off-white .block__content {
  padding: 1rem; }

.block.bg--near-white .block__header,
.block.bg--near-white .block__footer,
.block.bg--near-white .block__content {
  padding: 1rem; }

.block.bg--success .block__header,
.block.bg--success .block__footer,
.block.bg--success .block__content {
  padding: 1rem; }

.block.bg--warning .block__header,
.block.bg--warning .block__footer,
.block.bg--warning .block__content {
  padding: 1rem; }

.block.bg--error .block__header,
.block.bg--error .block__footer,
.block.bg--error .block__content {
  padding: 1rem; }

.block.bg--black .block__header,
.block.bg--black .block__footer,
.block.bg--black .block__content {
  padding: 1rem; }

.block.bg--white .block__header,
.block.bg--white .block__footer,
.block.bg--white .block__content {
  padding: 1rem; }

.block__header {
  padding-bottom: 1rem; }

.block__footer {
  padding-top: 1rem; }

.editorial {
  margin-bottom: 1rem; }
  .editorial:last-child {
    margin-bottom: 0; }
  .editorial::after {
    display: block;
    clear: both;
    content: ''; }
  .editorial aside {
    margin-bottom: 1rem; }

@media screen and (min-width: 35rem) {
  .editorial--aside-right aside {
    width: 20rem;
    max-width: 60%;
    margin: 0 0 1rem 1rem;
    float: right; }
  .editorial--aside-left aside {
    width: 20rem;
    max-width: 60%;
    margin: 0 1rem 1rem 0;
    float: left; } }

.grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: -0.75rem; }
  .grid > * {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    width: 100%;
    max-width: calc(100% - 1.5rem);
    margin: 0.75rem 0.75rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .grid.grid--no-grow > * {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .grid.grid--tight {
    margin: -0.75rem; }
    .grid.grid--tight > * {
      margin: 0.75rem; }
  .grid.grid--small {
    margin: 0; }
    .grid.grid--small > * {
      -ms-flex-preferred-size: 36.625rem;
          flex-basis: 36.625rem;
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0; }
    @media screen and (min-width: 35rem) {
      .grid.grid--small {
        margin: -1rem -1.5rem; }
        .grid.grid--small > * {
          margin: 1rem 1.5rem;
          min-width: 36.625rem; } }
  .grid.grid--centered-items > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  @media screen and (min-width: 35rem) {
    .grid.grid--centered-items {
      min-width: 35.125rem; } }
  .grid.grid--align-top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .grid.grid--attached > * {
    margin: 0;
    padding: 3rem; }
  .grid.grid--striped {
    margin: 0; }
    .grid.grid--striped > * {
      margin: 0;
      padding: 1.5rem;
      -ms-flex-preferred-size: 22.91667rem;
          flex-basis: 22.91667rem;
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0; }
      @media screen and (min-width: 80.25rem) {
        .grid.grid--striped > *:nth-child(6n - 5), .grid.grid--striped > *:nth-child(6n - 4), .grid.grid--striped > *:nth-child(6n - 3) {
          background-color: #F0F0F0; }
        .grid.grid--striped > *:nth-child(6n - 2), .grid.grid--striped > *:nth-child(6n - 1), .grid.grid--striped > *:nth-child(6n - 0) {
          background-color: #f9f9f9; } }
  .grid.grid--divided > * {
    position: relative; }
    .grid.grid--divided > *::after {
      display: block;
      position: absolute;
      top: 0;
      right: calc(-1.5rem - 1px);
      bottom: 0;
      width: 2px;
      background-color: #979797;
      content: ''; }
    .grid.grid--divided > *:last-child::after {
      display: none; }
  .grid.grid--bordered {
    overflow: hidden;
    padding: 1rem;
    margin: -1rem; }
    .grid.grid--bordered > * {
      position: relative;
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
      margin: 1rem; }
      .grid.grid--bordered > *::after {
        content: '';
        position: absolute;
        bottom: calc(-1rem - 2px);
        border-bottom: 1px dotted #4A4A4A;
        left: -1rem;
        right: calc(-1rem + 1px); }
      .grid.grid--bordered > * a {
        font-size: 1.25rem;
        line-height: 1.875rem;
        font-weight: 500; }
        @media screen and (min-width: 80.25rem) {
          .grid.grid--bordered > * a {
            font-size: 1.25rem;
            line-height: 1.875rem; } }
  @media screen and (min-width: 35rem) {
    .grid {
      margin: -1rem; }
      .grid > * {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1 1;
        max-width: 23.41667rem;
        margin: 1rem;
        min-width: 20rem; }
      .grid.grid--large > * {
        min-width: 35.125rem; }
      .grid.grid--small > * {
        -ms-flex-preferred-size: 22.41667rem;
            flex-basis: 22.41667rem;
        min-width: 22.41667rem; } }
  @media screen and (min-width: 61rem) {
    .grid {
      margin: -1.5rem; }
      .grid > * {
        max-width: 23.41667rem;
        margin: 1.5rem; }
      .grid.grid--small > * {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1 1;
        min-width: 12.85rem; } }

.collection-items--single .grid > * {
  max-width: 100%; }

@media screen and (min-width: 35rem) {
  .collection-items--single .grid > * {
    max-width: 50%; } }

ul.grid li > * {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1 1;
  max-width: 100%; }

.grid.grid--major-left,
.grid.grid--major-right {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .grid.grid--major-left > *,
  .grid.grid--major-right > * {
    max-width: calc(100% - 1.5rem); }
  .grid.grid--major-left > .grid__main,
  .grid.grid--major-right > .grid__main {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; }
    .grid.grid--major-left > .grid__main > .slab.slab--body .slab__content,
    .grid.grid--major-right > .grid__main > .slab.slab--body .slab__content {
      max-width: 100%; }
    .grid.grid--major-left > .grid__main > .slab:not([class*="bg--"]),
    .grid.grid--major-right > .grid__main > .slab:not([class*="bg--"]) {
      padding-left: 0;
      padding-right: 0; }
  .grid.grid--major-left > .grid__sidebar,
  .grid.grid--major-right > .grid__sidebar {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; }
  @media screen and (min-width: 61rem) {
    .grid.grid--major-left,
    .grid.grid--major-right {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
      .grid.grid--major-left > *,
      .grid.grid--major-right > * {
        max-width: initial; }
      .grid.grid--major-left > .grid__main,
      .grid.grid--major-right > .grid__main {
        max-width: 100%; }
      .grid.grid--major-left > .grid__sidebar,
      .grid.grid--major-right > .grid__sidebar {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 32%;
                flex: 0 0 32%; }
      .grid.grid--major-left.grid--smaller-sidebar > .grid__sidebar,
      .grid.grid--major-right.grid--smaller-sidebar > .grid__sidebar {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 20%;
                flex: 0 0 20%; } }

@media screen and (min-width: 61rem) {
  .grid.grid--major-right > .grid__sidebar {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1; } }

.slab.slab--body .slab__content {
  max-width: 56.25rem; }

.slab {
  padding: 1rem 1rem;
  position: relative; }
  @media screen and (min-width: 35rem) {
    .slab {
      padding: 1.5rem 2rem; } }
  @media screen and (min-width: 61rem) {
    .slab {
      padding: 1.5rem 2rem; } }
  @media screen and (min-width: 80.25rem) {
    .slab {
      padding: 2.5rem 0; } }
  @media screen and (min-width: 84.25rem) {
    .slab {
      padding: 2.5rem 0; } }
  .slab .slab__wrapper {
    max-width: 76.25rem;
    margin: 0 auto;
    z-index: 1; }
    .slab .slab__wrapper > :first-child {
      margin-top: 0; }
    .slab .slab__wrapper > :last-child {
      margin-bottom: 0; }
  .slab .slab__header {
    padding-bottom: 1rem; }
    .slab .slab__header h2 {
      text-align: center;
      text-transform: uppercase; }
      .slab .slab__header h2 span {
        border-bottom: 6px solid #FDC42E;
        line-height: 130%; }
  .slab .slab__footer {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
    text-align: center;
    z-index: 20; }
  .slab.slab--narrow .slab__wrapper {
    max-width: 49.25rem; }
  .slab.slab--tight-bottom {
    padding-bottom: 0; }
    .slab.slab--tight-bottom:not([class*="bg--"]) {
      padding-bottom: 1rem; }
  .slab.slab--has-top-border .slab-content {
    padding-top: 1.875rem;
    border-top: 3px dashed #c1c8cf; }
    @media screen and (min-width: 61rem) {
      .slab.slab--has-top-border .slab-content {
        padding-top: 3.75rem; } }
  .slab.slab--bleed .slab__wrapper {
    max-width: none; }
  .slab.body::after {
    content: "";
    clear: both;
    display: table; }
  .slab.body .slab__content h2:first-child {
    margin-top: 0; }
  .slab.body h5 {
    font-size: 1.2rem !important;
    padding-top: 1.25rem; }

.slab--body + .slab--body {
  padding-top: 0; }

.page-header + .slab {
  margin-top: 1rem; }

#main-content .slab:last-child {
  margin-bottom: 1rem; }

@media screen and (min-width: 35rem) {
  .page-header + .slab {
    margin-top: 1.5rem; }
  #main-content .slab:last-child {
    margin-bottom: 1.5rem; } }

@media screen and (min-width: 61rem) {
  .page-header + .slab {
    margin-top: 1.5rem; }
  #main-content .slab:last-child {
    margin-bottom: 1.5rem; } }

@media screen and (min-width: 80.25rem) {
  .page-header + .slab {
    margin-top: 2.5rem; }
  #main-content .slab:last-child {
    margin-bottom: 2.5rem; } }

@media screen and (min-width: 84.25rem) {
  .page-header + .slab {
    margin-top: 2.5rem; }
  #main-content .slab:last-child {
    margin-bottom: 2.5rem; } }

.slab[class*='bg--'] + .slab:not([class*="bg--"]),
.slab[class*='bg--'] + .slab.bg--white {
  margin-top: 1rem; }

.slab:not([class*="bg--"]) + .slab[class*='bg--'],
.slab.bg--white + .slab[class*='bg--'] {
  margin-top: 1rem; }

@media screen and (min-width: 61rem) {
  .slab[class*='bg--'] + .slab:not([class*="bg--"]),
  .slab[class*='bg--'] + .slab.bg--white {
    margin-top: 2.5rem; }
  .slab:not([class*="bg--"]) + .slab[class*='bg--'],
  .slab.bg--white + .slab[class*='bg--'] {
    margin-top: 2.5rem; } }

.slab.bg--white + .slab.bg--white,
.slab:not([class*="bg--"]) + .slab.bg--white {
  margin-top: 0; }

.slab.bg--off-white {
  position: relative; }
  .slab.bg--off-white::after {
    content: '';
    background-image: url("../images/teaser-decoration.png");
    background-repeat: no-repeat;
    background-size: cover;
    height: 20px;
    width: 91px;
    position: absolute;
    top: 0;
    right: 2rem; }

.grid__main .slab[class*='bg--'], .grid__sidebar .slab[class*='bg--'] {
  padding: 3rem; }

@media screen and (min-width: 80.25rem) {
  .slab--overflow {
    overflow: hidden; }
    .slab--overflow .contextual-region {
      position: static; }
    .slab--overflow .contextual {
      position: relative; }
    .slab--overflow .slab__wrapper {
      overflow: visible; }
    .slab--overflow .grid {
      overflow: visible; }
      .slab--overflow .grid > div:first-child picture, .slab--overflow .grid > div:last-child picture {
        position: relative;
        width: calc(50vw - 1.5rem);
        height: auto;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: initial;
           object-position: initial; }
      .slab--overflow .grid > div:first-child picture {
        left: calc(-50vw - 1.5rem + (76.25rem / 2)); } }

.newcity-logo svg {
  width: 10rem;
  height: 16.29rem; }

.newcity-logo-horizontal svg {
  width: 10rem;
  height: 2.944444rem; }

.newcity-logo-vertical svg {
  width: 10rem;
  height: 10.648rem; }

.newcity-logo-wordmark svg {
  width: 10rem;
  height: 1.3rem; }

figure {
  font-size: 1rem;
  line-height: 1.9375rem;
  margin: 0;
  font-family: "Barlow", sans-serif;
  font-style: italic; }
  @media screen and (min-width: 80.25rem) {
    figure {
      font-size: 1rem;
      line-height: 1.9375rem; } }
  figure img {
    display: block;
    width: 100%;
    height: 100%;
    font-family: "object-fit: contain; object-position: top center";
    -o-object-position: top center;
       object-position: top center;
    -o-object-fit: contain;
       object-fit: contain; }
  figure figcaption {
    margin-top: 0.5rem; }

.figure-wrapper figure, .figure-wrapper > article.media {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; }
  .figure-wrapper figure.align-left .responsive-embed, .figure-wrapper figure.align-right .responsive-embed, .figure-wrapper > article.media.align-left .responsive-embed, .figure-wrapper > article.media.align-right .responsive-embed {
    padding-top: 0; }
    .figure-wrapper figure.align-left .responsive-embed iframe, .figure-wrapper figure.align-right .responsive-embed iframe, .figure-wrapper > article.media.align-left .responsive-embed iframe, .figure-wrapper > article.media.align-right .responsive-embed iframe {
      position: static; }
  .figure-wrapper figure figcaption, .figure-wrapper > article.media figcaption {
    margin-top: 0.5rem;
    text-align: left;
    font-size: 0.875rem;
    line-height: 1.5rem; }
    @media screen and (min-width: 80.25rem) {
      .figure-wrapper figure figcaption, .figure-wrapper > article.media figcaption {
        font-size: 0.875rem;
        line-height: 1.5rem; } }
  @media screen and (min-width: 35rem) {
    .figure-wrapper figure.partial_content, .figure-wrapper figure.partial_4_3, .figure-wrapper > article.media.partial_content, .figure-wrapper > article.media.partial_4_3 {
      max-width: 50%; }
    .figure-wrapper figure.align-left, .figure-wrapper > article.media.align-left {
      margin-right: 1rem;
      float: left; }
    .figure-wrapper figure.align-right, .figure-wrapper > article.media.align-right {
      margin-left: 1rem;
      float: right; } }

.breadcrumbs {
  margin: 0;
  padding: 0;
  list-style: none; }
  .breadcrumbs li {
    margin-left: 0;
    text-indent: 0; }
    .breadcrumbs li::before {
      display: none; }
  .breadcrumbs li {
    display: inline-block; }

.link-group--invisible-header .headline-group {
  position: absolute;
  left: -999999em; }

/*
.link-group--collapsed {
  display: none;
}

@include rr-break-directive(medium) {
  .link-group--collapsed {
    display: block;
  }
}
*/
.pager__item--first a, .pager__item--previous a, .pager__item--next a, .pager__item--last a, .pager__item.is-active a {
  font-weight: bold; }

.pager__item--first, .pager__item--previous, .pager__item--next, .pager__item.last-page {
  position: relative; }
  .pager__item--first::after, .pager__item--previous::after, .pager__item--next::after, .pager__item.last-page::after {
    position: absolute;
    content: '';
    -webkit-transform: skewX(-10deg);
            transform: skewX(-10deg);
    top: -.3rem;
    bottom: -.3rem;
    right: 0;
    width: 1px;
    background-color: #4A4A4A; }

.pager {
  margin-top: 2rem; }

.pager__item a {
  font-family: "Barlow", sans-serif;
  font-size: 1.25rem;
  line-height: 1.875rem;
  text-transform: uppercase;
  background: none;
  font-weight: normal;
  font-style: normal;
  padding: .5rem .75rem; }
  @media screen and (min-width: 80.25rem) {
    .pager__item a {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

.pager__item.is-active {
  position: relative; }
  .pager__item.is-active::before {
    content: '';
    display: inline-block;
    text-align: center;
    position: absolute;
    z-index: -1;
    left: 0;
    top: -.3rem;
    bottom: -.3rem;
    right: 0;
    background-color: #c1c8cf;
    -webkit-transform: skewX(-10deg);
            transform: skewX(-10deg);
    -webkit-transition: width .2s ease-in-out, margin-left .2s ease-in-out;
    transition: width .2s ease-in-out, margin-left .2s ease-in-out; }

[data-drupal-views-infinite-scroll-pager] {
  list-style: none;
  margin: 0;
  padding: 0; }

.section-nav {
  display: none; }
  .section-nav ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .section-nav a {
    text-decoration: none; }
  .section-nav .menu-item__inner {
    position: relative; }
  .section-nav .open-children {
    position: absolute;
    right: .5rem;
    top: 1rem; }
    .section-nav .open-children .close {
      display: none; }
    .section-nav .open-children.open .close {
      display: inherit; }
    .section-nav .open-children.open .open {
      display: none; }
  .section-nav .menu-level-0 > ul > li > .menu-item__inner {
    background-color: #d0001b;
    padding: 1rem 1.0625rem 1rem 1.4375rem; }
    .section-nav .menu-level-0 > ul > li > .menu-item__inner a {
      color: #ffffff; }
  .section-nav .menu-level-1 {
    background-color: #F0F0F0; }
    .section-nav .menu-level-1 > ul {
      padding-bottom: 0.9375rem; }
      .section-nav .menu-level-1 > ul > li > .menu-item__inner {
        padding: 0.6875rem 1.0625rem 0.4375rem 1.8125rem; }
      .section-nav .menu-level-1 > ul a {
        color: #252525; }
    .section-nav .menu-level-1 .menu-item.has-children {
      overflow: hidden; }
      .section-nav .menu-level-1 .menu-item.has-children > .menu {
        max-height: 0;
        -webkit-transition: .3s ease-out;
        transition: .3s ease-out; }
        .section-nav .menu-level-1 .menu-item.has-children > .menu.opened {
          max-height: 700px;
          -webkit-transition: .3s ease-in;
          transition: .3s ease-in; }
    .section-nav .menu-level-1 .is-active > .menu-item__inner > a {
      color: #d0001b; }
  .section-nav .menu-level-2 .menu-item__inner {
    padding: 0.375rem 1.0625rem 0.25rem 2.125rem; }
  .section-nav .menu-level-3 ul li a::before {
    content: '– '; }
  @media screen and (min-width: 61rem) {
    .section-nav {
      display: inherit; } }

.skip-nav {
  font-size: 1.5rem;
  line-height: 2.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: -5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  background-color: #252525; }
  @media screen and (min-width: 80.25rem) {
    .skip-nav {
      font-size: 1.5rem;
      line-height: 2.125rem; } }
  .skip-nav:link, .skip-nav:visited {
    color: #ffffff; }
  .skip-nav:active, .skip-nav:hover, .skip-nav:focus {
    color: #d0001b; }
  .skip-nav:focus {
    top: 0;
    -webkit-transition: top .5s;
    transition: top .5s; }

.social-media-links__menu a {
  display: block;
  margin-right: 1rem;
  color: #252525;
  background-color: #ffffff;
  border-radius: 50%;
  height: 44px;
  width: 44px;
  line-height: 44px; }
  .social-media-links__menu a span {
    height: 100%; }

.social-media-links__menu .icon {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.social-media-links__menu img {
  height: 44px;
  width: 44px;
  -o-object-fit: contain;
     object-fit: contain; }

.social-media-links--colorize a .icon__glyph {
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out; }
  .social-media-links--colorize a .icon__glyph[class*=facebook] {
    color: #1877f2; }
  .social-media-links--colorize a .icon__glyph[class*=twitter] {
    color: #1da1f2; }
  .social-media-links--colorize a .icon__glyph[class*=linkedin] {
    color: #007bb5; }
  .social-media-links--colorize a .icon__glyph[class*=instagram] {
    color: #c32aa3; }
  .social-media-links--colorize a .icon__glyph[class*=youtube] {
    color: #ff0000; }
  .social-media-links--colorize a .icon__glyph[class*=pinterest] {
    color: #cb2027; }
  .social-media-links--colorize a .icon__glyph[class*=snapchat] {
    color: #fffc00;
    text-shadow: 0 0 1px black; }

.social-media-links--colorize a:hover .icon__glyph, .social-media-links--colorize a:active .icon__glyph, .social-media-links--colorize a:focus .icon__glyph {
  opacity: 0.6; }

.described-links {
  margin-bottom: 1.5rem; }
  .described-links dd {
    padding-left: 1rem; }

.headline-group {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  line-height: auto; }
  .headline-group .headline-group__super,
  .headline-group .headline-group__sub {
    display: block; }
  .headline-group .headline-group__super,
  .headline-group .headline-group__sub {
    font-size: 1.25rem;
    line-height: 1.875rem; }
    @media screen and (min-width: 80.25rem) {
      .headline-group .headline-group__super,
      .headline-group .headline-group__sub {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  h5.headline-group .headline-group__head {
    font-size: 1.5rem;
    line-height: 2.125rem; }
    @media screen and (min-width: 80.25rem) {
      h5.headline-group .headline-group__head {
        font-size: 1.5rem;
        line-height: 2.125rem; } }
  h6.headline-group .headline-group__head {
    font-size: 1.5rem;
    line-height: 2.125rem; }
    @media screen and (min-width: 80.25rem) {
      h6.headline-group .headline-group__head {
        font-size: 1.5rem;
        line-height: 2.125rem; } }

.headline-group--display {
  text-align: center; }
  .headline-group--display .headline-group__super {
    font-size: 2.25rem;
    line-height: 2.875rem;
    font-style: italic;
    font-weight: 200; }
    @media screen and (min-width: 80.25rem) {
      .headline-group--display .headline-group__super {
        font-size: 2.75rem;
        line-height: 3.375rem; } }
  .headline-group--display .headline-group__head {
    font-size: 2.75rem;
    line-height: 3.375rem;
    text-transform: uppercase; }
    @media screen and (min-width: 80.25rem) {
      .headline-group--display .headline-group__head {
        font-size: 3.375rem;
        line-height: 4rem; } }
    @media screen and (min-width: 80.25rem) {
      .headline-group--display .headline-group__head {
        font-size: 4.375rem; } }

.headline-group--bordered {
  padding: 1rem;
  border: 2px #F0F0F0 solid; }
  .headline-group--bordered .headline-group__super {
    font-size: 1rem;
    line-height: 1.625rem;
    color: #285d76;
    font-family: "Barlow Condensed", sans-serif;
    font-weight: bold; }
    @media screen and (min-width: 80.25rem) {
      .headline-group--bordered .headline-group__super {
        font-size: 1rem;
        line-height: 1.625rem; } }
  .headline-group--bordered .headline-group__head {
    font-size: 1.75rem;
    line-height: 2.375rem;
    font-family: "Barlow Condensed", sans-serif;
    font-weight: bold; }
    @media screen and (min-width: 80.25rem) {
      .headline-group--bordered .headline-group__head {
        font-size: 2.125rem;
        line-height: 2.75rem; } }

.content-meta {
  margin-bottom: 0.5rem; }
  .content-meta .byline {
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-weight: 400; }
    @media screen and (min-width: 80.25rem) {
      .content-meta .byline {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .content-meta .who-when {
    font-weight: 500; }
  .content-meta .taxonomy-list {
    display: block;
    font-style: italic; }
  .content-meta span + span::before {
    content: ' | '; }

.section-intro :last-child {
  margin-bottom: 0; }

.table-wrapper .wysiwyg-table {
  overflow-x: scroll; }

.table-wrapper table {
  border-collapse: collapse;
  border-bottom: 4px solid #5f5f5f; }
  .table-wrapper table th,
  .table-wrapper table td {
    padding: 1rem; }
    .table-wrapper table th:first-child,
    .table-wrapper table td:first-child {
      border-left-width: 0; }
    .table-wrapper table th:last-child,
    .table-wrapper table td:last-child {
      border-right-width: 0; }
  .table-wrapper table th:first-child {
    text-align: left; }
  .table-wrapper table thead th {
    border-bottom: 10px solid #5f5f5f; }
  .table-wrapper table caption {
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-style: italic;
    caption-side: bottom; }

.table-wrapper.table-wrapper--striped tbody tr:nth-child(odd) th, .table-wrapper.table-wrapper--striped tbody tr:nth-child(odd) td {
  background-color: #F0F0F0; }

dl dt {
  font-size: 1.25rem;
  line-height: 1.875rem;
  margin-bottom: 0.5rem;
  font-weight: 500; }
  @media screen and (min-width: 80.25rem) {
    dl dt {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

dl dd {
  margin-bottom: 1rem;
  margin-left: 0; }

dl.invisible-labels dt {
  display: none;
  margin: 0;
  padding-right: .5rem;
  clear: both; }
  dl.invisible-labels dt::after {
    content: ': '; }

dl.invisible-labels dd {
  margin-bottom: 0; }

ol.clean {
  margin: 0;
  padding: 0;
  list-style: none; }
  ol.clean li {
    margin-left: 0;
    text-indent: 0; }
    ol.clean li::before {
      display: none; }

ol.styled-counter {
  list-style: none;
  margin-left: 0;
  counter-reset: base-counter; }
  ol.styled-counter > li {
    counter-increment: base-counter;
    padding-left: 2.3em;
    position: relative; }
    ol.styled-counter > li::before {
      display: inline-block;
      width: 2em;
      text-align: right;
      content: counter(base-counter) ")";
      position: absolute;
      font-weight: bold;
      left: 0; }

ul.clean, ul.series, ul.piped {
  margin: 0;
  padding: 0;
  list-style: none; }
  ul.clean li, ul.series li, ul.piped li {
    margin-left: 0;
    text-indent: 0; }
    ul.clean li::before, ul.series li::before, ul.piped li::before {
      display: none; }

ul.clean ul {
  padding-left: 1.5rem;
  list-style: none; }

ul.series li, ul.piped li, ul.inline li {
  display: inline-block; }

ul.series li::after {
  content: ', '; }

ul.series li:last-child::after {
  content: ''; }

ul.piped li::after {
  content: ' | '; }

ul.piped li:last-child::after {
  content: ''; }

ul.arrow {
  list-style: none;
  margin-left: 0;
  padding-left: 2.3em;
  text-indent: 0; }
  ul.arrow:last-child {
    margin-bottom: 0; }
  ul.arrow li {
    position: relative;
    margin-bottom: 1em; }
    ul.arrow li::before {
      font-family: "Barlow", sans-serif;
      content: '⟶';
      position: absolute;
      left: -2.3em;
      display: inline-block;
      width: 2.3em;
      color: #285d76; }

ul.grid {
  padding: 0;
  list-style: none; }
  ul.grid li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

ul.padded li {
  margin-bottom: 1.5rem; }

ul.checkboxes {
  list-style: none;
  padding: 0; }
  ul.checkboxes li {
    vertical-align: middle; }
    ul.checkboxes li::before {
      vertical-align: middle;
      font-family: "iconfont";
      font-style: normal;
      font-weight: normal;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      padding-right: 0.5rem; }
    ul.checkboxes li.checked::before {
      content: ""; }
    ul.checkboxes li.unchecked::before {
      content: ""; }
  ul.checkboxes.inline li:not(:last-child) {
    padding-right: 1rem; }

ul.centered {
  display: table;
  margin: 0 auto; }

ul[data-tabby-tabs] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  list-style-type: none;
  padding: 0;
  font-size: 1.5rem; }
  ul[data-tabby-tabs] [aria-selected=true] {
    text-decoration: none;
    color: black; }

.community-page-tabs ul[data-tabby-tabs] {
  gap: 0rem;
  border-bottom: 4px solid #d0001b;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content; }
  .community-page-tabs ul[data-tabby-tabs] li {
    font-size: .9rem;
    line-height: 1.4; }
    .community-page-tabs ul[data-tabby-tabs] li a {
      position: relative;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      height: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      max-width: 8rem;
      padding: 1rem;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      text-align: center;
      background-color: black;
      color: white;
      border-right: 1px solid #4A4A4A;
      border-left: 1px solid #4A4A4A;
      text-decoration: none; }
      .community-page-tabs ul[data-tabby-tabs] li a[aria-selected=true] {
        background-color: #d0001b; }
        .community-page-tabs ul[data-tabby-tabs] li a[aria-selected=true]::after {
          content: '';
          position: absolute;
          bottom: 0.5rem;
          left: 1rem;
          right: 1rem;
          height: 1px;
          background-color: white; }
  @media screen and (max-width: 53.75rem) {
    .community-page-tabs ul[data-tabby-tabs] {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      max-width: none; }
      .community-page-tabs ul[data-tabby-tabs] li a {
        min-width: 100%;
        border-top: 1px solid #4A4A4A;
        border-bottom: 1px solid #4A4A4A;
        border-left: none;
        border-right: none; } }

[role=tabpanel][hidden] {
  display: none; }

blockquote {
  background-color: #dbe9f3;
  font-style: italic;
  margin: 1rem;
  padding: 1.25rem; }

button {
  font-family: "Barlow", sans-serif;
  background: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  cursor: pointer; }

.button {
  font-size: 1rem;
  line-height: 1.625rem;
  background: #d0001b;
  display: inline-block;
  position: relative;
  margin: 0 .5rem 0 0;
  padding: 0.5rem 1.5rem;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
  border-width: 2px;
  border-style: solid;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase; }
  @media screen and (min-width: 80.25rem) {
    .button {
      font-size: 1rem;
      line-height: 1.625rem; } }
  .button.button--muted {
    background-color: rgba(193, 200, 207, 0.3);
    border-color: rgba(193, 200, 207, 0.3);
    color: #252525; }
    .button.button--muted.button--arrow::after {
      color: #d0001b; }
    .button.button--muted:hover.button--arrow::after, .button.button--muted:active.button--arrow::after, .button.button--muted:focus.button--arrow::after {
      color: #ffffff; }
  .button.button--small {
    padding: 0.0625rem 0.3125rem;
    text-transform: none;
    font-family: "Barlow", sans-serif;
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.5rem; }
    @media screen and (min-width: 80.25rem) {
      .button.button--small {
        font-size: 0.875rem;
        line-height: 1.5rem; } }
    .button.button--small.button--arrow::after {
      padding-left: 0.25rem; }
  .button.button--large {
    font-size: 1.25rem;
    line-height: 1.875rem;
    padding: 0.8125rem 1.8125rem; }
    @media screen and (min-width: 80.25rem) {
      .button.button--large {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .button.button--arrow::after {
    font-family: "iconfont";
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 0.75rem;
    line-height: 1.375rem;
    content: "";
    padding-left: 0.5rem; }
    @media screen and (min-width: 80.25rem) {
      .button.button--arrow::after {
        font-size: 0.75rem;
        line-height: 1.375rem; } }
  .button.button--expanded {
    display: block;
    text-align: left;
    padding: 0.8125rem 1.8125rem; }
    .button.button--expanded.button--arrow {
      position: relative;
      padding-right: 3rem; }
      .button.button--expanded.button--arrow::after {
        font-style: normal;
        position: absolute;
        right: 1rem;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%); }
  .button .video-button {
    display: block; }
    .button .video-button .video-button__pause {
      display: block; }
    .button .video-button .video-button__play {
      display: none; }
    .button .video-button.video-button--paused .video-button__pause {
      display: none; }
    .button .video-button.video-button--paused .video-button__play {
      display: block; }

cite .description {
  font-size: 0.875rem;
  line-height: 1.5rem; }
  @media screen and (min-width: 80.25rem) {
    cite .description {
      font-size: 0.875rem;
      line-height: 1.5rem; } }

h1 {
  font-size: 2.75rem;
  line-height: 3.375rem;
  font-family: "Barlow Condensed", sans-serif; }
  @media screen and (min-width: 80.25rem) {
    h1 {
      font-size: 3.375rem;
      line-height: 4rem; } }

h2 {
  font-size: 2.25rem;
  line-height: 2.875rem;
  font-family: "Barlow Condensed", sans-serif; }
  @media screen and (min-width: 80.25rem) {
    h2 {
      font-size: 2.75rem;
      line-height: 3.375rem; } }

h3 {
  font-size: 2rem;
  line-height: 2.625rem;
  font-family: "Barlow Condensed", sans-serif; }
  @media screen and (min-width: 80.25rem) {
    h3 {
      font-size: 2.5rem;
      line-height: 3.125rem; } }

h4 {
  font-size: 1.75rem;
  line-height: 2.375rem;
  font-family: "Barlow Condensed", sans-serif; }
  @media screen and (min-width: 80.25rem) {
    h4 {
      font-size: 2.125rem;
      line-height: 2.75rem; } }

h5 {
  font-size: 1.5rem;
  line-height: 2.125rem;
  font-family: "Barlow Condensed", sans-serif; }
  @media screen and (min-width: 80.25rem) {
    h5 {
      font-size: 1.5rem;
      line-height: 2.125rem; } }

h6 {
  font-size: 1.25rem;
  line-height: 1.875rem;
  font-family: "Barlow Condensed", sans-serif; }
  @media screen and (min-width: 80.25rem) {
    h6 {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

h2 {
  font-size: 2.25rem;
  line-height: 2.875rem;
  margin: 1rem 0; }
  @media screen and (min-width: 80.25rem) {
    h2 {
      font-size: 2.75rem;
      line-height: 3.375rem; } }

h3 {
  font-size: 1.5rem;
  line-height: 2.125rem;
  margin: 1rem 0; }
  @media screen and (min-width: 80.25rem) {
    h3 {
      font-size: 1.5rem;
      line-height: 2.125rem; } }

h4 {
  font-size: 1.25rem;
  line-height: 1.875rem;
  margin: 1rem 0; }
  @media screen and (min-width: 80.25rem) {
    h4 {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

h5 {
  font-size: 1rem;
  line-height: 1.625rem;
  margin: 1rem 0; }
  @media screen and (min-width: 80.25rem) {
    h5 {
      font-size: 1rem;
      line-height: 1.625rem; } }

h6 {
  font-size: 1rem;
  line-height: 1.625rem;
  margin: 1rem 0; }
  @media screen and (min-width: 80.25rem) {
    h6 {
      font-size: 1rem;
      line-height: 1.625rem; } }

h1 {
  margin: 0; }
  h1 + .slab {
    padding-top: 0.5rem; }

.h3-look {
  font-size: 1.5rem;
  line-height: 2.125rem; }
  @media screen and (min-width: 80.25rem) {
    .h3-look {
      font-size: 1.5rem;
      line-height: 2.125rem; } }

.icon__glyph {
  display: inline-block;
  width: 1em;
  height: 1em; }

.icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline; }
  .icon .icon__glyph {
    width: auto;
    margin-right: .55em;
    vertical-align: baseline; }
  .icon .icon__label {
    white-space: normal; }

.icon--after {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  .icon--after .icon__glyph {
    padding-left: 0.5rem;
    margin-right: 0; }

.icon--no-label .icon__label {
  display: none; }

.icon--no-label .icon__glyph {
  margin-right: 0; }

.icon--stacked {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.1; }
  .icon--stacked .icon__glyph {
    margin-right: 0;
    margin-bottom: .5rem;
    font-size: 2.5em; }

.icon--big {
  font-size: 1.5rem;
  line-height: 2.125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
  text-transform: uppercase; }
  @media screen and (min-width: 80.25rem) {
    .icon--big {
      font-size: 1.5rem;
      line-height: 2.125rem; } }
  .icon--big .icon__glyph {
    position: relative;
    -ms-flex-item-align: start;
        align-self: flex-start;
    margin-right: .5em;
    font-size: 2em; }
  button .icon--big .icon__label,
  .button .icon--big .icon__label {
    font-size: 1em;
    line-height: 1.1;
    text-align: left; }

.align-icons .icon-label .ic {
  width: 1em; }

.align-icons .icon-label .label {
  margin-left: .5em; }

a {
  -webkit-transition: color .2s ease-in-out;
  transition: color .2s ease-in-out;
  font-weight: 600; }
  a.button {
    font-weight: 700;
    font-style: normal; }

.fancy-links a,
a.link--fancy,
.link--arrow,
.arrow-links a,
a.button {
  background-image: none; }

.link--fancy,
.fancy-links a {
  font-size: 1.25rem;
  line-height: 1.875rem;
  color: #d0001b;
  font-weight: 500;
  display: block;
  position: relative;
  -webkit-transition: color .2s ease-in-out,  margin-right .2s ease-in-out,  padding-left .2s ease-in-out, text-indent .2s ease-in-out;
  transition: color .2s ease-in-out,  margin-right .2s ease-in-out,  padding-left .2s ease-in-out, text-indent .2s ease-in-out;
  padding-left: 16px;
  text-indent: -16px;
  margin-right: 10px; }
  @media screen and (min-width: 80.25rem) {
    .link--fancy,
    .fancy-links a {
      font-size: 1.25rem;
      line-height: 1.875rem; } }
  .link--fancy:hover, .link--fancy:active,
  .fancy-links a:hover,
  .fancy-links a:active {
    color: #285d76; }
  .link--fancy::before,
  .fancy-links a::before {
    content: '';
    display: inline-block;
    position: relative;
    bottom: -1px;
    margin-left: 0;
    margin-right: 6px;
    width: 10px;
    height: .7em;
    background-color: #285d76;
    -webkit-transform: skewX(-10deg);
            transform: skewX(-10deg);
    -webkit-transition: width .2s ease-in-out, margin-left .2s ease-in-out;
    transition: width .2s ease-in-out, margin-left .2s ease-in-out; }
  .link--fancy:hover, .link--fancy:active,
  .fancy-links a:hover,
  .fancy-links a:active {
    margin-right: 0;
    padding-left: 26px;
    text-indent: -26px; }
    .link--fancy:hover::before, .link--fancy:active::before,
    .fancy-links a:hover::before,
    .fancy-links a:active::before {
      width: 20px;
      margin-left: 0; }

.link--arrow,
.arrow-links a {
  font-style: normal;
  display: block;
  text-indent: -1.5rem;
  margin-left: 1.5rem;
  font-size: 1.25rem;
  line-height: 1.875rem; }
  @media screen and (min-width: 80.25rem) {
    .link--arrow,
    .arrow-links a {
      font-size: 1.25rem;
      line-height: 1.875rem; } }
  .link--arrow::before,
  .arrow-links a::before {
    display: inline-block;
    font-family: "iconfont";
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    padding-right: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5rem;
    text-decoration: none;
    text-indent: 0; }
    @media screen and (min-width: 80.25rem) {
      .link--arrow::before,
      .arrow-links a::before {
        font-size: 0.875rem;
        line-height: 1.5rem; } }

.big-icon .icon {
  display: block; }

.big-icon .icon__glyph, .big-icon svg {
  display: block;
  height: 2.5rem;
  width: auto;
  font-size: 2.5rem;
  padding-bottom: 0.75rem; }

.editorial .link--fancy,
.editorial .link--fancy-reverse {
  font-size: 1.25rem;
  line-height: 1.875rem; }
  @media screen and (min-width: 80.25rem) {
    .editorial .link--fancy,
    .editorial .link--fancy-reverse {
      font-size: 1.25rem;
      line-height: 1.875rem; } }

p {
  font-size: 1rem;
  line-height: 1.625rem;
  margin-bottom: 1rem; }
  @media screen and (min-width: 80.25rem) {
    p {
      font-size: 1rem;
      line-height: 1.625rem; } }

p.intro,
.intro p {
  font-size: 1.5rem;
  line-height: 2.125rem; }
  @media screen and (min-width: 80.25rem) {
    p.intro,
    .intro p {
      font-size: 1.5rem;
      line-height: 2.125rem; } }

.sep::before {
  content: '•'; }

.sep--dash::before {
  content: '-'; }

.sep--pipe::before {
  content: '|'; }

.overlay {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: .5;
  mix-blend-mode: multiply; }
  .overlay div, .overlay picture {
    height: 100%;
    width: 100%; }
  .overlay img {
    width: 100%;
    height: 100%;
    font-family: 'object-fit: contain';
    -o-object-fit: cover;
       object-fit: cover; }
  .overlay.overlay--line-art {
    opacity: .2; }
    .overlay.overlay--line-art img {
      font-family: 'object-fit: cover; object-position: top center';
      -o-object-position: top center;
         object-position: top center; }
  .overlay.overlay--line-art--contain {
    opacity: .2; }
    .overlay.overlay--line-art--contain img {
      width: calc(100% - 4rem);
      height: calc(100% - 4rem);
      padding: 2rem;
      font-family: 'object-fit: contain; object-position: center';
      -o-object-fit: contain;
         object-fit: contain;
      -o-object-position: center;
         object-position: center; }
  @media screen and (min-width: 35rem) {
    .overlay {
      display: inherit; } }

.news-teasers__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .news-teasers__header > * {
    max-width: 100%; }
  .news-teasers__header h2 {
    text-transform: uppercase;
    font-size: 2.75rem;
    line-height: 3.375rem;
    margin: 0; }
    @media screen and (min-width: 80.25rem) {
      .news-teasers__header h2 {
        font-size: 3.375rem;
        line-height: 4rem; } }
    .news-teasers__header h2 span {
      border-bottom: 6px solid #FDC42E;
      line-height: 130%; }

.news-teasers .teaser__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .news-teasers .teaser__wrapper > * {
    max-width: 100%;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1 1; }

.news-teasers-stacked__header {
  text-transform: uppercase;
  padding-bottom: 1rem; }
  .news-teasers-stacked__header a {
    color: #252525;
    text-decoration: none; }
    .news-teasers-stacked__header a::after {
      color: #d0001b;
      font-size: 1.25rem;
      line-height: 1.875rem; }
      @media screen and (min-width: 80.25rem) {
        .news-teasers-stacked__header a::after {
          font-size: 1.25rem;
          line-height: 1.875rem; } }
  .news-teasers-stacked__header h2 {
    display: inline; }

.toggle-button__demo {
  margin-top: 2rem;
  margin-bottom: 2rem; }
  .toggle-button__demo[aria-hidden='true'] {
    display: none; }

.list-grouping {
  padding-bottom: 1.5rem; }
  .list-grouping__heading {
    background-color: #d0001b;
    color: #ffffff;
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-weight: 600;
    padding: 0.5rem 1rem;
    line-height: 1.875rem;
    margin: 0; }
    @media screen and (min-width: 80.25rem) {
      .list-grouping__heading {
        font-size: 1.25rem;
        line-height: 1.875rem; } }
  .list-grouping li {
    padding-left: 1rem !important; }
  .list-grouping .slab {
    padding: 1rem; }
  .list-grouping__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .list-grouping__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
            justify-content: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .list-grouping__text > * {
      -ms-flex-preferred-size: 33%;
          flex-basis: 33%;
      -webkit-box-flex: 0;
          -ms-flex-positive: 0;
              flex-grow: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      min-width: 9.375rem;
      padding-left: 1rem; }
    .list-grouping__text a {
      display: inline-block; }
  .list-grouping__image {
    -ms-flex-preferred-size: 100px;
        flex-basis: 100px;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0; }
  @media screen and (min-width: 35rem) {
    .list-grouping__text > * {
      min-width: 12.5rem; } }
  @media screen and (min-width: 61rem) {
    .list-grouping__content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
    .list-grouping__text {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .list-grouping__text > * {
        padding-left: 0; } }

.views__grouping + .views__grouping {
  margin-top: 3rem; }

.view-content div:last-child .list-grouping {
  padding-bottom: 0; }

.page-header {
  background-image: url("../images/page-header-background.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .page-header--plain h1 {
    text-transform: uppercase; }
    .page-header--plain h1 span {
      border-bottom: 6px solid #FDC42E;
      line-height: 130%; }
  .page-header--plain .page-header__text__inner {
    padding-top: 2rem;
    padding-bottom: 3rem; }
  .page-header--has-media .page-header__media {
    padding: 0; }
  .page-header--has-media .page-header__text {
    -webkit-box-align: inherit;
        -ms-flex-align: inherit;
            align-items: inherit; }
  @media screen and (min-width: 61rem) {
    .page-header--has-media {
      background-size: cover;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
      .page-header--has-media > div {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%;
        -ms-flex-item-align: stretch;
            align-self: stretch; }
      .page-header--has-media .page-header__text__inner {
        padding: 7.5rem 2.5rem 7.5rem 7.5rem; } }
  .page-header__media {
    padding: 1rem 1rem 0 1rem; }
    .page-header__media article, .page-header__media div {
      height: 100%; }
    .page-header__media picture {
      height: 100%; }
      .page-header__media picture img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: center;
           object-position: center; }
    .page-header__media figcaption {
      margin: 0.5rem 1rem; }
  .page-header__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    max-width: 76.25rem;
    margin: 0 auto; }
    .page-header__text h1 {
      margin: 0; }
  .page-header__text__inner {
    max-width: 100%;
    width: 100%;
    padding: 1rem 1rem;
    overflow: hidden; }
  .page-header--home {
    background: none; }
    .page-header--home .page-header__media {
      padding-left: 0;
      padding-right: 0; }
    .page-header--home .page-header__text {
      background-image: url("../images/page-header-background.jpg");
      background-size: cover;
      background-repeat: no-repeat; }
    .page-header--home h1 {
      font-size: 2.75rem;
      line-height: 3.375rem;
      margin: 0;
      text-transform: uppercase; }
      @media screen and (min-width: 80.25rem) {
        .page-header--home h1 {
          font-size: 3.375rem;
          line-height: 4rem; } }
      .page-header--home h1 .heading__text {
        background-color: #FDC42E;
        display: inline; }
  .page-header--full {
    background: none;
    display: block;
    position: relative; }
    .page-header--full .page-header__media {
      padding-left: 0;
      padding-right: 0;
      width: 100%; }
      .page-header--full .page-header__media img {
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
    .page-header--full .page-header__text {
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0; }
    .page-header--full h1 {
      font-size: 2.75rem;
      line-height: 3.375rem;
      margin: 0;
      text-transform: uppercase;
      text-align: left; }
      @media screen and (min-width: 80.25rem) {
        .page-header--full h1 {
          font-size: 3.375rem;
          line-height: 4rem; } }
      .page-header--full h1 .heading__text {
        background-color: #FDC42E;
        display: inline; }
    .page-header--full.flipped .page-header__text {
      left: auto;
      right: 0; }
      .page-header--full.flipped .page-header__text h1 {
        text-align: right; }
    @media screen and (min-width: 35rem) {
      .page-header--full .page-header__text {
        width: 50%; } }
    @media screen and (min-width: 80.25rem) {
      .page-header--full .page-header__text__inner {
        padding-left: calc((100vw - 1220px) / 2); }
      .page-header--full.flipped .page-header__text__inner {
        padding-left: 0;
        padding-right: calc((100vw - 1220px) / 2); } }
  .page-header--landing {
    background: none;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
    .page-header--landing .page-header__media {
      padding: 0;
      position: relative; }
      .page-header--landing .page-header__media::after {
        content: '';
        background-image: url("../images/teaser-decoration.png");
        background-repeat: no-repeat;
        background-size: cover;
        height: 20px;
        width: 91px;
        position: absolute;
        bottom: 0;
        right: 2rem; }
    .page-header--landing h1 {
      text-align: center;
      text-transform: uppercase; }
      .page-header--landing h1 span {
        border-bottom: 6px solid #FDC42E;
        line-height: 130%; }
    .page-header--landing .page-header__text {
      background: #f9f9f9;
      position: relative; }
    .page-header--landing .page-header__text__decoration {
      width: 17.0625rem;
      height: 25rem;
      position: absolute;
      background-image: url("../images/crossing-marker.svg");
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: cover;
      top: 5rem;
      z-index: -1; }
    .page-header--landing .page-header__text__inner {
      position: relative;
      z-index: 1; }
    @media screen and (min-width: 80.25rem) {
      .page-header--landing .page-header__text__inner {
        max-width: 80%;
        padding-left: 0;
        padding-right: 0;
        margin: 0 auto; } }
  .page-header--standard {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; }
    .page-header--standard h1 {
      text-align: center;
      text-transform: uppercase; }
      .page-header--standard h1 span {
        border-bottom: 6px solid #FDC42E;
        line-height: 130%; }
    .page-header--standard .page-header__text__inner {
      padding-top: 2rem;
      padding-bottom: 3rem;
      padding-left: 0;
      padding-right: 0; }
  .page-header--article .page-header__text {
    text-align: left; }
  .page-header--article .news-meta__date > *,
  .page-header--article .news-meta__author > * {
    background-color: #f9f9f9;
    font-weight: 500; }
  .page-header--article .news-meta__date {
    margin-top: 1rem;
    text-transform: uppercase; }

.grid__main .page-header .page-header__text {
  max-width: 100%; }

@media screen and (min-width: 61rem) {
  .grid__main .page-header.page-header--has-media > div {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UtcGF0dGVybnMuY3NzIiwiYXRvbXMvZm9ybXMvX2Zvcm1zLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9pbmNsdWRlcy9fcmVtLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9pbmNsdWRlcy9fZm9udHMuc2NzcyIsIi4uL2Fzc2V0cy9zY3NzL3JoeXRobS9fcnItYmFzZWxpbmUuc2NzcyIsIi4uL2Fzc2V0cy9zY3NzL2luY2x1ZGVzL19kZXNpZ24tdmFyaWFibGVzLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9yaHl0aG0vX3JyLXV0aWwuc2NzcyIsIi4uL2Fzc2V0cy9zY3NzL2luY2x1ZGVzL19taXhpbnMuc2NzcyIsIndyYXBwZXIvY29tbXVuaXR5LWhlYWRlci9fY29tbXVuaXR5LWhlYWRlci5zY3NzIiwid3JhcHBlci9mb290ZXIvX2Zvb3Rlci5zY3NzIiwid3JhcHBlci9oZWFkZXIvX2hlYWRlci5zY3NzIiwiLi4vaW50ZXJtZWRpYXRlL3Njc3MvX2ljb25mb250LXZhcnMuc2NzcyIsIm1vbGVjdWxlcy9ibG9ja3MvY29udGFjdC1pbmZvL19jb250YWN0LWluZm8uc2NzcyIsIm1vbGVjdWxlcy9ibG9ja3MvY3RhL19jdGEuc2NzcyIsIm1vbGVjdWxlcy9ibG9ja3MvZmVhdHVyZS9fZmVhdHVyZS5zY3NzIiwibW9sZWN1bGVzL2Jsb2Nrcy9pY29uLWxpbmtzL19pY29uLWxpbmtzLnNjc3MiLCJtb2xlY3VsZXMvYmxvY2tzL3Byb21vLXRleHQvX3Byb21vLXRleHQuc2NzcyIsIm1vbGVjdWxlcy9ibG9ja3MvaW1hZ2UtbGlzdC1pdGVtL19pbWFnZS1saXN0LWl0ZW0uc2NzcyIsIm1vbGVjdWxlcy9ibG9ja3MvcHVsbHRleHQvX3B1bGx0ZXh0LnNjc3MiLCJtb2xlY3VsZXMvYmxvY2tzL3RlYXNlci9fdGVhc2VyLnNjc3MiLCJtb2xlY3VsZXMvbGF5b3V0cy9ibG9jay9fYmxvY2suc2NzcyIsIm1vbGVjdWxlcy9sYXlvdXRzL2VkaXRvcmlhbC9fZWRpdG9yaWFsLnNjc3MiLCJtb2xlY3VsZXMvbGF5b3V0cy9ncmlkL19ncmlkLnNjc3MiLCJtb2xlY3VsZXMvbGF5b3V0cy9zaWRlYmFyL19zaWRlYmFyLnNjc3MiLCJtb2xlY3VsZXMvbGF5b3V0cy9zbGFiL19zbGFiLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9yaHl0aG0vX3JyLWdyaWQuc2NzcyIsIi4uL2Fzc2V0cy9zY3NzL3JoeXRobS9fcnItY29uZmlnLnNjc3MiLCJtb2xlY3VsZXMvbGF5b3V0cy9zbGFiLW92ZXJmbG93L19zbGFiLW92ZXJmbG93LnNjc3MiLCJtb2xlY3VsZXMvbWVkaWEvYXN2Zy9fYXN2Zy5zY3NzIiwibW9sZWN1bGVzL21lZGlhL2ZpZ3VyZS9fZmlndXJlLnNjc3MiLCJtb2xlY3VsZXMvbmF2aWdhdGlvbi9icmVhZGNydW1icy9fYnJlYWRjcnVtYnMuc2NzcyIsIm1vbGVjdWxlcy9uYXZpZ2F0aW9uL2xpbmstZ3JvdXAvX2xpbmstZ3JvdXAuc2NzcyIsIm1vbGVjdWxlcy9uYXZpZ2F0aW9uL3BhZ2VyL19wYWdlci5zY3NzIiwibW9sZWN1bGVzL25hdmlnYXRpb24vc2VjdGlvbi1uYXYvX3NlY3Rpb24tbmF2LnNjc3MiLCJtb2xlY3VsZXMvbmF2aWdhdGlvbi9za2lwLW5hdi9fc2tpcC1uYXYuc2NzcyIsIm1vbGVjdWxlcy9uYXZpZ2F0aW9uL3NvY2lhbC1tZWRpYS1saW5rcy9fc29jaWFsLW1lZGlhLWxpbmtzLnNjc3MiLCJtb2xlY3VsZXMvdGV4dC9kZXNjcmliZWQtbGlua3MvX2Rlc2NyaWJlZC1saW5rcy5zY3NzIiwibW9sZWN1bGVzL3RleHQvaGcvX2hnLnNjc3MiLCJtb2xlY3VsZXMvdGV4dC9tZXRhL19tZXRhLnNjc3MiLCJtb2xlY3VsZXMvdGV4dC9zZWN0aW9uLWludHJvL19zZWN0aW9uLWludHJvLnNjc3MiLCJtb2xlY3VsZXMvdGV4dC90YWJsZS9fdGFibGUuc2NzcyIsImF0b21zL2xpc3RzL2RsL19kbC5zY3NzIiwiYXRvbXMvbGlzdHMvb2wvX29sLnNjc3MiLCJhdG9tcy9saXN0cy91bC9fdWwuc2NzcyIsImF0b21zL3RleHQvYmxvY2txdW90ZS9fYmxvY2txdW90ZS5zY3NzIiwiYXRvbXMvdGV4dC9idXR0b24vX2J1dHRvbi5zY3NzIiwiYXRvbXMvdGV4dC9jaXRlL19jaXRlLnNjc3MiLCJhdG9tcy90ZXh0L2hlYWRpbmcvX2hlYWRpbmcuc2NzcyIsImF0b21zL3RleHQvaWNvbi9faWNvbi5zY3NzIiwiYXRvbXMvdGV4dC9saW5rL19saW5rLnNjc3MiLCJhdG9tcy90ZXh0L3AvX3Auc2NzcyIsImF0b21zL3RleHQvc2VwL19zZXAuc2NzcyIsImF0b21zL21lZGlhL292ZXJsYXkvX292ZXJsYXkuc2NzcyIsIm9yZ2FuaXNtcy9jb2xsZWN0aW9ucy9uZXdzLXRlYXNlcnMvX25ld3MtdGVhc2Vycy5zY3NzIiwib3JnYW5pc21zL2NvbGxlY3Rpb25zL25ld3MtdGVhc2Vycy1zdGFja2VkL19uZXdzLXRlYXNlcnMtc3RhY2tlZC5zY3NzIiwib3JnYW5pc21zL2ludGVyYWN0aXZlL3RvZ2dsZS1idXR0b24vX3RvZ2dsZS1idXR0b24uc2NzcyIsIm9yZ2FuaXNtcy9saXN0aW5ncy9saXN0LWdyb3VwaW5nL19saXN0LWdyb3VwaW5nLnNjc3MiLCJvcmdhbmlzbXMvcGFnZS1oZWFkZXJzL3BhZ2UtaGVhZGVyL19wYWdlLWhlYWRlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7RUFHQSxpQkMrQjREO0VEOUI1RCxlQUFBO0VBQ0Esb0JBQUE7RUFDQSxxQkFBQTtFQUNBLCtCQUFBO1VBQUEsdUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtDRVRrQztFQ3NCeEIsZ0JGWWtEO0VFVmhELHNCRlVnRDtFRHZCNUQsMEJJMkhnQixFSnRIaEI7RUtxREk7SUxyRUo7O01Hc0JVLGdCRllrRDtNRVZoRCxzQkZVZ0QsRURsQjVELEVBQUE7RUtxREk7SUxyRUo7O01BY0Esb0JDb0I0RCxFRGxCNUQsRUFBQTs7QUFoQkE7RU0wS0UseUJBQXdCO0VBQ3hCLDJCQUEw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QUE7TVJ0QlUsZ0JGWWtEO01FVmhELHNCRlVnRCxFVVk1RDtNTnVCSTtRTXJFSjtVUnNCVSxnQkZZa0Q7VUVWaEQsc0JGVWdELEVVWTVELEVBQUE7O0FDOUNBO0VUc0JVLGdCRllrRDtFRVZoRCxzQkZVZ0QsRVcvQjVEO0VQa0VJO0lPckVKO01Uc0JVLGtCRllrRDtNRVZoRCxzQkZVZ0QsRVcvQjVELEVBQUE7O0FBSEE7RUFNQSxpQkFBQSxFQUNBOztBUDhESTtFT3JFSjtJQVdBLG9CUHVCNkIsRU90QjdCLEVBQUE7O0FQeURJO0VPckVKO0lBaUJBLHNCUGlCNkIsRU9oQjdCLEVBQUE7O0FOd0dVO0VPdEhWLGtDWEprQztFQ3NCeEIsZ0JGWWtEO0VFVmhELHNCRlVnRDtFWTVCNUQsY0FBQSxFQUNBO0VSOERJO0lDcURNO01IcEdBLGtCRllrRDtNRVZoRCxzQkZVZ0QsRVkzQjVELEVBQUE7O0FQbUhVO0VPN0dWLGNBQUEsRUFDQTs7QVA0R1U7RU96R1YsaUJBQUEsRUFDQTs7QVB3R1U7RU9yR1YsaUJBQUEsRUFDQTs7QVBvR1U7RU9oR1YsaUJSUTZCLEVDMEYxQjtFQUZPO0lPOUZWLG9CQUFBLEVBQ0E7O0FQNkZVO0VPekZWLGlCUkM2QixFQzBGMUI7O0FBVFM7RU85RVosMEJUNEZvQjtFUzNGcEIsY0FBQSxFUCtFSzs7QU8xRUw7RUFFQSxnQkFBQSxFQThCQTtFUk5JO0lRMUJKO01BSUEsV0FBQTtNQUNBLHFCQUFBO01BQUEscUJBQUE7TUFBQSxjQUFBLEVBMkJBO01BaENBOztRQVNBLG9CQUFBO1lBQUEsWUFBQTtnQkFBQSxVQUFBLEVBQ0E7TUFWQTtRQVlBLGNBQUEsRUFTQTtRQXJCQTtVQWNBLGFBQUEsRUFDQTtRQWZBO1VBaUJBLHFCQUFBO2FBQUEsa0JBQUE7VUFDQSwyQkFBQTthQUFBLHdCQUFBO1VBQ0EsWUFBQSxFQUNBO01BcEJBO1FBdUJBLGNBQUEsRUFDQSxFQUFBO0VSRUk7SVExQko7TUE2QkEsMkJadEM0RCxFWXVDNUQsRUFBQTs7QVJKSTtFUTFCSjtJQXNDQSwrQkFBQTtJQUFBLCtC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O0liVUk7TUM4Q1E7UVlyRFosYUFBQSxFWnVESyxFQUFBO0VBRk87SVloRFosMEJkOERvQixFRVpmO0lBRk87TVk5Q1osc0JBQUE7TUFDQSxxQkFBQTtNQUFBLHFCQUFBO01BQUEsY0FBQTtNQUNBLDBCQUFBO1VBQUEsdUJBQUE7Y0FBQSwrQkFBQTtNQUNBLDBCQUFBO1VBQUEsMEJBQUEsRUFTQTtNWmtDWTtRWXpDWixlZDhDa0IsRWN4Q2xCO1FabUNZO1VZdkNaLG1CQUFBO1VBQ0EsZ0JBQUE7VWZ2RFUsbUJGWWtEO1VFVmhELHNCRlVnRCxFaUI2QzVEO1ViVkk7WUM4Q1E7Y0g3RkYsbUJGWWtEO2NFVmhELHNCRlVnRCxFaUI2QzVELEVBQUE7SVpvQ1k7TUg3RkYsbUJGWWtEO01FVmhELHNCRlVnRCxFaUJrRDVEO01iZkk7UUM4Q1E7VUg3RkYsbUJGWWtEO1VFVmhELHNCRlVnRCxFaUJrRDVELEVBQUE7O0FaK0JZO0VZeEJaLDBCZHFDc0IsRUVYakI7RUFGTztJWXRCWixlZDRCb0IsRWMzQnBCO0VacUJZO0lZakJaLHNCZHNCa0IsRWNsQmxCO0laYVk7TVlmWixlZG9Ca0IsRWNuQmxCOztBWmNZO0VZUFosYUFBQSxFWlNLO0VBRk87SVlMWixlQUFBLEVBQ0E7RVpJWTtJWUZaLG1CQUFBO0lBQ0EsNENoQmpIc0Q7SWdCa0h0RCxpQkFBQTtJQUNBLHVCakJsRjREO0lpQm1GNUQsZUFBQSxFQVNBO0laWFk7TVlJWixtQkFBQTtNQUNBLFlBQUE7TUFDQSxZQUFBO01BQ0EsWUFBQTtNQUNBLGlDZFdnQjtNY1ZoQixZQUFBLEVBQ0E7O0FDN0hBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIsRWMxQjdCOztBQVJBOzs7RUFPQSxjZDJCNkIs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RUFDQTtFNUJvRlk7STRCbEZaLGVBQUEsRUFDQTtFNUJpRlk7STRCL0VaLGVBQUEsRUFDQTtFNUI4RVk7STRCNUVaLGVBQUEsRUFDQTtFNUIyRVk7STRCekVaLGVBQUEsRUFDQTtFNUJ3RVk7STRCdEVaLGVBQUEsRUFDQTtFNUJxRVk7STRCbkVaLGVBQUE7SUFDQSwyQkFBQSxFQUNBOztBNUJpRVk7RTRCM0RaLGFBQUEsRUFDQTs7QUN6REE7RUFDQSxzQjlCaUM2QixFOEJ4QjdCO0VBVkE7SUFRQSxtQjlCMEI2QixFOEJ6QjdCOztBQ1BBO0VBR0EsZUFBQTtFQUNBLGNBQUE7RUFDQSxvQi9CMkI2QjtFK0IxQjdCLGtCQUFBLEVBbUNBO0VBekNBOztJQVVBLGVBQUEsRUFDQTtFQVhBOztJakNvQlUsbUJGWWtEO0lFVmhELHNCRlVnRCxFbUNkNUQ7SS9CaURJO00rQm5FSjs7UWpDb0JVLG1CRllrRDtRRVZoRCxzQkZVZ0QsRW1DZDVELEVBQUE7RUFZQTtJakNWVSxrQkZZa0Q7SUVWaEQsc0JGVWdELEVtQ001RDtJL0I2Qkk7TStCckNKO1FqQ1ZVLGtCRllrRDtRRVZoRCxzQkZVZ0QsRW1DTTVELEVBQUE7RUFSQTtJakNWVSxrQkZZa0Q7SUVWaEQsc0JGVWdELEVtQ001RDtJL0I2Qkk7TStCckNKO1FqQ1ZVLGtCRllrRDtRRVZoRCxzQkZVZ0QsRW1DTTVELEVBQUE7O0FBS0E7RUFDQSxtQkFBQSxFQWdCQTtFQWpCQTtJakN2QlUsbUJGWWtEO0lFVmhELHNCRlVnRDtJbUNnQjVELG1CQUFBO0lBQ0EsaUJBQUEsRUFDQTtJL0JpQkk7TStCeEJKO1FqQ3ZCVSxtQkZZa0Q7UUVWaEQsc0JGVWdELEVtQ2tCNUQsRUFBQTtFQVBBO0lqQ3ZCVSxtQkZZa0Q7SUVWaEQsc0JGVWdEO0ltQ3NCNUQsMEJBQUEsRUFLQTtJL0JRSTtNK0J4Qko7UWpDdkJVLG9CRllrRDtRRVZoRCxrQkZVZ0QsRW1DMkI1RCxFQUFBO0kvQlFJO00rQnhCSjtRQWNBLG9CbkN6QjRELEVtQzJCNUQsRUFBQTs7QUFHQTtFQUNBLGMvQi9CNkI7RStCZ0M3QiwwQkFBQSxFQWNBO0VBaEJBO0lqQzFDVSxnQkZZa0Q7SUVWaEQsc0JGVWdEO0ltQ29DNUQsZWhDbURvQjtJZ0NsRHBCLDRDbEN0RXNEO0lrQ3VFdEQsa0JBQUEsRUFDQTtJL0JKSTtNK0JMSjtRakMxQ1UsZ0JGWWtEO1FFVmhELHNCRlVnRCxFbUN1QzVELEVBQUE7RUFUQTtJakMxQ1UsbUJGWWtEO0lFVmhELHNCRlVnRDtJbUMyQzVELDRDbEM1RXNEO0lrQzZFdEQsa0JBQUEsRUFDQTtJL0JWSTtNK0JMSjtRakMxQ1Usb0JGWWtEO1FFVmhELHFCRlVnRCxFbUM2QzVELEVBQUE7O0FDL0VBO0VBQ0Esc0JoQ2lDNkIsRWdDUjdCO0VBMUJBO0lsQ3NCVSxtQkZZa0Q7SUVWaEQsc0JGVWdEO0lvQzdCNUQsaUJBQUEsRUFDQTtJaEMrREk7TWdDckVKO1FsQ3NCVSxtQkZZa0Q7UUVWaEQsc0JGVWdELEVvQzVCNUQsRUFBQTtFQU5BO0lBYUEsaUJBQUEsRUFDQTtFQWRBO0lBaUJBLGVBQUE7SUFDQSxtQkFBQSxFQUNBO0VBbkJBO0lBdUJBLGVBQUEsRUFDQTs7QUN4QkE7RUFFQSxpQkFBQSxFQUNBOztBQ0hBO0VBR0EsbUJBQUEsRUFDQTs7QUFKQTtFQU9BLDBCQUFBO0VBQ0EsaUNBQUEsRUFvQ0E7RUE1Q0E7O0lBWUEsY2xDc0I2QixFa0NiN0I7SUFyQkE7O01BZUEscUJBQUEsRUFDQTtJQWhCQTs7TUFtQkEsc0JBQUEsRUFDQTtFQXBCQTtJQXlCQSxpQkFBQSxFQUNBO0VBMUJBO0lBK0JBLGtDQUFBLEVBQ0E7RUFoQ0E7SUFxQ0Esa0JsQ0g2QjtJa0NJN0IscUJsQ0o2QjtJa0NNN0IsbUJBQUE7SUFDQSxxQkFBQSxFQUNBOztBQTFDQTtFQWtEQSwwQm5DK0VvQixFbUM5RXBCOztBQ25EQTtFckNzQlUsbUJGWWtEO0VFVmhELHNCRlVnRDtFdUMvQjVELHNCbkMrQjZCO0VtQzlCN0IsaUJBQUEsRUFDQTtFbkNnRUk7SW1DckVKO01yQ3NCVSxtQkZZa0Q7TUVWaEQsc0JGVWdELEV1QzdCNUQsRUFB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MkI1RDtJdkNRSTtNdUN6REo7UXpDVVUsb0JGWWtEO1FFVmhELG9CRlVnRCxFMkMyQjVELEVBQUE7SUFqREE7TUE4Q0Esc0J2Q3hCNkIsRXVDeUI3QjtFQS9DQTtJekNVVSxtQkZZa0Q7SUVWaEQsc0JGVWdEO0kyQytCNUQsNkJBQUEsRUFDQTtJdkNHSTtNdUN6REo7UXpDVVUsbUJGWWtEO1FFVmhELHNCRlVnRCxFMkNnQzVELEVBQUE7RUF0REE7SWxDVkksd0JBQXVCO0lBQ3ZCLG1CQUFrQjtJQUNsQixvQkFBbUI7SUFDbkIsZUFBYztJQUNkLG9DQUFtQztJQUNuQyxtQ0FBa0M7SVBlNUIsbUJGWWtEO0lFVmhELHNCRlVnRDtJMkNzQzVELGFsQzNEOEI7SWtDNEQ5QixxQnZDdkM2QixFdUN3QzdCO0l2Q0xJO011Q3pESjtRekNVVSxtQkZZa0Q7UUVWaEQsc0JGVWdELEUyQ3dDNUQsRUFBQTtFQTlEQTtJQWtFQSxlQUFBO0lBQ0EsaUJBQUE7SUFDQSw2QkFBQSxFQVlBO0lBaEZBO01Bc0VBLG1CQUFBO01BQ0Esb0JBQUEsRUFRQTtNQS9FQTtRQXlFQSxtQkFBQTtRQUNBLG1CQUFBO1FBQ0EsWUFBQTtRQUNBLFNBQUE7UUFDQSxvQ0FBQTtnQkFBQSw0QkFBQSxFQUNBO0VBOUVBO0lBbUZBLGVBQUEsRUFtQkE7SUF0R0E7TUFzRkEsZUFBQSxFQUNBO0lBdkZBO01BMEZBLGNBQUEsRUFDQTtJQTNGQTtNQStGQSxjQUFBLEVBQ0E7SUFoR0E7TUFtR0EsZUFBQSxFQUNBOztBQ2hIQTtFMUNzQlUsb0JGWWtEO0VFVmhELG9CRlVnRCxFNEMvQjVEO0V4Q2tFSTtJd0NyRUo7TTFDc0JVLG9CRllrRDtNRVZoRCxvQkZVZ0QsRTRDL0I1RCxFQUFBOztBQ0lBO0UzQ2VVLG1CRllrRDtFRVZoRCxzQkZVZ0Q7RTZDekI1RCw0QzVDUnNELEU0Q1N0RDtFekMyREk7SXlDOURKO00zQ2VVLG9CRllrRDtNRVZoRCxrQkZVZ0QsRTZDeEI1RCxFQUFBOztBQUhBO0UzQ2VVLG1CRllrRDtFRVZoRCxzQkZVZ0Q7RTZDekI1RCw0QzVDUnNELEU0Q1N0RDtFekMyREk7SXlDOURKO00zQ2VVLG1CRllrRDtNRVZoRCxzQkZVZ0QsRTZDeEI1RCxFQUFBOztBQUhBO0UzQ2VVLGdCRllrRDtFRVZoRCxzQkZVZ0Q7RTZDekI1RCw0QzVDUnNELEU0Q1N0RDtFekMyREk7SXlDOURKO00zQ2VVLGtCRllrRDtNRVZoRCxzQkZVZ0QsRTZDeEI1RCxFQUFBOztBQUhBO0UzQ2VVLG1CRllrRDtFRVZoRCxzQkZVZ0Q7RTZDekI1RCw0QzVDUnNELEU0Q1N0RDtFekMyREk7SXlDOURKO00zQ2VVLG9CRllrRDtNRVZoRCxxQkZVZ0QsRTZDeEI1RCxFQUFBOztBQUhBO0UzQ2VVLGtCRllrRDtFRVZoRCxzQkZVZ0Q7RTZDekI1RCw0QzVDUnNELEU0Q1N0RDtFekMyREk7SXlDOURKO00zQ2VVLGtCRllrRDtNRVZoRCxzQkZVZ0QsRTZDeEI1RCxFQUFBOztBQUhBO0UzQ2VVLG1CRllrRDtFRVZoRCxzQkZVZ0Q7RTZDekI1RCw0QzVDUnNELEU0Q1N0RDtFekMyREk7SXlDOURKO00zQ2VVLG1CRllrRDtNRVZoRCxzQkZVZ0QsRTZDeEI1RCxFQUFBOztBQUhBO0UzQ2VVLG1CRllrRDtFRVZoRCxzQkZVZ0Q7RTZDaEI1RCxlQUFBLEVBQ0E7RXpDa0RJO0l5QzlESjtNM0NlVSxtQkZZa0Q7TUVWaEQsc0JGVWdELEU2Q2Y1RCxFQUFBOztBQVpBO0UzQ2VVLGtCRllrRDtFRVZoRCxzQkZVZ0Q7RTZDaEI1RCxlQUFBLEVBQ0E7RXpDa0RJO0l5QzlESjtNM0NlVSxrQkZZa0Q7TUVWaEQsc0JGVWdELEU2Q2Y1RCxFQUFBOztBQVpBO0UzQ2VVLG1CRllrRDtFRVZoRCxzQkZVZ0Q7RTZDaEI1RCxlQUFBLEVBQ0E7RXpDa0RJO0l5QzlESjtNM0NlVSxtQkZZa0Q7TUVWaEQsc0JGVWdELEU2Q2Y1RCxFQUFBOztBQVpBO0UzQ2VVLGdCRllrRDtFRVZoRCxzQkZVZ0Q7RTZDaEI1RCxlQUFBLEVBQ0E7RXpDa0RJO0l5QzlESjtNM0NlVSxnQkZZa0Q7TUVWaEQsc0JGVWdELEU2Q2Y1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YXNlLXBhdHRlcm5zLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbmJvZHkgaW5wdXRbdHlwZT1cInRleHRcIl0sIGJvZHkgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBib2R5IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgYm9keSBpbnB1dFt0eXBlPVwidGVsZXBob25lXCJdLFxuYm9keSBzZWxlY3Qge1xuICBoZWlnaHQ6IDIuNjI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogLjVyZW07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMjUyNTI1OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgYm9keSBpbnB1dFt0eXBlPVwidGV4dFwiXSwgYm9keSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGJvZHkgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBib2R5IGlucHV0W3R5cGU9XCJ0ZWxlcGhvbmVcIl0sXG4gICAgYm9keSBzZWxlY3Qge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzVyZW0pIHtcbiAgICBib2R5IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBib2R5IGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgYm9keSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGJvZHkgaW5wdXRbdHlwZT1cInRlbGVwaG9uZVwiXSxcbiAgICBib2R5IHNlbGVjdCB7XG4gICAgICBtYXgtd2lkdGg6IDE4Ljc1cmVtOyB9IH1cblxuYm9keSBzZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUVCQU1BQUFCQjQyUERBQUFBRDFCTVZFVUFBQUEwTkRRek16TXpNelAvLy8raXNDRmtBQUFBQTNSU1RsTUFnSWdpbGxlSEFBQUFBV0pMUjBRRWoyalpVUUFBQUJ4SlJFRlVDQjFqVURZMk5tSmdORFlXWUdBUU5tUmdZR0FVWUFBQUZKRUJpTjVaUENJQUFBQUFTVVZPUks1Q1lJST1cIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIC41cmVtKSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogOHB4IDRweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIGJvZHkgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbmJvZHkgbGFiZWwge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBmb250LWZhbWlseTogXCJCYXJsb3dcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICBib2R5IGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cblxuYm9keSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLmZvcm0tLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IC0uNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmZvcm0tLWlubGluZSA+ICoge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmZvcm0tLWlubGluZSBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgbWF4LXdpZHRoOiAxNS42MjVyZW07IH1cbiAgLmZvcm0tLWlubGluZSBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmV4cG9zZWQtZmlsdGVyc19fZmlsdGVyLWxhYmVsIHtcbiAgbWluLXdpZHRoOiA2LjI1cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgLmV4cG9zZWQtZmlsdGVyc19fZmlsdGVyLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbi5leHBvc2VkLWZpbHRlcnMgLmNoaXAge1xuICBmb250LWZhbWlseTogXCJCYXJsb3dcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJlOWYzO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQU1BQUFDNjdEK1BBQUFBWFZCTVZFVUFBQUFBTDFjQU1WWUFNVmdBTDFZQU1WWUFNRmdBTUZjQUwxWUFNVmdBTVZjQU1GZ0FMMWNBTDFZQU1WZ0FNRmNBTUZnQUwxY0FNVllBTVZjQU1WZ0FNRmNBTUZjQUwxY0FNRmNBTUZjQU1GY0FNRmNBTUZjQU1GZi8vLys0WVJpTUFBQUFIblJTVGxNQVVsTlVWbGxhVzF4ZFhtQmhZbU5rWm1kb2FXNXYwTmZZK1BuNisvMHh0aFhsQUFBQUFXSkxSMFFlY2dvZ0t3QUFBRWRKUkVGVUNCMEZ3UWtDUXpBQUFMQVVZOWljSzlQVy83OHBjWHlBNzZFdkU4emxUWjEveEZ4RFUySXNEYkRlOXdKb3Irc0Y3Q21FdE1HZUFsWGE2UElBUSs3OFIyQThIOEFRQTJlclJqTnlBQUFBQUVsRlRrU3VRbUNDXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gLjVyZW0pIDUwJTtcbiAgcGFkZGluZzogLjVyZW0gMS41cmVtIC41cmVtIC41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAuZXhwb3NlZC1maWx0ZXJzIC5jaGlwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cbiAgLmV4cG9zZWQtZmlsdGVycyAuY2hpcDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MxYzhjZjsgfVxuXG4uZXhwb3NlZC1maWx0ZXJzIC5mb3JtLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5leHBvc2VkLWZpbHRlcnMgLmZvcm0tYWN0aW9ucyA+ICoge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIC5leHBvc2VkLWZpbHRlcnMgLmZvcm0tYWN0aW9ucyBpbnB1dCwgLmV4cG9zZWQtZmlsdGVycyAuZm9ybS1hY3Rpb25zIGJ1dHRvbiB7XG4gICAgaGVpZ2h0OiAyLjYyNXJlbTsgfVxuICAuZXhwb3NlZC1maWx0ZXJzIC5mb3JtLWFjdGlvbnNbZGF0YS1kcnVwYWwtc2VsZWN0b3I9XCJlZGl0LWFjdGlvbnNcIl0ge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBub3JtYWw7XG4gICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICByb3ctZ2FwOiAwLjVyZW07IH1cbiAgICAuZXhwb3NlZC1maWx0ZXJzIC5mb3JtLWFjdGlvbnNbZGF0YS1kcnVwYWwtc2VsZWN0b3I9XCJlZGl0LWFjdGlvbnNcIl0gPiAqIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgfVxuXG4uZXhwb3NlZC1maWx0ZXJzIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgLmV4cG9zZWQtZmlsdGVycyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIGxhYmVsLCAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gbGVnZW5kIHtcbiAgY29sb3I6ICM0QTRBNEE7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSBsZWdlbmQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIGlucHV0ICsgbGFiZWwge1xuICBtYXJnaW4tbGVmdDogMC41cmVtOyB9XG5cbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSBsYWJlbCArIGlucHV0LFxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIGxhYmVsICsgc2VsZWN0LFxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIGxhYmVsIH4gLnNlbGVjdDItY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTsgfVxuXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIHNlbGVjdCxcbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSxcbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkICNBNkE2QTY7XG4gIGhlaWdodDogMi42MjVyZW07IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIHRleHRhcmVhIHtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkICNBNkE2QTY7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDEuNzVyZW07IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtID4gZmllbGRzZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAuZm9ybS1uYW1lLXdyYXBwZXIsXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLmZvcm0tcHJpbWFyeS1waG9uZS13cmFwcGVyLFxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5mb3JtLXNlY29uZGFyeS1waG9uZS13cmFwcGVyLFxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC53ZWJmb3JtLWFkZHJlc3MtLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIsXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLndlYmZvcm0tZW1haWwtY29uZmlybS0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcm93LWdhcDogMXJlbTtcbiAgY29sdW1uLWdhcDogMnJlbTsgfVxuXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLmZvcm0tbmFtZS13cmFwcGVyID4gKixcbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAuZm9ybS1wcmltYXJ5LXBob25lLXdyYXBwZXIgPiAqLFxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5mb3JtLXNlY29uZGFyeS1waG9uZS13cmFwcGVyID4gKixcbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAud2ViZm9ybS1hZGRyZXNzLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gKixcbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAud2ViZm9ybS1lbWFpbC1jb25maXJtLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gKiB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5mb3JtLW5hbWUtd3JhcHBlciA+ICogPiAqLFxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLmZvcm0tcHJpbWFyeS1waG9uZS13cmFwcGVyID4gKiA+ICosXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAuZm9ybS1zZWNvbmRhcnktcGhvbmUtd3JhcHBlciA+ICogPiAqLFxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLndlYmZvcm0tYWRkcmVzcy0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+ICogPiAqLFxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLndlYmZvcm0tZW1haWwtY29uZmlybS0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+ICogPiAqIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDEwMCU7IH1cbiAgLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5mb3JtLXByaW1hcnktcGhvbmUtd3JhcHBlciA+ICosXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAuZm9ybS1zZWNvbmRhcnktcGhvbmUtd3JhcHBlciA+ICosXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAud2ViZm9ybS1hZGRyZXNzLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gLmZvcm0taXRlbS1hZGRyZXNzLWFkZHJlc3MsXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAud2ViZm9ybS1hZGRyZXNzLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gLmZvcm0taXRlbS1hZGRyZXNzLWFkZHJlc3MtMixcbiAgLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC53ZWJmb3JtLWVtYWlsLWNvbmZpcm0tLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIgPiAqIHtcbiAgICBtaW4td2lkdGg6IGNhbGMoKDEwMCUgLSAycmVtKSAvIDIpO1xuICAgIG1heC13aWR0aDogY2FsYygoMTAwJSAtIDJyZW0pIC8gMik7IH1cbiAgLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5mb3JtLW5hbWUtd3JhcHBlciA+ICosXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAud2ViZm9ybS1hZGRyZXNzLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gLmZvcm0taXRlbS1hZGRyZXNzLWNpdHksXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSAud2ViZm9ybS1hZGRyZXNzLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gLmZvcm0taXRlbS1hZGRyZXNzLXN0YXRlLXByb3ZpbmNlLFxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLndlYmZvcm0tYWRkcmVzcy0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+IC5mb3JtLWl0ZW0tYWRkcmVzcy1wb3N0YWwtY29kZSB7XG4gICAgbWluLXdpZHRoOiBjYWxjKCgxMDAlIC0gNHJlbSkgLyAzKTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoKDEwMCUgLSA0cmVtKSAvIDMpOyB9IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIC5qcy1mb3JtLXR5cGUtcmFkaW8sXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gLmpzLWZvcm0tdHlwZS1jaGVja2JveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07IH1cblxuLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtLndlYmZvcm0tc3VibWlzc2lvbi1mb3JtIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBib3JkZXItcmFkaXVzOiA5OTk5cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNCMkIyQjI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gaW5wdXRbdHlwZT1cInJhZGlvXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDAuN3JlbTtcbiAgICB3aWR0aDogMC43cmVtO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiA5OTk5cHg7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvcjtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtczsgfVxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0QwMDIxQjsgfVxuXG4ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkICNCMkIyQjI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0ud2ViZm9ybS1zdWJtaXNzaW9uLWZvcm0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEuMTVyZW07XG4gICAgd2lkdGg6IDEuMTVyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3I7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gICAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgMjEgMTYnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J20wIDguODEyIDIuMzMzLTMuMDE1TDguNCAxMC45IDE4LjIgMCAyMSAyLjU1IDguNjMzIDE2IDAgOC44MTJaJy8lM0UlM0Mvc3ZnJTNFXCIpIG5vLXJlcGVhdCA1MCUgNTAlOyB9XG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDAwMjFCOyB9XG5cbi8qIGdldHMgdGhlIGBfaGVhZGVyLnNjc3NgIHN0eWxlcywgYW5kIHRoZW4gdGhpcyBmaWxlIGhhcyBhbnkgbmVlZGVkIHN1cHBsZW1lbnRzIGFuZCBvdmVycmlkZXMgKi9cbi5jb21tdW5pdHktaGVhZGVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgLnNsYWIuaGVhZGVyLmNvbW11bml0eS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9IH1cblxuLmNvbW11bml0eS1hcmVhLWxhYmVsLW1vYmlsZSB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LWZhbWlseTogQmFybG93IENvbmRlbnNlZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDA7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5jb21tdW5pdHktYXJlYS1sYWJlbC1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNjBweCkge1xuICAgIC5jb21tdW5pdHktYXJlYS1sYWJlbC1tb2JpbGUge1xuICAgICAgZm9udC1zaXplOiAxLjMxMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgIC5jb21tdW5pdHktYXJlYS1sYWJlbC1tb2JpbGUge1xuICAgICAgZm9udC1zaXplOiAyLjI1cmVtOyB9IH1cblxuLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fbWFpbiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gIC5jb21tdW5pdHktaGVhZGVyIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fbWFpbi1uYXYge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07IH1cblxuLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fbWFpbiAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0wID4gdWwgPiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuNHJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gICAgLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fbWFpbiAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0wID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwIC41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY29tbXVuaXR5LWhlYWRlciAuaGVhZGVyX19kcm9wZG93bi5oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIG1hcmdpbjogLTFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbWF4LWhlaWdodCwgcGFkZGluZy1ib3R0b207XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4zcywgLjFzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcywgLjFzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fZHJvcGRvd24uaGVhZGVyX19kcm9wZG93bi5vcGVuZWQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzLCAwczsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5jb21tdW5pdHktaGVhZGVyIC5oZWFkZXJfX2Ryb3Bkb3duLmhlYWRlcl9fZHJvcGRvd24ge1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG4gIC5jb21tdW5pdHktaGVhZGVyIC5oZWFkZXJfX2Ryb3Bkb3duLmhlYWRlcl9fZHJvcGRvd24gPiBwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBCYXJsb3cgQ29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICAvKiAxMDAlICovXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgICAgLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fZHJvcGRvd24uaGVhZGVyX19kcm9wZG93biA+IHAge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5zbGFiLmNvbW11bml0eS1oZWFkZXJfX3RvcC1iYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMEYwO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gICAgLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5zbGFiLmNvbW11bml0eS1oZWFkZXJfX3RvcC1iYXIgLnRvcC1iYXItY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAxLjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5zbGFiLmNvbW11bml0eS1oZWFkZXJfX3RvcC1iYXIgLnRvcC1iYXItbGlua3Mge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDAuNzVyZW07IH1cbiAgICAuc2xhYi5jb21tdW5pdHktaGVhZGVyX190b3AtYmFyIC50b3AtYmFyLWxpbmtzIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciAudG9wLWJhci1saW5rcyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDAuM2VtO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzlFOUU5RTsgfVxuICAgIC5zbGFiLmNvbW11bml0eS1oZWFkZXJfX3RvcC1iYXIgLnRvcC1iYXItbGlua3MgYSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBibGFjazsgfVxuICAgICAgLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciAudG9wLWJhci1saW5rcyBhOmhvdmVyLCAuc2xhYi5jb21tdW5pdHktaGVhZGVyX190b3AtYmFyIC50b3AtYmFyLWxpbmtzIGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGNvbG9yOiAjRDAwMjFCOyB9XG4gIC5zbGFiLmNvbW11bml0eS1oZWFkZXJfX3RvcC1iYXIgLnByb2ZpbGUtbGlua3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0QTRBNEE7XG4gICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgICBwYWRkaW5nOiAwLjJyZW0gMXJlbSAwLjNyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNzVyZW07IH1cbiAgICAuc2xhYi5jb21tdW5pdHktaGVhZGVyX190b3AtYmFyIC5wcm9maWxlLWxpbmtzID4gOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciAucHJvZmlsZS1saW5rcyA+IDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDAuM2VtO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzlFOUU5RTsgfVxuICAgICAgLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciAucHJvZmlsZS1saW5rcyA+IDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIGEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciAucHJvZmlsZS1saW5rcyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAuc2xhYi5jb21tdW5pdHktaGVhZGVyX190b3AtYmFyIC5wcm9maWxlLWxpbmtzIGE6aG92ZXIsIC5zbGFiLmNvbW11bml0eS1oZWFkZXJfX3RvcC1iYXIgLnByb2ZpbGUtbGlua3MgYTpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgY29sb3I6ICNGMEYwRjA7IH1cblxuLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMgdWwuZXh0cmEtbGlua3Mge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNzVyZW07IH1cbiAgLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMgdWwuZXh0cmEtbGlua3MgYSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMC40Mzc1cmVtO1xuICAgIGNvbG9yOiAjNEE0QTRBOyB9XG4gICAgLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMgdWwuZXh0cmEtbGlua3MgYTpob3ZlciwgLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMgdWwuZXh0cmEtbGlua3MgYTpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGNvbG9yOiAjRDAwMjFCOyB9XG5cbi5jb21tdW5pdHktaGVhZGVyLW1lbnUtZXh0cmFzIC5wcm9maWxlLWxpbmtzIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0QTRBNEE7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gIHBhZGRpbmc6IDAuMnJlbSAxcmVtIDAuM3JlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjc1cmVtOyB9XG4gIC5jb21tdW5pdHktaGVhZGVyLW1lbnUtZXh0cmFzIC5wcm9maWxlLWxpbmtzID4gOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jb21tdW5pdHktaGVhZGVyLW1lbnUtZXh0cmFzIC5wcm9maWxlLWxpbmtzID4gOmZpcnN0LWNoaWxkOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwLjNlbTtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5RTlFOUU7IH1cbiAgICAuY29tbXVuaXR5LWhlYWRlci1tZW51LWV4dHJhcyAucHJvZmlsZS1saW5rcyA+IDpmaXJzdC1jaGlsZCBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMgLnByb2ZpbGUtbGlua3MgYSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5jb21tdW5pdHktaGVhZGVyLW1lbnUtZXh0cmFzIC5wcm9maWxlLWxpbmtzIGE6aG92ZXIsIC5jb21tdW5pdHktaGVhZGVyLW1lbnUtZXh0cmFzIC5wcm9maWxlLWxpbmtzIGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBjb2xvcjogI0YwRjBGMDsgfVxuXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjUyNTtcbiAgY29sb3I6ICNEQURBREE7IH1cbiAgLmZvb3RlciBhIHtcbiAgICBjb2xvcjogI0RBREFEQTsgfVxuICAgIC5mb290ZXIgYTpob3ZlciwgLmZvb3RlciBhOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2QwMDAxYjsgfVxuICAuZm9vdGVyX19tYWluIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIC5mb290ZXJfX21haW4gPiAqIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5mb290ZXJfX2JyYW5kaW5nIHtcbiAgICB3aWR0aDogMTUxcHg7IH1cbiAgLmZvb3Rlcl9fbWVudSB7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtOyB9XG4gICAgLmZvb3Rlcl9fbWVudSB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuZm9vdGVyX19tZW51IHVsIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ3wnO1xuICAgICAgICBwYWRkaW5nOiAwIC41cmVtOyB9XG4gICAgLmZvb3Rlcl9fbWVudSBsaSwgLmZvb3Rlcl9fbWVudSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgICAgLmZvb3Rlcl9fbWVudSBsaSwgLmZvb3Rlcl9fbWVudSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgICAuZm9vdGVyX19tZW51IGEge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuZm9vdGVyX19zb2NpYWwgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmZvb3Rlcl9fc29jaWFsIHVsIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzVyZW0pIHtcbiAgICAgIC5mb290ZXJfX3NvY2lhbCB1bCB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gICAgICAgIC5mb290ZXJfX3NvY2lhbCB1bCBsaSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5mb290ZXJfX3NvY2lhbCBhIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC5mb290ZXJfX3NvY2lhbCBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAuZm9vdGVyIC5mb290ZXJfX3NvY2lhbF9faW50cm8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41NjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gICAgLmZvb3Rlcl9fbWFpbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAuZm9vdGVyX19tYWluID4gKiB7XG4gICAgICAgIG1hcmdpbjogMCAwOyB9XG4gICAgLmZvb3Rlcl9fc29jaWFsIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5mb290ZXJfX3NvY2lhbCBsaSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19zb2NpYWxfX2ludHJvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMi4xODc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uZm9vdGVyLXN1YiB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUyNTI1O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuZm9vdGVyLXN1YiBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC5mb290ZXItc3ViIHAge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgICAuZm9vdGVyLXN1YiB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuLnNsYWIuaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNkMDAwMWI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7IH1cblxuLmhlYWRlcl9fbWFpbiB7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19icmFuZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2JyYW5kaW5nIGEge1xuICAgICAgZmxleDogMCAwIDguOTM3NXJlbTsgfVxuICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fYnJhbmRpbmcgaW1nLCAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2JyYW5kaW5nIHN2ZyB7XG4gICAgICBoZWlnaHQ6IDMuMTI1cmVtO1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjNzIGVhc2UtaW47IH1cbiAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duLm9wZW5lZCB7XG4gICAgICBtYXgtaGVpZ2h0OiA3MDBweDsgfVxuICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX25hdi1vcGVuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19uYXYtb3BlbiAuY2xvc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fbmF2LW9wZW4ub3BlbiAuY2xvc2Uge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDsgfVxuICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fbmF2LW9wZW4ub3BlbiAub3BlbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fbWFpbi1uYXYge1xuICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgLmhlYWRlcl9fbWFpbiAuYmFjay10by1idXR0b24ge1xuICAgICAgcGFkZGluZy10b3A6IDNyZW07IH0gfVxuICAuaGVhZGVyX19tYWluLmhlYWRlcl9fbWFpbi0tc3RyZXRjaGVkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MC45Mzc1cmVtKSB7XG4gICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biAuZ2xvYmFsLW5hdl9fbWVudSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjg3NXJlbTsgfVxuICAgICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biAuZ2xvYmFsLW5hdl9fbWVudSBidXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZzogMC4zMTI1cmVtIDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biAuZ2xvYmFsLW5hdl9fbWVudSAub3Blbi1jaGlsZHJlbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLjRyZW07IH1cbiAgICAgICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biAuZ2xvYmFsLW5hdl9fbWVudSAub3Blbi1jaGlsZHJlbiAuY2xvc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biAuZ2xvYmFsLW5hdl9fbWVudSAub3Blbi1jaGlsZHJlbi5vcGVuIC5jbG9zZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5oZXJpdDsgfVxuICAgICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IC5vcGVuLWNoaWxkcmVuLm9wZW4gLm9wZW4ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fZHJvcGRvd24gLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMCA+IHVsID4gbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0MzQzNDMzsgfVxuICAgICAgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19kcm9wZG93biAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0xIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG4gICAgICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fZHJvcGRvd24gLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMSAub3Blbi1jaGlsZHJlbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTEub3BlbmVkIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA3MDBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMC4zMTI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW07XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjBGMDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0MzQzNDMzsgfVxuICAgICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTEgLmlzLWFjdGl2ZSAubWVudS1sZXZlbC0yIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0OyB9XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fZHJvcGRvd24gLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMyBsaTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KAlCAnOyB9XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTMgbGksIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fZHJvcGRvd24gLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMyBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAuOTM3NXJlbSkgYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTMgbGksIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fZHJvcGRvd24gLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMyBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM1cmVtKSB7XG4gICAgLmhlYWRlcl9fbWFpbiAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0wID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgICAuaGVhZGVyX19tYWluIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgICAgIC5oZWFkZXJfX21haW4gLmhlYWRlcl9fYnJhbmRpbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxleDogMCAxIDEyLjYyNXJlbTsgfVxuICAgICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2JyYW5kaW5nIGltZywgLmhlYWRlcl9fbWFpbiAuaGVhZGVyX19icmFuZGluZyBzdmcge1xuICAgICAgICAgIGhlaWdodDogNC41cmVtO1xuICAgICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5oZWFkZXJfX21haW4tbmF2IHtcbiAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAgICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIC5oZWFkZXJfX3V0aWxpdHkge1xuICAgICAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX25hdi1vcGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmhlYWRlcl9fbWFpbiAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0wID4gdWwgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5oZWFkZXJfX21haW4ge1xuICAgICAgcGFkZGluZzogMCAwIDAuOTM3NXJlbSAwOyB9XG4gICAgICAuaGVhZGVyX19tYWluIC5oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07IH0gfVxuXG4uZ2xvYmFsLW5hdiBhLCAuZ2xvYmFsLW5hdiBidXR0b24ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzE1MTUxNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5nbG9iYWwtbmF2IGEsIC5nbG9iYWwtbmF2IGJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuICAuZ2xvYmFsLW5hdiBhOmhvdmVyLCAuZ2xvYmFsLW5hdiBhOmFjdGl2ZSwgLmdsb2JhbC1uYXYgYnV0dG9uOmhvdmVyLCAuZ2xvYmFsLW5hdiBidXR0b246YWN0aXZlIHtcbiAgICBjb2xvcjogI2QwMDAxYjsgfVxuXG4uZ2xvYmFsLW5hdl9fbWVudSB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAuZ2xvYmFsLW5hdiAuZHJvcGRvd24ge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuZ2xvYmFsLW5hdiAuZHJvcGRvd246OmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb25mb250XCI7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBjb250ZW50OiBcIu6oh1wiO1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW47XG4gICAgICBwYWRkaW5nOiAwIDFlbTsgfVxuICAgIC5nbG9iYWwtbmF2IC5kcm9wZG93bi5vcGVuOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAuZ2xvYmFsLW5hdiAub3Blbi1jaGlsZHJlbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZ2xvYmFsLW5hdiAucmVhbC1wYWdlIC5zdWJtZW51IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5nbG9iYWwtbmF2X19tZW51IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgLmdsb2JhbC1uYXZfX21lbnUgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLmdsb2JhbC1uYXZfX21lbnUgdWwgbGkge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC44NXJlbTsgfVxuICAgIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTAgPiB1bCA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4zczsgfVxuICAgICAgLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMCA+IHVsID4gbGkuY2hpbGRyZW4tb3BlbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAxMnB4IDEycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yOCk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gICAgLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMSB7XG4gICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxNS42MjVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDEycHggMTJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI4KTtcbiAgICAgIHotaW5kZXg6IDk5OyB9XG4gICAgICAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0xID4gdWwge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDEuMjVyZW0gMC42MjVyZW0gMS4yNXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5nbG9iYWwtbmF2X19tZW51IC5tZW51LWxldmVsLTEub3BlbmVkIHtcbiAgICAgICAgbWF4LWhlaWdodDogNzAwcHg7IH1cbiAgICAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0yIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAuZ2xvYmFsLW5hdiBhLCAuZ2xvYmFsLW5hdiBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkgYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgLmdsb2JhbC1uYXYgYSwgLmdsb2JhbC1uYXYgYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbi51dGlsaXR5LW5hdiBhIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM0QTRBNEE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cbiAgLnV0aWxpdHktbmF2IGE6aG92ZXIsIC51dGlsaXR5LW5hdiBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNkMDAwMWI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAudXRpbGl0eS1uYXYgYSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG5cbi51dGlsaXR5LW5hdl9fbWVudSB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uaGVhZGVyX19kcm9wZG93bi5vcGVuZWQgLnV0aWxpdHktbmF2IC51dGlsaXR5LW5hdl9fbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAudXRpbGl0eS1uYXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC51dGlsaXR5LW5hdiBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLnV0aWxpdHktbmF2IGEge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gICAgLnV0aWxpdHktbmF2X19tZW51IHtcbiAgICAgIHBhZGRpbmc6IDAuODEyNXJlbSAwOyB9XG4gICAgICAudXRpbGl0eS1uYXZfX21lbnUgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAgIC51dGlsaXR5LW5hdl9fbWVudSB1bCBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgICAgcGFkZGluZzogMCAuMjVyZW07XG4gICAgICAgICAgY29udGVudDogJ3wnOyB9IH1cblxuLnNpdGUtc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc2l0ZS1zZWFyY2ggI3NlYXJjaF9xIHtcbiAgICBoZWlnaHQ6IDIuNzVyZW07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQkVCRUI7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0NHB4KTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLnNpdGUtc2VhcmNoIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnNpdGUtc2VhcmNoIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNvbnRhY3QtaW5mbyB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmNvbnRhY3QtaW5mbyBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvbnRhaW47IG9iamVjdC1wb3NpdGlvbjogY2VudGVyJztcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIC5jb250YWN0LWluZm8gLmNvbnRhY3QtaW5mb19fcGhvdG8ge1xuICAgIHdpZHRoOiA2LjI1cmVtO1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29udGFjdC1pbmZvIC5jb250YWN0LWluZm9fX3ZhbHVlLS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC5jb250YWN0LWluZm8gLmNvbnRhY3QtaW5mb19fdmFsdWUtLW5hbWUge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIC5jb250YWN0LWluZm8gLmNvbnRhY3QtaW5mb19fdmFsdWUtLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmNvbnRhY3QtaW5mbyAuY29udGFjdC1pbmZvX192YWx1ZS0tdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cbiAgLmNvbnRhY3QtaW5mbyAuY29udGFjdC1pbmZvX192YWx1ZS0tcGhvbmUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC5jb250YWN0LWluZm8gLmNvbnRhY3QtaW5mb19fdmFsdWUtLXBob25lIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAuY29udGFjdC1pbmZvIC5jb250YWN0LWluZm9fX3ZhbHVlLS1lbWFpbCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmNvbnRhY3QtaW5mbyAuY29udGFjdC1pbmZvX192YWx1ZS0tZW1haWwge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIC5jb250YWN0LWluZm8gLmNvbnRhY3QtaW5mb19fbGFiZWwtLWZheCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmNvbnRhY3QtaW5mbyAuY29udGFjdC1pbmZvX19sYWJlbC0tZmF4IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuICAgIC5jb250YWN0LWluZm8gLmNvbnRhY3QtaW5mb19fbGFiZWwtLWZheCArIGRkIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgICAuY29udGFjdC1pbmZvIC5jb250YWN0LWluZm9fX2xhYmVsLS1mYXggKyBkZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgfSB9XG5cbi5jdGEgaDIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5jdGEgaDIge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMy4xMjVyZW07IH0gfVxuXG4uY3RhIC5lZGl0b3JpYWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM1cmVtKSB7XG4gIC5jdGEgLmVkaXRvcmlhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gIC5jdGEgLmVkaXRvcmlhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cblxuLmZlYXR1cmVfX2hlYWRlciBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvd1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5mZWF0dXJlX19oZWFkZXIgaDIge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMy4xMjVyZW07IH0gfVxuXG4uZmVhdHVyZV9fY29udGVudCBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZmVhdHVyZV9fY29udGVudCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mZWF0dXJlX19jb250ZW50IC5pbm5lci1saXN0cyB1bCBsaTpsYXN0LWNoaWxkLCAuZmVhdHVyZV9fY29udGVudCAuaW5uZXItbGlzdHMgb2wgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZlYXR1cmVfX2FjdGlvbnMge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIC5mZWF0dXJlX19hY3Rpb25zIC5idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uZmVhdHVyZV9fbWVkaWEge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5mZWF0dXJlLS1tZWRpYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYwRjA7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLmNvbGxlY3Rpb24taXRlbXMtLXNpbmdsZSAuZmVhdHVyZS5mZWF0dXJlLS1tZWRpYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgIC5jb2xsZWN0aW9uLWl0ZW1zLS1zaW5nbGUgLmZlYXR1cmUuZmVhdHVyZS0tbWVkaWEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC5jb2xsZWN0aW9uLWl0ZW1zLS1zaW5nbGUgLmZlYXR1cmUuZmVhdHVyZS0tbWVkaWEgLmZlYXR1cmVfX3RleHQsXG4gICAgICAuY29sbGVjdGlvbi1pdGVtcy0tc2luZ2xlIC5mZWF0dXJlLmZlYXR1cmUtLW1lZGlhIC5mZWF0dXJlX19tZWRpYSB7XG4gICAgICAgIGZsZXg6IDE7IH1cbiAgICAgIC5jb2xsZWN0aW9uLWl0ZW1zLS1zaW5nbGUgLmZlYXR1cmUuZmVhdHVyZS0tbWVkaWEgLmZlYXR1cmVfX21lZGlhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgICAuY29sbGVjdGlvbi1pdGVtcy0tc2luZ2xlIC5mZWF0dXJlLmZlYXR1cmUtLW1lZGlhIC5mZWF0dXJlX19tZWRpYSAqIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgLmNvbGxlY3Rpb24taXRlbXMtLXNpbmdsZSAuZmVhdHVyZS5mZWF0dXJlLS1tZWRpYSAuZmVhdHVyZV9fbWVkaWEgaW1nIHtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmNvbGxlY3Rpb24taXRlbXMtLXNpbmdsZSAuZmVhdHVyZS5mZWF0dXJlLS1tZWRpYSAuZmVhdHVyZV9fdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5jb2xsZWN0aW9uLWl0ZW1zLS1zaW5nbGUgLmZlYXR1cmUuZmVhdHVyZS0tbWVkaWEgLmZlYXR1cmVfX3RleHQge1xuICAgICAgcGFkZGluZzogMy43NXJlbSA2LjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAuY29sbGVjdGlvbi1pdGVtcy0tc2luZ2xlLnNsYWItLWZsaXAtZmVhdHVyZSAuZmVhdHVyZS5mZWF0dXJlLS1tZWRpYSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuLmNvbGxlY3Rpb24taXRlbXMtLW11bHRpcGxlIC5mZWF0dXJlLmZlYXR1cmUtLW1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5jb2xsZWN0aW9uLWl0ZW1zLS1tdWx0aXBsZSAuZmVhdHVyZS5mZWF0dXJlLS1tZWRpYSA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5jb2xsZWN0aW9uLWl0ZW1zLS1tdWx0aXBsZSAuZmVhdHVyZV9fbWVkaWEge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jb2xsZWN0aW9uLWl0ZW1zLS1tdWx0aXBsZSAuZmVhdHVyZV9fbWVkaWEgKiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbGxlY3Rpb24taXRlbXMtLW11bHRpcGxlIC5mZWF0dXJlX19tZWRpYSBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi50ZWFzZXItLWljb24gLnRlYXNlcl9fdGV4dCB7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLnRlYXNlcl9faWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAwMWI7XG4gIGhlaWdodDogNXJlbTtcbiAgcGFkZGluZzogMi41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnRlYXNlcl9faWNvbiAuaWNvbl9fZ2x5cGgge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAgIC50ZWFzZXJfX2ljb24gLmljb25fX2dseXBoOjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiA1cmVtOyB9XG4gIC50ZWFzZXJfX2ljb24gc3ZnIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAudGVhc2VyX19pY29uIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6ICNmZmZmZmY7IH1cblxuLnRlYXNlcl9faWNvbi1saW5rcyB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07IH1cbiAgLnRlYXNlcl9faWNvbi1saW5rcyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC50ZWFzZXJfX2ljb24tbGlua3MgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5wcm9tby10ZXh0W2NsYXNzKj0nYmctLSddIHtcbiAgcGFkZGluZzogMi4zNzVyZW0gMi41cmVtOyB9XG5cbi5wcm9tby10ZXh0X19jb250ZW50IHAge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtO1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgLnByb21vLXRleHRfX2NvbnRlbnQgcCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM1cmVtKSB7XG4gIC5wcm9tby10ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnByb21vLXRleHRfX21lZGlhIHtcbiAgICAgIGZsZXg6IDAgMCAyMDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS44NzVyZW07IH0gfVxuXG4uaW1hZ2UtbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAycmVtIDA7IH1cbiAgLmltYWdlLWxpc3QtaXRlbV9faW1hZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtOyB9XG5cbi5pbWFnZS1saXN0X19pdGVtcyAuaW1hZ2UtbGlzdC1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2MxYzhjZjsgfVxuXG4ucHVsbHRleHQgcCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4udGVhc2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC50ZWFzZXIgLnRlYXNlcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC50ZWFzZXIgLnRlYXNlcl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9IH1cbiAgLnRlYXNlciAudGVhc2VyX19tZWRpYSBwaWN0dXJlLCAudGVhc2VyIC50ZWFzZXJfX21lZGlhIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC50ZWFzZXItLW5ld3Mge1xuICAgIGNvbG9yOiAjMjUyNTI1ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMS44MTI1cmVtIDEuODEyNXJlbSAzLjc1cmVtIDEuODEyNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudGVhc2VyLS1uZXdzOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gICAgLnRlYXNlci0tbmV3czo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvdGVhc2VyLWRlY29yYXRpb24ucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogOTFweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDJyZW07IH1cbiAgICAudGVhc2VyLS1uZXdzIC50ZWFzZXJfX3RleHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgIC50ZWFzZXItLW5ld3MgLnRlYXNlcl9fdGV4dCA+ICoge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAudGVhc2VyLS1uZXdzIC5kYXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjg3NXJlbTtcbiAgICAgIGNvbG9yOiAjMTUxNTE1O1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAudGVhc2VyLS1mZWF0dXJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudGVhc2VyLS1mZWF0dXJlIC50ZWFzZXJfX3RpdGxlIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBkb3R0ZWQ7IH1cbiAgICAudGVhc2VyLS1mZWF0dXJlW2NsYXNzKj1cImJnLS1cIl0gLnRlYXNlcl9fdGV4dCB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9XG4gICAgLnRlYXNlci0tZmVhdHVyZSBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgICAgLnRlYXNlci0tZmVhdHVyZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIC50ZWFzZXItLWdhbGxlcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMEYwRjA7IH1cbiAgICAudGVhc2VyLS1nYWxsZXJ5IC50ZWFzZXJfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgICAudGVhc2VyLS1nYWxsZXJ5IC50ZWFzZXJfX3RpdGxlIC5pY29uIHtcbiAgICAgICAgY29sb3I6ICNkMDAwMWI7IH1cbiAgICAgICAgLnRlYXNlci0tZ2FsbGVyeSAudGVhc2VyX190aXRsZSAuaWNvbiAuaWNvbl9fZ2x5cGgge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAgICAgICAudGVhc2VyLS1nYWxsZXJ5IC50ZWFzZXJfX3RpdGxlIC5pY29uIC5pY29uX19nbHlwaCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgICAudGVhc2VyLS1nYWxsZXJ5IC5tZWRpYV9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAgIC50ZWFzZXItLWdhbGxlcnkgLm1lZGlhX19oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cblxuYS50ZWFzZXItLW5ld3Mge1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGJlOWYzOyB9XG4gIGEudGVhc2VyLS1uZXdzIC50ZWFzZXJfX3RpdGxlIHtcbiAgICBjb2xvcjogIzI4NWQ3NjsgfVxuICBhLnRlYXNlci0tbmV3czpob3ZlciwgYS50ZWFzZXItLW5ld3M6Zm9jdXMsIGEudGVhc2VyLS1uZXdzOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDAwMDFiOyB9XG4gICAgYS50ZWFzZXItLW5ld3M6aG92ZXIgLnRlYXNlcl9fdGl0bGUsIGEudGVhc2VyLS1uZXdzOmZvY3VzIC50ZWFzZXJfX3RpdGxlLCBhLnRlYXNlci0tbmV3czphY3RpdmUgLnRlYXNlcl9fdGl0bGUge1xuICAgICAgY29sb3I6ICNkMDAwMWI7IH1cblxuLm5ld3MtdGVhc2VycyBhLnRlYXNlci0tbmV3cyB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAubmV3cy10ZWFzZXJzIGEudGVhc2VyLS1uZXdzIC50ZWFzZXJfX3RpdGxlIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAubmV3cy10ZWFzZXJzIGEudGVhc2VyLS1uZXdzIC5kYXRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1mYW1pbHk6IFwiQmFybG93IENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMi43NXJlbTtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5uZXdzLXRlYXNlcnMgYS50ZWFzZXItLW5ld3MgLmRhdGU6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMjlweDtcbiAgICAgIGJvdHRvbTogOHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzI1MjUyNTtcbiAgICAgIGNvbnRlbnQ6ICcnOyB9XG5cbi5ibG9jay5iZy0tcHJpbWFyeSAuYmxvY2tfX2hlYWRlcixcbi5ibG9jay5iZy0tcHJpbWFyeSAuYmxvY2tfX2Zvb3Rlcixcbi5ibG9jay5iZy0tcHJpbWFyeSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tc2Vjb25kYXJ5IC5ibG9ja19faGVhZGVyLFxuLmJsb2NrLmJnLS1zZWNvbmRhcnkgLmJsb2NrX19mb290ZXIsXG4uYmxvY2suYmctLXNlY29uZGFyeSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tdGVydGlhcnkgLmJsb2NrX19oZWFkZXIsXG4uYmxvY2suYmctLXRlcnRpYXJ5IC5ibG9ja19fZm9vdGVyLFxuLmJsb2NrLmJnLS10ZXJ0aWFyeSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tcXVhdGVybmFyeSAuYmxvY2tfX2hlYWRlcixcbi5ibG9jay5iZy0tcXVhdGVybmFyeSAuYmxvY2tfX2Zvb3Rlcixcbi5ibG9jay5iZy0tcXVhdGVybmFyeSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tYWNjZW50IC5ibG9ja19faGVhZGVyLFxuLmJsb2NrLmJnLS1hY2NlbnQgLmJsb2NrX19mb290ZXIsXG4uYmxvY2suYmctLWFjY2VudCAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tZGFyay1ncmV5IC5ibG9ja19faGVhZGVyLFxuLmJsb2NrLmJnLS1kYXJrLWdyZXkgLmJsb2NrX19mb290ZXIsXG4uYmxvY2suYmctLWRhcmstZ3JleSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tbmV1dHJhbC1ncmV5IC5ibG9ja19faGVhZGVyLFxuLmJsb2NrLmJnLS1uZXV0cmFsLWdyZXkgLmJsb2NrX19mb290ZXIsXG4uYmxvY2suYmctLW5ldXRyYWwtZ3JleSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tbGlnaHQtZ3JleSAuYmxvY2tfX2hlYWRlcixcbi5ibG9jay5iZy0tbGlnaHQtZ3JleSAuYmxvY2tfX2Zvb3Rlcixcbi5ibG9jay5iZy0tbGlnaHQtZ3JleSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tc3VidGxlLWdyZXkgLmJsb2NrX19oZWFkZXIsXG4uYmxvY2suYmctLXN1YnRsZS1ncmV5IC5ibG9ja19fZm9vdGVyLFxuLmJsb2NrLmJnLS1zdWJ0bGUtZ3JleSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tb2ZmLXdoaXRlIC5ibG9ja19faGVhZGVyLFxuLmJsb2NrLmJnLS1vZmYtd2hpdGUgLmJsb2NrX19mb290ZXIsXG4uYmxvY2suYmctLW9mZi13aGl0ZSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tbmVhci13aGl0ZSAuYmxvY2tfX2hlYWRlcixcbi5ibG9jay5iZy0tbmVhci13aGl0ZSAuYmxvY2tfX2Zvb3Rlcixcbi5ibG9jay5iZy0tbmVhci13aGl0ZSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tc3VjY2VzcyAuYmxvY2tfX2hlYWRlcixcbi5ibG9jay5iZy0tc3VjY2VzcyAuYmxvY2tfX2Zvb3Rlcixcbi5ibG9jay5iZy0tc3VjY2VzcyAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0td2FybmluZyAuYmxvY2tfX2hlYWRlcixcbi5ibG9jay5iZy0td2FybmluZyAuYmxvY2tfX2Zvb3Rlcixcbi5ibG9jay5iZy0td2FybmluZyAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tZXJyb3IgLmJsb2NrX19oZWFkZXIsXG4uYmxvY2suYmctLWVycm9yIC5ibG9ja19fZm9vdGVyLFxuLmJsb2NrLmJnLS1lcnJvciAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0tYmxhY2sgLmJsb2NrX19oZWFkZXIsXG4uYmxvY2suYmctLWJsYWNrIC5ibG9ja19fZm9vdGVyLFxuLmJsb2NrLmJnLS1ibGFjayAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9jay5iZy0td2hpdGUgLmJsb2NrX19oZWFkZXIsXG4uYmxvY2suYmctLXdoaXRlIC5ibG9ja19fZm9vdGVyLFxuLmJsb2NrLmJnLS13aGl0ZSAuYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5ibG9ja19faGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuLmJsb2NrX19mb290ZXIge1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuXG4uZWRpdG9yaWFsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuZWRpdG9yaWFsOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmVkaXRvcmlhbDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5lZGl0b3JpYWwgYXNpZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzVyZW0pIHtcbiAgLmVkaXRvcmlhbC0tYXNpZGUtcmlnaHQgYXNpZGUge1xuICAgIHdpZHRoOiAyMHJlbTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDFyZW07XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5lZGl0b3JpYWwtLWFzaWRlLWxlZnQgYXNpZGUge1xuICAgIHdpZHRoOiAyMHJlbTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICBtYXJnaW46IDAgMXJlbSAxcmVtIDA7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG4uZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW46IC0wLjc1cmVtOyB9XG4gIC5ncmlkID4gKiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pO1xuICAgIG1hcmdpbjogMC43NXJlbSAwLjc1cmVtO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgLmdyaWQuZ3JpZC0tbm8tZ3JvdyA+ICoge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDsgfVxuICAuZ3JpZC5ncmlkLS10aWdodCB7XG4gICAgbWFyZ2luOiAtMC43NXJlbTsgfVxuICAgIC5ncmlkLmdyaWQtLXRpZ2h0ID4gKiB7XG4gICAgICBtYXJnaW46IDAuNzVyZW07IH1cbiAgLmdyaWQuZ3JpZC0tc21hbGwge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5ncmlkLmdyaWQtLXNtYWxsID4gKiB7XG4gICAgICBmbGV4LWJhc2lzOiAzNi42MjVyZW07XG4gICAgICBmbGV4LWdyb3c6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgICAgLmdyaWQuZ3JpZC0tc21hbGwge1xuICAgICAgICBtYXJnaW46IC0xcmVtIC0xLjVyZW07IH1cbiAgICAgICAgLmdyaWQuZ3JpZC0tc21hbGwgPiAqIHtcbiAgICAgICAgICBtYXJnaW46IDFyZW0gMS41cmVtO1xuICAgICAgICAgIG1pbi13aWR0aDogMzYuNjI1cmVtOyB9IH1cbiAgLmdyaWQuZ3JpZC0tY2VudGVyZWQtaXRlbXMgPiAqIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzVyZW0pIHtcbiAgICAuZ3JpZC5ncmlkLS1jZW50ZXJlZC1pdGVtcyB7XG4gICAgICBtaW4td2lkdGg6IDM1LjEyNXJlbTsgfSB9XG4gIC5ncmlkLmdyaWQtLWFsaWduLXRvcCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmdyaWQuZ3JpZC0tYXR0YWNoZWQgPiAqIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogM3JlbTsgfVxuICAuZ3JpZC5ncmlkLS1zdHJpcGVkIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuZ3JpZC5ncmlkLS1zdHJpcGVkID4gKiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICBmbGV4LWJhc2lzOiAyMi45MTY2N3JlbTtcbiAgICAgIGZsZXgtZ3JvdzogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgICAgLmdyaWQuZ3JpZC0tc3RyaXBlZCA+ICo6bnRoLWNoaWxkKDZuIC0gNSksIC5ncmlkLmdyaWQtLXN0cmlwZWQgPiAqOm50aC1jaGlsZCg2biAtIDQpLCAuZ3JpZC5ncmlkLS1zdHJpcGVkID4gKjpudGgtY2hpbGQoNm4gLSAzKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjBGMDsgfVxuICAgICAgICAuZ3JpZC5ncmlkLS1zdHJpcGVkID4gKjpudGgtY2hpbGQoNm4gLSAyKSwgLmdyaWQuZ3JpZC0tc3RyaXBlZCA+ICo6bnRoLWNoaWxkKDZuIC0gMSksIC5ncmlkLmdyaWQtLXN0cmlwZWQgPiAqOm50aC1jaGlsZCg2biAtIDApIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9IH1cbiAgLmdyaWQuZ3JpZC0tZGl2aWRlZCA+ICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ncmlkLmdyaWQtLWRpdmlkZWQgPiAqOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiBjYWxjKC0xLjVyZW0gLSAxcHgpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5Nzk3OTc7XG4gICAgICBjb250ZW50OiAnJzsgfVxuICAgIC5ncmlkLmdyaWQtLWRpdmlkZWQgPiAqOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmdyaWQuZ3JpZC0tYm9yZGVyZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW46IC0xcmVtOyB9XG4gICAgLmdyaWQuZ3JpZC0tYm9yZGVyZWQgPiAqIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIG1hcmdpbjogMXJlbTsgfVxuICAgICAgLmdyaWQuZ3JpZC0tYm9yZGVyZWQgPiAqOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogY2FsYygtMXJlbSAtIDJweCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzRBNEE0QTtcbiAgICAgICAgbGVmdDogLTFyZW07XG4gICAgICAgIHJpZ2h0OiBjYWxjKC0xcmVtICsgMXB4KTsgfVxuICAgICAgLmdyaWQuZ3JpZC0tYm9yZGVyZWQgPiAqIGEge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgICAgIC5ncmlkLmdyaWQtLWJvcmRlcmVkID4gKiBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM1cmVtKSB7XG4gICAgLmdyaWQge1xuICAgICAgbWFyZ2luOiAtMXJlbTsgfVxuICAgICAgLmdyaWQgPiAqIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAyMy40MTY2N3JlbTtcbiAgICAgICAgbWFyZ2luOiAxcmVtO1xuICAgICAgICBtaW4td2lkdGg6IDIwcmVtOyB9XG4gICAgICAuZ3JpZC5ncmlkLS1sYXJnZSA+ICoge1xuICAgICAgICBtaW4td2lkdGg6IDM1LjEyNXJlbTsgfVxuICAgICAgLmdyaWQuZ3JpZC0tc21hbGwgPiAqIHtcbiAgICAgICAgZmxleC1iYXNpczogMjIuNDE2NjdyZW07XG4gICAgICAgIG1pbi13aWR0aDogMjIuNDE2NjdyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5ncmlkIHtcbiAgICAgIG1hcmdpbjogLTEuNXJlbTsgfVxuICAgICAgLmdyaWQgPiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMy40MTY2N3JlbTtcbiAgICAgICAgbWFyZ2luOiAxLjVyZW07IH1cbiAgICAgIC5ncmlkLmdyaWQtLXNtYWxsID4gKiB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMTIuODVyZW07IH0gfVxuXG4uY29sbGVjdGlvbi1pdGVtcy0tc2luZ2xlIC5ncmlkID4gKiB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAuY29sbGVjdGlvbi1pdGVtcy0tc2luZ2xlIC5ncmlkID4gKiB7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG51bC5ncmlkIGxpID4gKiB7XG4gIGZsZXg6IDE7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uZ3JpZC5ncmlkLS1tYWpvci1sZWZ0LFxuLmdyaWQuZ3JpZC0tbWFqb3ItcmlnaHQge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAuZ3JpZC5ncmlkLS1tYWpvci1sZWZ0ID4gKixcbiAgLmdyaWQuZ3JpZC0tbWFqb3ItcmlnaHQgPiAqIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cbiAgLmdyaWQuZ3JpZC0tbWFqb3ItbGVmdCA+IC5ncmlkX19tYWluLFxuICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodCA+IC5ncmlkX19tYWluIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gICAgLmdyaWQuZ3JpZC0tbWFqb3ItbGVmdCA+IC5ncmlkX19tYWluID4gLnNsYWIuc2xhYi0tYm9keSAuc2xhYl9fY29udGVudCxcbiAgICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodCA+IC5ncmlkX19tYWluID4gLnNsYWIuc2xhYi0tYm9keSAuc2xhYl9fY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAuZ3JpZC5ncmlkLS1tYWpvci1sZWZ0ID4gLmdyaWRfX21haW4gPiAuc2xhYjpub3QoW2NsYXNzKj1cImJnLS1cIl0pLFxuICAgIC5ncmlkLmdyaWQtLW1ham9yLXJpZ2h0ID4gLmdyaWRfX21haW4gPiAuc2xhYjpub3QoW2NsYXNzKj1cImJnLS1cIl0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmdyaWQuZ3JpZC0tbWFqb3ItbGVmdCA+IC5ncmlkX19zaWRlYmFyLFxuICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodCA+IC5ncmlkX19zaWRlYmFyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gICAgLmdyaWQuZ3JpZC0tbWFqb3ItbGVmdCxcbiAgICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICAuZ3JpZC5ncmlkLS1tYWpvci1sZWZ0ID4gKixcbiAgICAgIC5ncmlkLmdyaWQtLW1ham9yLXJpZ2h0ID4gKiB7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDsgfVxuICAgICAgLmdyaWQuZ3JpZC0tbWFqb3ItbGVmdCA+IC5ncmlkX19tYWluLFxuICAgICAgLmdyaWQuZ3JpZC0tbWFqb3ItcmlnaHQgPiAuZ3JpZF9fbWFpbiB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLmdyaWQuZ3JpZC0tbWFqb3ItbGVmdCA+IC5ncmlkX19zaWRlYmFyLFxuICAgICAgLmdyaWQuZ3JpZC0tbWFqb3ItcmlnaHQgPiAuZ3JpZF9fc2lkZWJhciB7XG4gICAgICAgIGZsZXg6IDAgMCAzMiU7IH1cbiAgICAgIC5ncmlkLmdyaWQtLW1ham9yLWxlZnQuZ3JpZC0tc21hbGxlci1zaWRlYmFyID4gLmdyaWRfX3NpZGViYXIsXG4gICAgICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodC5ncmlkLS1zbWFsbGVyLXNpZGViYXIgPiAuZ3JpZF9fc2lkZWJhciB7XG4gICAgICAgIGZsZXg6IDAgMCAyMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodCA+IC5ncmlkX19zaWRlYmFyIHtcbiAgICBvcmRlcjogLTE7IH0gfVxuXG4uc2xhYi5zbGFiLS1ib2R5IC5zbGFiX19jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA1Ni4yNXJlbTsgfVxuXG4uc2xhYiB7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM1cmVtKSB7XG4gICAgLnNsYWIge1xuICAgICAgcGFkZGluZzogMS41cmVtIDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5zbGFiIHtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAuc2xhYiB7XG4gICAgICBwYWRkaW5nOiAyLjVyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0LjI1cmVtKSB7XG4gICAgLnNsYWIge1xuICAgICAgcGFkZGluZzogMi41cmVtIDA7IH0gfVxuICAuc2xhYiAuc2xhYl9fd3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiA3Ni4yNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLnNsYWIgLnNsYWJfX3dyYXBwZXIgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5zbGFiIC5zbGFiX193cmFwcGVyID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2xhYiAuc2xhYl9faGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIC5zbGFiIC5zbGFiX19oZWFkZXIgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgLnNsYWIgLnNsYWJfX2hlYWRlciBoMiBzcGFuIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNGREM0MkU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlOyB9XG4gIC5zbGFiIC5zbGFiX19mb290ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgei1pbmRleDogMjA7IH1cbiAgLnNsYWIuc2xhYi0tbmFycm93IC5zbGFiX193cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDQ5LjI1cmVtOyB9XG4gIC5zbGFiLnNsYWItLXRpZ2h0LWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAuc2xhYi5zbGFiLS10aWdodC1ib3R0b206bm90KFtjbGFzcyo9XCJiZy0tXCJdKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAuc2xhYi5zbGFiLS1oYXMtdG9wLWJvcmRlciAuc2xhYi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gICAgYm9yZGVyLXRvcDogM3B4IGRhc2hlZCAjYzFjOGNmOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgICAgIC5zbGFiLnNsYWItLWhhcy10b3AtYm9yZGVyIC5zbGFiLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIC5zbGFiLnNsYWItLWJsZWVkIC5zbGFiX193cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLnNsYWIuYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsYWIuYm9keSAuc2xhYl9fY29udGVudCBoMjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuc2xhYi5ib2R5IGg1IHtcbiAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtOyB9XG5cbi5zbGFiLS1ib2R5ICsgLnNsYWItLWJvZHkge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ucGFnZS1oZWFkZXIgKyAuc2xhYiB7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuI21haW4tY29udGVudCAuc2xhYjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAucGFnZS1oZWFkZXIgKyAuc2xhYiB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4gICNtYWluLWNvbnRlbnQgLnNsYWI6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjFyZW0pIHtcbiAgLnBhZ2UtaGVhZGVyICsgLnNsYWIge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuICAjbWFpbi1jb250ZW50IC5zbGFiOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gIC5wYWdlLWhlYWRlciArIC5zbGFiIHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgI21haW4tY29udGVudCAuc2xhYjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NC4yNXJlbSkge1xuICAucGFnZS1oZWFkZXIgKyAuc2xhYiB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtOyB9XG4gICNtYWluLWNvbnRlbnQgLnNsYWI6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cblxuLnNsYWJbY2xhc3MqPSdiZy0tJ10gKyAuc2xhYjpub3QoW2NsYXNzKj1cImJnLS1cIl0pLFxuLnNsYWJbY2xhc3MqPSdiZy0tJ10gKyAuc2xhYi5iZy0td2hpdGUge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5zbGFiOm5vdChbY2xhc3MqPVwiYmctLVwiXSkgKyAuc2xhYltjbGFzcyo9J2JnLS0nXSxcbi5zbGFiLmJnLS13aGl0ZSArIC5zbGFiW2NsYXNzKj0nYmctLSddIHtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAuc2xhYltjbGFzcyo9J2JnLS0nXSArIC5zbGFiOm5vdChbY2xhc3MqPVwiYmctLVwiXSksXG4gIC5zbGFiW2NsYXNzKj0nYmctLSddICsgLnNsYWIuYmctLXdoaXRlIHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgLnNsYWI6bm90KFtjbGFzcyo9XCJiZy0tXCJdKSArIC5zbGFiW2NsYXNzKj0nYmctLSddLFxuICAuc2xhYi5iZy0td2hpdGUgKyAuc2xhYltjbGFzcyo9J2JnLS0nXSB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtOyB9IH1cblxuLnNsYWIuYmctLXdoaXRlICsgLnNsYWIuYmctLXdoaXRlLFxuLnNsYWI6bm90KFtjbGFzcyo9XCJiZy0tXCJdKSArIC5zbGFiLmJnLS13aGl0ZSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLnNsYWIuYmctLW9mZi13aGl0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2xhYi5iZy0tb2ZmLXdoaXRlOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3RlYXNlci1kZWNvcmF0aW9uLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiA5MXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDJyZW07IH1cblxuLmdyaWRfX21haW4gLnNsYWJbY2xhc3MqPSdiZy0tJ10sIC5ncmlkX19zaWRlYmFyIC5zbGFiW2NsYXNzKj0nYmctLSddIHtcbiAgcGFkZGluZzogM3JlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAuc2xhYi0tb3ZlcmZsb3cge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuc2xhYi0tb3ZlcmZsb3cgLmNvbnRleHR1YWwtcmVnaW9uIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgICAuc2xhYi0tb3ZlcmZsb3cgLmNvbnRleHR1YWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnNsYWItLW92ZXJmbG93IC5zbGFiX193cmFwcGVyIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLnNsYWItLW92ZXJmbG93IC5ncmlkIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgICAuc2xhYi0tb3ZlcmZsb3cgLmdyaWQgPiBkaXY6Zmlyc3QtY2hpbGQgcGljdHVyZSwgLnNsYWItLW92ZXJmbG93IC5ncmlkID4gZGl2Omxhc3QtY2hpbGQgcGljdHVyZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTB2dyAtIDEuNXJlbSk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogaW5pdGlhbDsgfVxuICAgICAgLnNsYWItLW92ZXJmbG93IC5ncmlkID4gZGl2OmZpcnN0LWNoaWxkIHBpY3R1cmUge1xuICAgICAgICBsZWZ0OiBjYWxjKC01MHZ3IC0gMS41cmVtICsgKDc2LjI1cmVtIC8gMikpOyB9IH1cblxuLm5ld2NpdHktbG9nbyBzdmcge1xuICB3aWR0aDogMTByZW07XG4gIGhlaWdodDogMTYuMjlyZW07IH1cblxuLm5ld2NpdHktbG9nby1ob3Jpem9udGFsIHN2ZyB7XG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAyLjk0NDQ0NHJlbTsgfVxuXG4ubmV3Y2l0eS1sb2dvLXZlcnRpY2FsIHN2ZyB7XG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAxMC42NDhyZW07IH1cblxuLm5ld2NpdHktbG9nby13b3JkbWFyayBzdmcge1xuICB3aWR0aDogMTByZW07XG4gIGhlaWdodDogMS4zcmVtOyB9XG5cbmZpZ3VyZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuOTM3NXJlbTtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJCYXJsb3dcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgZmlndXJlIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjkzNzVyZW07IH0gfVxuICBmaWd1cmUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogY29udGFpbjsgb2JqZWN0LXBvc2l0aW9uOiB0b3AgY2VudGVyXCI7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cbiAgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTsgfVxuXG4uZmlndXJlLXdyYXBwZXIgZmlndXJlLCAuZmlndXJlLXdyYXBwZXIgPiBhcnRpY2xlLm1lZGlhIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgLmZpZ3VyZS13cmFwcGVyIGZpZ3VyZS5hbGlnbi1sZWZ0IC5yZXNwb25zaXZlLWVtYmVkLCAuZmlndXJlLXdyYXBwZXIgZmlndXJlLmFsaWduLXJpZ2h0IC5yZXNwb25zaXZlLWVtYmVkLCAuZmlndXJlLXdyYXBwZXIgPiBhcnRpY2xlLm1lZGlhLmFsaWduLWxlZnQgLnJlc3BvbnNpdmUtZW1iZWQsIC5maWd1cmUtd3JhcHBlciA+IGFydGljbGUubWVkaWEuYWxpZ24tcmlnaHQgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgLmZpZ3VyZS13cmFwcGVyIGZpZ3VyZS5hbGlnbi1sZWZ0IC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSwgLmZpZ3VyZS13cmFwcGVyIGZpZ3VyZS5hbGlnbi1yaWdodCAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsIC5maWd1cmUtd3JhcHBlciA+IGFydGljbGUubWVkaWEuYWxpZ24tbGVmdCAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsIC5maWd1cmUtd3JhcHBlciA+IGFydGljbGUubWVkaWEuYWxpZ24tcmlnaHQgLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgLmZpZ3VyZS13cmFwcGVyIGZpZ3VyZSBmaWdjYXB0aW9uLCAuZmlndXJlLXdyYXBwZXIgPiBhcnRpY2xlLm1lZGlhIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAuZmlndXJlLXdyYXBwZXIgZmlndXJlIGZpZ2NhcHRpb24sIC5maWd1cmUtd3JhcHBlciA+IGFydGljbGUubWVkaWEgZmlnY2FwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgIC5maWd1cmUtd3JhcHBlciBmaWd1cmUucGFydGlhbF9jb250ZW50LCAuZmlndXJlLXdyYXBwZXIgZmlndXJlLnBhcnRpYWxfNF8zLCAuZmlndXJlLXdyYXBwZXIgPiBhcnRpY2xlLm1lZGlhLnBhcnRpYWxfY29udGVudCwgLmZpZ3VyZS13cmFwcGVyID4gYXJ0aWNsZS5tZWRpYS5wYXJ0aWFsXzRfMyB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgIC5maWd1cmUtd3JhcHBlciBmaWd1cmUuYWxpZ24tbGVmdCwgLmZpZ3VyZS13cmFwcGVyID4gYXJ0aWNsZS5tZWRpYS5hbGlnbi1sZWZ0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmZpZ3VyZS13cmFwcGVyIGZpZ3VyZS5hbGlnbi1yaWdodCwgLmZpZ3VyZS13cmFwcGVyID4gYXJ0aWNsZS5tZWRpYS5hbGlnbi1yaWdodCB7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5icmVhZGNydW1icyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHRleHQtaW5kZW50OiAwOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubGluay1ncm91cC0taW52aXNpYmxlLWhlYWRlciAuaGVhZGxpbmUtZ3JvdXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5OTllbTsgfVxuXG4vKlxuLmxpbmstZ3JvdXAtLWNvbGxhcHNlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtZWRpdW0pIHtcbiAgLmxpbmstZ3JvdXAtLWNvbGxhcHNlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiovXG4ucGFnZXJfX2l0ZW0tLWZpcnN0IGEsIC5wYWdlcl9faXRlbS0tcHJldmlvdXMgYSwgLnBhZ2VyX19pdGVtLS1uZXh0IGEsIC5wYWdlcl9faXRlbS0tbGFzdCBhLCAucGFnZXJfX2l0ZW0uaXMtYWN0aXZlIGEge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ucGFnZXJfX2l0ZW0tLWZpcnN0LCAucGFnZXJfX2l0ZW0tLXByZXZpb3VzLCAucGFnZXJfX2l0ZW0tLW5leHQsIC5wYWdlcl9faXRlbS5sYXN0LXBhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBhZ2VyX19pdGVtLS1maXJzdDo6YWZ0ZXIsIC5wYWdlcl9faXRlbS0tcHJldmlvdXM6OmFmdGVyLCAucGFnZXJfX2l0ZW0tLW5leHQ6OmFmdGVyLCAucGFnZXJfX2l0ZW0ubGFzdC1wYWdlOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTEwZGVnKTtcbiAgICB0b3A6IC0uM3JlbTtcbiAgICBib3R0b206IC0uM3JlbTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0QTRBNEE7IH1cblxuLnBhZ2VyIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG4ucGFnZXJfX2l0ZW0gYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvd1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBwYWRkaW5nOiAuNXJlbSAuNzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAucGFnZXJfX2l0ZW0gYSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuXG4ucGFnZXJfX2l0ZW0uaXMtYWN0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wYWdlcl9faXRlbS5pcy1hY3RpdmU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IC0uM3JlbTtcbiAgICBib3R0b206IC0uM3JlbTtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFjOGNmO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTEwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1pbi1vdXQsIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLWluLW91dDsgfVxuXG5bZGF0YS1kcnVwYWwtdmlld3MtaW5maW5pdGUtc2Nyb2xsLXBhZ2VyXSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uc2VjdGlvbi1uYXYge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWN0aW9uLW5hdiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAuc2VjdGlvbi1uYXYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5zZWN0aW9uLW5hdiAubWVudS1pdGVtX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zZWN0aW9uLW5hdiAub3Blbi1jaGlsZHJlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAuNXJlbTtcbiAgICB0b3A6IDFyZW07IH1cbiAgICAuc2VjdGlvbi1uYXYgLm9wZW4tY2hpbGRyZW4gLmNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuc2VjdGlvbi1uYXYgLm9wZW4tY2hpbGRyZW4ub3BlbiAuY2xvc2Uge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDsgfVxuICAgIC5zZWN0aW9uLW5hdiAub3Blbi1jaGlsZHJlbi5vcGVuIC5vcGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNlY3Rpb24tbmF2IC5tZW51LWxldmVsLTAgPiB1bCA+IGxpID4gLm1lbnUtaXRlbV9faW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMDAwMWI7XG4gICAgcGFkZGluZzogMXJlbSAxLjA2MjVyZW0gMXJlbSAxLjQzNzVyZW07IH1cbiAgICAuc2VjdGlvbi1uYXYgLm1lbnUtbGV2ZWwtMCA+IHVsID4gbGkgPiAubWVudS1pdGVtX19pbm5lciBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zZWN0aW9uLW5hdiAubWVudS1sZXZlbC0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMEYwOyB9XG4gICAgLnNlY3Rpb24tbmF2IC5tZW51LWxldmVsLTEgPiB1bCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gICAgICAuc2VjdGlvbi1uYXYgLm1lbnUtbGV2ZWwtMSA+IHVsID4gbGkgPiAubWVudS1pdGVtX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAuNjg3NXJlbSAxLjA2MjVyZW0gMC40Mzc1cmVtIDEuODEyNXJlbTsgfVxuICAgICAgLnNlY3Rpb24tbmF2IC5tZW51LWxldmVsLTEgPiB1bCBhIHtcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAuc2VjdGlvbi1uYXYgLm1lbnUtbGV2ZWwtMSAubWVudS1pdGVtLmhhcy1jaGlsZHJlbiB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuc2VjdGlvbi1uYXYgLm1lbnUtbGV2ZWwtMSAubWVudS1pdGVtLmhhcy1jaGlsZHJlbiA+IC5tZW51IHtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2Utb3V0OyB9XG4gICAgICAgIC5zZWN0aW9uLW5hdiAubWVudS1sZXZlbC0xIC5tZW51LWl0ZW0uaGFzLWNoaWxkcmVuID4gLm1lbnUub3BlbmVkIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA3MDBweDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbjsgfVxuICAgIC5zZWN0aW9uLW5hdiAubWVudS1sZXZlbC0xIC5pcy1hY3RpdmUgPiAubWVudS1pdGVtX19pbm5lciA+IGEge1xuICAgICAgY29sb3I6ICNkMDAwMWI7IH1cbiAgLnNlY3Rpb24tbmF2IC5tZW51LWxldmVsLTIgLm1lbnUtaXRlbV9faW5uZXIge1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtIDEuMDYyNXJlbSAwLjI1cmVtIDIuMTI1cmVtOyB9XG4gIC5zZWN0aW9uLW5hdiAubWVudS1sZXZlbC0zIHVsIGxpIGE6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ+KAkyAnOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gICAgLnNlY3Rpb24tbmF2IHtcbiAgICAgIGRpc3BsYXk6IGluaGVyaXQ7IH0gfVxuXG4uc2tpcC1uYXYge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTVyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjUyNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5za2lwLW5hdiB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjEyNXJlbTsgfSB9XG4gIC5za2lwLW5hdjpsaW5rLCAuc2tpcC1uYXY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnNraXAtbmF2OmFjdGl2ZSwgLnNraXAtbmF2OmhvdmVyLCAuc2tpcC1uYXY6Zm9jdXMge1xuICAgIGNvbG9yOiAjZDAwMDFiOyB9XG4gIC5za2lwLW5hdjpmb2N1cyB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAuNXM7IH1cblxuLnNvY2lhbC1tZWRpYS1saW5rc19fbWVudSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgaGVpZ2h0OiA0NHB4O1xuICB3aWR0aDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7IH1cbiAgLnNvY2lhbC1tZWRpYS1saW5rc19fbWVudSBhIHNwYW4ge1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4uc29jaWFsLW1lZGlhLWxpbmtzX19tZW51IC5pY29uIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNvY2lhbC1tZWRpYS1saW5rc19fbWVudSBpbWcge1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiA0NHB4O1xuICBvYmplY3QtZml0OiBjb250YWluOyB9XG5cbi5zb2NpYWwtbWVkaWEtbGlua3MtLWNvbG9yaXplIGEgLmljb25fX2dseXBoIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDsgfVxuICAuc29jaWFsLW1lZGlhLWxpbmtzLS1jb2xvcml6ZSBhIC5pY29uX19nbHlwaFtjbGFzcyo9ZmFjZWJvb2tdIHtcbiAgICBjb2xvcjogIzE4NzdmMjsgfVxuICAuc29jaWFsLW1lZGlhLWxpbmtzLS1jb2xvcml6ZSBhIC5pY29uX19nbHlwaFtjbGFzcyo9dHdpdHRlcl0ge1xuICAgIGNvbG9yOiAjMWRhMWYyOyB9XG4gIC5zb2NpYWwtbWVkaWEtbGlua3MtLWNvbG9yaXplIGEgLmljb25fX2dseXBoW2NsYXNzKj1saW5rZWRpbl0ge1xuICAgIGNvbG9yOiAjMDA3YmI1OyB9XG4gIC5zb2NpYWwtbWVkaWEtbGlua3MtLWNvbG9yaXplIGEgLmljb25fX2dseXBoW2NsYXNzKj1pbnN0YWdyYW1dIHtcbiAgICBjb2xvcjogI2MzMmFhMzsgfVxuICAuc29jaWFsLW1lZGlhLWxpbmtzLS1jb2xvcml6ZSBhIC5pY29uX19nbHlwaFtjbGFzcyo9eW91dHViZV0ge1xuICAgIGNvbG9yOiAjZmYwMDAwOyB9XG4gIC5zb2NpYWwtbWVkaWEtbGlua3MtLWNvbG9yaXplIGEgLmljb25fX2dseXBoW2NsYXNzKj1waW50ZXJlc3RdIHtcbiAgICBjb2xvcjogI2NiMjAyNzsgfVxuICAuc29jaWFsLW1lZGlhLWxpbmtzLS1jb2xvcml6ZSBhIC5pY29uX19nbHlwaFtjbGFzcyo9c25hcGNoYXRdIHtcbiAgICBjb2xvcjogI2ZmZmMwMDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDFweCBibGFjazsgfVxuXG4uc29jaWFsLW1lZGlhLWxpbmtzLS1jb2xvcml6ZSBhOmhvdmVyIC5pY29uX19nbHlwaCwgLnNvY2lhbC1tZWRpYS1saW5rcy0tY29sb3JpemUgYTphY3RpdmUgLmljb25fX2dseXBoLCAuc29jaWFsLW1lZGlhLWxpbmtzLS1jb2xvcml6ZSBhOmZvY3VzIC5pY29uX19nbHlwaCB7XG4gIG9wYWNpdHk6IDAuNjsgfVxuXG4uZGVzY3JpYmVkLWxpbmtzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIC5kZXNjcmliZWQtbGlua3MgZGQge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuXG4uaGVhZGxpbmUtZ3JvdXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IGF1dG87IH1cbiAgLmhlYWRsaW5lLWdyb3VwIC5oZWFkbGluZS1ncm91cF9fc3VwZXIsXG4gIC5oZWFkbGluZS1ncm91cCAuaGVhZGxpbmUtZ3JvdXBfX3N1YiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhlYWRsaW5lLWdyb3VwIC5oZWFkbGluZS1ncm91cF9fc3VwZXIsXG4gIC5oZWFkbGluZS1ncm91cCAuaGVhZGxpbmUtZ3JvdXBfX3N1YiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAuaGVhZGxpbmUtZ3JvdXAgLmhlYWRsaW5lLWdyb3VwX19zdXBlcixcbiAgICAgIC5oZWFkbGluZS1ncm91cCAuaGVhZGxpbmUtZ3JvdXBfX3N1YiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgaDUuaGVhZGxpbmUtZ3JvdXAgLmhlYWRsaW5lLWdyb3VwX19oZWFkIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4xMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgaDUuaGVhZGxpbmUtZ3JvdXAgLmhlYWRsaW5lLWdyb3VwX19oZWFkIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjEyNXJlbTsgfSB9XG4gIGg2LmhlYWRsaW5lLWdyb3VwIC5oZWFkbGluZS1ncm91cF9faGVhZCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIGg2LmhlYWRsaW5lLWdyb3VwIC5oZWFkbGluZS1ncm91cF9faGVhZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4xMjVyZW07IH0gfVxuXG4uaGVhZGxpbmUtZ3JvdXAtLWRpc3BsYXkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmhlYWRsaW5lLWdyb3VwLS1kaXNwbGF5IC5oZWFkbGluZS1ncm91cF9fc3VwZXIge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi44NzVyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmhlYWRsaW5lLWdyb3VwLS1kaXNwbGF5IC5oZWFkbGluZS1ncm91cF9fc3VwZXIge1xuICAgICAgICBmb250LXNpemU6IDIuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzLjM3NXJlbTsgfSB9XG4gIC5oZWFkbGluZS1ncm91cC0tZGlzcGxheSAuaGVhZGxpbmUtZ3JvdXBfX2hlYWQge1xuICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMy4zNzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAuaGVhZGxpbmUtZ3JvdXAtLWRpc3BsYXkgLmhlYWRsaW5lLWdyb3VwX19oZWFkIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjM3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAuaGVhZGxpbmUtZ3JvdXAtLWRpc3BsYXkgLmhlYWRsaW5lLWdyb3VwX19oZWFkIHtcbiAgICAgICAgZm9udC1zaXplOiA0LjM3NXJlbTsgfSB9XG5cbi5oZWFkbGluZS1ncm91cC0tYm9yZGVyZWQge1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDJweCAjRjBGMEYwIHNvbGlkOyB9XG4gIC5oZWFkbGluZS1ncm91cC0tYm9yZGVyZWQgLmhlYWRsaW5lLWdyb3VwX19zdXBlciB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgICBjb2xvcjogIzI4NWQ3NjtcbiAgICBmb250LWZhbWlseTogXCJCYXJsb3cgQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmhlYWRsaW5lLWdyb3VwLS1ib3JkZXJlZCAuaGVhZGxpbmUtZ3JvdXBfX3N1cGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuICAuaGVhZGxpbmUtZ3JvdXAtLWJvcmRlcmVkIC5oZWFkbGluZS1ncm91cF9faGVhZCB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJCYXJsb3cgQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmhlYWRsaW5lLWdyb3VwLS1ib3JkZXJlZCAuaGVhZGxpbmUtZ3JvdXBfX2hlYWQge1xuICAgICAgICBmb250LXNpemU6IDIuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi43NXJlbTsgfSB9XG5cbi5jb250ZW50LW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLmNvbnRlbnQtbWV0YSAuYnlsaW5lIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmNvbnRlbnQtbWV0YSAuYnlsaW5lIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAuY29udGVudC1tZXRhIC53aG8td2hlbiB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuY29udGVudC1tZXRhIC50YXhvbm9teS1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgLmNvbnRlbnQtbWV0YSBzcGFuICsgc3Bhbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnIHwgJzsgfVxuXG4uc2VjdGlvbi1pbnRybyA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnRhYmxlLXdyYXBwZXIgLnd5c2l3eWctdGFibGUge1xuICBvdmVyZmxvdy14OiBzY3JvbGw7IH1cblxuLnRhYmxlLXdyYXBwZXIgdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzVmNWY1ZjsgfVxuICAudGFibGUtd3JhcHBlciB0YWJsZSB0aCxcbiAgLnRhYmxlLXdyYXBwZXIgdGFibGUgdGQge1xuICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgICAudGFibGUtd3JhcHBlciB0YWJsZSB0aDpmaXJzdC1jaGlsZCxcbiAgICAudGFibGUtd3JhcHBlciB0YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAgIC50YWJsZS13cmFwcGVyIHRhYmxlIHRoOmxhc3QtY2hpbGQsXG4gICAgLnRhYmxlLXdyYXBwZXIgdGFibGUgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH1cbiAgLnRhYmxlLXdyYXBwZXIgdGFibGUgdGg6Zmlyc3QtY2hpbGQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnRhYmxlLXdyYXBwZXIgdGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgIzVmNWY1ZjsgfVxuICAudGFibGUtd3JhcHBlciB0YWJsZSBjYXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgY2FwdGlvbi1zaWRlOiBib3R0b207IH1cblxuLnRhYmxlLXdyYXBwZXIudGFibGUtd3JhcHBlci0tc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB0aCwgLnRhYmxlLXdyYXBwZXIudGFibGUtd3JhcHBlci0tc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYwRjA7IH1cblxuZGwgZHQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgZGwgZHQge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cblxuZGwgZGQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG5kbC5pbnZpc2libGUtbGFiZWxzIGR0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAuNXJlbTtcbiAgY2xlYXI6IGJvdGg7IH1cbiAgZGwuaW52aXNpYmxlLWxhYmVscyBkdDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICc6ICc7IH1cblxuZGwuaW52aXNpYmxlLWxhYmVscyBkZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxub2wuY2xlYW4ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgb2wuY2xlYW4gbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHRleHQtaW5kZW50OiAwOyB9XG4gICAgb2wuY2xlYW4gbGk6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbm9sLnN0eWxlZC1jb3VudGVyIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNvdW50ZXItcmVzZXQ6IGJhc2UtY291bnRlcjsgfVxuICBvbC5zdHlsZWQtY291bnRlciA+IGxpIHtcbiAgICBjb3VudGVyLWluY3JlbWVudDogYmFzZS1jb3VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogMi4zZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgb2wuc3R5bGVkLWNvdW50ZXIgPiBsaTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyZW07XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoYmFzZS1jb3VudGVyKSBcIilcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGVmdDogMDsgfVxuXG51bC5jbGVhbiwgdWwuc2VyaWVzLCB1bC5waXBlZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICB1bC5jbGVhbiBsaSwgdWwuc2VyaWVzIGxpLCB1bC5waXBlZCBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IDA7IH1cbiAgICB1bC5jbGVhbiBsaTo6YmVmb3JlLCB1bC5zZXJpZXMgbGk6OmJlZm9yZSwgdWwucGlwZWQgbGk6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbnVsLmNsZWFuIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxudWwuc2VyaWVzIGxpLCB1bC5waXBlZCBsaSwgdWwuaW5saW5lIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbnVsLnNlcmllcyBsaTo6YWZ0ZXIge1xuICBjb250ZW50OiAnLCAnOyB9XG5cbnVsLnNlcmllcyBsaTpsYXN0LWNoaWxkOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnOyB9XG5cbnVsLnBpcGVkIGxpOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcgfCAnOyB9XG5cbnVsLnBpcGVkIGxpOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgY29udGVudDogJyc7IH1cblxudWwuYXJyb3cge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAyLjNlbTtcbiAgdGV4dC1pbmRlbnQ6IDA7IH1cbiAgdWwuYXJyb3c6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB1bC5hcnJvdyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuICAgIHVsLmFycm93IGxpOjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiQmFybG93XCIsIHNhbnMtc2VyaWY7XG4gICAgICBjb250ZW50OiAn4p+2JztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0yLjNlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyLjNlbTtcbiAgICAgIGNvbG9yOiAjMjg1ZDc2OyB9XG5cbnVsLmdyaWQge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIHVsLmdyaWQgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cblxudWwucGFkZGVkIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbnVsLmNoZWNrYm94ZXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG4gIHVsLmNoZWNrYm94ZXMgbGkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICB1bC5jaGVja2JveGVzIGxpOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb25mb250XCI7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07IH1cbiAgICB1bC5jaGVja2JveGVzIGxpLmNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6ojlwiOyB9XG4gICAgdWwuY2hlY2tib3hlcyBsaS51bmNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6oj1wiOyB9XG4gIHVsLmNoZWNrYm94ZXMuaW5saW5lIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cblxudWwuY2VudGVyZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxudWxbZGF0YS10YWJieS10YWJzXSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxcmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIHVsW2RhdGEtdGFiYnktdGFic10gW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogYmxhY2s7IH1cblxuLmNvbW11bml0eS1wYWdlLXRhYnMgdWxbZGF0YS10YWJieS10YWJzXSB7XG4gIGdhcDogMHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNkMDAwMWI7XG4gIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7IH1cbiAgLmNvbW11bml0eS1wYWdlLXRhYnMgdWxbZGF0YS10YWJieS10YWJzXSBsaSB7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgLmNvbW11bml0eS1wYWdlLXRhYnMgdWxbZGF0YS10YWJieS10YWJzXSBsaSBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIG1heC13aWR0aDogOHJlbTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0QTRBNEE7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0QTRBNEE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5jb21tdW5pdHktcGFnZS10YWJzIHVsW2RhdGEtdGFiYnktdGFic10gbGkgYVthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDAxYjsgfVxuICAgICAgICAuY29tbXVuaXR5LXBhZ2UtdGFicyB1bFtkYXRhLXRhYmJ5LXRhYnNdIGxpIGFbYXJpYS1zZWxlY3RlZD10cnVlXTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDAuNXJlbTtcbiAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUzLjc1cmVtKSB7XG4gICAgLmNvbW11bml0eS1wYWdlLXRhYnMgdWxbZGF0YS10YWJieS10YWJzXSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAgIC5jb21tdW5pdHktcGFnZS10YWJzIHVsW2RhdGEtdGFiYnktdGFic10gbGkgYSB7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0QTRBNEE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNEE0QTRBO1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9IH1cblxuW3JvbGU9dGFicGFuZWxdW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmJsb2NrcXVvdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJlOWYzO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbjogMXJlbTtcbiAgcGFkZGluZzogMS4yNXJlbTsgfVxuXG5idXR0b24ge1xuICBmb250LWZhbWlseTogXCJCYXJsb3dcIiwgc2Fucy1zZXJpZjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZDAwMDFiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIC41cmVtIDAgMDtcbiAgcGFkZGluZzogMC41cmVtIDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0O1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5idXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9IH1cbiAgLmJ1dHRvbi5idXR0b24tLW11dGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5MywgMjAwLCAyMDcsIDAuMyk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE5MywgMjAwLCAyMDcsIDAuMyk7XG4gICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAuYnV0dG9uLmJ1dHRvbi0tbXV0ZWQuYnV0dG9uLS1hcnJvdzo6YWZ0ZXIge1xuICAgICAgY29sb3I6ICNkMDAwMWI7IH1cbiAgICAuYnV0dG9uLmJ1dHRvbi0tbXV0ZWQ6aG92ZXIuYnV0dG9uLS1hcnJvdzo6YWZ0ZXIsIC5idXR0b24uYnV0dG9uLS1tdXRlZDphY3RpdmUuYnV0dG9uLS1hcnJvdzo6YWZ0ZXIsIC5idXR0b24uYnV0dG9uLS1tdXRlZDpmb2N1cy5idXR0b24tLWFycm93OjphZnRlciB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLmJ1dHRvbi0tc21hbGwge1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAwLjMxMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6IFwiQmFybG93XCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmJ1dHRvbi5idXR0b24tLXNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG4gICAgLmJ1dHRvbi5idXR0b24tLXNtYWxsLmJ1dHRvbi0tYXJyb3c6OmFmdGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTsgfVxuICAuYnV0dG9uLmJ1dHRvbi0tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZzogMC44MTI1cmVtIDEuODEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAuYnV0dG9uLmJ1dHRvbi0tbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIC5idXR0b24uYnV0dG9uLS1hcnJvdzo6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb25mb250XCI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIGNvbnRlbnQ6IFwi7qiEXCI7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgLmJ1dHRvbi5idXR0b24tLWFycm93OjphZnRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtOyB9IH1cbiAgLmJ1dHRvbi5idXR0b24tLWV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDAuODEyNXJlbSAxLjgxMjVyZW07IH1cbiAgICAuYnV0dG9uLmJ1dHRvbi0tZXhwYW5kZWQuYnV0dG9uLS1hcnJvdyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtOyB9XG4gICAgICAuYnV0dG9uLmJ1dHRvbi0tZXhwYW5kZWQuYnV0dG9uLS1hcnJvdzo6YWZ0ZXIge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmJ1dHRvbiAudmlkZW8tYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5idXR0b24gLnZpZGVvLWJ1dHRvbiAudmlkZW8tYnV0dG9uX19wYXVzZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5idXR0b24gLnZpZGVvLWJ1dHRvbiAudmlkZW8tYnV0dG9uX19wbGF5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYnV0dG9uIC52aWRlby1idXR0b24udmlkZW8tYnV0dG9uLS1wYXVzZWQgLnZpZGVvLWJ1dHRvbl9fcGF1c2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5idXR0b24gLnZpZGVvLWJ1dHRvbi52aWRlby1idXR0b24tLXBhdXNlZCAudmlkZW8tYnV0dG9uX19wbGF5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmNpdGUgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIGNpdGUgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cblxuaDEge1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAzLjM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtOyB9IH1cblxuaDIge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMuMzc1cmVtOyB9IH1cblxuaDMge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMy4xMjVyZW07IH0gfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDIuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuNzVyZW07IH0gfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9IH1cblxuaDYge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgaDYge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cblxuaDIge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjg3NXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDIuNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMy4zNzVyZW07IH0gfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gIG1hcmdpbjogMXJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4xMjVyZW07IH0gfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICBtYXJnaW46IDFyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbjogMXJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9IH1cblxuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICBoNiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuXG5oMSB7XG4gIG1hcmdpbjogMDsgfVxuICBoMSArIC5zbGFiIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtOyB9XG5cbi5oMy1sb29rIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjEyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5oMy1sb29rIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9IH1cblxuLmljb25fX2dseXBoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTsgfVxuXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuICAuaWNvbiAuaWNvbl9fZ2x5cGgge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogLjU1ZW07XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG4gIC5pY29uIC5pY29uX19sYWJlbCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4uaWNvbi0tYWZ0ZXIge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmljb24tLWFmdGVyIC5pY29uX19nbHlwaCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5pY29uLS1uby1sYWJlbCAuaWNvbl9fbGFiZWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5pY29uLS1uby1sYWJlbCAuaWNvbl9fZ2x5cGgge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmljb24tLXN0YWNrZWQge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS4xOyB9XG4gIC5pY29uLS1zdGFja2VkIC5pY29uX19nbHlwaCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMi41ZW07IH1cblxuLmljb24tLWJpZyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAuaWNvbi0tYmlnIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9IH1cbiAgLmljb24tLWJpZyAuaWNvbl9fZ2x5cGgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgICBmb250LXNpemU6IDJlbTsgfVxuICBidXR0b24gLmljb24tLWJpZyAuaWNvbl9fbGFiZWwsXG4gIC5idXR0b24gLmljb24tLWJpZyAuaWNvbl9fbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uYWxpZ24taWNvbnMgLmljb24tbGFiZWwgLmljIHtcbiAgd2lkdGg6IDFlbTsgfVxuXG4uYWxpZ24taWNvbnMgLmljb24tbGFiZWwgLmxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IC41ZW07IH1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICBhLmJ1dHRvbiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLmZhbmN5LWxpbmtzIGEsXG5hLmxpbmstLWZhbmN5LFxuLmxpbmstLWFycm93LFxuLmFycm93LWxpbmtzIGEsXG5hLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmxpbmstLWZhbmN5LFxuLmZhbmN5LWxpbmtzIGEge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgY29sb3I6ICNkMDAwMWI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLWluLW91dCwgIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1pbi1vdXQsICBwYWRkaW5nLWxlZnQgLjJzIGVhc2UtaW4tb3V0LCB0ZXh0LWluZGVudCAuMnMgZWFzZS1pbi1vdXQ7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgdGV4dC1pbmRlbnQ6IC0xNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAubGluay0tZmFuY3ksXG4gICAgLmZhbmN5LWxpbmtzIGEge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgLmxpbmstLWZhbmN5OmhvdmVyLCAubGluay0tZmFuY3k6YWN0aXZlLFxuICAuZmFuY3ktbGlua3MgYTpob3ZlcixcbiAgLmZhbmN5LWxpbmtzIGE6YWN0aXZlIHtcbiAgICBjb2xvcjogIzI4NWQ3NjsgfVxuICAubGluay0tZmFuY3k6OmJlZm9yZSxcbiAgLmZhbmN5LWxpbmtzIGE6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IC0xcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAuN2VtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyODVkNzY7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLWluLW91dCwgbWFyZ2luLWxlZnQgLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5saW5rLS1mYW5jeTpob3ZlciwgLmxpbmstLWZhbmN5OmFjdGl2ZSxcbiAgLmZhbmN5LWxpbmtzIGE6aG92ZXIsXG4gIC5mYW5jeS1saW5rcyBhOmFjdGl2ZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMjZweDtcbiAgICB0ZXh0LWluZGVudDogLTI2cHg7IH1cbiAgICAubGluay0tZmFuY3k6aG92ZXI6OmJlZm9yZSwgLmxpbmstLWZhbmN5OmFjdGl2ZTo6YmVmb3JlLFxuICAgIC5mYW5jeS1saW5rcyBhOmhvdmVyOjpiZWZvcmUsXG4gICAgLmZhbmN5LWxpbmtzIGE6YWN0aXZlOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4ubGluay0tYXJyb3csXG4uYXJyb3ctbGlua3MgYSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtMS41cmVtO1xuICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgIC5saW5rLS1hcnJvdyxcbiAgICAuYXJyb3ctbGlua3MgYSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAubGluay0tYXJyb3c6OmJlZm9yZSxcbiAgLmFycm93LWxpbmtzIGE6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiBcImljb25mb250XCI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBjb250ZW50OiBcIu6ohFwiO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtaW5kZW50OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC5saW5rLS1hcnJvdzo6YmVmb3JlLFxuICAgICAgLmFycm93LWxpbmtzIGE6OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH0gfVxuXG4uYmlnLWljb24gLmljb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uYmlnLWljb24gLmljb25fX2dseXBoLCAuYmlnLWljb24gc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMi41cmVtO1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtOyB9XG5cbi5lZGl0b3JpYWwgLmxpbmstLWZhbmN5LFxuLmVkaXRvcmlhbCAubGluay0tZmFuY3ktcmV2ZXJzZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgLmVkaXRvcmlhbCAubGluay0tZmFuY3ksXG4gICAgLmVkaXRvcmlhbCAubGluay0tZmFuY3ktcmV2ZXJzZSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuXG5wIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgfSB9XG5cbnAuaW50cm8sXG4uaW50cm8gcCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICBwLmludHJvLFxuICAgIC5pbnRybyBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9IH1cblxuLnNlcDo6YmVmb3JlIHtcbiAgY29udGVudDogJ+KAoic7IH1cblxuLnNlcC0tZGFzaDo6YmVmb3JlIHtcbiAgY29udGVudDogJy0nOyB9XG5cbi5zZXAtLXBpcGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICd8JzsgfVxuXG4ub3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAuNTtcbiAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5OyB9XG4gIC5vdmVybGF5IGRpdiwgLm92ZXJsYXkgcGljdHVyZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5vdmVybGF5IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY29udGFpbic7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgLm92ZXJsYXkub3ZlcmxheS0tbGluZS1hcnQge1xuICAgIG9wYWNpdHk6IC4yOyB9XG4gICAgLm92ZXJsYXkub3ZlcmxheS0tbGluZS1hcnQgaW1nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7IG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcic7XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcCBjZW50ZXI7IH1cbiAgLm92ZXJsYXkub3ZlcmxheS0tbGluZS1hcnQtLWNvbnRhaW4ge1xuICAgIG9wYWNpdHk6IC4yOyB9XG4gICAgLm92ZXJsYXkub3ZlcmxheS0tbGluZS1hcnQtLWNvbnRhaW4gaW1nIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb250YWluOyBvYmplY3QtcG9zaXRpb246IGNlbnRlcic7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzVyZW0pIHtcbiAgICAub3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0OyB9IH1cblxuLm5ld3MtdGVhc2Vyc19faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAubmV3cy10ZWFzZXJzX19oZWFkZXIgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm5ld3MtdGVhc2Vyc19faGVhZGVyIGgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMy4zNzVyZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgIC5uZXdzLXRlYXNlcnNfX2hlYWRlciBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtOyB9IH1cbiAgICAubmV3cy10ZWFzZXJzX19oZWFkZXIgaDIgc3BhbiB7XG4gICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI0ZEQzQyRTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlOyB9XG5cbi5uZXdzLXRlYXNlcnMgLnRlYXNlcl9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm5ld3MtdGVhc2VycyAudGVhc2VyX193cmFwcGVyID4gKiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDE7IH1cblxuLm5ld3MtdGVhc2Vycy1zdGFja2VkX19oZWFkZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAubmV3cy10ZWFzZXJzLXN0YWNrZWRfX2hlYWRlciBhIHtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAubmV3cy10ZWFzZXJzLXN0YWNrZWRfX2hlYWRlciBhOjphZnRlciB7XG4gICAgICBjb2xvcjogI2QwMDAxYjtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAuMjVyZW0pIHtcbiAgICAgICAgLm5ld3MtdGVhc2Vycy1zdGFja2VkX19oZWFkZXIgYTo6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAubmV3cy10ZWFzZXJzLXN0YWNrZWRfX2hlYWRlciBoMiB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG5cbi50b2dnbGUtYnV0dG9uX19kZW1vIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAudG9nZ2xlLWJ1dHRvbl9fZGVtb1thcmlhLWhpZGRlbj0ndHJ1ZSddIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0LWdyb3VwaW5nIHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTsgfVxuICAubGlzdC1ncm91cGluZ19faGVhZGluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDAxYjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAubGlzdC1ncm91cGluZ19faGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgLmxpc3QtZ3JvdXBpbmcgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5saXN0LWdyb3VwaW5nIC5zbGFiIHtcbiAgICBwYWRkaW5nOiAxcmVtOyB9XG4gIC5saXN0LWdyb3VwaW5nX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxpc3QtZ3JvdXBpbmdfX3RleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5saXN0LWdyb3VwaW5nX190ZXh0ID4gKiB7XG4gICAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1pbi13aWR0aDogOS4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgICAubGlzdC1ncm91cGluZ19fdGV4dCBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubGlzdC1ncm91cGluZ19faW1hZ2Uge1xuICAgIGZsZXgtYmFzaXM6IDEwMHB4O1xuICAgIGZsZXgtZ3JvdzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgIC5saXN0LWdyb3VwaW5nX190ZXh0ID4gKiB7XG4gICAgICBtaW4td2lkdGg6IDEyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5saXN0LWdyb3VwaW5nX19jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLmxpc3QtZ3JvdXBpbmdfX3RleHQge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC5saXN0LWdyb3VwaW5nX190ZXh0ID4gKiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi52aWV3c19fZ3JvdXBpbmcgKyAudmlld3NfX2dyb3VwaW5nIHtcbiAgbWFyZ2luLXRvcDogM3JlbTsgfVxuXG4udmlldy1jb250ZW50IGRpdjpsYXN0LWNoaWxkIC5saXN0LWdyb3VwaW5nIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3BhZ2UtaGVhZGVyLWJhY2tncm91bmQuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5wYWdlLWhlYWRlci0tcGxhaW4gaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAucGFnZS1oZWFkZXItLXBsYWluIGgxIHNwYW4ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNGREM0MkU7XG4gICAgICBsaW5lLWhlaWdodDogMTMwJTsgfVxuICAucGFnZS1oZWFkZXItLXBsYWluIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9XG4gIC5wYWdlLWhlYWRlci0taGFzLW1lZGlhIC5wYWdlLWhlYWRlcl9fbWVkaWEge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnBhZ2UtaGVhZGVyLS1oYXMtbWVkaWEgLnBhZ2UtaGVhZGVyX190ZXh0IHtcbiAgICBhbGlnbi1pdGVtczogaW5oZXJpdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MXJlbSkge1xuICAgIC5wYWdlLWhlYWRlci0taGFzLW1lZGlhIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgICAgIC5wYWdlLWhlYWRlci0taGFzLW1lZGlhID4gZGl2IHtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuICAgICAgLnBhZ2UtaGVhZGVyLS1oYXMtbWVkaWEgLnBhZ2UtaGVhZGVyX190ZXh0X19pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDcuNXJlbSAyLjVyZW0gNy41cmVtIDcuNXJlbTsgfSB9XG4gIC5wYWdlLWhlYWRlcl9fbWVkaWEge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwIDFyZW07IH1cbiAgICAucGFnZS1oZWFkZXJfX21lZGlhIGFydGljbGUsIC5wYWdlLWhlYWRlcl9fbWVkaWEgZGl2IHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5wYWdlLWhlYWRlcl9fbWVkaWEgcGljdHVyZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgIC5wYWdlLWhlYWRlcl9fbWVkaWEgcGljdHVyZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgICAucGFnZS1oZWFkZXJfX21lZGlhIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luOiAwLjVyZW0gMXJlbTsgfVxuICAucGFnZS1oZWFkZXJfX3RleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA3Ni4yNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIC5wYWdlLWhlYWRlcl9fdGV4dCBoMSB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgLnBhZ2UtaGVhZGVyX190ZXh0X19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5wYWdlLWhlYWRlci0taG9tZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIC5wYWdlLWhlYWRlci0taG9tZSAucGFnZS1oZWFkZXJfX21lZGlhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAucGFnZS1oZWFkZXItLWhvbWUgLnBhZ2UtaGVhZGVyX190ZXh0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wYWdlLWhlYWRlci1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1ob21lIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjM3NXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci0taG9tZSBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzLjM3NXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNHJlbTsgfSB9XG4gICAgICAucGFnZS1oZWFkZXItLWhvbWUgaDEgLmhlYWRpbmdfX3RleHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDNDJFO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgLnBhZ2UtaGVhZGVyLS1mdWxsIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wYWdlLWhlYWRlci0tZnVsbCAucGFnZS1oZWFkZXJfX21lZGlhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnBhZ2UtaGVhZGVyLS1mdWxsIC5wYWdlLWhlYWRlcl9fbWVkaWEgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1mdWxsIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwOyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1mdWxsIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjM3NXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MC4yNXJlbSkge1xuICAgICAgICAucGFnZS1oZWFkZXItLWZ1bGwgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDRyZW07IH0gfVxuICAgICAgLnBhZ2UtaGVhZGVyLS1mdWxsIGgxIC5oZWFkaW5nX190ZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQyRTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1mdWxsLmZsaXBwZWQgLnBhZ2UtaGVhZGVyX190ZXh0IHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDsgfVxuICAgICAgLnBhZ2UtaGVhZGVyLS1mdWxsLmZsaXBwZWQgLnBhZ2UtaGVhZGVyX190ZXh0IGgxIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNXJlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLS1mdWxsIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAucGFnZS1oZWFkZXItLWZ1bGwgLnBhZ2UtaGVhZGVyX190ZXh0X19pbm5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygoMTAwdncgLSAxMjIwcHgpIC8gMik7IH1cbiAgICAgIC5wYWdlLWhlYWRlci0tZnVsbC5mbGlwcGVkIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gMTIyMHB4KSAvIDIpOyB9IH1cbiAgLnBhZ2UtaGVhZGVyLS1sYW5kaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1sYW5kaW5nIC5wYWdlLWhlYWRlcl9fbWVkaWEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnBhZ2UtaGVhZGVyLS1sYW5kaW5nIC5wYWdlLWhlYWRlcl9fbWVkaWE6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90ZWFzZXItZGVjb3JhdGlvbi5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgd2lkdGg6IDkxcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMnJlbTsgfVxuICAgIC5wYWdlLWhlYWRlci0tbGFuZGluZyBoMSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAucGFnZS1oZWFkZXItLWxhbmRpbmcgaDEgc3BhbiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjRkRDNDJFO1xuICAgICAgICBsaW5lLWhlaWdodDogMTMwJTsgfVxuICAgIC5wYWdlLWhlYWRlci0tbGFuZGluZyAucGFnZS1oZWFkZXJfX3RleHQge1xuICAgICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wYWdlLWhlYWRlci0tbGFuZGluZyAucGFnZS1oZWFkZXJfX3RleHRfX2RlY29yYXRpb24ge1xuICAgICAgd2lkdGg6IDE3LjA2MjVyZW07XG4gICAgICBoZWlnaHQ6IDI1cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Nyb3NzaW5nLW1hcmtlci5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIHRvcDogNXJlbTtcbiAgICAgIHotaW5kZXg6IC0xOyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1sYW5kaW5nIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwLjI1cmVtKSB7XG4gICAgICAucGFnZS1oZWFkZXItLWxhbmRpbmcgLnBhZ2UtaGVhZGVyX190ZXh0X19pbm5lciB7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLnBhZ2UtaGVhZGVyLS1zdGFuZGFyZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgLnBhZ2UtaGVhZGVyLS1zdGFuZGFyZCBoMSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAucGFnZS1oZWFkZXItLXN0YW5kYXJkIGgxIHNwYW4ge1xuICAgICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI0ZEQzQyRTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7IH1cbiAgICAucGFnZS1oZWFkZXItLXN0YW5kYXJkIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnBhZ2UtaGVhZGVyLS1hcnRpY2xlIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAucGFnZS1oZWFkZXItLWFydGljbGUgLm5ld3MtbWV0YV9fZGF0ZSA+ICosXG4gIC5wYWdlLWhlYWRlci0tYXJ0aWNsZSAubmV3cy1tZXRhX19hdXRob3IgPiAqIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnBhZ2UtaGVhZGVyLS1hcnRpY2xlIC5uZXdzLW1ldGFfX2RhdGUge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uZ3JpZF9fbWFpbiAucGFnZS1oZWFkZXIgLnBhZ2UtaGVhZGVyX190ZXh0IHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYxcmVtKSB7XG4gIC5ncmlkX19tYWluIC5wYWdlLWhlYWRlci5wYWdlLWhlYWRlci0taGFzLW1lZGlhID4gZGl2IHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfSB9XG4iLCJib2R5IHtcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwidGVsZXBob25lXCJdLCBcbiAgc2VsZWN0IHtcbiAgICBoZWlnaHQ6IHJlbSg0MnB4KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3c7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKG0pO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKGJsYWNrKTtcblxuICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbSgzMDBweCk7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBzZWxlY3QtYmFja2dyb3VuZDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cblxuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHMpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3c7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBcbn1cblxuLmZvcm0ge1xuICBAaW5jbHVkZSBtb2RpZmllcignaW5saW5lJykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICA+ICoge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgbWF4LXdpZHRoOiByZW0oMjUwcHgpO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLmV4cG9zZWQtZmlsdGVycyB7XG4gIEBpbmNsdWRlIGVsZW1lbnQoJ2ZpbHRlci1sYWJlbCcpIHtcbiAgICBtaW4td2lkdGg6IHJlbSgxMDBweCk7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgLmNoaXAge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3c7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHMpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzdWJ0bGUtZ3JleSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQU1BQUFDNjdEK1BBQUFBWFZCTVZFVUFBQUFBTDFjQU1WWUFNVmdBTDFZQU1WWUFNRmdBTUZjQUwxWUFNVmdBTVZjQU1GZ0FMMWNBTDFZQU1WZ0FNRmNBTUZnQUwxY0FNVllBTVZjQU1WZ0FNRmNBTUZjQUwxY0FNRmNBTUZjQU1GY0FNRmNBTUZjQU1GZi8vLys0WVJpTUFBQUFIblJTVGxNQVVsTlVWbGxhVzF4ZFhtQmhZbU5rWm1kb2FXNXYwTmZZK1BuNisvMHh0aFhsQUFBQUFXSkxSMFFlY2dvZ0t3QUFBRWRKUkVGVUNCMEZ3UWtDUXpBQUFMQVVZOWljSzlQVy83OHBjWHlBNzZFdkU4emxUWjEveEZ4RFUySXNEYkRlOXdKb3Irc0Y3Q21FdE1HZUFsWGE2UElBUSs3OFIyQThIOEFRQTJlclJqTnlBQUFBQUVsRlRrU3VRbUNDJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDEwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAuNXJlbSkgNTAlO1xuICAgIHBhZGRpbmc6IC41cmVtIDEuNXJlbSAuNXJlbSAuNXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihsaWdodC1ncmV5KTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICA+ICoge1xuICAgICAgbWFyZ2luLXJpZ2h0OiByci1ncmlkYmFzZSgxKTtcbiAgICB9XG4gICAgaW5wdXQsIGJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IHJlbSg0MnB4KTtcbiAgICB9XG5cbiAgICAmW2RhdGEtZHJ1cGFsLXNlbGVjdG9yPVwiZWRpdC1hY3Rpb25zXCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIGp1c3RpZnktY29udGVudDogbm9ybWFsO1xuICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgIHJvdy1nYXA6IDAuNXJlbTtcblxuICAgICAgPiAqIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDQwcHgpO1xuICB9XG59XG5cbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybS53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSB7XG4gIGxhYmVsLCBsZWdlbmQge1xuICAgIGNvbG9yOiAjNEE0QTRBO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG5cbiAgaW5wdXQgKyBsYWJlbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxuXG4gIGxhYmVsICsgaW5wdXQsXG4gIGxhYmVsICsgc2VsZWN0LFxuICBsYWJlbCB+IC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIHNlbGVjdCxcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNBNkE2QTY7XG4gICAgaGVpZ2h0OiAyLjYyNXJlbTtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICB0ZXh0YXJlYSB7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgI0E2QTZBNjtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgJiA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxLjc1cmVtO1xuICB9XG5cbiAgJiA+IGZpZWxkc2V0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICAuZm9ybS1uYW1lLXdyYXBwZXIsXG4gIC5mb3JtLXByaW1hcnktcGhvbmUtd3JhcHBlcixcbiAgLmZvcm0tc2Vjb25kYXJ5LXBob25lLXdyYXBwZXIsXG4gIC53ZWJmb3JtLWFkZHJlc3MtLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIsXG4gIC53ZWJmb3JtLWVtYWlsLWNvbmZpcm0tLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHJvdy1nYXA6IDFyZW07XG4gICAgY29sdW1uLWdhcDogMnJlbTtcbiAgfVxuXG4gIC5mb3JtLW5hbWUtd3JhcHBlciA+ICosXG4gIC5mb3JtLXByaW1hcnktcGhvbmUtd3JhcHBlciA+ICosXG4gIC5mb3JtLXNlY29uZGFyeS1waG9uZS13cmFwcGVyID4gKixcbiAgLndlYmZvcm0tYWRkcmVzcy0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+ICosXG4gIC53ZWJmb3JtLWVtYWlsLWNvbmZpcm0tLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIgPiAqIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICAuZm9ybS1uYW1lLXdyYXBwZXIgPiAqID4gKixcbiAgICAuZm9ybS1wcmltYXJ5LXBob25lLXdyYXBwZXIgPiAqID4gKixcbiAgICAuZm9ybS1zZWNvbmRhcnktcGhvbmUtd3JhcHBlciA+ICogPiAqLFxuICAgIC53ZWJmb3JtLWFkZHJlc3MtLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIgPiAqID4gKixcbiAgICAud2ViZm9ybS1lbWFpbC1jb25maXJtLS13cmFwcGVyIC5maWVsZHNldC13cmFwcGVyID4gKiA+ICoge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmZvcm0tcHJpbWFyeS1waG9uZS13cmFwcGVyID4gKixcbiAgICAuZm9ybS1zZWNvbmRhcnktcGhvbmUtd3JhcHBlciA+ICosXG4gICAgLndlYmZvcm0tYWRkcmVzcy0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+IC5mb3JtLWl0ZW0tYWRkcmVzcy1hZGRyZXNzLFxuICAgIC53ZWJmb3JtLWFkZHJlc3MtLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIgPiAuZm9ybS1pdGVtLWFkZHJlc3MtYWRkcmVzcy0yLFxuICAgIC53ZWJmb3JtLWVtYWlsLWNvbmZpcm0tLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIgPiAqIHtcbiAgICAgIG1pbi13aWR0aDogY2FsYygoMTAwJSAtIDJyZW0pIC8gMik7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoKDEwMCUgLSAycmVtKSAvIDIpO1xuICAgIH1cblxuICAgIC5mb3JtLW5hbWUtd3JhcHBlciA+ICosXG4gICAgLndlYmZvcm0tYWRkcmVzcy0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+IC5mb3JtLWl0ZW0tYWRkcmVzcy1jaXR5LFxuICAgIC53ZWJmb3JtLWFkZHJlc3MtLXdyYXBwZXIgLmZpZWxkc2V0LXdyYXBwZXIgPiAuZm9ybS1pdGVtLWFkZHJlc3Mtc3RhdGUtcHJvdmluY2UsXG4gICAgLndlYmZvcm0tYWRkcmVzcy0td3JhcHBlciAuZmllbGRzZXQtd3JhcHBlciA+IC5mb3JtLWl0ZW0tYWRkcmVzcy1wb3N0YWwtY29kZSB7XG4gICAgICBtaW4td2lkdGg6IGNhbGMoKDEwMCUgLSA0cmVtKSAvIDMpO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKCgxMDAlIC0gNHJlbSkgLyAzKTtcbiAgICB9XG4gIH1cblxuICAuanMtZm9ybS10eXBlLXJhZGlvLFxuICAuanMtZm9ybS10eXBlLWNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjQjJCMkIyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMC43cmVtO1xuICAgICAgd2lkdGg6IDAuN3JlbTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3I7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDAwMjFCO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNCMkIyQjI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxLjE1cmVtO1xuICAgICAgd2lkdGg6IDEuMTVyZW07XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gICAgICBtYXNrOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9JzAgMCAyMSAxNicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nbTAgOC44MTIgMi4zMzMtMy4wMTVMOC40IDEwLjkgMTguMiAwIDIxIDIuNTUgOC42MzMgMTYgMCA4LjgxMlonLyUzRSUzQy9zdmclM0VcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0QwMDIxQjtcbiAgICB9XG4gIH1cbn0iLCIkcmVtLWJhc2VsaW5lOiAxNnB4ICFkZWZhdWx0O1xuJHJlbS1mYWxsYmFjazogZmFsc2UgIWRlZmF1bHQ7XG4kcmVtLXB4LW9ubHk6IGZhbHNlICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gcmVtLXNlcGFyYXRvcigkbGlzdCwgJHNlcGFyYXRvcjogZmFsc2UpIHtcbiAgQGlmICRzZXBhcmF0b3IgPT0gXCJjb21tYVwiIG9yICRzZXBhcmF0b3IgPT0gXCJzcGFjZVwiIHtcbiAgICBAcmV0dXJuIGFwcGVuZCgkbGlzdCwgbnVsbCwgJHNlcGFyYXRvcik7XG4gIH0gXG4gIFxuICBAaWYgZnVuY3Rpb24tZXhpc3RzKFwibGlzdC1zZXBhcmF0b3JcIikgPT0gdHJ1ZSB7XG4gICAgQHJldHVybiBsaXN0LXNlcGFyYXRvcigkbGlzdCk7XG4gIH1cblxuICAvLyBsaXN0LXNlcGFyYXRvciBwb2x5ZmlsbCBieSBIdWdvIEdpcmF1ZGVsIChodHRwczovL3Nhc3MtY29tcGF0aWJpbGl0eS5naXRodWIuaW8vI2xpc3Rfc2VwYXJhdG9yX2Z1bmN0aW9uKVxuICAkdGVzdC1saXN0OiAoKTtcbiAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgICR0ZXN0LWxpc3Q6IGFwcGVuZCgkdGVzdC1saXN0LCAkaXRlbSwgc3BhY2UpO1xuICB9XG5cbiAgQHJldHVybiBpZigkdGVzdC1saXN0ID09ICRsaXN0LCBzcGFjZSwgY29tbWEpO1xufVxuXG5AbWl4aW4gcmVtLWJhc2VsaW5lKCR6b29tOiAxMDAlKSB7XG4gIGZvbnQtc2l6ZTogJHpvb20gLyAxNnB4ICogJHJlbS1iYXNlbGluZTtcbn1cblxuQGZ1bmN0aW9uIHJlbS1jb252ZXJ0KCR0bywgJHZhbHVlcy4uLikge1xuICAkcmVzdWx0OiAoKTtcbiAgJHNlcGFyYXRvcjogcmVtLXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIgYW5kIHVuaXQoJHZhbHVlKSA9PSBcInJlbVwiIGFuZCAkdG8gPT0gXCJweFwiIHtcbiAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkdmFsdWUgLyAxcmVtICogJHJlbS1iYXNlbGluZSwgJHNlcGFyYXRvcik7XG4gICAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiBhbmQgdW5pdCgkdmFsdWUpID09IFwicHhcIiBhbmQgJHRvID09IFwicmVtXCIge1xuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2YWx1ZSAvICRyZW0tYmFzZWxpbmUgKiAxcmVtLCAkc2VwYXJhdG9yKTtcbiAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBcImxpc3RcIiB7XG4gICAgICAkdmFsdWUtc2VwYXJhdG9yOiByZW0tc2VwYXJhdG9yKCR2YWx1ZSk7XG4gICAgICAkdmFsdWU6IHJlbS1jb252ZXJ0KCR0bywgJHZhbHVlLi4uKTtcbiAgICAgICR2YWx1ZTogcmVtLXNlcGFyYXRvcigkdmFsdWUsICR2YWx1ZS1zZXBhcmF0b3IpO1xuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2YWx1ZSwgJHNlcGFyYXRvcik7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHZhbHVlLCAkc2VwYXJhdG9yKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKGxlbmd0aCgkcmVzdWx0KSA9PSAxLCBudGgoJHJlc3VsdCwgMSksICRyZXN1bHQpO1xufVxuXG5AZnVuY3Rpb24gcmVtKCR2YWx1ZXMuLi4pIHtcbiAgQGlmICRyZW0tcHgtb25seSB7XG4gICAgQHJldHVybiByZW0tY29udmVydChweCwgJHZhbHVlcy4uLik7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gcmVtLWNvbnZlcnQocmVtLCAkdmFsdWVzLi4uKTtcbiAgfVxufVxuXG5AbWl4aW4gcmVtKCRwcm9wZXJ0aWVzLCAkdmFsdWVzLi4uKSB7XG4gIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcIm1hcFwiIHtcbiAgICBAZWFjaCAkcHJvcGVydHkgaW4gbWFwLWtleXMoJHByb3BlcnRpZXMpIHtcbiAgICAgIEBpbmNsdWRlIHJlbSgkcHJvcGVydHksIG1hcC1nZXQoJHByb3BlcnRpZXMsICRwcm9wZXJ0eSkpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgIEBpZiAkcmVtLWZhbGxiYWNrIG9yICRyZW0tcHgtb25seSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogcmVtLWNvbnZlcnQocHgsICR2YWx1ZXMuLi4pO1xuICAgICAgfVxuICAgICAgQGlmIG5vdCAkcmVtLXB4LW9ubHkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IHJlbS1jb252ZXJ0KHJlbSwgJHZhbHVlcy4uLik7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiJGZvbnQtYmFybG93OiAnQmFybG93Jywgc2Fucy1zZXJpZjtcbiRmb250LWJhcmxvdy1jb25kZW5zZWQ6ICdCYXJsb3cgQ29uZGVuc2VkJywgc2Fucy1zZXJpZjsiLCIvLyBFeHRyYWN0IGFsbCB0aGUgcG9zc2libGUgZm9udCBzaXplcyBvdXQgb2YgYSBmb250IHNpemUgY29uZmlnLiBcbi8vIHRoaXMgaXMgbW9yZSBjb21wbGljYXRlZCB0aGFuIHlvdXIgdHlwaWNhbCBrZXl3b3JkcygpIG9wIGJlY2F1c2Vcbi8vIGZvbnQgY29uZmlnIGlzIG9yZ2FuaXplZCBieSBicmVha3BvaW50LCB0aGVuIHNpemUuXG5AZnVuY3Rpb24gcnItZm9udC1zaXplcygkZm9udC1jb25maWc6ICRyci1mb250cykge1xuICAkd29ya2luZy1tYXA6ICgpO1xuICBAZWFjaCAkYnJlYWssICRmb250bWFwIGluICRmb250LWNvbmZpZyB7XG4gICAgJHdvcmtpbmctbWFwOiBtYXAtbWVyZ2UoJHdvcmtpbmctbWFwLCAkZm9udG1hcCk7XG4gIH1cbiAgQHJldHVybiBtYXAta2V5cygkd29ya2luZy1tYXApO1xufVxuXG4vLyBQYXNzIGEgZm9udCB0YWcgYW5kIGEgbGluZWhlaWdodCB0YWcgYW5kIHJyLWZvbnQtY29uZmlnIHJldHVybnMgZm9udCBzaXplIGFuZFxuLy8gbGluZSBoZWlnaHQgcHJvcGVydGllcyBmb3IgZWFjaCBicmVha3BvaW50LlxuQG1peGluIHJyLWZvbnQtY29tcHV0ZSgkc2l6ZTogbSwgJGxpbmVoZWlnaHQ6IG1lZGl1bSwgJGZvbnQtY29uZmlnOiAkcnItZm9udHMsICRsaW5laGVpZ2h0LWNvbmZpZzogJHJyLWxpbmVoZWlnaHRzKSB7XG4gICRicmVha3M6IHJyLWJyZWFrcG9pbnQtbGlzdCgpO1xuICAkbGluZWdyaWRoZWlnaHQ6IG1hcC1nZXQoJGxpbmVoZWlnaHQtY29uZmlnLCAkbGluZWhlaWdodCk7XG4gIEBlYWNoICRicmVhayBpbiAkYnJlYWtzIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGZvbnQtY29uZmlnLCAkYnJlYWspIHtcbiAgICAgICRmb250LXNpemUtc2V0OiBtYXAtZ2V0KCRmb250LWNvbmZpZywgJGJyZWFrKTtcbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkZm9udC1zaXplLXNldCwgJHNpemUpIHtcbiAgICAgICAgJGZvbnRzaXplOiBtYXAtZ2V0KCRmb250LXNpemUtc2V0LCAkc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZSgkYnJlYWspIHtcbiAgICAgICAgICBmb250LXNpemU6ICRmb250c2l6ZTtcbiAgICAgICAgICBAaWYgJGxpbmVncmlkaGVpZ2h0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oKHN0cmlwX3VuaXQoJGZvbnRzaXplKSAqIDE2cHgpICsgJGxpbmVncmlkaGVpZ2h0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnVpbGRzIGEgbGlzdCBvZiBzdHlsZSBydWxlcyB3aXRoIHRoZSBzcGVjaWZpZWQgcHJlZml4LCBzaXplIHRhZywgYW5kXG4vLyBsaW5laGVpZ2h0IHRhZy4gVXNlZnVsIGZvciBidWlsZGluZyBwYXR0ZXJuIGxpYnJhcmllcyBvciBpZiB5b3UgaW50ZW5kXG4vLyB0byBleHBvc2UgZGVzaWduIGNhcGFiaWxpdGllcyB0aHJvdWdoIGNzcy5cbkBtaXhpbiByci1mb250LXNhbXBsZXMoJHByZWZpeDogJ3RleHQnLCAkZm9udC1jb25maWc6ICRyci1mb250cywgJGxpbmVoZWlnaHQtY29uZmlnOiAkcnItbGluZWhlaWdodHMpIHtcbiAgJGZvbnQtc2l6ZXM6IHJyLWZvbnQtc2l6ZXMoJGZvbnQtY29uZmlnKTtcbiAgQGVhY2ggJGZzIGluICRmb250LXNpemVzIHtcbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGZzIHtcbiAgICAgIEBlYWNoICRsaW5lbmFtZSwgJGxpbmVoZWlnaHQgaW4gJGxpbmVoZWlnaHQtY29uZmlnIHtcbiAgICAgICAgLiN7JHByZWZpeH0tI3skbmFtZX0tI3skbGluZW5hbWV9IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjU1LCAyMDAsIC4zKTtcbiAgICAgICAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoJG5hbWUsICRsaW5lbmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnVpbGRzIGJhc2ljIGhlYWRpbmcgbGF5b3V0IHVzaW5nIHRoZSBoZWFkaW5nIHN0eWxlIGNvbmZpZ3VyYXRpb24sIGluY2x1ZGluZ1xuLy8gbWVkaWEgcXVlcmllcy5cbkBtaXhpbiByci1oZWFkaW5nKCRjb25maWctbWFwLXRhZywgJGhlYWRpbmctY29uZmlnOiAkcnItaGVhZGluZ3MpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRoZWFkaW5nLWNvbmZpZywgJGNvbmZpZy1tYXAtdGFnKSB7XG4gICAgJGNvbmZpZzogbWFwLWdldCgkbWFwOiAkaGVhZGluZy1jb25maWcsICRrZXk6ICRjb25maWctbWFwLXRhZyk7XG4gICAgJHNpemU6IG07XG4gICAgQGlmIG1hcC1oYXMta2V5KCRjb25maWcsIHNpemUpIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KCRjb25maWcsIHNpemUpO1xuICAgIH1cbiAgICAkbGluZWhlaWdodDogbWVkaXVtO1xuICAgIEBpZiBtYXAtaGFzLWtleSgkY29uZmlnLCBsaW5laGVpZ2h0KSB7XG4gICAgICAkbGluZWhlaWdodDogbWFwLWdldCgkY29uZmlnLCBsaW5laGVpZ2h0KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKCRzaXplLCAkbGluZWhlaWdodCk7XG4gICAgJGZvbnQ6IHNhbnMtc2VyaWY7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRjb25maWcsIGZvbnQpIHtcbiAgICAgICRmb250OiBtYXAtZ2V0KCRjb25maWcsIGZvbnQpO1xuICAgIH1cbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRjb25maWcsIHdlaWdodCkge1xuICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGNvbmZpZywgd2VpZ2h0KTtcbiAgICB9XG4gICAgQGlmIG1hcC1oYXMta2V5KCRjb25maWcsIHN0eWxlKSB7XG4gICAgICBmb250LXN0eWxlOiBtYXAtZ2V0KCRjb25maWcsIHN0eWxlKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiJGltYWdlLXVybC1wYXRoOiAnLi4vaW1hZ2VzLyc7XG4kYXJyb3ctcmlnaHQ6ICdcXDI3OWUnO1xuJGdsb2JhbC13aWR0aDogNzYuMjVyZW07XG4kcnItbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtZ2FwOiAzcmVtO1xuJGdyaWQtbWluOiAyMHJlbTtcbiRyci1ncmlkLWRpdmlzaW9uczogMjtcbiRyci1ibGVuZC1tb2RlOiBtdWx0aXBseTtcblxuJHRyYW5zaXRpb24tdGltZTogMC4yNXM7XG4kdHJhbnNpdGlvbi1lYXNpbmc6IGVhc2UtaW4tb3V0O1xuXG4kcmVtLWJhc2VsaW5lOiAxNnB4O1xuXG4kcnItZ3JpZC1zZXR0aW5nczogKFxuICBzOiAoXG4gICAgbXE6IG1heC13aWR0aCxcbiAgICBzaXplOiAzNXJlbSxcbiAgICBjb2x1bW5zOiA0LFxuICAgIGd1dHRlcjogMXJlbSAvICRyci1ncmlkLWRpdmlzaW9ucyxcbiAgICBvZmZzZXQ6IDFyZW0sXG4gICAgdnNwYWNlOiAyLFxuICAgIGNvbHVtbl9jb2xvcjogcmdiYSgyMDAsIDIwMCwgMjU1LCAuMiksXG4gICAgYmFzZWxpbmVfY29sb3I6IHJnYmEoMTI4LCAxMjgsIDIwMCwgLjIpXG4gICksXG4gIG06IChcbiAgICBtcTogbWluLXdpZHRoLFxuICAgIHNpemU6IDM1cmVtLFxuICAgIGd1dHRlcjogMXJlbSxcbiAgICBjb2x1bW5zOiA4LFxuICAgIG9mZnNldDogMnJlbSxcbiAgICB2c3BhY2U6IDMsIC8vICAyMXB4IC8gNDJweFxuICAgIGNvbHVtbl9jb2xvcjogcmdiYSgyNTUsIDIwMCwgMjAwLCAuMiksXG4gICAgYmFzZWxpbmVfY29sb3I6IHJnYmEoMTI4LCAxMjgsIDIwMCwgLjIpXG4gICksXG4gIGw6IChcbiAgICBzaXplOiA2MXJlbSxcbiAgICBjb2x1bW5zOiAxMixcbiAgICBjb2x1bW5fY29sb3I6IHJnYmEoMTI4LCAyNTUsIDIwMCwgLjIpLFxuICAgIGJhc2VsaW5lX2NvbG9yOiByZ2JhKDEyOCwgMTI4LCAyMDAsIC4yKVxuICApLFxuICB4bDogKFxuICAgIHNpemU6ICRnbG9iYWwtd2lkdGggKyA0cmVtLFxuICAgIG9mZnNldDogMCxcbiAgICBndXR0ZXI6IDJyZW0sIC8vMzZweCBcbiAgICB2c3BhY2U6IDUsIC8vICgzNnB4IC8gNzJweClcbiAgICBjb2x1bW5fY29sb3I6IHJnYmEoMjAwLCAxMjgsIDI1NSwgLjIpLFxuICAgIGJhc2VsaW5lX2NvbG9yOiByZ2JhKDEyOCwgMTI4LCAyMDAsIC4yKVxuICApLFxuICB4bHA6IChcbiAgICBzaXplOiAkZ2xvYmFsLXdpZHRoICsgOHJlbVxuICApXG4pO1xuXG4kcnItZ3JpZHM6IChcbiAgbWFqb3ItbGVmdDogKFxuICAgIG06IChcbiAgICAgIGNvbHVtbnM6IDIsXG4gICAgICBhcmVhczogbWFqb3IgbWlub3IsXG4gICAgICBmbGV4LWNvbHVtbnM6IDJcbiAgICApLFxuICAgIGw6IChcbiAgICAgIGNvbHVtbnM6IDMsXG4gICAgICBhcmVhczogbWFqb3IgbWFqb3IgbWlub3IsXG4gICAgKVxuICApLFxuICBtYWpvci1yaWdodDogKFxuICAgIG06IChcbiAgICAgIGNvbHVtbnM6IDIsXG4gICAgICBhcmVhczogbWlub3IgbWFqb3IsXG4gICAgICBmbGV4LWNvbHVtbnM6IDJcbiAgICApLFxuICAgIGw6IChcbiAgICAgIGNvbHVtbnM6IDMsXG4gICAgICBhcmVhczogbWlub3IgbWFqb3IgbWFqb3IsXG4gICAgKVxuICApXG4pO1xuXG4kbGluZWhlaWdodHM6IChcbiAgc3F1aXNoZWQ6IC41cHgsXG4gIHNxdWVlemU6IC0ycHgsXG4gIHRpZ2h0OiAwLFxuICBtZWRpdW06IDEwcHgsXG4gIHdpZGU6IDE1cHgsXG4gIGh1Z2U6IDIwcHgsXG4gIHJlZGljOiA0MHB4XG4pO1xuXG4kZm9udHM6IChcbiAgczogKFxuICAgIHhzOiByZW0oMTJweCksXG4gICAgczogcmVtKDE0cHgpLFxuICAgIG06IHJlbSgxNnB4KSxcbiAgICBsOiByZW0oMjBweCksXG4gICAgeGw6IHJlbSgyNHB4KSxcbiAgICAybDogcmVtKDI4cHgpLFxuICAgIDNsOiByZW0oMzJweCksXG4gICAgNGw6IHJlbSgzNnB4KSxcbiAgICA1bDogcmVtKDQwcHgpLFxuICAgIDZsOiByZW0oNDRweClcbiAgKSxcbiAgeGw6IChcbiAgICB4czogcmVtKDEycHgpLFxuICAgIHM6IHJlbSgxNHB4KSxcbiAgICBtOiByZW0oMTZweCksXG4gICAgbDogcmVtKDIwcHgpLFxuICAgIHhsOiByZW0oMjRweCksXG4gICAgMmw6IHJlbSgzNHB4KSxcbiAgICAzbDogcmVtKDQwcHgpLFxuICAgIDRsOiByZW0oNDRweCksXG4gICAgNWw6IHJlbSg0OHB4KSxcbiAgICA2bDogcmVtKDU0cHgpXG4gIClcbik7XG5cbiRmb250LXNpemVzOiByci1mb250LXNpemVzKCk7XG5cblxuJGNvbG9yczogKFxuICBwcmltYXJ5OiAjZDAwMDFiLFxuICBzZWNvbmRhcnk6ICMyODVkNzYsXG4gIHRlcnRpYXJ5OiAjNjViNGZjLFxuICBxdWF0ZXJuYXJ5OiAjMWUyNzNmLFxuICBhY2NlbnQ6ICNGREM0MkUsXG4gIGRhcmstZ3JleTogIzE1MTUxNSxcbiAgbmV1dHJhbC1ncmV5OiAjNEE0QTRBLFxuICBsaWdodC1ncmV5OiAjYzFjOGNmLFxuICBzdWJ0bGUtZ3JleTogI2RiZTlmMyxcbiAgb2ZmLXdoaXRlOiAjRjBGMEYwLFxuICBuZWFyLXdoaXRlOiAjZjlmOWY5LFxuICBzdWNjZXNzOiAjNTViMzdjLFxuICB3YXJuaW5nOiAjZmZiZjAwLFxuICBlcnJvcjogI2ViMDMwMyxcbiAgYmxhY2s6ICMyNTI1MjUsXG4gIHdoaXRlOiAjZmZmZmZmXG4pO1xuXG4vLyBzdWJzZXQgb2YgY29sb3JzIHRvIGdlbmVyYXRlIHRoZW1lIHNjaGVtZXMgZm9yXG4kdGhlbWVzOiAoXG4gIHByaW1hcnksXG4gIHNlY29uZGFyeSxcbiAgdGVydGlhcnksXG4gIGFjY2VudCxcbiAgc3VidGxlLWdyZXksXG4gIG9mZi13aGl0ZSxcbiAgYmxhY2tcbik7XG5cbi8vIERlZmF1bHQgY29sb3JzLCBmb3IgbGlnaHQgYmFja2dyb3VuZHNcbiR0ZXh0LWNvbG9yczogKFxuICBsaW5rOiBjb2xvcihzZWNvbmRhcnkpLFxuICBsaW5rLWFjdGl2ZTogY29sb3IocHJpbWFyeSksXG4gIHRleHQ6IGNvbG9yKGJsYWNrKSxcbiAgbGFiZWw6IGNvbG9yKHByaW1hcnkpLFxuICBhY2NlbnQ6IGNvbG9yKGVycm9yKSxcbiAgYnV0dG9uLWJvcmRlcjogY29sb3IocHJpbWFyeSksXG4gIGJ1dHRvbi1iYWNrZ3JvdW5kOiBjb2xvcihwcmltYXJ5KSxcbiAgYnV0dG9uLXRleHQ6IGNvbG9yKHdoaXRlKSxcbiAgYnV0dG9uLWRpc2FibGVkLWJvcmRlcjogY29sb3IobGlnaHQtZ3JleSksXG4gIGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kOiBjb2xvcihsaWdodC1ncmV5KSxcbiAgYnV0dG9uLWRpc2FibGVkLXRleHQ6IGNvbG9yKG5ldXRyYWwtZ3JleSksXG4gIGJ1dHRvbi1ob3Zlci1ib3JkZXI6IGNvbG9yKHF1YXRlcm5hcnkpLFxuICBidXR0b24taG92ZXItYmFja2dyb3VuZDogY29sb3IocXVhdGVybmFyeSksXG4gIGJ1dHRvbi1ob3Zlci10ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGJ1dHRvbi1hY3RpdmUtYm9yZGVyOiBjb2xvcihxdWF0ZXJuYXJ5KSxcbiAgYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiBjb2xvcihxdWF0ZXJuYXJ5KSxcbiAgYnV0dG9uLWFjdGl2ZS10ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGJ1dHRvbi1mb2N1cy1ib3JkZXI6IGNvbG9yKHF1YXRlcm5hcnkpLFxuICBidXR0b24tZm9jdXMtYmFja2dyb3VuZDogY29sb3IocXVhdGVybmFyeSksXG4gIGJ1dHRvbi1mb2N1cy10ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGhlYWRsaW5lLWdyb3VwLXN1cGVyOiBjb2xvcihibGFjayksXG4gIGhlYWRsaW5lLWdyb3VwLXN1YjogY29sb3IoYmxhY2spLFxuICBtZWRpYS1jaXRhdGlvbjogY29sb3IobmV1dHJhbC1ncmV5KSxcbiAgY2Fyb3VzZWwtc2luZ2xlLWJ1dHRvbjogY29sb3IobmV1dHJhbC1ncmV5KSxcbiAgY2Fyb3VzZWwtc2luZ2xlLWJ1dHRvbi1hcnQ6IGNvbG9yKHdoaXRlKSxcbiAgY2Fyb3VzZWwtY2VudGVyLWJ1dHRvbjogdHJhbnNwYXJlbnQsXG4gIGNhcm91c2VsLWNlbnRlci1idXR0b24tYXJ0OiBjb2xvcih3aGl0ZSksXG4gIGNhcm91c2VsLWRvdDogY29sb3IobGlnaHQtZ3JleSksXG4gIGNhcm91c2VsLWRvdC1hY3RpdmU6IGNvbG9yKGJsYWNrKSxcbiAgY2Fyb3VzZWwtY2VudGVyLWNhcHRpb246IGNvbG9yKGJsYWNrKSxcbiAgbWVkaWEtYmFja2dyb3VuZDogY29sb3IocHJpbWFyeSksXG4gIHRhYmxlLWhlYWRlci1iYWNrZ3JvdW5kOiBjb2xvcih3aGl0ZSksXG4gIHRhYmxlLWhlYWRlci10ZXh0OiBjb2xvcihibGFjayksXG4gIHRhYmxlLWJhY2tncm91bmQtb2RkOiBjb2xvcihvZmYtd2hpdGUpLFxuICB0YWJsZS1iYWNrZ3JvdW5kLWV2ZW46IGNvbG9yKHdoaXRlKSxcbiAgdGFibGUtdGV4dC1vZGQ6IGNvbG9yKGJsYWNrKSxcbiAgdGFibGUtdGV4dC1ldmVuOiBjb2xvcihibGFjaylcbik7XG5cbi8vIEFsdGVybmF0ZSBjb2xvcnMgZm9yIGRhcmsgYmFja2dyb3VuZHNcbiR0ZXh0LWNvbG9ycy1kYXJrOiAoXG4gIGxpbms6IGNvbG9yKGxpZ2h0LWdyZXkpLFxuICBsaW5rLWFjdGl2ZTogY29sb3Iod2hpdGUpLFxuICB0ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGxhYmVsOiBjb2xvcih3aGl0ZSksXG4gIGFjY2VudDogY29sb3Ioc3VjY2VzcyksXG4gIGJ1dHRvbi1ib3JkZXI6IHJnYmEoY29sb3Iod2hpdGUpLCAuNjYpLFxuICBidXR0b24tYmFja2dyb3VuZDogcmdiYShjb2xvcih3aGl0ZSksIC42NiksXG4gIGJ1dHRvbi10ZXh0OiBjb2xvcihxdWF0ZXJuYXJ5KSxcbiAgYnV0dG9uLWRpc2FibGVkLWJvcmRlcjogcmdiYSgjZWRlZGVkLCAuNjYpLFxuICBidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogcmdiYSgjZWRlZGVkLCAuNjYpLFxuICBidXR0b24tZGlzYWJsZWQtdGV4dDogY29sb3IocHJpbWFyeSksXG4gIGJ1dHRvbi1ob3Zlci1ib3JkZXI6IGNvbG9yKHF1YXRlcm5hcnkpLFxuICBidXR0b24taG92ZXItYmFja2dyb3VuZDogY29sb3IocXVhdGVybmFyeSksXG4gIGJ1dHRvbi1ob3Zlci10ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGJ1dHRvbi1hY3RpdmUtYm9yZGVyOiBjb2xvcihxdWF0ZXJuYXJ5KSxcbiAgYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiBjb2xvcihxdWF0ZXJuYXJ5KSxcbiAgYnV0dG9uLWFjdGl2ZS10ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGJ1dHRvbi1mb2N1cy1ib3JkZXI6IGNvbG9yKHF1YXRlcm5hcnkpLFxuICBidXR0b24tZm9jdXMtYmFja2dyb3VuZDogY29sb3IocXVhdGVybmFyeSksXG4gIGJ1dHRvbi1mb2N1cy10ZXh0OiBjb2xvcih3aGl0ZSksXG4gIGhlYWRsaW5lLWdyb3VwLXN1cGVyOiBjb2xvcihhY2NlbnQpLFxuICBoZWFkbGluZS1ncm91cC1zdWI6IGNvbG9yKGFjY2VudCksXG4gIG1lZGlhLWNpdGF0aW9uOiBjb2xvcih3aGl0ZSksXG4gIGNhcm91c2VsLXNpbmdsZS1idXR0b246IGNvbG9yKG5ldXRyYWwtZ3JleSksXG4gIGNhcm91c2VsLXNpbmdsZS1idXR0b24tYXJ0OiBjb2xvcih3aGl0ZSksXG4gIGNhcm91c2VsLWNlbnRlci1idXR0b246IHRyYW5zcGFyZW50LFxuICBjYXJvdXNlbC1jZW50ZXItYnV0dG9uLWFydDogY29sb3Iod2hpdGUpLFxuICBjYXJvdXNlbC1kb3Q6IGNvbG9yKGxpZ2h0LWdyZXkpLFxuICBjYXJvdXNlbC1kb3QtYWN0aXZlOiBjb2xvcihuZXV0cmFsLWdyZXkpLFxuICBjYXJvdXNlbC1jZW50ZXItY2FwdGlvbjogY29sb3IoYmxhY2spLFxuICBtZWRpYS1iYWNrZ3JvdW5kOiBjb2xvcihibGFjayksXG4gIHRhYmxlLWhlYWRlci1iYWNrZ3JvdW5kOiBjb2xvcih3aGl0ZSksXG4gIHRhYmxlLWhlYWRlci10ZXh0OiBjb2xvcihibGFjayksXG4gIHRhYmxlLWhlYWRlci1ib3JkZXI6IGNvbG9yKGJsYWNrKSxcbiAgdGFibGUtYmFja2dyb3VuZC1vZGQ6IGNvbG9yKG9mZi13aGl0ZSksXG4gIHRhYmxlLWJhY2tncm91bmQtZXZlbjogY29sb3Iod2hpdGUpLFxuICB0YWJsZS10ZXh0LW9kZDogY29sb3IoYmxhY2spLFxuICB0YWJsZS10ZXh0LWV2ZW46IGNvbG9yKGJsYWNrKSxcbik7XG5cbi8vIGNvbnZlbmllbmNlIGFsaWFzZXNcbiR3aGl0ZTogY29sb3Iod2hpdGUpO1xuJGJsYWNrOiBjb2xvcihibGFjayk7XG4kY29sb3ItdGV4dDogY29sb3IoYmxhY2spO1xuJGNvbG9yLWxpbms6IGNvbG9yKGxpbmspO1xuLy8gU2V0IHJyIGRlZmF1bHRzXG4kcnItZm9udHM6ICRmb250cztcbiRyci1saW5laGVpZ2h0czogJGxpbmVoZWlnaHRzO1xuXG4kbmFycm93LXdpZHRoOiByZW0oNzg4cHgpOyIsIi8vIEdldHMgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludHM7IHZlcnkgdXNlZnVsIGZvciB3YWxraW5nXG4vLyB0aGUgY29uZmlndXJhdGlvbi5cbkBmdW5jdGlvbiByci1icmVha3BvaW50LWxpc3QoJGNvbmZpZzogJHJyLWdyaWQtc2V0dGluZ3MpIHtcbiAgQHJldHVybiBtYXAta2V5cygkY29uZmlnKTtcbn1cblxuLy8gUmV0dXJuIGEgYnJlYWtwb2ludCBjb25maWd1cmF0aW9uIGZvciB0aGUgc3BlY2lmaWVkIHRhZy4gXG4vLyBUaGUgdGFnIGlzIHRoZSBmaXJzdC1sZXZlbCB2YWx1ZSBpbiB0aGUgYCRyci1ncmlkLXNldHRpbmdzYCBtYXAuXG4vLyBUaGlzIGRvZXMgbm90IGNvbXB1dGUgbW9iaWxlLWZpcnN0IGNhc2NhZGU7IHlvdSBuZWVkIHRvIFxuLy8gdXNlIGAkcnItY29tYmluZWQtYnJlYWtwb2ludGAgaW5zdGVhZC4gXG5AZnVuY3Rpb24gcnItYnJlYWtwb2ludCgkdGFnKSB7XG4gICRjb25maWc6ICRyci1ncmlkLXNldHRpbmdzO1xuICBAaWYgbWFwLWhhcy1rZXkoJGNvbmZpZywgJHRhZykge1xuICAgIEByZXR1cm4gbWFwLWdldCgkY29uZmlnLCAkdGFnKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRjb25maWcsIG50aChtYXAta2V5cygkY29uZmlnKSwgMSkpO1xuICB9XG59XG5cbkBmdW5jdGlvbiByci1maXJzdC1icmVha3BvaW50KCRicmVhaywgJGNvbmZpZzogJHJyLWdyaWQtc2V0dGluZ3MpIHtcbiAgJGJyZWFrczogcnItYnJlYWtwb2ludC1saXN0KCRjb25maWcpO1xuICBAcmV0dXJuICRicmVhayA9PSBudGgoJGJyZWFrcywgMSk7XG59XG5cbi8vIFJldHVybnMgdGhlIGZpcnN0IGJyZWFrcG9pbnQgY29uZmlnIHNldHRpbmdzLlxuLy8gUmVtZW1iZXIgbWFwcyBhcmUgMS1pbmRleGVkLlxuQGZ1bmN0aW9uIHJyLWJyZWFrcG9pbnQtZmlyc3QoKSB7XG4gIEByZXR1cm4gcnItYnJlYWtwb2ludChudGgocnItYnJlYWtwb2ludC1saXN0KCksIDEpKTtcbn1cblxuLy8gQ29tcHV0ZSB0aGUgc2l6ZSBvZiBhIGdyaWQgc3F1YXJlLCBjb21wdXRlZCBpbiB0aGUgdW5pdCBvZiB0aGVcbi8vIGxpbmUgaGVpZ2h0LiBZb3UgY2FuIHBhc3MgYW4gb3B0aW9uYWwgbXVsdGlwbGllci5cbkBmdW5jdGlvbiByci1ncmlkYmFzZSgkbXVsdGlwbGllcjogMSwkdnc6IGZhbHNlKSB7XG4gICRiYXNlOiBpZigkdncsLjc4MTI1dncsLjVyZW0pO1xuICBAcmV0dXJuICRiYXNlICogJG11bHRpcGxpZXI7XG59XG5cbi8vIGRlcHJlY2F0ZWRcbkBmdW5jdGlvbiByci1ncmlkLXVuaXRzKCRzdGVwcykge1xuICBAcmV0dXJuIHJyLWdyaWRiYXNlKCRzdGVwcyk7XG59XG5cbi8vIFRha2VzIGFuIG9mZnNldCB2YWx1ZSAobGlrZSB0aGUgd2lkdGggb2YgYSBib3JkZXIpIGFuZCBhIG51bWJlciBvZiBcbi8vIGdyaWQgc3RlcHM7IHJldHVybnMgdGhlIHNpemUgb2YgdGhlIHJlbWFpbmluZyBncmlkIHN0ZXAgYXJlYS5cbi8vIFVzZWZ1bCBwcmltYXJpbHkgZm9yIGFkZGluZyBib3JkZXJzIGFyb3VuZCB0aGluZ3MuIFxuQGZ1bmN0aW9uIHJyLWdyaWQtcmVtYWluZGVyKCRvZmZzZXQsICRzdGVwczogMSkge1xuICAkcmVzdWx0OiAwO1xuICBAaWYgJHN0ZXBzIDwgMSB7XG4gICAgJHJlc3VsdDogMDtcbiAgfSBAZWxzZSB7XG4gICAgJHN0ZXBzaXplOiByci1ncmlkYmFzZSgkc3RlcHMpO1xuICAgIEBpZiBjb21wYXJhYmxlKCRvZmZzZXQsICRzdGVwc2l6ZSkge1xuICAgICAgJHJlc3VsdDogJHN0ZXBzaXplIC0gJG9mZnNldDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXN1bHQ6IGNhbGMoI3skc3RlcHNpemV9IC0gI3skb2Zmc2V0fSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gQ29udmVuaWVuY2UgbWl4aW4gZm9yIGJ1aWxkaW5nIGJyZWFrcG9pbnRzIGFyb3VuZCB0aGUgbWVkaWEgcXVlcmllcy4gXG5AbWl4aW4gcnItYnJlYWstZGlyZWN0aXZlKCRicmVhaywgJGNvbmZpZzogJHJyLWdyaWQtc2V0dGluZ3MpIHtcbiAgQGlmIHJyLWZpcnN0LWJyZWFrcG9pbnQoJGJyZWFrLCAkY29uZmlnKSB7XG4gICAgLy8gQmFzZSBCcmVha3BvaW50XG4gICAgQGNvbnRlbnQ7XG4gICAgLy8gRW5kIGJhc2UgYnJlYWtwb2ludFxuICB9IEBlbHNlIHtcbiAgICAkbXE6IHJyLXByb3AtZm9yLWJyZWFrcG9pbnQoJGJyZWFrLCBtcSk7XG4gICAgJHNpemU6IHJyLXByb3AtZm9yLWJyZWFrcG9pbnQoJGJyZWFrLCBzaXplKTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJG1xOiAkc2l6ZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFJldHVybiBhIGJyZWFrcG9pbnQgY29uZmlndXJhdGlvbiBmb3IgdGhlIHNwZWNpZmllZCB0YWcuIFxuLy8gVGhlIHRhZyBpcyB0aGUgZmlyc3QtbGV2ZWwgdmFsdWUgaW4gdGhlIGAkcnItZ3JpZC1zZXR0aW5nc2AgbWFwLiBcbi8vIFVubGlrZSBgcnItYnJlYWtwb2ludGAsIHRoaXMgd2lsbCBsb29rIHVwIHZhbHVlcyBmcm9tIGVhcmxpZXIgXG4vLyBicmVha3BvaW50cy4gXG5AZnVuY3Rpb24gcnItY29tYmluZWQtYnJlYWtwb2ludCgkYnJlYWs6IHMpIHtcbiAgJGJyZWFrczogcnItYnJlYWtwb2ludC1saXN0KCk7XG4gICR3b3JrLW1hcDogcnItYnJlYWtwb2ludC1maXJzdCgpO1xuICAkc3RvcDogaW5kZXgoJGJyZWFrcywgJGJyZWFrKTtcbiAgQGlmIG5vdCAkc3RvcCB7XG4gICAgQHJldHVybiAkd29yay1tYXA7XG4gIH0gLy8gQm91bmRzLWNoZWNrIHRoZSBzdG9wXG4gIEBpZiAoJHN0b3AgPiAxKSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkc3RvcCB7XG4gICAgICAkdGFnOiBudGgoJGJyZWFrcywgJGkpO1xuICAgICAgJHdvcmstbWFwOiBtYXAtbWVyZ2UoJHdvcmstbWFwLCByci1icmVha3BvaW50KCR0YWcpKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkd29yay1tYXA7XG59XG5cbi8vIEdpdmVuIGEgYnJlYWtwb2ludCB0YWcgYW5kIGEgcHJvcGVydHkgbmFtZSwgcmV0dXJuIHRoZSBwcm9wZXJ0eSB2YWx1ZS4gXG4vLyBUaGlzIGxvb2tzIGZvciB0aGUgcHJvcGVydHkgaW4gdGhlIGNvbWJpbmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gcnItcHJvcC1mb3ItYnJlYWtwb2ludCgkYnJlYWssICRwcm9wKSB7XG4gICRicDogcnItY29tYmluZWQtYnJlYWtwb2ludCgkYnJlYWspO1xuICBAaWYgbWFwLWhhcy1rZXkoJGJwLCAkcHJvcCkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkYnAsICRwcm9wKTtcbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vIEdpdmVuIGEgYnJlYWtwb2ludCB0YWcgYW5kIGEgcHJvcGVydHkgbmFtZSwgcmV0dXJuIHRoZSBwcm9wZXJ0eSB2YWx1ZS4gXG4vLyBUaGlzIGxvb2tzIGZvciB0aGUgcHJvcGVydHkgb25seSBpbiB0aGUgc3BlY2lmaWVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gcnItc3RyaWN0LXByb3AtZm9yLWJyZWFrcG9pbnQoJGJyZWFrLCAkcHJvcCkge1xuICAkYnA6IHJyLWJyZWFrcG9pbnQoJGJyZWFrKTtcbiAgQGlmIG1hcC1oYXMta2V5KCRicCwgJHByb3ApIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGJwLCAkcHJvcCk7XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuIiwiLy8gU3RyaXAgZGVjb3JhdGlvbnMgZnJvbSB1bm9yZGVyZWQsIG9yZGVyZWQgbGlzdHNcbkBtaXhpbiBjbGVhbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJsb2NrLWhlYWRlci1mb250IHtcbiAgaDIsXG4gIGgzLFxuICBoNCB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKDN4bCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxuXG4vLyBUT0RPOiBEb2N1bWVudFxuQG1peGluIGJsb2NrLXNwYWNpbmcoJGJvcmRlci1jb2xvcjogcHJpbWFyeSkge1xuICBtYXJnaW4tcmlnaHQ6IHJyLWdyaWRiYXNlKC0yKTtcbiAgbWFyZ2luLWxlZnQ6IHJyLWdyaWRiYXNlKC0yKTtcbiAgcGFkZGluZzogcnItZ3JpZC1yZW1haW5kZXIoM3B4LCAyKTtcbiAgYm9yZGVyOiAzcHggY29sb3IoJGJvcmRlci1jb2xvcikgc29saWQ7XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKCdtJykge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nOiByci1ncmlkLXJlbWFpbmRlcigzcHgsIDMpO1xuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKCdsJykge1xuICAgIHBhZGRpbmc6IHJyLWdyaWQtcmVtYWluZGVyKDZweCwgNSk7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIH1cbn1cblxuLy8gVGhpcyBtaXhpbiBpcyBhIGNvbnZlbmllbmNlIHRvb2wgZm9yIHNldHRpbmcgbGluayBjb2xvcnNcbi8vIG9uIHRoZSBsaW5rL3Zpc2l0ZWQgc3RhdGUgYW5kIHRoZSBob3Zlci9hY3RpdmUgc3RhdGUuXG4vLyBVc2UgaW5zaWRlIGFuIGFuY2hvciB0YWcuXG4vL1xuLy8gSXQncyBub3QgbmVjZXNzYXJ5IHRvIHVzZSB0aGlzLlxuQG1peGluIGxpbmstY29sb3JzKCRkOiBjb2xvcihibGFjayksICRoOiBjb2xvcihwcmltYXJ5KSkge1xuICBjb2xvcjogJGQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkaDtcbiAgfVxufVxuXG4vLyBTdHJpcCBvZmYgYnJvd3NlciBkZWZhdWx0IGJ1dHRvbiBzdHlsaW5nIGZvciBmdW5jdGlvbmFsIGJ1dHRvbnNcbi8vIHRoYXQgZG9uJ3QgbG9vayBsaWtlIFwiYnV0dG9uc1wiXG5AbWl4aW4gYmFyZS1idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZSgpO1xuICBmb250LWZhbWlseTogJGZvbnQtYmFybG93LWNvbmRlbnNlZDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vIEFkanVzdCBpY29uIGxhYmVscyBzbyB0aGUgaWNvbnMgYW5kIGxhYmVscyBcbi8vIGxpbmUgdXBcbkBtaXhpbiBpY29uLWxhYmVsLWFsaWduIHtcbiAgLmljb24tbGFiZWwge1xuICAgIC5pYyB7XG4gICAgICB3aWR0aDogMWVtO1xuICAgIH1cblxuICAgIC5sYWJlbCB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGRpdmlkZXIoJGNlbnRlcmVkOiBmYWxzZSwgJGNvbG9yOiBwcmltYXJ5KSB7XG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJGNvbG9yKTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgQGlmICRjZW50ZXJlZCB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBnZW5lcmF0ZSB0aGUgaW1hZ2UgdXJsIGJ5IHByZWZpeGluZyB0aGUgbGF5b3V0IGltYWdlIHBhdGhcbkBmdW5jdGlvbiBpbWFnZS11cmwoJHVybCkge1xuICBAcmV0dXJuIHVybCgnI3skaW1hZ2UtdXJsLXBhdGh9I3skdXJsfScpO1xufVxuXG5cbi8vIEJFTSBoZWxwZXJzXG4vLyBmb3IgYmxvY2stLW1vZGlmaWVyXG5AbWl4aW4gbW9kaWZpZXIoJHNlbGVjdG9yLCAkZm9yY2Vfb3ZlcnJpZGU6IGZhbHNlKSB7XG4gIEBpZiAoJGZvcmNlX292ZXJyaWRlKSB7XG4gICAgJiN7Jn0tLSN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290ICN7Jn0tLSN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIGZvciBibG9ja19fZWxlbWVudFxuQG1peGluIGVsZW1lbnQoJHNlbGVjdG9yKSB7XG4gIEBhdC1yb290ICN7Jn1fXyN7JHNlbGVjdG9yfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gQSBoYWNrIGZvciBEcnVwYWwgY29udGV4dHVhbCByZWdpb25zXG5AbWl4aW4gc3RhdGljLWNvbnRleHR1YWwge1xuICAuY29udGV4dHVhbC1yZWdpb24ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgLmNvbnRleHR1YWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5AbWl4aW4gaGVhZGluZy11bmRlcmxpbmUge1xuICBzcGFuIHtcbiAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgY29sb3IoYWNjZW50KTtcbiAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1kYXNoZWQge1xuICBwYWRkaW5nLXRvcDogcmVtKDMwcHgpO1xuICBib3JkZXItdG9wOiAzcHggZGFzaGVkIGNvbG9yKGxpZ2h0LWdyZXkpO1xuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIHBhZGRpbmctdG9wOiByZW0oNjBweCk7XG4gIH1cbn1cblxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbn1cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTk5OWVtO1xuICBsZWZ0OiAtOTk5OTk5ZW07XG59XG5cblxuXG5AbWl4aW4gc2VsZWN0LWJhY2tncm91bmQge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMHB4O1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUVCQU1BQUFCQjQyUERBQUFBRDFCTVZFVUFBQUEwTkRRek16TXpNelAvLy8raXNDRmtBQUFBQTNSU1RsTUFnSWdpbGxlSEFBQUFBV0pMUjBRRWoyalpVUUFBQUJ4SlJFRlVDQjFqVURZMk5tSmdORFlXWUdBUU5tUmdZR0FVWUFBQUZKRUJpTjVaUENJQUFBQUFTVVZPUks1Q1lJST0nKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gLjVyZW0pIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiA4cHggNHB4O1xuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIHRlZXRoLWRlY29yYXRpb24oJHNpZGU6IGxlZnQsICRzaWRlX3ZlcnRpY2FsOiBib3R0b20pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKCd0ZWFzZXItZGVjb3JhdGlvbi5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiA5MXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAaWYgKCRzaWRlX3ZlcnRpY2FsID09ICdib3R0b20nKSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgQGlmICgkc2lkZSA9PSAnbGVmdCcpIHtcbiAgICAgIGxlZnQ6IHJlbSgzMnB4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgcmlnaHQ6IHJlbSgzMnB4KTtcbiAgICB9XG4gIH1cbn0iLCIvKiBnZXRzIHRoZSBgX2hlYWRlci5zY3NzYCBzdHlsZXMsIGFuZCB0aGVuIHRoaXMgZmlsZSBoYXMgYW55IG5lZWRlZCBzdXBwbGVtZW50cyBhbmQgb3ZlcnJpZGVzICovXG5cbi5jb21tdW5pdHktaGVhZGVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG59XG5cbi5zbGFiLmhlYWRlci5jb21tdW5pdHktaGVhZGVyIHtcbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG4uY29tbXVuaXR5LWFyZWEtbGFiZWwtbW9iaWxlIHtcbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtZmFtaWx5OiBCYXJsb3cgQ29uZGVuc2VkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbjogMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNjBweCkge1xuICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gIH1cbn1cblxuLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fbWFpbiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuXG4gIC5oZWFkZXJfX21haW4tbmF2IHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICB9XG59XG5cbi5jb21tdW5pdHktaGVhZGVyIC5oZWFkZXJfX21haW4gLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMCA+IHVsID4gbGkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjRyZW0gMDtcblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIHBhZGRpbmc6IDAgLjVyZW07XG4gIH1cbn1cblxuLmNvbW11bml0eS1oZWFkZXItbWVudS1leHRyYXMge1xuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbW11bml0eS1oZWFkZXIgLmhlYWRlcl9fZHJvcGRvd24uaGVhZGVyX19kcm9wZG93biB7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIG1hcmdpbjogLTFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcblxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0LCBwYWRkaW5nLWJvdHRvbTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjNzLCAuMXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzLCAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXG4gICYub3BlbmVkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcywgMHM7XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICA+IHAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBCYXJsb3cgQ29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMi4yNXJlbTsgLyogMTAwJSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwOyAgICAgICAgXG4gIH1cbn1cblxuLnNsYWIuY29tbXVuaXR5LWhlYWRlcl9fdG9wLWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShsKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMEYwO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gIC50b3AtYmFyLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMS41cmVtO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gIC50b3AtYmFyLWxpbmtzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAwLjc1cmVtO1xuXG4gICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDAuM2VtO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzlFOUU5RTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBjb2xvcjogI0QwMDIxQjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJvZmlsZS1saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRBNEE0QTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuMnJlbSAxcmVtIDAuM3JlbTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjc1cmVtO1xuXG4gICAgPiA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDAuM2VtO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzlFOUU5RTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgY29sb3I6ICNGMEYwRjA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb21tdW5pdHktaGVhZGVyLW1lbnUtZXh0cmFzIHtcbiAgdWwuZXh0cmEtbGlua3Mge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC43NXJlbTtcblxuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMC40Mzc1cmVtO1xuICAgICAgY29sb3I6ICM0QTRBNEE7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGNvbG9yOiAjRDAwMjFCO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9maWxlLWxpbmtzIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRBNEE0QTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuMnJlbSAxcmVtIDAuM3JlbTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjc1cmVtO1xuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwLjNlbTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAwLjc1ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5RTlFOUU7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGNvbG9yOiAjRjBGMEYwO1xuICAgICAgfVxuICAgIH1cbiAgfSBcbn0iLCIuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjUyNTtcbiAgY29sb3I6ICNEQURBREE7XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgbGluay1jb2xvcnMoI0RBREFEQSk7XG4gIH1cbiAgQGluY2x1ZGUgZWxlbWVudCgnbWFpbicpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICA+ICoge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGVsZW1lbnQoJ2JyYW5kaW5nJykge1xuICAgIHdpZHRoOiAxNTFweDtcbiAgfVxuICBAaW5jbHVkZSBlbGVtZW50KCdtZW51Jykge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbGkge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGxpLCBhIHtcbiAgICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBlbGVtZW50KCdzb2NpYWwnKSB7XG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICB9XG4gIH1cblxuICAuZm9vdGVyX19zb2NpYWxfX2ludHJvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg5cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50KCdtYWluJykge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgID4gKiB7XG4gICAgICAgIG1hcmdpbjogMCAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBlbGVtZW50KCdzb2NpYWwnKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvb3Rlcl9fc29jaWFsX19pbnRybyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgzNXB4KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLXN1YiB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjayk7XG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUocyk7XG4gIH1cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59IiwiJGJvdHRvbS1yb3ctaGVpZ2h0OiByZW0oNDRweCk7XG5cbi5zbGFiLmhlYWRlciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBjb2xvcihwcmltYXJ5KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobmVhci13aGl0ZSk7XG59XG5cbi5oZWFkZXJfX21haW4ge1xuICBwYWRkaW5nOiAxcmVtO1xuXG4gIC5oZWFkZXJfX2JyYW5kaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhIHtcbiAgICAgIGZsZXg6IDAgMCByZW0oMTQzcHgpO1xuICAgIH1cbiAgICBpbWcsIHN2ZyB7XG4gICAgICBoZWlnaHQ6IHJlbSg1MHB4KTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyX19kcm9wZG93biB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjNzIGVhc2UtaW47XG4gICAgJi5vcGVuZWQge1xuICAgICAgbWF4LWhlaWdodDogNzAwcHg7XG4gICAgfVxuICB9XG4gIC5oZWFkZXJfX25hdi1vcGVuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC5jbG9zZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmLm9wZW4ge1xuICAgICAgLmNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgIC5vcGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmhlYWRlcl9fbWFpbi1uYXYge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMjBweCk7XG4gIH1cblxuICAuYmFjay10by1idXR0b24ge1xuICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZSh4bCkge1xuICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgfVxuICB9XG5cbiAgJi5oZWFkZXJfX21haW4tLXN0cmV0Y2hlZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAje3JyLXByb3AtZm9yLWJyZWFrcG9pbnQobCwgc2l6ZSkgLSAoMS8xNil9KSB7XG4gICAgLmhlYWRlcl9fZHJvcGRvd24ge1xuICAgICAgLmdsb2JhbC1uYXZfX21lbnUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTRweCk7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDVweCkgMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm9wZW4tY2hpbGRyZW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IC40cmVtO1xuICAgICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vcGVuIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1lbnUtbGV2ZWwtMCB7XG4gICAgICAgICAgPiB1bCA+IGxpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQzNDM0MzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWVudS1sZXZlbC0xIHtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMjBweCk7XG4gICAgICAgICAgLm9wZW4tY2hpbGRyZW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5vcGVuZWQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNzAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oLTVweCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDVweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMEYwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDM0MzQzM7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pcy1hY3RpdmUge1xuICAgICAgICAgICAgLm1lbnUtbGV2ZWwtMiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZW51LWxldmVsLTIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDIwcHgpO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm1lbnUtbGV2ZWwtMyB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogJ+KAlCAnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBsaSwgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUocyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICAuZ2xvYmFsLW5hdl9fbWVudSAubWVudS1sZXZlbC0wID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShsKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgLmhlYWRlcl9fYnJhbmRpbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbGV4OiAwIDEgcmVtKDIwMnB4KTtcbiAgICAgIGltZywgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oNzJweCk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyX19kcm9wZG93biB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAuaGVhZGVyX19tYWluLW5hdiB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgfVxuICAgICAgLmhlYWRlcl9fdXRpbGl0eSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXJfX25hdi1vcGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1uYXZfX21lbnUgLm1lbnUtbGV2ZWwtMCA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMCAuNXJlbTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUoeGwpIHtcbiAgICBwYWRkaW5nOiAwIDAgcmVtKDE1cHgpIDA7XG4gICAgLmhlYWRlcl9fZHJvcGRvd24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNDBweCk7XG4gICAgfVxuICB9XG59XG5cbi5nbG9iYWwtbmF2IHtcbiAgYSwgYnV0dG9uIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKG0pO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgQGluY2x1ZGUgbGluay1jb2xvcnMoY29sb3IoZGFyay1ncmV5KSk7XG4gIH1cbiAgQGluY2x1ZGUgZWxlbWVudCgnbWVudScpIHtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICAuZHJvcGRvd24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbmZvbnQ7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXVwO1xuICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluO1xuICAgICAgICBwYWRkaW5nOiAwIDFlbTtcbiAgICAgIH1cbiAgICAgICYub3BlbiB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub3Blbi1jaGlsZHJlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAucmVhbC1wYWdlIC5zdWJtZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGVsZW1lbnQoJ21lbnUnKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMjBweCk7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGJvdHRvbS1yb3ctaGVpZ2h0IC0gMS45cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWVudS1sZXZlbC0wIHtcbiAgICAgICAgPiB1bCA+IGxpIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZzogMCByZW0oMjBweCk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjNzO1xuICAgICAgICAgICYuY2hpbGRyZW4tb3BlbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMTJweCAxMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjgpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWVudS1sZXZlbC0xIHtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy8gdG9wOiAkYm90dG9tLXJvdy1oZWlnaHQ7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IHJlbSgyNTBweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDEycHggMTJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI4KTtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgID4gdWwgeyBcbiAgICAgICAgICAvLyBwYWRkaW5nOiAwIHJlbSgyMHB4KSByZW0oMTBweCkgcmVtKDIwcHgpO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbSgxNnB4KSByZW0oMjBweCkgcmVtKDEwcHgpIHJlbSgyMHB4KTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmLm9wZW5lZCB7XG4gICAgICAgICAgbWF4LWhlaWdodDogNzAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZW51LWxldmVsLTIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUoeGwpIHtcbiAgICBhLCBidXR0b24ge1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICAgIH1cbiAgfVxufVxuXG4udXRpbGl0eS1uYXYge1xuICBhIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIEBpbmNsdWRlIGxpbmstY29sb3JzKGNvbG9yKG5ldXRyYWwtZ3JleSkpO1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShzKTtcbiAgfVxuICBAaW5jbHVkZSBlbGVtZW50KCdtZW51Jykge1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyX19kcm9wZG93bi5vcGVuZWQgJiB7XG4gICAgLnV0aWxpdHktbmF2X19tZW51IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyNHB4KTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKGwpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUobSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGVsZW1lbnQoJ21lbnUnKSB7XG4gICAgICBwYWRkaW5nOiByZW0oMTNweCkgMDtcbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbGkge1xuICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgLjI1cmVtO1xuICAgICAgICAgICAgICBjb250ZW50OiAnfCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLXNlYXJjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICNzZWFyY2hfcSB7XG4gICAgaGVpZ2h0OiAkYm90dG9tLXJvdy1oZWlnaHQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQkVCRUI7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE1cHgpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0NHB4KTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogcmVtKDEycHgpO1xuICAgIG1hcmdpbjogMDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobSkge1xuICAgIGJ1dHRvbiB7XG5cbiAgICB9XG4gIH1cbn0iLCIvLyBPbmx5IG1peGlucyBhbmQgdmFyaWFibGVzIGFsbG93ZWQgaW4gdGhpcyBmaWxlLlxuQG1peGluIGljb25mb250IHtcbiAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbiRpY29uLWFsZXJ0OiBcIlxcRUEwMVwiO1xuICAgICRpY29uLWFuZ2xlLWRvd246IFwiXFxFQTAyXCI7XG4gICAgJGljb24tYW5nbGUtbGVmdDogXCJcXEVBMDNcIjtcbiAgICAkaWNvbi1hbmdsZS1yaWdodDogXCJcXEVBMDRcIjtcbiAgICAkaWNvbi1hbmdsZS11cDogXCJcXEVBMDVcIjtcbiAgICAkaWNvbi1hcnJvdy1kb3duOiBcIlxcRUEwNlwiO1xuICAgICRpY29uLWFycm93LXVwOiBcIlxcRUEwN1wiO1xuICAgICRpY29uLWF1ZGlvOiBcIlxcRUEwOFwiO1xuICAgICRpY29uLWJvbHQ6IFwiXFxFQTA5XCI7XG4gICAgJGljb24tYnJpZWZjYXNlOiBcIlxcRUEwQVwiO1xuICAgICRpY29uLWNhbGN1bGF0b3I6IFwiXFxFQTBCXCI7XG4gICAgJGljb24tY2FtZXJhOiBcIlxcRUEwQ1wiO1xuICAgICRpY29uLWNhcDogXCJcXEVBMERcIjtcbiAgICAkaWNvbi1jaGVja2JveC1jaGVja2VkOiBcIlxcRUEwRVwiO1xuICAgICRpY29uLWNoZWNrYm94LWVtcHR5OiBcIlxcRUEwRlwiO1xuICAgICRpY29uLWNsaXBib2FyZDogXCJcXEVBMTBcIjtcbiAgICAkaWNvbi1jbG9jazogXCJcXEVBMTFcIjtcbiAgICAkaWNvbi1jbG9zZTogXCJcXEVBMTJcIjtcbiAgICAkaWNvbi1jb2ctYm94OiBcIlxcRUExM1wiO1xuICAgICRpY29uLWNvbHVtbnM6IFwiXFxFQTE0XCI7XG4gICAgJGljb24tZXZlbnQ6IFwiXFxFQTE1XCI7XG4gICAgJGljb24tZmFjZWJvb2stYmxvY2s6IFwiXFxFQTE2XCI7XG4gICAgJGljb24tZmFjZWJvb2s6IFwiXFxFQTE3XCI7XG4gICAgJGljb24tZmlsZS1kb3dubG9hZDogXCJcXEVBMThcIjtcbiAgICAkaWNvbi1oYW1idXJnZXI6IFwiXFxFQTE5XCI7XG4gICAgJGljb24taG9tZTogXCJcXEVBMUFcIjtcbiAgICAkaWNvbi1pbmZvOiBcIlxcRUExQlwiO1xuICAgICRpY29uLWluc3RhZ3JhbS1ibG9jazogXCJcXEVBMUNcIjtcbiAgICAkaWNvbi1pbnN0YWdyYW06IFwiXFxFQTFEXCI7XG4gICAgJGljb24tbGlua2VkaW4tYmxvY2s6IFwiXFxFQTFFXCI7XG4gICAgJGljb24tbGlua2VkaW46IFwiXFxFQTFGXCI7XG4gICAgJGljb24tbWFnbmlmeTogXCJcXEVBMjBcIjtcbiAgICAkaWNvbi1wYXVzZTogXCJcXEVBMjFcIjtcbiAgICAkaWNvbi1waW46IFwiXFxFQTIyXCI7XG4gICAgJGljb24tcGludGVyZXN0LWJsb2NrOiBcIlxcRUEyM1wiO1xuICAgICRpY29uLXBpbnRlcmVzdDogXCJcXEVBMjRcIjtcbiAgICAkaWNvbi1wbGF5LXRyaWFuZ2xlOiBcIlxcRUEyNVwiO1xuICAgICRpY29uLXBvcHVwOiBcIlxcRUEyNlwiO1xuICAgICRpY29uLXF1b3RlLWNsb3NlOiBcIlxcRUEyN1wiO1xuICAgICRpY29uLXF1b3RlLW9wZW46IFwiXFxFQTI4XCI7XG4gICAgJGljb24tcnNzOiBcIlxcRUEyOVwiO1xuICAgICRpY29uLXNuYXBjaGF0LWJsb2NrOiBcIlxcRUEyQVwiO1xuICAgICRpY29uLXNuYXBjaGF0OiBcIlxcRUEyQlwiO1xuICAgICRpY29uLXR3aXR0ZXItYmxvY2s6IFwiXFxFQTJDXCI7XG4gICAgJGljb24tdHdpdHRlcjogXCJcXEVBMkRcIjtcbiAgICAkaWNvbi12aWRlbzogXCJcXEVBMkVcIjtcbiAgICAkaWNvbi12aWRlb2NvbmZlcmVuY2U6IFwiXFxFQTJGXCI7XG4gICAgJGljb24teW91dHViZS1ibG9jazogXCJcXEVBMzBcIjtcbiAgICAkaWNvbi15b3V0dWJlOiBcIlxcRUEzMVwiO1xuICAgICIsIi5jb250YWN0LWluZm8ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY29udGFpbjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXInO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cblxuICAuY29udGFjdC1pbmZvX19waG90byB7XG4gICAgd2lkdGg6IHJlbSgxMDBweCk7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmNvbnRhY3QtaW5mb19fdmFsdWUtLW5hbWUge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsLCBtZWRpdW0pO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmNvbnRhY3QtaW5mb19fdmFsdWUtLXRpdGxlIHtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUocywgbWVkaXVtKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5jb250YWN0LWluZm9fX3ZhbHVlLS1waG9uZSB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb250YWN0LWluZm9fX3ZhbHVlLS1lbWFpbCB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwsIG1lZGl1bSk7XG4gICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbnRhY3QtaW5mb19fbGFiZWwtLWZheCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShtKTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICArIGRkIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKG0pO1xuICAgIH1cbiAgfSAgXG59XG4iLCIuY3RhIHtcbiAgaDIge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZSgzbCwgbWVkaXVtKTtcbiAgfVxuICBcbiAgLmVkaXRvcmlhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgLmVkaXRvcmlhbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByci1ncmlkYmFzZSgyKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIC5lZGl0b3JpYWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcnItZ3JpZGJhc2UoMyk7XG4gICAgfVxuICB9XG59XG4iLCIuZmVhdHVyZSB7XG5cbiAgQGluY2x1ZGUgZWxlbWVudCgnaGVhZGVyJykge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3c7XG4gICAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoM2wpO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBlbGVtZW50KCdjb250ZW50Jykge1xuICAgIHAge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbm5lci1saXN0cyB1bCBsaTpsYXN0LWNoaWxkLCAuaW5uZXItbGlzdHMgb2wgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGVsZW1lbnQoJ2FjdGlvbnMnKSB7XG4gICAgbWFyZ2luLXRvcDogcnItZ3JpZGJhc2UoMik7XG4gICAgLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZWxlbWVudCgnbWVkaWEnKSB7XG4gICAgbWFyZ2luLXRvcDogcnItZ3JpZGJhc2UoMik7XG4gIH1cblxuICBAaW5jbHVkZSBtb2RpZmllcignbWVkaWEnKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iob2ZmLXdoaXRlKTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG59XG5cbi8vIEZsZXggbGF5b3V0IGlmIG9ubHkgb25lIGluIGEgcGFuZWxcbi5jb2xsZWN0aW9uLWl0ZW1zLS1zaW5nbGUge1xuICAuZmVhdHVyZS5mZWF0dXJlLS1tZWRpYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgLmZlYXR1cmVfX3RleHQsXG4gICAgICAuZmVhdHVyZV9fbWVkaWEge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuICAgICAgLmZlYXR1cmVfX21lZGlhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgKiB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mZWF0dXJlX190ZXh0IHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgICAgLmZlYXR1cmVfX3RleHQge1xuICAgICAgICBwYWRkaW5nOiByZW0oNjBweCkgcmVtKDEwNXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBBdXRvbWF0aWMgZmxpcCBiYXNlZCBvbiBzZXF1ZW50aWFsIHBhcmFncmFwaHNcbiAgJi5zbGFiLS1mbGlwLWZlYXR1cmUge1xuICAgIC5mZWF0dXJlLmZlYXR1cmUtLW1lZGlhIHtcbiAgICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taXRlbXMtLW11bHRpcGxlIHtcbiAgLmZlYXR1cmUuZmVhdHVyZS0tbWVkaWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgPiAqIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICAuZmVhdHVyZV9fbWVkaWEge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAqIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG59IiwiLnRlYXNlci0taWNvbiB7XG4gIC50ZWFzZXJfX3RleHQge1xuICAgIHBhZGRpbmc6IHJyLWdyaWRiYXNlKDIpO1xuICB9XG59XG5cbi50ZWFzZXJfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5KTtcbiAgaGVpZ2h0OiByZW0oODBweCk7XG4gIHBhZGRpbmc6IHJlbSg0MHB4KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC5pY29uX19nbHlwaCB7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgICBtYXJnaW4tYm90dG9tOiByci1ncmlkYmFzZSgxKTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiByZW0oODBweCk7XG4gICAgfVxuICB9XG4gIHN2ZyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgaGVpZ2h0OiByZW0oODBweCk7XG4gIFxuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgcGF0aCB7XG4gICAgICBmaWxsOiBjb2xvcih3aGl0ZSk7XG4gICAgfVxuICB9XG59XG5cbi50ZWFzZXJfX2ljb24tbGlua3Mge1xuICBwYWRkaW5nLXRvcDogcnItZ3JpZGJhc2UoMSk7XG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJyLWdyaWRiYXNlKDEpO1xuICAgIH1cbiAgfVxufSIsIlxuLnByb21vLXRleHQge1xuXG4gICZbY2xhc3MqPSdiZy0tJ10ge1xuICAgIHBhZGRpbmc6IHJlbSgzOHB4KSByZW0oNDBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBlbGVtZW50KCdjb250ZW50Jykge1xuICAgIHAge1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHhsKTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgZWxlbWVudCgnbWVkaWEnKSB7XG4gICAgICBmbGV4OiAwIDAgMjAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgzMHB4KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5pbWFnZS1saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHJyLWdyaWRiYXNlKDQpIDA7XG5cbiAgQGluY2x1ZGUgZWxlbWVudCgnaW1hZ2UnKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHJyLWdyaWRiYXNlKDQpO1xuICB9XG59XG5cbi5pbWFnZS1saXN0IHtcbiAgQGluY2x1ZGUgZWxlbWVudCgnaXRlbXMnKSB7XG4gICAgLmltYWdlLWxpc3QtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjb2xvcihsaWdodC1ncmV5KTtcbiAgICB9XG4gIH1cbn0iLCIucHVsbHRleHQge1xuICBwIHtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoNHhsLCBtZWRpdW0pO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cblxuIiwiLnRlYXNlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICAudGVhc2VyX190aXRsZSB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHhsKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLnRlYXNlcl9fbWVkaWEge1xuICAgIHBpY3R1cmUsIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtb2RpZmllcignbmV3cycpIHtcbiAgICBjb2xvcjogY29sb3IoYmxhY2spICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogcmVtKDI5cHgpIHJlbSgyOXB4KSByZW0oNjBweCkgcmVtKDI5cHgpO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGNvbG9yKGJsYWNrKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGVldGgtZGVjb3JhdGlvbjtcblxuICAgIC50ZWFzZXJfX3RleHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICA+ICoge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5kYXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMXB4KTtcbiAgICAgIGNvbG9yOiBjb2xvcihkYXJrLWdyZXkpO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtb2RpZmllcignZmVhdHVyZScpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnRlYXNlcl9fdGl0bGUge1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbY2xhc3MqPVwiYmctLVwiXSB7XG4gICAgICAudGVhc2VyX190ZXh0IHtcbiAgICAgICAgcGFkZGluZzogcmVtKDIwcHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobSkge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1vZGlmaWVyKCdnYWxsZXJ5Jykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKG9mZi13aGl0ZSk7XG4gICAgLnRlYXNlcl9fdGl0bGUge1xuICAgICAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5KTtcbiAgICAgICAgLmljb25fX2dseXBoIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubWVkaWFfX2hlYWRpbmcge1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICAgIH1cbiAgICBcbiAgfVxufVxuXG5hLnRlYXNlciB7XG4gIEBpbmNsdWRlIG1vZGlmaWVyKCduZXdzJykge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHN1YnRsZS1ncmV5KTtcbiAgICAudGVhc2VyX190aXRsZSB7XG4gICAgICBjb2xvcjogY29sb3Ioc2Vjb25kYXJ5KTtcbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3IocHJpbWFyeSk7XG4gICAgICAudGVhc2VyX190aXRsZSB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm5ld3MtdGVhc2VycyBhLnRlYXNlciB7XG4gIEBpbmNsdWRlIG1vZGlmaWVyKCduZXdzJykge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAudGVhc2VyX190aXRsZSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmRhdGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1jb25kZW5zZWQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQ0cHgpO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC0yOXB4O1xuICAgICAgICBib3R0b206IDhweDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjb2xvcihibGFjayk7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5ibG9jayB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgQGlmICgkbmFtZSAhPSAnd2hpdGUnKSB7XG4gICAgICAmLmJnLS0jeyRuYW1lfSB7XG4gICAgICAgIC5ibG9ja19faGVhZGVyLFxuICAgICAgICAuYmxvY2tfX2Zvb3RlcixcbiAgICAgICAgLmJsb2NrX19jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiByci1ncmlkYmFzZSgyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYmxvY2tfX2hlYWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiByci1ncmlkYmFzZSgyKTtcbn1cblxuLmJsb2NrX19mb290ZXIge1xuICBwYWRkaW5nLXRvcDogcnItZ3JpZGJhc2UoMik7XG59XG5cblxuIiwiLmVkaXRvcmlhbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgYXNpZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgLmVkaXRvcmlhbC0tYXNpZGUtcmlnaHQge1xuICAgIGFzaWRlIHtcbiAgICAgIHdpZHRoOiAyMHJlbTtcbiAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAxcmVtO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5lZGl0b3JpYWwtLWFzaWRlLWxlZnQge1xuICAgIGFzaWRlIHtcbiAgICAgIHdpZHRoOiAyMHJlbTtcbiAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgbWFyZ2luOiAwIDFyZW0gMXJlbSAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG59XG5cblxuXG5cbiIsIi5ncmlkIHtcbiAgJHRpZ2h0LWdyaWQtZ2FwOiAkZ3JpZC1nYXAgKiAoMi8zKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAoJGdyaWQtZ2FwIC8gLTQpO1xuXG4gID4gKiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRncmlkLWdhcCAvIDJ9KTtcbiAgICBtYXJnaW46ICgkZ3JpZC1nYXAgLyA0KSAoJGdyaWQtZ2FwIC8gNCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gICYuZ3JpZC0tbm8tZ3JvdyB7XG4gICAgPiAqIHtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cbiAgfVxuXG4gICYuZ3JpZC0tdGlnaHQge1xuICAgIG1hcmdpbjogKCRncmlkLWdhcCAvIC00KTtcbiAgICA+ICoge1xuICAgICAgbWFyZ2luOiAoJGdyaWQtZ2FwIC8gNCk7XG4gICAgfVxuICB9XG5cbiAgJi5ncmlkLS1zbWFsbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgID4gKiB7XG4gICAgICBmbGV4LWJhc2lzOiAjeygoJGdsb2JhbC13aWR0aCArICRncmlkLWdhcCkgLyAyKSAtICRncmlkLWdhcH07XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgICBtYXJnaW46ICgkdGlnaHQtZ3JpZC1nYXAgLyAtMikgKCRncmlkLWdhcCAvIC0yKTtcbiAgICAgID4gKiB7XG4gICAgICAgIG1hcmdpbjogKCR0aWdodC1ncmlkLWdhcCAvIDIpICgkZ3JpZC1nYXAgLyAyKTtcbiAgICAgICAgbWluLXdpZHRoOiAjeygoJGdsb2JhbC13aWR0aCArICRncmlkLWdhcCkgLyAyKSAtICRncmlkLWdhcH07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5ncmlkLS1jZW50ZXJlZC1pdGVtcyB7XG4gICAgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICAgIG1pbi13aWR0aDogI3skZ2xvYmFsLXdpZHRoIC8gMiAtICRncmlkLWdhcH07XG4gICAgfVxuICB9XG5cbiAgJi5ncmlkLS1hbGlnbi10b3Age1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIFxuICAmLmdyaWQtLWF0dGFjaGVkIHtcbiAgICA+ICoge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogJGdyaWQtZ2FwO1xuICAgIH1cbiAgfVxuXG4gICYuZ3JpZC0tc3RyaXBlZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgID4gKiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAoJGdyaWQtZ2FwIC8gMik7XG4gICAgICBmbGV4LWJhc2lzOiAjeygkZ2xvYmFsLXdpZHRoIC0gKCRncmlkLWdhcCAqIDIuNSkpIC8gM307XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUoeGwpIHtcbiAgICAgICAgJjpudGgtY2hpbGQoNm4gLSA1KSwgJjpudGgtY2hpbGQoNm4gLSA0KSwgJjpudGgtY2hpbGQoNm4gLSAzKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iob2ZmLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCg2biAtIDIpLCAmOm50aC1jaGlsZCg2biAtIDEpLCAmOm50aC1jaGlsZCg2biAtIDApIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihuZWFyLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZ3JpZC0tZGl2aWRlZCB7XG4gICAgPiAqIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiBjYWxjKC0jeyRncmlkLWdhcCAvIDJ9IC0gMXB4KTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTc5Nzk3O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmdyaWQtLWJvcmRlcmVkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IHJyLWdyaWRiYXNlKDIpO1xuICAgIG1hcmdpbjogKCR0aWdodC1ncmlkLWdhcCAvIC0yKTtcbiAgICA+ICoge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgbWFyZ2luOiAoJHRpZ2h0LWdyaWQtZ2FwIC8gMik7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogY2FsYygjeyR0aWdodC1ncmlkLWdhcCAvIC0yfSAtIDJweCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgY29sb3IobmV1dHJhbC1ncmV5KTtcbiAgICAgICAgbGVmdDogJHRpZ2h0LWdyaWQtZ2FwIC8gLTI7XG4gICAgICAgIHJpZ2h0OiBjYWxjKCN7JHRpZ2h0LWdyaWQtZ2FwIC8gLTJ9ICsgMXB4KTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobSkge1xuICAgIG1hcmdpbjogKCR0aWdodC1ncmlkLWdhcCAvIC0yKTtcbiAgXG4gICAgPiAqIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXgtd2lkdGg6ICN7KCRnbG9iYWwtd2lkdGggLyAzKSAtICR0aWdodC1ncmlkLWdhcH07XG4gICAgICBtYXJnaW46ICgkdGlnaHQtZ3JpZC1nYXAgLyAyKTtcbiAgICAgIG1pbi13aWR0aDogJGdyaWQtbWluO1xuICAgIH1cblxuICAgICYuZ3JpZC0tbGFyZ2Uge1xuICAgICAgPiAqIHtcbiAgICAgICAgbWluLXdpZHRoOiAjeygkZ2xvYmFsLXdpZHRoIC8gMikgLSAkZ3JpZC1nYXB9O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JpZC0tc21hbGwge1xuICAgICAgPiAqIHtcbiAgICAgICAgZmxleC1iYXNpczogI3soJGdsb2JhbC13aWR0aCAvIDMpIC0gJGdyaWQtZ2FwfTtcbiAgICAgICAgbWluLXdpZHRoOiAjeygkZ2xvYmFsLXdpZHRoIC8gMykgLSAkZ3JpZC1nYXB9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShsKSB7XG4gICAgbWFyZ2luOiAoJGdyaWQtZ2FwIC8gLTIpO1xuICBcbiAgICA+ICoge1xuICAgICAgbWF4LXdpZHRoOiAjeygkZ2xvYmFsLXdpZHRoIC8gMykgLSAoJGdyaWQtZ2FwICogKDIvMykpfTtcbiAgICAgIG1hcmdpbjogKCRncmlkLWdhcCAvIDIpO1xuICAgIH1cblxuICAgICYuZ3JpZC0tc21hbGwge1xuICAgICAgPiAqIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAjeygoJGdsb2JhbC13aWR0aCArICRncmlkLWdhcCkgLyA1KSAtICRncmlkLWdhcH07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1zLS1zaW5nbGUge1xuICAuZ3JpZCB7XG4gICAgPiAqIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICAuZ3JpZCB7XG4gICAgICA+ICoge1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudWwuZ3JpZCB7XG4gIGxpIHtcbiAgICA+ICoge1xuICAgICAgZmxleDogMTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn0iLCIuZ3JpZC5ncmlkLS1tYWpvci1sZWZ0LFxuLmdyaWQuZ3JpZC0tbWFqb3ItcmlnaHQge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICA+ICoge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3skZ3JpZC1nYXAgLyAyfSk7XG4gIH1cblxuICA+IC5ncmlkX19tYWluIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuXG4gICAgPiAuc2xhYi5zbGFiLS1ib2R5IHtcbiAgICAgIC5zbGFiX19jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gLnNsYWI6bm90KFtjbGFzcyo9XCJiZy0tXCJdKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gID4gLmdyaWRfX3NpZGViYXIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICA+ICoge1xuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgIH1cblxuICAgID4gLmdyaWRfX21haW4ge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICA+IC5ncmlkX19zaWRlYmFyIHtcbiAgICAgIGZsZXg6IDAgMCAzMiU7XG4gICAgfVxuXG4gICAgJi5ncmlkLS1zbWFsbGVyLXNpZGViYXIge1xuICAgICAgPiAuZ3JpZF9fc2lkZWJhciB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAuZ3JpZC5ncmlkLS1tYWpvci1yaWdodCB7XG4gICAgPiAuZ3JpZF9fc2lkZWJhciB7XG4gICAgICBvcmRlcjogLTE7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTGltaXQgc2xhYiB3aWR0aCB3aGVuIE5PVCBpbiBzaWRlYmFyIGNvbnRleHQuXG4uc2xhYi5zbGFiLS1ib2R5IHtcbiAgLnNsYWJfX2NvbnRlbnQge1xuICAgIG1heC13aWR0aDogcmVtKDkwMHB4KTtcbiAgfVxufVxuIiwiLnNsYWIge1xuICBAaW5jbHVkZSByci1zbGFiO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnNsYWJfX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIHJyLXNsYWItd3JhcHBlcjtcbiAgICAvLyBNYWtlIHN1cmUgdGhpcyBnZXRzIHNldCBvdmVyIHRoZSB0b3Agb2YgYW4gb3ZlcmxheSwgaWYgcHJlc2VudFxuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAuc2xhYl9faGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcnItZ3JpZGJhc2UoMik7XG5cbiAgICBoMiB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nLXVuZGVybGluZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG5cbiAgLnNsYWJfX2Zvb3RlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB6LWluZGV4OiAyMDtcbiAgfVxuXG4gICYuc2xhYi0tbmFycm93ICB7XG4gICAgLnNsYWJfX3dyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiAkbmFycm93LXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIHVzZWQgd2hlbiBjb21wb25lbnQgZWxlbWVudHMgKGluIGdyaWQpIGhhdmUgdGhlaXIgb3duIHBhZGRpbmdcbiAgJi5zbGFiLS10aWdodC1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIC8vIHNwZWNpYWwgY2FzZSB3aGVuIHRoZSBhYm92ZSBpcyB0cnVlICsgbm8gYmFja2dyb3VuZCBvbiB0aGUgc2xhYi0tYWRkIGJhY2sgYSBsaXR0bGUgc3BhY2luZ1xuICAgICY6bm90KFtjbGFzcyo9XCJiZy0tXCJdKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcnItZ3JpZGJhc2UoMik7XG4gICAgfVxuICB9XG5cbiAgJi5zbGFiLS1oYXMtdG9wLWJvcmRlciB7XG4gICAgLnNsYWItY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWRhc2hlZDtcbiAgICB9XG4gIH1cblxuICAvLyBnbyBmdWxsIHdpZHRoXG4gICYuc2xhYi0tYmxlZWQge1xuICAgIC5zbGFiX193cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmJvZHkge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgLnNsYWJfX2NvbnRlbnQge1xuICAgICAgaDI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBoNSB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgfVxuICB9XG5cblxufVxuXG4uc2xhYi0tYm9keSArIC5zbGFiLS1ib2R5IHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8vIExvb3AgdGhlIGJyZWFrcG9pbnRzXG4kYnJlYWtzOiByci1icmVha3BvaW50LWxpc3QoKTtcbkBlYWNoICRicmVhayBpbiAkYnJlYWtzIHtcbiAgJHZzcGFjZTogcnItZ3JpZGJhc2UocnItcHJvcC1mb3ItYnJlYWtwb2ludCgkYnJlYWssIHZzcGFjZSkpO1xuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUoJGJyZWFrKSB7XG4gICAgLy8gRXF1YWxpemUgdmVydGljYWwgc3BhY2luZyBhZnRlciBwYWdlIGhlYWRlclxuICAgIC5wYWdlLWhlYWRlciArIC5zbGFiIHtcbiAgICAgIG1hcmdpbi10b3A6ICR2c3BhY2VcbiAgICB9XG5cbiAgICAvLyBFeHRyYSBzcGFjaW5nIGZvciBsYXN0IHNsYWJcbiAgICAjbWFpbi1jb250ZW50IC5zbGFiOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHZzcGFjZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gZXh0cmEgc3BhY2luZyBmb3IgYSBiZy1jb2xvcmVkIHNsYWIgZm9sbG93ZWQgYnkgYSB3aGl0ZSBzbGFiXG4uc2xhYltjbGFzcyo9J2JnLS0nXSArIC5zbGFiOm5vdChbY2xhc3MqPSdiZy0tJ10pLFxuLnNsYWJbY2xhc3MqPSdiZy0tJ10gKyAuc2xhYi5iZy0td2hpdGUge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLnNsYWI6bm90KFtjbGFzcyo9J2JnLS0nXSkgKyAuc2xhYltjbGFzcyo9J2JnLS0nXSxcbi5zbGFiLmJnLS13aGl0ZSArIC5zbGFiW2NsYXNzKj0nYmctLSddIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbkBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShsKSB7XG4gIC5zbGFiW2NsYXNzKj0nYmctLSddICsgLnNsYWI6bm90KFtjbGFzcyo9J2JnLS0nXSksXG4gIC5zbGFiW2NsYXNzKj0nYmctLSddICsgLnNsYWIuYmctLXdoaXRlIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oNDBweCk7XG4gIH1cbiAgLnNsYWI6bm90KFtjbGFzcyo9J2JnLS0nXSkgKyAuc2xhYltjbGFzcyo9J2JnLS0nXSxcbiAgLnNsYWIuYmctLXdoaXRlICsgLnNsYWJbY2xhc3MqPSdiZy0tJ10ge1xuICAgIG1hcmdpbi10b3A6IHJlbSg0MHB4KTtcbiAgfVxufVxuLnNsYWIuYmctLXdoaXRlICsgLnNsYWIuYmctLXdoaXRlLFxuLnNsYWI6bm90KFtjbGFzcyo9J2JnLS0nXSkgKyAuc2xhYi5iZy0td2hpdGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uc2xhYi5iZy0tb2ZmLXdoaXRlIHtcbiAgQGluY2x1ZGUgdGVldGgtZGVjb3JhdGlvbihyaWdodCwgdG9wKTtcbn1cblxuLy8gc2xhYnMgd2l0aCBiYWNrZ3JvdW5kcyBpbiBzaWRlYmFyIGNvbnRleHRcbi5ncmlkX19tYWluLCAuZ3JpZF9fc2lkZWJhciB7XG4gIC5zbGFiW2NsYXNzKj0nYmctLSddIHtcbiAgICBwYWRkaW5nOiAkZ3JpZC1nYXA7XG4gIH1cbn0iLCIvLyBDcmVhdGVzIGEgc2xhYiBmb3IgYSBzbGFiIGxheW91dC4gXG4vLyBMYXlvdXQgb3B0aW9ucyBhcmUgcHJvdmlkZWQgaW4gb3RoZXIgbWl4aW5zXG4vLyBBbGwgb3B0aW9ucyBhcmUgZHJpdmVuIGJ5IHRoZSBnbG9iYWwgY29uZmlndXJhdGlvblxuLy8gU2xhYnMgYnJpbmcgdGhlaXIgb3duIHBhZGRpbmcgdG8gdGhlIHBhcnR5IHdoaWNoIFxuLy8gd2Ugd2lsbCBvdmVycmlkZSBpbiBzb21lIHNwZWNpYWwgY2lyY3Vtc3RhbmNlcy5cbkBtaXhpbiByci1zbGFiIHtcbiAgJGJyZWFrczogcnItYnJlYWtwb2ludC1saXN0KCk7XG4gIEBlYWNoICRicmVhayBpbiAkYnJlYWtzIHtcbiAgICAkdnNwYWNlOiByci1ncmlkYmFzZShyci1wcm9wLWZvci1icmVha3BvaW50KCRicmVhaywgdnNwYWNlKSk7XG4gICAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKCRicmVhaykge1xuICAgICAgcGFkZGluZzogJHZzcGFjZSByci1wcm9wLWZvci1icmVha3BvaW50KCRicmVhaywgb2Zmc2V0KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGhpcyBjcmVhdGVzIGEgc2xhYiB3cmFwcGVyIGNvbnN0cmFpbmVkIHRvIHRoZSBtYWluIGNvbnRlbnQgd2lkdGhcbkBtaXhpbiByci1zbGFiLXdyYXBwZXIoJG1hcmdpbnM6IGZhbHNlKSB7XG4gIG1heC13aWR0aDogJHJyLW1heHdpZHRoO1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAaWYgbm90ICRtYXJnaW5zIHtcblxuICAgIC8vIEdldCByaWQgb2YgdG9wIG1hcmdpbnMgb24gdGhlIGZpcnN0IGNoaWxkLFxuICAgIC8vIGJvdHRvbSBtYXJnaW5zIG9uIHRoZSBzZWNvbmQgc28gdGhvc2VcbiAgICAvLyBtYXJnaW5zIGRvbid0IHBvcCBvdXQgb2YgdGhlIHdyYXBwZXIuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFRoaXMgY3JlYXRlcyBhIGZ1bGwtYmxlZWQgc2xhYiB3cmFwcGVyXG5AbWl4aW4gcnItc2xhYi1mdWxsLWZ1bGxibGVlZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBQYXNzIHRoaXMgYSBsaXN0IG9mIGNsYXNzIG5hbWVzICh3aXRob3V0IHRoZSAnLicgcHJlZml4KSBhbmQgXG4vLyBhZGphY2VuY3kgY2xhc3NlcyB0aGF0IGNvbGxhcHNlIHBhZGRpbmcgYmV0d2VlbiB0aGUgXG5AbWl4aW4gcnItc2xhYi1hZGphY2VuY3koJHN0eWxlLWxpc3QpIHtcbiAgQGVhY2ggJHN0eWxlIGluICRzdHlsZS1saXN0IHtcbiAgICAuI3skc3R5bGV9Ky4jeyRzdHlsZX0ge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbkBmdW5jdGlvbiByci1jb2x1bW5zLWZvci10ZW1wbGF0ZSgkdGVtcGxhdGUsICRicmVhaykge1xuICBAaWYgbWFwLWhhcy1rZXkoJHRlbXBsYXRlLCAkYnJlYWspIHtcbiAgICAkYnJlYWstdGVtcGxhdGU6IG1hcC1nZXQoJHRlbXBsYXRlLCAkYnJlYWspO1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWstdGVtcGxhdGUsIGNvbHVtbnMpIHtcbiAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWstdGVtcGxhdGUsIGNvbHVtbnMpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbkBmdW5jdGlvbiByci1hcmVhcy1mb3ItdGVtcGxhdGUoJHRlbXBsYXRlLCAkYnJlYWspIHtcbiAgQGlmIG1hcC1oYXMta2V5KCR0ZW1wbGF0ZSwgJGJyZWFrKSB7XG4gICAgJGJyZWFrLXRlbXBsYXRlOiBtYXAtZ2V0KCR0ZW1wbGF0ZSwgJGJyZWFrKTtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrLXRlbXBsYXRlLCBhcmVhcykge1xuICAgICAgQHJldHVybiBtYXAtZ2V0KCRicmVhay10ZW1wbGF0ZSwgYXJlYXMpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbkBmdW5jdGlvbiByci1mbGV4LWFyZWFzLWZvci10ZW1wbGF0ZSgkdGVtcGxhdGUsICRicmVhaykge1xuICBAaWYgbWFwLWhhcy1rZXkoJHRlbXBsYXRlLCAkYnJlYWspIHtcbiAgICAkYnJlYWstdGVtcGxhdGU6IG1hcC1nZXQoJHRlbXBsYXRlLCAkYnJlYWspO1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWstdGVtcGxhdGUsIGZsZXgtYXJlYXMpIHtcbiAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWstdGVtcGxhdGUsIGZsZXgtYXJlYXMpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbkBmdW5jdGlvbiByci1mbGV4LWNvbHVtbnMtZm9yLXRlbXBsYXRlKCR0ZW1wbGF0ZSwgJGJyZWFrKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkdGVtcGxhdGUsICRicmVhaykge1xuICAgICRicmVhay10ZW1wbGF0ZTogbWFwLWdldCgkdGVtcGxhdGUsICRicmVhayk7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVhay10ZW1wbGF0ZSwgZmxleC1jb2x1bW5zKSB7XG4gICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrLXRlbXBsYXRlLCBmbGV4LWNvbHVtbnMpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vIENvZGUgYmVsb3cgaXMgYnkgSmVzc2UgSmFub3dpYWsgb2YgTmV3Q2l0eTsgY3VycmVudGx5IFxuLy8gd29ya2luZyBvbiBpbnRlZ3JhdGluZyBpdCB3aXRoIHRoZSBleGlzdGluZyBjb2RlLlxuLy8gQ1NTIEdSSUQgTUlYSU5TXG4vLyAgYGNzcy1ncmlkLWNvbHVtbnMoICRjb3VudCwgJGd1dHRlciwgJGd1dHRlci1zLCAkY2xhc3MtcHJlZml4LCAkYnJlYWtwb2ludCwgJHJyLXN1cHBvcnQtaWUpYFxuLy8gIGBjb250ZW50LXdpZHRoKCAkY291bnQsICRjbGFzcy1wcmVmaXgsICRicmVha3BvaW50LCAkcnItc3VwcG9ydC1pZSApYFxuLy8gIGByZXZlcnNlLWdyaWQtY29sdW1ucyggJGNvdW50LCAkY2xhc3MtcHJlZml4LCAkYnJlYWtwb2ludCwgJHJyLXN1cHBvcnQtaWUgKWBcbi8vIERFUEVOREVOQ0lFU1xuLy8gVGhlc2UgbWl4aW5zIGN1cnJlbnRseSByZWx5IG9uIFp1cmIncyBGb3VuZGF0aW9uIDYgZm9yIFNpdGVzIFNhc3MgbGlicmFyaWVzLFxuLy8gc3BlY2lmaWNhbGx5IHRoZSBgYnJlYWtwb2ludGAgbWl4aW4gYW5kIGJyZWFrcG9pbnQgdmFsdWVzIHNldCBpbiBgZm91bmRhdGlvbi1zZXR0aW5nc2Bcbi8vIFNIQVJFRCBWQVJJQUJMRVNcbiRnbG9iYWwtd2lkdGg6ICRyci1tYXh3aWR0aCAhZGVmYXVsdDtcbi8vIGBjc3MtZ3JpZC1jb2x1bW5zYCBtaXhpblxuLy8gQnVpbGRzIGEgYmFzaWMgbXVsdGktY29sdW1uIGxheW91dCB1c2luZyBwdXJlIENTUyBHcmlkLlxuLy8gQmVzdCB1c2VkIHdpdGggY29udGVudCB0aGF0IGRpdmlkZXMgZXZlbmx5IGludG8gZnVsbCByb3dzIG9mIHRoZSBzcGVjaWZpZWQgY29sdW1uIGNvdW50LlxuLy9cbi8vIFN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgc2V0dGluZ3M6XG4vL1xuLy8gJGNvdW50OiAgICAgICAgIFRoZSBudW1iZXIgb2YgY29sdW1ucyBlYWNoIHJvdzsgZGVmYXVsdHMgdG8gM1xuLy8gJGd1dHRlcjogICAgICAgIFRoZSBzcGFjZSBiZXR3ZWVuIGNvbHVtbnM7IGRlZmF1bHRzIHRvIEZvdW5kYXRpb24nc1xuLy8gICAgICAgICAgICAgICAgIGdsb2JhbCAkZ3JpZC1jb2x1bW4tZ3V0dGVyLlxuLy8gICAgICAgICAgICAgICAgIE5PVEU6IFJvdyBnYXBzIGFyZSBub3Qgc3VwcG9ydGVkIGluIElFLiBJbiB0aGlzIG1peGluLCB0aGV5IGFyZSBzaW11bGF0ZWRcbi8vICAgICAgICAgICAgICAgICB3aXRoIGJvdHRvbSBtYXJnaW5zIHdoZW4gdGhlIGxheW91dCBzd2l0Y2hlcyB0byBzaW5nbGUgY29sdW1uLlxuLy8gICAgICAgICAgICAgICAgIElmIGAkcnItc3VwcG9ydC1pZWAgaXMgZGlzYWJsZWQsIGAkZ3V0dGVyYCBjYW4gYmUgZWl0aGVyIGEgc2luZ2xlIHZhbHVlIGFwcGxpZWRcbi8vICAgICAgICAgICAgICAgICB0byBib3RoIHJvdyBhbmQgY29sdW1uIGd1dHRlcnMsIG9yIHR3byB2YWx1ZXMgb2YgdGhlIGZvcm1hdFxuLy8gICAgICAgICAgICAgICAgIGByb3ctZ3V0dGVyIGNvbHVtbi1ndXR0ZXJgXG4vLyAkZ3V0dGVyLXM6ICAgICAgSWYgeW91ciBncmlkIGJyZWFrcG9pbnQgaXMgc2V0IHRvICdzbWFsbCcgc28gdGhhdCB0aGUgbGF5b3V0IHJlbWFpbnMgY29sdW1uZWQgZXZlblxuLy8gICAgICAgICAgICAgICAgIGF0IHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCB5b3UgbWF5IHdhbnQgdG8gdXNlIGEgbmFycm93ZXIgY29sdW1uIGd1dHRlciBhdCB0aGF0IGJyZWFrcG9pbnQuXG4vLyAgICAgICAgICAgICAgICAgU2V0IHRoZSBzbWFsbCBndXR0ZXIgdmFsdWUgaGVyZS5cbi8vICRjbGFzcy1wcmVmaXg6ICBCeSBkZWZhdWx0LCBhbGwgc3R5bGVzIGFwcGxpZWQgdG8gY2hpbGQgY29sdW1ucyB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGNsYXNzXG4vLyAgICAgICAgICAgICAgICAgYCZfX2NvbHVtbmAuIElmIHlvdSB3YW50IHRvIHVzZSBhIGRpZmZlcmVudCBwcmVmaXggZm9yIGNvbHVtbnMgdGhhbiBmb3IgdGhlIHBhcmVudFxuLy8gICAgICAgICAgICAgICAgICBjbGFzcywgc2V0IHRoaXMgdmFsdWUuIERPIGluY2x1ZGUgdGhlIGxlYWRpbmcgYC5gXG4vLyAkYnJlYWtwb2ludDogICAgVGhlIGJyZWFrcG9pbnQgYWJvdmUgd2hpY2ggdGhlIGxheW91dCBzd2l0Y2hlcyBmcm9tIGEgc2luZ2xlIGNvbHVtbiB0b1xuLy8gICAgICAgICAgICAgICAgIHRoZSBzcGVjaWZpZWQgY29sdW1uIGNvdW50LiBBY2NlcHRzIGEgcHJlZGVmaW5lZCBicmVha3BvaW50XG4vLyAgICAgICAgICAgICAgICAgZGVmaW5pdGlvbiAoZS5nLiAnbWVkaXVtJykgb3IgYSB1bml0bGVzcyBwaXhlbCB3aWR0aC5cbi8vICAgICAgICAgICAgICAgICBSZXF1aXJlcyBGb3VuZGF0aW9uJ3MgYGJyZWFrcG9pbnRgIG1peGluIG9yIGFub3RoZXIgYnJlYWtwb2ludCBtaXhpblxuLy8gICAgICAgICAgICAgICAgIHdpdGggdGhlIHNhbWUgc3ludGF4LlxuLy8gJHJldmVyc2U6ICAgICAgIEFwcGxpZXMgdGhlIGByZXZlcnNlLWdyaWQtY29sdW1uc2AgbWl4aW4gaW5zdGVhZCBvZiB0aGUgc3RhbmRhcmQgY29sdW1uIHBsYWNlbWVudC5cbi8vICRyci1zdXBwb3J0LWllOiAgICBJZiBzZXQgdG8gYGZhbHNlYCwgdGhlIGZhbGxiYWNrIGNvZGUgZm9yIElFIDEwIGFuZCAxMSB3aWxsIGJlIG9taXR0ZWQuXG4vLyAgICAgICAgICAgICAgICAgVGhpcyByZXN1bHRzIGluIGNsZWFuZXIgc3R5bGVzaGVldCBjb2RlIGlmIHlvdSBkb24ndCBuZWVkIHRvIHN1cHBvcnQgdGhvc2Vcbi8vICAgICAgICAgICAgICAgICBicm93c2Vycy5cbi8vXG4vLyBSZXF1aXJlZCBodG1sIG1hcmt1cCAoaWYgdGhpcyBtaXhpbiBpcyBhcHBsaWVkIHRvIGEgY2xhc3MgY2FsbGVkIGAucm93LWNvbnRhaW5lcmApOlxuLy8gPGRpdiBjbGFzcz1cInJvdy1jb250YWluZXJcIj5cbi8vXG4vLyAgICA8ZGl2IGNsYXNzPVwicm93LWNvbnRhaW5lcl9fY29sdW1uXCI+XG4vLyAgICAgIENvbHVtbiBDb250ZW50XG4vLyAgICA8L2Rpdj5cbi8vXG4vLyAgICA8ZGl2IGNsYXNzPVwicm93LWNvbnRhaW5lcl9fY29sdW1uXCI+XG4vLyAgICAgIENvbHVtbiBDb250ZW50XG4vLyAgICA8L2Rpdj5cbi8vXG4vLyAgICA8ZGl2IGNsYXNzPVwicm93LWNvbnRhaW5lcl9fY29sdW1uXCI+XG4vLyAgICAgIENvbHVtbiBDb250ZW50XG4vLyAgICA8L2Rpdj5cbi8vXG4vLyA8L2Rpdj5cbkBtaXhpbiBjc3MtZ3JpZC1jb2x1bW5zKCR0ZW1wbGF0ZXMsICRjb25maWc6ICRyci1ncmlkLXNldHRpbmdzLCAkY2xhc3MtcHJlZml4OiBudWxsLCAkcmV2ZXJzZTogZmFsc2UpIHtcbiAgJG1lZGl1bS1zaXplOiByci1wcm9wLWZvci1icmVha3BvaW50KG0sIHNpemUpO1xuICBAaWYgbm90ICRjbGFzcy1wcmVmaXgge1xuICAgICRjbGFzcy1wcmVmaXg6ICN7Jn07XG4gIH1cblxuICAkYnJlYWtzOiByci1icmVha3BvaW50LWxpc3QoKTtcbiAgJGZsZXgtaW5pdGlhbGl6ZWQ6IGZhbHNlO1xuXG4gICN7JGNsYXNzLXByZWZpeH1fX2NvbHVtbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogcnItZ3JpZGJhc2UoMik7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICBAZWFjaCAkYnJlYWsgaW4gJGJyZWFrcyB7XG4gICAgJG51bS1jb2x1bW5zOiByci1jb2x1bW5zLWZvci10ZW1wbGF0ZSgkdGVtcGxhdGVzLCAkYnJlYWspO1xuICAgICRncmlkLWdhcDogcnItcHJvcC1mb3ItYnJlYWtwb2ludCgkYnJlYWssIGd1dHRlcik7XG4gICAgJGdyaWQtYXJlYXM6IHJyLWFyZWFzLWZvci10ZW1wbGF0ZSgkdGVtcGxhdGVzLCAkYnJlYWspO1xuICAgICRmbGV4LWFyZWFzOiByci1mbGV4LWFyZWFzLWZvci10ZW1wbGF0ZSgkdGVtcGxhdGVzLCAkYnJlYWspO1xuICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZSgkYnJlYWspIHtcbiAgICAgIEBpZiAkbnVtLWNvbHVtbnMge1xuICAgICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRudW0tY29sdW1ucyk7XG4gICAgICAgIEBpZiAobm90ICRmbGV4LWluaXRpYWxpemVkKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICRmbGV4LWluaXRpYWxpemVkOiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIEBpZiAobm90ICRmbGV4LWFyZWFzKSB7XG4gICAgICAgICAgI3skY2xhc3MtcHJlZml4fV9fY29sdW1uIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3skd2lkdGh9IC0gI3skZ3JpZC1nYXB9KTtcbiAgICAgICAgICAgIEBpZiAkZ3JpZC1nYXAge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAoJGdyaWQtZ2FwICogMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaWYgJGZsZXgtYXJlYXMge1xuICAgICAgICBAZWFjaCAkYXJlYSxcbiAgICAgICAgJHdpZHRoIGluICRmbGV4LWFyZWFzIHtcbiAgICAgICAgICAvLyB0cnkgaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTQvMDEvMjcvY2FzdGluZy10eXBlcy1pbi1zYXNzL1xuICAgICAgICAgICN7JGNsYXNzLXByZWZpeH1fX2NvbHVtbi0tI3skYXJlYX0ge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgICB3aWR0aDogY2FsYygjeyR3aWR0aH0gLSAjeyRncmlkLWdhcH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAc3VwcG9ydHMgKCBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFweCkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG5cbiAgICAjeyRjbGFzcy1wcmVmaXh9X19jb2x1bW4ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIEBlYWNoICRicmVhayBpbiAkYnJlYWtzIHtcbiAgICAgICRudW0tY29sdW1uczogcnItY29sdW1ucy1mb3ItdGVtcGxhdGUoJHRlbXBsYXRlcywgJGJyZWFrKTtcbiAgICAgICRncmlkLWdhcDogcnItc3RyaWN0LXByb3AtZm9yLWJyZWFrcG9pbnQoJGJyZWFrLCBndXR0ZXIpO1xuICAgICAgJGdyaWQtYXJlYXM6IHJyLWFyZWFzLWZvci10ZW1wbGF0ZSgkdGVtcGxhdGVzLCAkYnJlYWspO1xuICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICBAaWYgJG51bS1jb2x1bW5zIG9yICRncmlkLWdhcCB7XG4gICAgICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZSgkYnJlYWspIHtcbiAgICAgICAgICBAaWYgJGdyaWQtZ2FwIHtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiByci1wcm9wLWZvci1icmVha3BvaW50KCRicmVhaywgZ3V0dGVyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmICRudW0tY29sdW1ucyB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgjeyRudW0tY29sdW1uc30sIG1pbm1heCgwLCAxZnIpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmICRncmlkLWFyZWFzIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICcjeyRncmlkLWFyZWFzfSc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gYHJldmVyc2UtZ3JpZC1jb2x1bW5zYCBtaXhpblxuLy8gIENoYW5nZXMgdGhlIGNvbHVtbiBvcmRlciBvZiBhIHJvdyBjcmVhdGVkIHdpdGggdGhlIGBjc3MtZ3JpZC1jb2x1bW5zYCBmcm9tIGxlZnQtdG8tcmlnaHRcbi8vICB0byByaWdodC10by1sZWZ0LiBJdCBjYW4gYmUgc2V0IGFzIHRoZSBkZWZhdWx0IGxheW91dCBmb3IgYSBzcGVjaWZpYyBjbGFzcyBieSBwYXNzaW5nIGAkcmV2ZXJzZTogdHJ1ZWBcbi8vICB0byBgY3NzLWdyaWQtY29sdW1uc2AsIG9yIGl0IGNhbiBiZSB1c2VkIGFzIGEgc3RhbmQtYWxvbmUgbWl4aW4gZm9yIHJldmVyc2luZyB0aGUgY29sdW1ucyBvZlxuLy8gIGFuIGV4aXN0aW5nIGdyaWQgbGF5b3V0LlxuLy8gIE5PVEU6IElmIGFwcGxpZWQgdG8gYSByb3cgdGhhdCBpcyBhbHJlYWR5IHJpZ2h0LXRvLWxlZnQsIHRoaXMgbWl4aW4gd2lsbCBOT1Qgc3dpdGNoIGl0IGJhY2sgdG9cbi8vICAgICAgICBsZWZ0LXRvLXJpZ2h0LiBJdCBvbmx5IHdvcmtzIGluIG9uZSBkaXJlY3Rpb24uXG4vL1xuLy8gU3VwcG9ydHMgdGhlIGZvbGxvd2luZyBzZXR0aW5nczpcbi8vXG4vLyAkY291bnQ6ICAgICAgICAgVGhlIG51bWJlciBvZiBjb2x1bW5zIGVhY2ggcm93OyBkZWZhdWx0cyB0byAzXG4vLyAkY2xhc3MtcHJlZml4OiAgQnkgZGVmYXVsdCwgYWxsIHN0eWxlcyBhcHBsaWVkIHRvIGNoaWxkIGNvbHVtbnMgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBjbGFzc1xuLy8gICAgICAgICAgICAgICAgIGAmX19jb2x1bW5gLiBJZiB5b3Ugd2FudCB0byB1c2UgYSBkaWZmZXJlbnQgcHJlZml4IGZvciBjb2x1bW5zIHRoYW4gZm9yIHRoZSBwYXJlbnRcbi8vICAgICAgICAgICAgICAgICAgY2xhc3MsIHNldCB0aGlzIHZhbHVlLiBETyBpbmNsdWRlIHRoZSBsZWFkaW5nIGAuYFxuLy8gJGJyZWFrcG9pbnQ6ICAgIFRoZSBicmVha3BvaW50IGFib3ZlIHdoaWNoIHRoZSBsYXlvdXQgc3dpdGNoZXMgZnJvbSBhIHNpbmdsZSBjb2x1bW4gdG9cbi8vICAgICAgICAgICAgICAgICB0aGUgc3BlY2lmaWVkIGNvbHVtbiBjb3VudC4gQWNjZXB0cyBhIHByZWRlZmluZWQgYnJlYWtwb2ludFxuLy8gICAgICAgICAgICAgICAgIGRlZmluaXRpb24gKGUuZy4gJ21lZGl1bScpIG9yIGEgdW5pdGxlc3MgcGl4ZWwgd2lkdGguXG4vLyAgICAgICAgICAgICAgICAgUmVxdWlyZXMgRm91bmRhdGlvbidzIGBicmVha3BvaW50YCBtaXhpbiBvciBhbm90aGVyIGJyZWFrcG9pbnQgbWl4aW5cbi8vICAgICAgICAgICAgICAgICB3aXRoIHRoZSBzYW1lIHN5bnRheC5cbi8vICRyci1zdXBwb3J0LWllOiAgICBJZiBzZXQgdG8gYGZhbHNlYCwgdGhlIGZhbGxiYWNrIGNvZGUgZm9yIElFIDEwIGFuZCAxMSB3aWxsIGJlIG9taXR0ZWQuXG4vLyAgICAgICAgICAgICAgICAgVGhpcyByZXN1bHRzIGluIGNsZWFuZXIgc3R5bGVzaGVldCBjb2RlIGlmIHlvdSBkb24ndCBuZWVkIHRvIHN1cHBvcnQgdGhvc2Vcbi8vICAgICAgICAgICAgICAgICBicm93c2Vycy5cbkBtaXhpbiByZXZlcnNlLWdyaWQtY29sdW1ucygkY291bnQ6IDMsICRjbGFzcy1wcmVmaXg6ICcnLCAkYnJlYWtwb2ludDogJ21lZGl1bScsICRyci1zdXBwb3J0LWllOiB0cnVlKSB7XG4gIEBpZiAkY2xhc3MtcHJlZml4ID09ICcnIHtcbiAgICAkY2xhc3MtcHJlZml4OiAjeyZ9O1xuICB9XG4gICRjbGFzcy1wcmVmaXg6ICN7Jy4nICsgJGNsYXNzLXByZWZpeH07XG5cbiAgI3skY2xhc3MtcHJlZml4fV9fY29sdW1uIHtcbiAgICAkbXMtY29sdW1uczogJGNvdW50ICsgJGNvdW50IC0gMTtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb3VudCAtIDEge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAmOm50aC1jaGlsZCgjeyRpICsgMX0pIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46ICRtcy1jb2x1bW5zIC0gKCgkaSArIDEpICogMiAtIDEpICsgMTtcbiAgICAgICAgICBAc3VwcG9ydHMgKCBncmlkLWNvbHVtbi1zdGFydDogMSkge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRjb3VudCAtICRpO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIGBjb250ZW50LXdpZHRoYCBtaXhpblxuLy8gIEZvciB0aGUgY29tbW9uIHVzZS1jYXNlIG9mIGEgY29udGVudCBjb2x1bW4gdGhhdCBuZWVkcyB0byBiZSByZXN0cmljdGVkIHRvIGEgbWF4aW11bSB3aWR0aCBhbmQgY2VudGVyZWRcbi8vICBob3Jpem9udGFsbHkgaW4gdGhlIHZpZXdwb3J0LiBDYW4gb3B0aW9uYWxseSBpbmNsdWRlIGEgbGVmdCBhbmQgcmlnaHQgZ3V0dGVyIHZhbHVlIHNvIHRoYXQgYSBzcGVjaWZpY1xuLy8gIGFtb3VudCBvZiB2ZXJ0aWNhbCBzcGFjZSBpcyBhbHdheXMgcmVzZXJ2ZWQgYmV0d2VlbiB0aGUgY29udGVudCBhbmQgdGhlIHZpZXdwb3J0IGVkZ2VzLlxuLy9cbi8vICBTdXBwb3J0cyB0aGUgZm9sbG93aW5nIHNldHRpbmdzOlxuLy9cbi8vICAkbWF4LXdpZHRoOiAgICAgICAgICBUaGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGVudCBpbnNpZGUgdGhpcyBjb250YWluZXJcbi8vICAkZ3V0dGVyOiAgICAgICAgICAgICBNaW5pbXVtIGRpc3RhbmNlIGJldHdlZW4gdGhlIGNvbnRlbnQgYW5kIHRoZSBsZWZ0IGFuZCByaWdodCB2aWV3cG9ydCBlZGdlcy5cbi8vICAgICAgICAgICAgICAgICAgICAgICBEZWZhdWx0cyB0byB0aGUgYCRndXR0ZXItbWVkaXVtYCB2YWx1ZSBzZXQgYWJvdmUgb3IgaW5oZXJpdGVkIGZyb20gYW5vdGhlciBzZXR0aW5ncyBmaWxlLlxuLy8gICRjb250YWluZXItc2VsZWN0b3I6IFNlbGVjdG9yIGZvciB0aGUgY29udGVudCBhcmVhLiBEZWZhdWx0cyB0byBgJl9fY29udGFpbmVyYC4gRE8gaW5jbHVkZSB0aGUgbGVhZGluZyBgLmBcbi8vICAkcnItc3VwcG9ydC1pZTogICAgICAgICBJZiBzZXQgdG8gYGZhbHNlYCwgdGhlIGZhbGxiYWNrIGNvZGUgZm9yIElFIDEwIGFuZCAxMSB3aWxsIGJlIG9taXR0ZWQuXG4vLyAgICAgICAgICAgICAgICAgICAgICAgVGhpcyByZXN1bHRzIGluIGNsZWFuZXIgc3R5bGVzaGVldCBjb2RlIGlmIHlvdSBkb24ndCBuZWVkIHRvIHN1cHBvcnQgdGhvc2Vcbi8vICAgICAgICAgICAgICAgICAgICAgICBicm93c2Vycy5cbi8vXG4vLyBSZXF1aXJlZCBodG1sIG1hcmt1cCAoaWYgdGhpcyBtaXhpbiBpcyBhcHBsaWVkIHRvIGEgY2xhc3MgY2FsbGVkIGAuc2xhYmAgYW5kIGAkY29udGFpbmVyLXNlbGVjdG9yYCBpcyBub3Qgc2V0KTpcbi8vIDxkaXYgY2xhc3M9XCJzbGFiXCI+XG4vLyAgICA8ZGl2IGNsYXNzPVwic2xhYl9fY29udGFpbmVyXCI+XG4vLyAgICAgIENvbnN0cmFpbmVkIENvbnRlbnQgQXJlYVxuLy8gICAgPC9kaXY+XG4vLyA8L2Rpdj5cbkBtaXhpbiBjb250ZW50LXdpZHRoKCRtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGgsICRndXR0ZXI6IGZhbHNlLCAkY29udGFpbmVyLXNlbGVjdG9yOiAnJywgJHJyLXN1cHBvcnQtaWU6IHRydWUpIHtcbiAgQGlmICggJGd1dHRlciA9PSBmYWxzZSkge1xuICAgICRndXR0ZXI6ICRndXR0ZXItbWVkaXVtO1xuICB9XG4gIEBpZiAoICRjb250YWluZXItc2VsZWN0b3IgPT0gJycpIHtcbiAgICAkY29udGFpbmVyLXNlbGVjdG9yOiAnI3smfV9fY29udGFpbmVyJztcbiAgfVxuICBAaWYgKCAkcnItc3VwcG9ydC1pZSkge1xuICAgIGRpc3BsYXk6IC1tcy1ncmlkO1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IG1pbm1heCgkZ3V0dGVyLCAxZnIpIG1pbm1heCgwLCAkbWF4LXdpZHRoKSBtaW5tYXgoJGd1dHRlciwgMWZyKTtcbiAgICAtbXMtZ3JpZC1yb3dzOiBhdXRvO1xuXG4gICAgI3skY29udGFpbmVyLXNlbGVjdG9yfSB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgLW1zLWdyaWQtcm93OiBhdXRvO1xuICAgICAgZ3JpZC1yb3c6IGF1dG87XG4gICAgfVxuICB9XG4gIEBzdXBwb3J0cyAoIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMXB4KSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IFtsZWZ0LW1hcmdpbl0gbWlubWF4KCRndXR0ZXIsIDFmcikgW2NvbnRlbnQtY29sdW1uXSBtaW5tYXgoMCwgJG1heC13aWR0aCkgW3JpZ2h0LW1hcmdpbl0gbWlubWF4KCRndXR0ZXIsIDFmcikgW3ZpZXdwb3J0LWVuZF07XG5cbiAgICAjeyRjb250YWluZXItc2VsZWN0b3J9IHtcbiAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiBjb250ZW50LWNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIG1heGltdW0gY29udGVudCB3aWR0aFxuLy8gSWYgeW91IGFyZSBnb2luZyBmb3IgYSBmdWxsIGZsdWlkIGRlc2lnbiwgc2V0IHRoaXNcbi8vIHZhbHVlIHRvIDEwMCUuXG4kcnItbWF4d2lkdGg6IDc2LjI1cmVtICFkZWZhdWx0O1xuXG4vLyBEaXZpc2lvbnMgb2YgdGhlIGJhc2UgZ3JpZCBzaXplLlxuJHJyLWxpbmUtaGVpZ2h0OiAxcmVtICFkZWZhdWx0O1xuXG4vLyBIb3cgbWFueSBncmlkIHNxdWFyZXMgd2lsbCBmaXQgaW4gdGhlIGRlZmF1bHQgbGluZVxuLy8gaGVpZ2h0LiBUaGUgbGFyZ2VyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBvcHRpb25zXG4vLyB5b3UgaGF2ZSBidXQgdGhlIG1vcmUgZGlmZmljdWx0IGl0IGJlY29tZXMgdG8gZXN0YWJsaXNoXG4vLyBhIHZlcnRpY2FsIHJoeXRobS5cbiRyci1ncmlkLWRpdmlzaW9uczogMiAhZGVmYXVsdDtcblxuLy8gQnkgZGVmYXVsdCwgdGhlIGxhc3QgYnJlYWtwb2ludCBpcyBzZXQgdG8gYCRyci1tYXh3aWR0aGBcbi8vICsgYCRyci1tYXh3aWR0aC1tYXJnaW5gIHRvIHByZXZlbnQgYSBjYXNlIHdoZXJlIHRoZVxuLy8gbWF4IGNvbnRlbnQgd2lkdGggc2l0cyBhZ2FpbnN0IGxlZnQgYW5kIHJpZ2h0IG1hcmdpbnMuLy8gXG4vLyBJZiB5b3UgYXJlIGdvaW5nIGZvciBhIGZ1bGwgZmx1aWQgZGVzaWduLCBzZXQgdGhpcyB2YWx1ZVxuLy8gdG8gMC5cbiRyci1tYXh3aWR0aC1tYXJnaW46IDRyZW0gIWRlZmF1bHQ7XG5cbi8vIEJsZW5kIG1vZGUgZm9yIHRoZSBncmlkL2NvbHVtbnMgb3ZlcmxheS4gVGhpcyBtaWdodCBub3Rcbi8vIHdvcmsgb24gYWxsIGJyb3dzZXJzLiAoTG9va2luZyBhdCB5b3UsIEVkZ2UuKVxuJHJyLWJsZW5kLW1vZGU6IGV4Y2x1c2lvbiAhZGVmYXVsdDtcblxuLy8gSUUgc3VwcG9ydCBmbGFnOyBzaG91bGQgYmUgYHRydWVgIGlmIHlvdSBuZWVkIHRvIHN1cHBvcnRcbi8vIElFIDExIGFuZCBwbGFuIHRvIHVzZSBDU1MgZ3JpZCBsYXlvdXRzLiAoV2UgZG8uKVxuJHJyLXN1cHBvcnQtaWU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIERlZmF1bHQgcmVzcG9uc2l2ZSBzZXR0aW5ncywgYXNzdW1pbmcgYSBtb2JpbGUtZmlyc3Rcbi8vIGFwcHJvYWNoLiBUaGUgZmlyc3QgYnJlYWtwb2ludCB3aWxsIGJlIHVzZWQgYXMgdGhlIFxuLy8gZGVmYXVsdCBzZXR0aW5ncyBvdXRzaWRlIG9mIGEgbWVkaWEgcXVlcnkuIElmIHlvdSBkb1xuLy8gbm90IHJlZGVmaW5lIGEgc2V0dGluZyBpbiBhIGxhcmdlciBicmVha3BvaW50IGl0IFxuLy8gd2lsbCBpbmhlcml0IGZyb20gb25lIG9mIHRoZSBzbWFsbGVyIGJyZWFrcG9pbnRzLFxuLy8ganVzdCBhcyB5b3Ugd291bGQgZXhwZWN0LlxuXG4kcnItZ3JpZC1zZXR0aW5nczogKFxuICBzOiAoXG4gICAgbXE6IG1heC13aWR0aCxcbiAgICBzaXplOiAzNXJlbSxcbiAgICBjb2x1bW5zOiA0LFxuICAgIGd1dHRlcjogMXJlbSAvICRyci1ncmlkLWRpdmlzaW9ucyxcbiAgICBvZmZzZXQ6IDFyZW0sXG4gICAgdnNwYWNlOiAyLFxuICAgIGNvbHVtbl9jb2xvcjogcmdiYSgxMjgsIDEyOCwgMTI4LCAuMiksXG4gICAgYmFzZWxpbmVfY29sb3I6IHJnYmEoMTI4LCAxMjgsIDEyOCwgLjIpXG4gICksXG4gIG06IChcbiAgICBtcTogbWluLXdpZHRoLFxuICAgIHNpemU6IDM1cmVtLFxuICAgIGNvbHVtbnM6IDgsXG4gICAgZ3V0dGVyOiAxcmVtLFxuICAgIG9mZnNldDogMnJlbSxcbiAgICB2c3BhY2U6IDNcbiAgKSxcbiAgbDogKFxuICAgIHNpemU6IDQ4cmVtLFxuICAgIGNvbHVtbnM6IDEyXG4gICksXG4gIHhsOiAoXG4gICAgc2l6ZTogJHJyLW1heHdpZHRoICsgNHJlbSxcbiAgICBndXR0ZXI6IDJyZW0sXG4gICAgb2Zmc2V0OiAwLFxuICAgIHZzcGFjZTogNFxuICApXG4pICFkZWZhdWx0O1xuXG4kcnItZ3JpZHM6IChcbiAgMi11cDogKFxuICAgIG06IChcbiAgICAgIGNvbHVtbnM6IDIsXG4gICAgKVxuICApLFxuICAzLXVwOiAoXG4gICAgbTogKFxuICAgICAgY29sdW1uczogMyxcbiAgICApXG4gICksXG4gIDQtdXA6IChcbiAgICBtOiAoXG4gICAgICBjb2x1bW5zOiAyLFxuICAgICksXG4gICAgbDogKFxuICAgICAgY29sdW1uczogNCxcbiAgICApXG4gICksXG4gIDUtdXA6IChcbiAgICBtOiAoXG4gICAgICBjb2x1bW5zOiAzLFxuICAgICksXG4gICAgbDogKFxuICAgICAgY29sdW1uczogNSxcbiAgICApXG4gICksXG4gIDYtdXA6IChcbiAgICBtOiAoXG4gICAgICBjb2x1bW5zOiAzLFxuICAgICksXG4gICAgbDogKFxuICAgICAgY29sdW1uczogNixcbiAgICApXG4gICksXG4gIHNpZGViYXItbGVmdDogKFxuICAgIG06IChcbiAgICAgIGNvbHVtbnM6IDMsXG4gICAgICBhcmVhczogc2lkZSBtYWluIG1haW4sXG4gICAgICBmbGV4LWFyZWFzOiAoXG4gICAgICAgIGFydGljbGU6IDY2LjYlLFxuICAgICAgICBzaWRlYmFyOiAzMy4zJVxuICAgICAgKVxuICAgICksXG4gICAgbDogKFxuICAgICAgY29sdW1uczogNCxcbiAgICAgIGFyZWFzOiBzaWRlIG1haW4gbWFpbiBtYWluLFxuICAgICAgZmxleC1hcmVhczogKFxuICAgICAgICBhcnRpY2xlOiA3NSUsXG4gICAgICAgIHNpZGViYXI6IDI1JVxuICAgICAgKVxuICAgIClcbiAgKSxcbiAgc2lkZWJhci1yaWdodDogKFxuICAgIG06IChcbiAgICAgIGNvbHVtbnM6IDMsXG4gICAgICBhcmVhczogbWFpbiBtYWluIHNpZGUsXG4gICAgICBmbGV4LWFyZWFzOiAoXG4gICAgICAgIGFydGljbGU6IDY2LjYlLFxuICAgICAgICBzaWRlYmFyOiAzMy4zJVxuICAgICAgKVxuICAgICksXG4gICAgbDogKFxuICAgICAgY29sdW1uczogNCxcbiAgICAgIGFyZWFzOiBtYWluIG1haW4gbWFpbiBzaWRlLFxuICAgICAgZmxleC1hcmVhczogKFxuICAgICAgICBhcnRpY2xlOiA3NSUsXG4gICAgICAgIHNpZGViYXI6IDI1JVxuICAgICAgKVxuICAgIClcbiAgKSxcbiAgbWFqb3ItbGVmdDogKFxuICAgIG06IChcbiAgICAgIGNvbHVtbnM6IDIsXG4gICAgICBhcmVhczogbWFqb3IgbWlub3IsXG4gICAgKSxcbiAgICBsOiAoXG4gICAgICBjb2x1bW5zOiAzLFxuICAgICAgYXJlYXM6IG1ham9yIG1ham9yIG1pbm9yLFxuICAgICAgZmxleC1hcmVhczogKFxuICAgICAgICBtYWpvcjogNjYuNiUsXG4gICAgICAgIG1pbm9yOiAzMy4zJVxuICAgICAgKVxuICAgIClcbiAgKSxcbiAgbWFqb3ItcmlnaHQ6IChcbiAgICBtOiAoXG4gICAgICBjb2x1bW5zOiAyLFxuICAgICAgYXJlYXM6IG1pbm9yIG1ham9yLFxuICAgICksXG4gICAgbDogKFxuICAgICAgY29sdW1uczogMyxcbiAgICAgIGFyZWFzOiBtaW5vciBtYWpvciBtYWpvcixcbiAgICAgIGZsZXgtYXJlYXM6IChcbiAgICAgICAgbWFqb3I6IDY2LjYlLFxuICAgICAgICBtaW5vcjogMzMuMyVcbiAgICAgIClcbiAgICApXG4gIClcbikgIWRlZmF1bHQ7XG5cbiRyci1mb250czogKFxuICBzOiAoXG4gICAgeHM6IC43NXJlbSxcbiAgICBzOiAuODc1cmVtLFxuICAgIG06IDFyZW0sXG4gICAgbDogMS4xMjVyZW0sXG4gICAgeGw6IDEuMjVyZW0sXG4gICAgMnhsOiAxLjQ1cmVtLFxuICAgIDN4bDogMS42N3JlbSxcbiAgICA0eGw6IDEuOTJyZW0sXG4gICAgNXhsOiAyLjI0cmVtXG4gICksXG4gIGw6IChcbiAgICAyeGw6IDEuNXJlbSxcbiAgICAzeGw6IDIuMjVyZW0sXG4gICAgNHhsOiAzcmVtLFxuICAgIDV4bDogNC41cmVtXG4gIClcbikgIWRlZmF1bHQ7XG5cbiRyci1oZWFkaW5nczogKFxuICBoMTogKFxuICAgIHNpemU6IDV4bCxcbiAgICBsaW5laGVpZ2h0OiB0aWdodCxcbiAgICBmb250OiBzZXJpZixcbiAgICB3ZWlnaHQ6IG5vcm1hbFxuICApLFxuICBoMjogKFxuICAgIHNpemU6IDR4bCxcbiAgICBsaW5laGVpZ2h0OiB0aWdodCxcbiAgICBmb250OiBzZXJpZixcbiAgICB3ZWlnaHQ6IG5vcm1hbCxcbiAgKSxcbiAgaDM6IChcbiAgICBzaXplOiAzeGwsXG4gICAgd2VpZ2h0OiBub3JtYWwsXG4gICksXG4gIGg0OiAoXG4gICAgc2l6ZTogMnhsLFxuICAgIHdlaWdodDogbm9ybWFsLFxuICApLFxuICBoNTogKFxuICAgIHNpemU6IHhsLFxuICAgIHdlaWdodDogbm9ybWFsLFxuICAgIHN0eWxlOiBpdGFsaWNcbiAgKSxcbiAgaDY6IChcbiAgICBzaXplOiBsLFxuICAgIHdlaWdodDogYm9sZFxuICApXG4pICFkZWZhdWx0O1xuXG4kcnItbGluZWhlaWdodHM6IChcbiAgdGlnaHQ6IDAsXG4gIG1lZGl1bTogMSxcbiAgd2lkZTogMixcbiAgaHVnZTogMyxcbiAgcmVkaWM6IDRcbikgIWRlZmF1bHQ7XG4iLCJAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUoeGwpIHtcbiAgLnNsYWItLW92ZXJmbG93IHtcbiAgICBAaW5jbHVkZSBzdGF0aWMtY29udGV4dHVhbDtcbiAgICAvLyBUdXJuIG9mZiBvdmVyZmxvdyBvbiB0aGUgc2xhYiBzbyBpdCBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgcGFnZSBhcmVhXG4gICAgLy8gY2F1c2luZyBhIGhvcml6b250YWwgc2Nyb2xsXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgXG4gICAgLnNsYWJfX3dyYXBwZXIge1xuICAgICAgLy8gVHVybiBvbiBvdmVyZmxvdyB2aXNpYmlsaXR5IG9uIHRoZSBzbGFiIHdyYXBwZXIgc28gdGhlIGltYWdlIGNhbiBibGVlZFxuICAgICAgLy8gb3V0IG9mIHRoZSBjb250YWluZXIuXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gIFxuICAgIC5ncmlkIHtcbiAgICAgIC8vIFNhbWUgZm9yIG92ZXJmbG93IG9mIHRoZSBncmlkIGl0ZW1zXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgXG4gICAgICAvLyBNb3N0IGl0ZW1zIHNob3VsZCBub3Qgb3ZlcmZsb3csIGJ1dCB0aGVcbiAgICAgIC8vIGltYWdlIG9mIGEgZmlndXJlIHNob3VsZC4gKENhcHRpb25zIG5lZWRcbiAgICAgIC8vIHRvIHN0YXkgaW4gdGhlIGNvbnRhaW5lZCBhcmVhLlxuICAgICAgPiBkaXYge1xuICAgICAgICAmOmZpcnN0LWNoaWxkLFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLy8gV2lkdGggc2hvdWxkIGJlIGFwcHJveGltYXRlbHkgNTAlIFxuICAgICAgICAgICAgLy8gb2YgdGhlIHZpZXdwb3J0LCBnaXZlIG9yIHRha2VcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwdncgLSAjeyRncmlkLWdhcCAvIDJ9KTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBpbml0aWFsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICBcbiAgICAgICAgLy8gSWYgdGhpcyBuZWVkcyB0byBibGVlZCBpbnRvIHRoZSBsZWZ0IHNpZGUsXG4gICAgICAgIC8vIHdlIGhhdmUgc29tZSBmYW5jeSBzdGVwcGluZyB0byBkbyB0byBtYWtlIHN1cmVcbiAgICAgICAgLy8gdGhlIGltYWdlIGhvbGRzIHZlcnRpY2FsIHNwYWNlIGJ1dCBpZ25vcmVzIHRoZVxuICAgICAgICAvLyBuYXR1cmFsIGxlZnQgbWFyZ2luLiBcbiAgICAgICAgLy8gV2Ugd2lsbCBtb3ZlIHRoZSBsZWZ0IG1hcmdpbiBhIHJlbGF0aXZlIDUwdncgXG4gICAgICAgIC8vICg1MCUgb2Ygd2luZG93KSArIGhhbGYgdGhlIGdyaWQgZ2FwLiBTaW5jZSB0aGF0J3NcbiAgICAgICAgLy8gYWJvdXQgdGhlIHNpemUgb2YgdGhlIGltYWdlIChmcm9tIGFib3ZlKSB0aGF0IHNob3VsZCBwdXRcbiAgICAgICAgLy8gdGhlIHJpZ2h0IG1hcmdpbiBhdCBgbGVmdDowYCBvZiB0aGUgZ3JpZCBjZWxsLiBcbiAgICAgICAgLy8gTW92aW5nIGl0IGJhY2sgYWJvdXQgaGFsZiB0aGUgd2lkdGggb2YgdGhlIGNvbnRhaW5lZFxuICAgICAgICAvLyBhcmVhIHNob3VsZCBnZXQgaXQgYmFjayBpbiBhbGlnbm1lbnQuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgbGVmdDogY2FsYygtNTB2dyAtICN7JGdyaWQtZ2FwIC8gMn0gKyAoI3skZ2xvYmFsLXdpZHRofSAvIDIpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgXG4gICAgICAgIC8vIFdlIGRvbid0IGhhbmRsZSAmOmxhc3QtY2hpbGQgaGVyZSBiZWNhdXNlIGJsZWVkaW5nIHRvIHRoZVxuICAgICAgICAvLyByaWdodCBzaG91bGQgaGFwcGVuIG5hdHVyYWxseS4gXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi5hc3ZnIHtcbiAgXG59XG5cbi5uZXdjaXR5LWxvZ28gc3ZnIHtcbiAgLy8gTmV3Y2l0eSBMb2dvIGlzIDYyIHggMTAxLCBzbyB0aGUgaGVpZ2h0IGlzIDEuNjI5MDMyMjU4IHRoZSB3aWR0aFxuICB3aWR0aDogMTByZW07XG4gIGhlaWdodDogMTYuMjlyZW07XG59XG5cbi5uZXdjaXR5LWxvZ28taG9yaXpvbnRhbCBzdmcge1xuICAvLyBOZXdjaXR5IFZlcnRpY2FsIGxvZyBpcyAxNTkgeCA1NCwgc28gdGhlIGhlaWdodCBpcyAyLjk0NDQ0NDQgdGhlIHdpZHRoXG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAyLjk0NDQ0NHJlbTtcbn1cblxuLm5ld2NpdHktbG9nby12ZXJ0aWNhbCBzdmcge1xuICAvLyBOZXdjaXR5IFZlcnRpY2FsIGxvZyBpcyAxMTUgeCAxMDgsIHNvIHRoZSBoZWlnaHQgaXMgMS4wNjQ4MTQ4MTUgdGhlIHdpZHRoXG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAxMC42NDhyZW07XG59XG5cbi5uZXdjaXR5LWxvZ28td29yZG1hcmsgc3ZnIHtcbiAgLy8gTmV3Y2l0eSBMb2dvIGlzIDExNSB4IDE1LCBzbyB0aGUgaGVpZ2h0IGlzIC4xMzA0MzQ3ODMgdGhlIHdpZHRoXG4gIHdpZHRoOiAxMHJlbTtcbiAgaGVpZ2h0OiAxLjNyZW07XG59IiwiZmlndXJlIHtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKG0sd2lkZSk7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvbnRhaW47IG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlclwiO1xuICAgIG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogcnItZ3JpZGJhc2UoMSk7XG4gIH1cbn1cblxuLy8gSW4gd3lzaXd5Z1xuLmZpZ3VyZS13cmFwcGVyIGZpZ3VyZSwgLmZpZ3VyZS13cmFwcGVyID4gYXJ0aWNsZS5tZWRpYSB7XG4gIG1hcmdpbi10b3A6IHJyLWdyaWRiYXNlKDMpO1xuICBtYXJnaW4tYm90dG9tOiByci1ncmlkYmFzZSgzKTtcblxuICAvLyBSZXNldCByZXNwb25zaXZlIGVtYmVkcyBpZiB0aGV5J3JlIGZsb2F0ZWRcbiAgJi5hbGlnbi1sZWZ0LCAmLmFsaWduLXJpZ2h0IHtcbiAgICAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IHJyLWdyaWRiYXNlKDEpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHMpO1xuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICAmLnBhcnRpYWxfY29udGVudCxcbiAgICAmLnBhcnRpYWxfNF8zIHtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgICAmLmFsaWduLWxlZnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiByci1ncmlkYmFzZSgyKTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByci1ncmlkYmFzZSgyKTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn0iLCIuYnJlYWRjcnVtYnMge1xuICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUociwgbWVkaXVtKTtcbiAgQGluY2x1ZGUgY2xlYW47XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuIiwiLmxpbmstZ3JvdXAge1xuXG59XG5cbi5saW5rLWdyb3VwLS1pbnZpc2libGUtaGVhZGVyIHtcbiAgLmhlYWRsaW5lLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTk5OTk5OWVtO1xuICB9XG59XG5cbi8qXG4ubGluay1ncm91cC0tY29sbGFwc2VkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG1lZGl1bSkge1xuICAubGluay1ncm91cC0tY29sbGFwc2VkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuKi8iLCIlcGFnZXItaGlnaGxpZ2h0ZWQge1xuICBhIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuJXBhZ2VyLWRlbGltaXRlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMGRlZyk7XG4gICAgdG9wOiAtLjNyZW07XG4gICAgYm90dG9tOiAtLjNyZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihuZXV0cmFsLWdyZXkpO1xuICB9XG59XG5cbi5wYWdlciB7XG4gIG1hcmdpbi10b3A6IHJyLWdyaWRiYXNlKDQpO1xufVxuXG4ucGFnZXJfX2l0ZW0ge1xuICBhIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYmFybG93O1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgcGFkZGluZzogLjVyZW0gLjc1cmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbW9kaWZpZXIoJ2ZpcnN0Jykge1xuICAgIEBleHRlbmQgJXBhZ2VyLWhpZ2hsaWdodGVkO1xuICAgIEBleHRlbmQgJXBhZ2VyLWRlbGltaXRlZDtcbiAgfVxuICBAaW5jbHVkZSBtb2RpZmllcigncHJldmlvdXMnKSB7XG4gICAgIEBleHRlbmQgJXBhZ2VyLWhpZ2hsaWdodGVkO1xuICAgICBAZXh0ZW5kICVwYWdlci1kZWxpbWl0ZWQ7XG4gIH1cbiAgQGluY2x1ZGUgbW9kaWZpZXIoJ25leHQnKSB7XG4gICAgQGV4dGVuZCAlcGFnZXItaGlnaGxpZ2h0ZWQ7XG4gICAgQGV4dGVuZCAlcGFnZXItZGVsaW1pdGVkO1xuICB9XG4gIEBpbmNsdWRlIG1vZGlmaWVyKCdsYXN0Jykge1xuICAgIEBleHRlbmQgJXBhZ2VyLWhpZ2hsaWdodGVkO1xuICB9XG4gICYubGFzdC1wYWdlIHtcbiAgICBAZXh0ZW5kICVwYWdlci1kZWxpbWl0ZWQ7XG4gIH1cbiAgJi5pcy1hY3RpdmUge1xuICAgIEBleHRlbmQgJXBhZ2VyLWhpZ2hsaWdodGVkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtLjNyZW07XG4gICAgICBib3R0b206IC0uM3JlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobGlnaHQtZ3JleSk7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMGRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1pbi1vdXQsIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLWluLW91dDtcbiAgICB9XG4gIH1cbn1cblxuW2RhdGEtZHJ1cGFsLXZpZXdzLWluZmluaXRlLXNjcm9sbC1wYWdlcl0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59IiwiLnNlY3Rpb24tbmF2IHtcbiAgJG9wZW4tbWF4LWhlaWdodDogNzAwcHg7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAubWVudS1pdGVtX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLm9wZW4tY2hpbGRyZW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLjVyZW07XG4gICAgdG9wOiAxcmVtO1xuICAgIC5jbG9zZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmLm9wZW4ge1xuICAgICAgLmNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgIC5vcGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVudS1sZXZlbC0wIHtcbiAgICA+IHVsIHtcbiAgICAgID4gbGkgPiAubWVudS1pdGVtX19pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnkpO1xuICAgICAgICBwYWRkaW5nOiByZW0oMTZweCkgcmVtKDE3cHgpIHJlbSgxNnB4KSByZW0oMjNweCk7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1lbnUtbGV2ZWwtMSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iob2ZmLXdoaXRlKTtcbiAgICA+IHVsIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTVweCk7XG4gICAgICA+IGxpID4gLm1lbnUtaXRlbV9faW5uZXIge1xuICAgICAgICBwYWRkaW5nOiByZW0oMTFweCkgcmVtKDE3cHgpIHJlbSg3cHgpIHJlbSgyOXB4KTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogY29sb3IoYmxhY2spO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWl0ZW0uaGFzLWNoaWxkcmVuIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2Utb3V0O1xuICAgICAgICAmLm9wZW5lZCB7XG4gICAgICAgICAgbWF4LWhlaWdodDogJG9wZW4tbWF4LWhlaWdodDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5pcy1hY3RpdmUge1xuICAgICAgPiAubWVudS1pdGVtX19pbm5lciA+IGEge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tZW51LWxldmVsLTIge1xuICAgIC5tZW51LWl0ZW1fX2lubmVyIHtcbiAgICAgIHBhZGRpbmc6IHJlbSg2cHgpIHJlbSgxN3B4KSByZW0oNHB4KSByZW0oMzRweCk7XG4gICAgfVxuICAgIFxuICB9XG4gIC5tZW51LWxldmVsLTMge1xuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICfigJMgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gIH1cbn1cblxuIiwiLnNraXAtbmF2IHtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHhsKTtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC01cmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrKTtcblxuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIC41cztcbiAgfVxufVxuIiwiLnNvY2lhbC1tZWRpYS1saW5rcyB7XG4gIEBpbmNsdWRlIGVsZW1lbnQoJ21lbnUnKSB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogcnItZ3JpZC11bml0cygyKTtcbiAgICAgIGNvbG9yOiBjb2xvcihibGFjayk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICB3aWR0aDogNDRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICAgICAgc3BhbiB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmljb24ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICB3aWR0aDogNDRweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbW9kaWZpZXIoJ2NvbG9yaXplJykge1xuICAgIGEge1xuICAgICAgLmljb25fX2dseXBoIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi10aW1lICR0cmFuc2l0aW9uLWVhc2luZztcbiAgICAgICAgJltjbGFzcyo9ZmFjZWJvb2tdIHtcbiAgICAgICAgICBjb2xvcjogIzE4NzdmMjtcbiAgICAgICAgfVxuICAgICAgICAmW2NsYXNzKj10d2l0dGVyXSB7XG4gICAgICAgICAgY29sb3I6ICMxZGExZjI7XG4gICAgICAgIH1cbiAgICAgICAgJltjbGFzcyo9bGlua2VkaW5dIHtcbiAgICAgICAgICBjb2xvcjogIzAwN2JiNTtcbiAgICAgICAgfVxuICAgICAgICAmW2NsYXNzKj1pbnN0YWdyYW1dIHtcbiAgICAgICAgICBjb2xvcjogI2MzMmFhMztcbiAgICAgICAgfVxuICAgICAgICAmW2NsYXNzKj15b3V0dWJlXSB7XG4gICAgICAgICAgY29sb3I6ICNmZjAwMDA7XG4gICAgICAgIH1cbiAgICAgICAgJltjbGFzcyo9cGludGVyZXN0XSB7XG4gICAgICAgICAgY29sb3I6ICNjYjIwMjc7XG4gICAgICAgIH1cbiAgICAgICAgJltjbGFzcyo9c25hcGNoYXRdIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZmMwMDtcbiAgICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFweCBibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlcixcbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIC5pY29uX19nbHlwaCB7XG4gICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmRlc2NyaWJlZC1saW5rcyB7XG4gIG1hcmdpbi1ib3R0b206IHJyLWdyaWRiYXNlKDMpO1xuXG4gIC5lZGl0b3JpYWwgcCB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHIsIG1lZGl1bSk7XG4gIH1cblxuICBkZCB7XG4gICAgcGFkZGluZy1sZWZ0OiByci1ncmlkYmFzZSgyKTsgLy8gbWF0Y2hlcyBwYWRkaW5nIG9uIGZhbmN5IGxpbmtzXG4gIH1cbn1cbiIsIiRzaXplbGlzdDogNHhsIDN4bCAyeGwgMnhsIHhsIHhsO1xuXG4uaGVhZGxpbmUtZ3JvdXAge1xuICAvLyBTaW5jZSB0aGUgbWVhbmluZyBvZiAmIGNoYW5nZXMgZGVwZW5kaW5nIG9uIG5lc3RpbmcuXG4gICRiZW0tcm9vdDogI3smfTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IHJyLWdyaWRiYXNlKDIpO1xuICBsaW5lLWhlaWdodDogYXV0bztcblxuICAjeyRiZW0tcm9vdH1fX3N1cGVyLFxuICAjeyRiZW0tcm9vdH1fX3N1YiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBEZWZhdWx0IG5vbi1zZW1hbnRpYyBoZWFkbGluZSBncm91cFxuICBAYXQtcm9vdCAjeyRiZW0tcm9vdH0ge1xuICAgICN7JGJlbS1yb290fV9fc3VwZXIsXG4gICAgI3skYmVtLXJvb3R9X19zdWIge1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICAgIH1cblxuICAgICN7JGJlbS1yb290fV9faGVhZCB7XG4gICAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoMnhsKTtcbiAgICB9XG4gIH1cblxuICAvLyBTZW1hbnRpYyBoZWFkbGluZSBncm91cHNcbiAgLy8gZWcgaDEuaGVhZGxpbmUtZ3JvdXAsIGgyLmhlYWRsaW5lLWdyb3VwXG4gIEBmb3IgJHBvcyBmcm9tIDEgdGhyb3VnaCA2IHtcbiAgICAkc2l6ZTogbnRoKCRzaXplbGlzdCwgJHBvcyk7XG4gICAgJHN1YnNpemU6IG1hcC1vZmZzZXQtZnJvbSgkZm9udC1zaXplcywgJHNpemUsIC0yKTtcbiAgICBAYXQtcm9vdCBoI3skcG9zfSN7Jn0ge1xuICAgICAgI3skYmVtLXJvb3R9X19zdXBlcixcbiAgICAgICN7JGJlbS1yb290fV9fc3ViIHtcbiAgICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKCRzdWJzaXplKTtcbiAgICAgIH1cblxuICAgICAgI3skYmVtLXJvb3R9X19oZWFkIHtcbiAgICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlYWRsaW5lLWdyb3VwLS1kaXNwbGF5IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC5oZWFkbGluZS1ncm91cF9fc3VwZXIge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZSg0bCk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cblxuICAuaGVhZGxpbmUtZ3JvdXBfX2hlYWQge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZSg2bCwgbWVkaXVtKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKHhsKSB7XG4gICAgICBmb250LXNpemU6IHJlbSg3MHB4KTtcbiAgICB9XG4gIH1cbn1cblxuLmhlYWRsaW5lLWdyb3VwLS1ib3JkZXJlZCB7XG4gIHBhZGRpbmc6IHJyLWdyaWRiYXNlKDIpO1xuICBib3JkZXI6IDJweCBjb2xvcihvZmYtd2hpdGUpIHNvbGlkO1xuXG4gIC5oZWFkbGluZS1ncm91cF9fc3VwZXIge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShtLCBtZWRpdW0pO1xuICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnkpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3ctY29uZGVuc2VkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmhlYWRsaW5lLWdyb3VwX19oZWFkIHtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoMmwsIG1lZGl1bSk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1jb25kZW5zZWQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbiIsIi5jb250ZW50LW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiByci1ncmlkYmFzZSgxKTtcblxuICAuYnlsaW5lIHtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUobCwgbWVkaXVtKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgLmRhdGUge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShyLCBtZWRpdW0pO1xuICB9XG5cbiAgLndoby13aGVuIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgLnRheG9ub215LWxpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuXG4gIHNwYW4gKyBzcGFuIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyB8ICc7XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1pbnRybyB7XG4gIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59IiwiLnRhYmxlLXdyYXBwZXIge1xuXG4gIC53eXNpd3lnLXRhYmxlIHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gIH1cblxuICB0YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzVmNWY1ZjtcblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6IHJyLWdyaWRiYXNlKDIpO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgIzVmNWY1ZjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IHtcbiAgICAgICAgdG9wOiByci1ncmlkYmFzZSgyKTtcbiAgICAgICAgYm90dG9tOiByci1ncmlkYmFzZSgyKTtcbiAgICAgIH1cbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICAgIH1cblxuICB9XG5cbiAgJi50YWJsZS13cmFwcGVyLS1zdHJpcGVkIHtcbiAgICB0Ym9keSB7XG4gICAgICB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iob2ZmLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsImRsIHtcbiAgZHQge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsLCBtZWRpdW0pO1xuICAgIG1hcmdpbi1ib3R0b206IHJyLWdyaWRiYXNlKDEpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICBkZCB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHIsIG1lZGl1bSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcnItZ3JpZGJhc2UoMik7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAmLmludmlzaWJsZS1sYWJlbHMge1xuICAgIGR0IHsgXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogLjVyZW07XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJzogJztcbiAgICAgIH1cbiAgICB9XG4gICAgZGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIm9sIHtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHIsbWVkaXVtKTtcbiAgXG4gICYuY2xlYW4ge1xuICAgIEBpbmNsdWRlIGNsZWFuO1xuICB9XG5cbiAgJi5zdHlsZWQtY291bnRlciB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBjb3VudGVyLXJlc2V0OiBiYXNlLWNvdW50ZXI7XG5cbiAgICA+IGxpIHtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBiYXNlLWNvdW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIuM2VtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAyZW07XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKGJhc2UtY291bnRlcikgJyknO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsZWZ0OiAwOyAgXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJ1bCB7XG4gIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShyLCBtZWRpdW0pO1xuXG4gICYuY2xlYW4sXG4gICYuc2VyaWVzLFxuICAmLnBpcGVkIHtcbiAgICBAaW5jbHVkZSBjbGVhbjtcbiAgfVxuXG4gICYuY2xlYW4ge1xuICAgIHVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogcnItZ3JpZC11bml0cygzKTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5zZXJpZXMsXG4gICYucGlwZWQsXG4gICYuaW5saW5lIHtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgJi5zZXJpZXMge1xuICAgIGxpOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnLCAnO1xuICAgIH1cbiAgICBsaTpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJ1xuICAgIH1cbiAgfVxuXG4gICYucGlwZWQge1xuICAgIGxpOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnIHwgJztcbiAgICB9XG5cbiAgICBsaTpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJ1xuICAgIH1cbiAgfVxuXG4gICYuYXJyb3cge1xuICAgICRhcnJvdy1pbmRlbnQ6IDIuM2VtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAkYXJyb3ctaW5kZW50O1xuICAgIHRleHQtaW5kZW50OiAwO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYmFybG93O1xuICAgICAgICBjb250ZW50OiAn4p+2JztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtJGFycm93LWluZGVudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogJGFycm93LWluZGVudDtcbiAgICAgICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5ncmlkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAmLnBhZGRlZCB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcnItZ3JpZGJhc2UoMyk7XG4gICAgfVxuICB9XG5cbiAgJi5jaGVja2JveGVzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGkge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIEBpbmNsdWRlIGljb25mb250O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByci1ncmlkLXVuaXRzKDEpO1xuICAgICAgfVxuICAgICAgJi5jaGVja2VkIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAkaWNvbi1jaGVja2JveC1jaGVja2VkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnVuY2hlY2tlZCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJGljb24tY2hlY2tib3gtZW1wdHk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5pbmxpbmUge1xuICAgICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJyLWdyaWQtdW5pdHMoMik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jZW50ZXJlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAmW2RhdGEtdGFiYnktdGFic10ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMXJlbTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcblxuICAgIFthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLmNvbW11bml0eS1wYWdlLXRhYnMgdWxbZGF0YS10YWJieS10YWJzXSB7XG4gIGdhcDogMHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNkMDAwMWI7XG4gIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XG5cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgIGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgbWF4LXdpZHRoOiA4cmVtO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzRBNEE0QTtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzRBNEE0QTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJlthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDAxYjtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMC41cmVtO1xuICAgICAgICAgIGxlZnQ6IDFyZW07XG4gICAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1My43NXJlbSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgbGkge1xuICBcbiAgICAgIGEge1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNEE0QTRBO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzRBNEE0QTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIH1cbiAgICB9ICBcbiAgfVxufVxuXG5bcm9sZT10YWJwYW5lbF1baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiYmxvY2txdW90ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHN1YnRsZS1ncmV5KTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBtYXJnaW46IDFyZW07XG4gIHBhZGRpbmc6IHJlbSgyMHB4KTtcbn0iLCIkYnV0dG9uLWJvcmRlcjogcmVtKDNweCk7XG5cbi8vIFJlc2V0LlxuYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5idXR0b24ge1xuICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUobSk7XG5cbiAgYmFja2dyb3VuZDogY29sb3IocHJpbWFyeSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgLjVyZW0gMCAwO1xuICBwYWRkaW5nOiByci1ncmlkYmFzZSgxKSByci1ncmlkYmFzZSgzKTtcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0O1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1jb25kZW5zZWQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICYuYnV0dG9uLS1tdXRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcihsaWdodC1ncmV5KSwgLjMpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYShjb2xvcihsaWdodC1ncmV5KSwgLjMpO1xuICAgIGNvbG9yOiBjb2xvcihibGFjayk7XG4gICAgJi5idXR0b24tLWFycm93IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgJi5idXR0b24tLWFycm93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYXJpYW50c1xuICAmLmJ1dHRvbi0tc21hbGwge1xuICAgIHBhZGRpbmc6ICN7cnItZ3JpZGJhc2UoLjUpIC0gJGJ1dHRvbi1ib3JkZXJ9ICN7cnItZ3JpZGJhc2UoMSkgLSAkYnV0dG9uLWJvcmRlcn07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShzKTtcbiAgICAmLmJ1dHRvbi0tYXJyb3cge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJyLWdyaWRiYXNlKC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJ1dHRvbi0tbGFyZ2Uge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICBwYWRkaW5nOiAje3JyLWdyaWRiYXNlKDIpIC0gJGJ1dHRvbi1ib3JkZXJ9ICN7cnItZ3JpZGJhc2UoNCkgLSAkYnV0dG9uLWJvcmRlcn07XG4gIH1cblxuICAmLmJ1dHRvbi0tYXJyb3cge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGljb25mb250O1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHhzKTtcbiAgICAgIGNvbnRlbnQ6ICRpY29uLWFuZ2xlLXJpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OiByci1ncmlkYmFzZSgxKTtcbiAgICB9XG4gIH1cblxuICAmLmJ1dHRvbi0tZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogI3tyci1ncmlkYmFzZSgyKSAtICRidXR0b24tYm9yZGVyfSAje3JyLWdyaWRiYXNlKDQpIC0gJGJ1dHRvbi1ib3JkZXJ9O1xuICAgICYuYnV0dG9uLS1hcnJvdyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnZpZGVvLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAudmlkZW8tYnV0dG9uX19wYXVzZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAudmlkZW8tYnV0dG9uX19wbGF5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi52aWRlby1idXR0b24tLXBhdXNlZCB7XG4gICAgICAudmlkZW8tYnV0dG9uX19wYXVzZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC52aWRlby1idXR0b25fX3BsYXkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwiY2l0ZSB7XG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHMpO1xuICB9XG59IiwiLy8gTm9ybWFsaXplIGhlYWRpbmcgc2l6ZXM7IGhlYWRpbmdzIGluIGEgXG4vLyBkaXNwbGF5IGNvbnRleHQgc2hvdWxkIGhhdmUgYW4gYWRkaXRpb25hbCBcbi8vIGZvbnQgc3R5bGUgYXBwbGllZCB0byB0aGVtLlxuXG4kaGVhZGluZy1zaXplczogNmwsIDRsLCAzbCwgMmwsIHhsLCBsO1xuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICBoI3skaX0ge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShudGgoJGhlYWRpbmctc2l6ZXMsICRpKSk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1jb25kZW5zZWQ7IFxuICB9XG59XG5cbiRlZC1oZWFkaW5nLXNpemVzOiA2bCwgNGwsIHhsLCBsLCBtLCBtLCBzO1xuXG5AZm9yICRpIGZyb20gMiB0aHJvdWdoIDYge1xuICBoI3skaX0ge1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShudGgoJGVkLWhlYWRpbmctc2l6ZXMsICRpKSk7XG4gICAgbWFyZ2luOiByci1ncmlkYmFzZSgyKSAwO1xuICB9XG59XG5cbmgxIHtcbiAgbWFyZ2luOiAwO1xuICAmICsgLnNsYWIge1xuICAgIHBhZGRpbmctdG9wOiByci1ncmlkYmFzZSgxKTtcbiAgfVxufVxuXG4uaDMtbG9vayB7XG4gIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZSh4bCk7XG59IiwiLmljb25fX2dseXBoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbn1cblxuLmljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cbiAgLmljb25fX2dseXBoIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IC41NWVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC5pY29uX19sYWJlbCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuXG4uaWNvbi0tYWZ0ZXIge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIC5pY29uX19nbHlwaCB7XG4gICAgcGFkZGluZy1sZWZ0OiByci1ncmlkYmFzZSgxKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmljb24tLW5vLWxhYmVsIHtcbiAgLmljb25fX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pY29uX19nbHlwaCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5pY29uLS1zdGFja2VkIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcblxuICAuaWNvbl9fZ2x5cGgge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICB9XG59XG5cbi5pY29uLS1iaWcge1xuICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoeGwpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIC5pY29uX19nbHlwaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICB9XG5cbiAgQGF0LXJvb3QgYnV0dG9uICN7Jn0sXG4gIC5idXR0b24gI3smfSB7XG4gICAgLmljb25fX2xhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEp1c3QgdG8gbGV0IHlvdSBrbm93IHRoaXMgaXMgYW4gb3B0aW9uLlxuLy8gVGhpcyB0d2Vha3MgdGhlIGljb24tbGFiZWwgc3R5bGVzIHNvIHRoZVxuLy8gbGFiZWwgYW5kIHRoZSBpY29ucyBsaW5lIHVwXG4uYWxpZ24taWNvbnMge1xuICBAaW5jbHVkZSBpY29uLWxhYmVsLWFsaWduO1xufVxuIiwiYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAmLmJ1dHRvbiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbn1cblxuLmZhbmN5LWxpbmtzIGEsXG5hLmxpbmstLWZhbmN5LFxuLmxpbmstLWFycm93LFxuLmFycm93LWxpbmtzIGEsXG5hLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5saW5rLS1mYW5jeSxcbi5mYW5jeS1saW5rcyBhIHtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICBAaW5jbHVkZSBsaW5rLWNvbG9ycygkZDogY29sb3IocHJpbWFyeSksICRoOiBjb2xvcihzZWNvbmRhcnkpKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2UtaW4tb3V0LCBcbiAgICBtYXJnaW4tcmlnaHQgLjJzIGVhc2UtaW4tb3V0LCBcbiAgICBwYWRkaW5nLWxlZnQgLjJzIGVhc2UtaW4tb3V0LFxuICAgIHRleHQtaW5kZW50IC4ycyBlYXNlLWluLW91dDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICB0ZXh0LWluZGVudDogLTE2cHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IC0xcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAuN2VtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLWluLW91dCwgbWFyZ2luLWxlZnQgLjJzIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgdGV4dC1pbmRlbnQ6IC0yNnB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5saW5rLS1hcnJvdyxcbi5hcnJvdy1saW5rcyBhIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1pbmRlbnQ6IHJyLWdyaWQtdW5pdHMoLTMpO1xuICBtYXJnaW4tbGVmdDogcnItZ3JpZC11bml0cygzKTtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKGwpO1xuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSBpY29uZm9udDtcbiAgICBjb250ZW50OiAkaWNvbi1hbmdsZS1yaWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OiByci1ncmlkLXVuaXRzKDEpO1xuICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG4gIH1cbn1cblxuLmJpZy1pY29uIHtcbiAgLmljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5pY29uX19nbHlwaCwgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmb250LXNpemU6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcnItZ3JpZGJhc2UoMS41KTtcbiAgfVxufVxuXG4vLyBUd2VhayB0aGUgZm9udCBzaXplXG4uZWRpdG9yaWFsIC5saW5rLS1mYW5jeSxcbi5lZGl0b3JpYWwgLmxpbmstLWZhbmN5LXJldmVyc2Uge1xuICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUobCk7XG59XG4iLCJwIHtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKG0pO1xuICBtYXJnaW4tYm90dG9tOiByci1ncmlkYmFzZSgyKTtcbn1cblxucC5pbnRybyxcbi5pbnRybyBwIHtcbiAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKHhsKTtcbn0iLCIuc2VwIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCiJztcbiAgfVxufVxuXG4uc2VwLS1kYXNoIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnLSc7XG4gIH1cbn1cblxuLnNlcC0tcGlwZSB7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ3wnO1xuICB9XG59XG4iLCIub3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAuNTtcbiAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuXG4gIGRpdiwgcGljdHVyZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gUG9seWZpbGwgZm9yIG9iamVjdC1maXQgdXNlcyB0aGlzLlxuICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY29udGFpbic7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cblxuICAvLyBUaGlzIHVzZXMgdGhlIGltYWdlIHRvIGZpbGwgdGhlIHNwYWNlLCBhbGlnbmluZyBhdCB0aGUgdG9wXG4gICYjeyZ9LS1saW5lLWFydCB7XG4gICAgb3BhY2l0eTogLjI7XG5cbiAgICBpbWcge1xuICAgICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiB0b3AgY2VudGVyJztcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIGNvbnRhaW5zIHRoZSBpbWFnZSBpbiB0aGUgYXZhaWxhYmxlIHNwYWNlIGV4Y2VwdCBmb3IgYSBcbiAgLy8gbWFyZ2luIG9mIDIgcmVtIGF0IHRoZSB0b3AgYW5kIHRoZSBib3R0b20uIFRoZSBpbWFnZSB3aWxsIHNjYWxlXG4gIC8vIGRvd24gdG8gZml0IHdpdGhpbiB0aGF0IHJlY3RhbmdsZVxuICAmI3smfS0tbGluZS1hcnQtLWNvbnRhaW4ge1xuICAgIG9wYWNpdHk6IC4yO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb250YWluOyBvYmplY3QtcG9zaXRpb246IGNlbnRlcic7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICB9XG59XG5cbiIsIi5uZXdzLXRlYXNlcnNfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBoMiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUoNmwpO1xuICAgIG1hcmdpbjogMDtcbiAgICBAaW5jbHVkZSBoZWFkaW5nLXVuZGVybGluZTtcbiAgfVxufVxuXG4ubmV3cy10ZWFzZXJzIHtcbiAgLnRlYXNlcl9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICA+ICoge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZmxleDogMTtcbiAgICB9XG4gIH1cbn0iLCIubmV3cy10ZWFzZXJzLXN0YWNrZWQge1xuICBAaW5jbHVkZSBlbGVtZW50KCdoZWFkZXInKSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcnItZ3JpZGJhc2UoMik7XG4gICAgYSB7XG4gICAgICBjb2xvcjogY29sb3IoYmxhY2spO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSk7XG4gICAgICAgIEBpbmNsdWRlIHJyLWZvbnQtY29tcHV0ZShsKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgfVxufSIsIi50b2dnbGUtYnV0dG9uX19kZW1vIHtcbiAgbWFyZ2luLXRvcDogcnItZ3JpZGJhc2UoNCk7XG4gIG1hcmdpbi1ib3R0b206IHJyLWdyaWRiYXNlKDQpO1xuXG4gICZbYXJpYS1oaWRkZW49J3RydWUnXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLmxpc3QtZ3JvdXBpbmcge1xuICAkcGFkOiByci1ncmlkYmFzZSgyKTtcbiAgcGFkZGluZy1ib3R0b206IHJyLWdyaWRiYXNlKDMpO1xuXG4gIEBpbmNsdWRlIGVsZW1lbnQoJ2hlYWRpbmcnKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSk7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgICBAaW5jbHVkZSByci1mb250LWNvbXB1dGUobCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nOiByci1ncmlkYmFzZSgxKSAkcGFkO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0oMzBweCk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgbGkge1xuICAgIHBhZGRpbmctbGVmdDogJHBhZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNsYWIge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cblxuICBAaW5jbHVkZSBlbGVtZW50KCdjb250ZW50Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICB9XG4gIEBpbmNsdWRlIGVsZW1lbnQoJ3RleHQnKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgID4gKiB7XG4gICAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1pbi13aWR0aDogcmVtKDE1MHB4KTtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGVsZW1lbnQoJ2ltYWdlJykge1xuICAgIGZsZXgtYmFzaXM6IDEwMHB4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShtKSB7XG4gICAgQGluY2x1ZGUgZWxlbWVudCgndGV4dCcpIHtcbiAgICAgID4gKiB7XG4gICAgICAgIG1pbi13aWR0aDogcmVtKDIwMHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQoJ2NvbnRlbnQnKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGluY2x1ZGUgZWxlbWVudCgndGV4dCcpIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBhZGQgc29tZSBzcGFjaW5nIGJldHdlZW4gdmlld3MgZ3JvdXBpbmdzXG4udmlld3NfX2dyb3VwaW5nIHtcbiAgKyAudmlld3NfX2dyb3VwaW5nIHtcbiAgICBtYXJnaW4tdG9wOiByci1ncmlkYmFzZSg2KTtcbiAgfVxufVxuXG4udmlldy1jb250ZW50IHtcbiAgZGl2Omxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwaW5nIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufSIsIi5wYWdlLWhlYWRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybCgncGFnZS1oZWFkZXItYmFja2dyb3VuZC5qcGcnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAaW5jbHVkZSBtb2RpZmllcigncGxhaW4nKSB7XG4gICAgaDEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmctdW5kZXJsaW5lO1xuICAgIH1cbiAgICAucGFnZS1oZWFkZXJfX3RleHRfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiByci1ncmlkYmFzZSg0KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByci1ncmlkYmFzZSg2KTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtb2RpZmllcignaGFzLW1lZGlhJykge1xuICAgIC5wYWdlLWhlYWRlcl9fbWVkaWEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyX190ZXh0IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBpbmhlcml0O1xuICAgIH1cbiAgICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUobCkge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIH1cbiAgICAgIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgICAgICBwYWRkaW5nOiByZW0oMTIwcHgpIHJlbSg0MHB4KSByZW0oMTIwcHgpIHJlbSgxMjBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZWxlbWVudCgnbWVkaWEnKSB7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtIDAgMXJlbTtcbiAgICBhcnRpY2xlLCBkaXYge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICBwaWN0dXJlIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBtYXJnaW46IHJyLWdyaWRiYXNlKDEpIDFyZW07XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZWxlbWVudCgndGV4dCcpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBoMSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZWxlbWVudCgndGV4dF9faW5uZXInKSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgbW9kaWZpZXIoJ2hvbWUnKSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAucGFnZS1oZWFkZXJfX21lZGlhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoJ3BhZ2UtaGVhZGVyLWJhY2tncm91bmQuanBnJyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKDZsKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIC5oZWFkaW5nX190ZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWNjZW50KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1vZGlmaWVyKCdmdWxsJykge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5wYWdlLWhlYWRlcl9fbWVkaWEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgICAucGFnZS1oZWFkZXJfX3RleHQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgcnItZm9udC1jb21wdXRlKDZsKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAuaGVhZGluZ19fdGV4dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGFjY2VudCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5mbGlwcGVkIHtcbiAgICAgIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoMSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgcnItYnJlYWstZGlyZWN0aXZlKG0pIHtcbiAgICAgIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZSh4bCkge1xuICAgICAgLnBhZ2UtaGVhZGVyX190ZXh0X19pbm5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygoMTAwdncgLSAxMjIwcHgpIC8gMik7XG4gICAgICB9XG4gICAgICAmLmZsaXBwZWQge1xuICAgICAgICAucGFnZS1oZWFkZXJfX3RleHRfX2lubmVyIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygoMTAwdncgLSAxMjIwcHgpIC8gMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtb2RpZmllcignbGFuZGluZycpIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIC5wYWdlLWhlYWRlcl9fbWVkaWEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIEBpbmNsdWRlIHRlZXRoLWRlY29yYXRpb24ocmlnaHQpO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgQGluY2x1ZGUgaGVhZGluZy11bmRlcmxpbmU7XG4gICAgfVxuICAgIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICBiYWNrZ3JvdW5kOiBjb2xvcihuZWFyLXdoaXRlKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyX190ZXh0X19kZWNvcmF0aW9uIHtcbiAgICAgIHdpZHRoOiByZW0oMjczcHgpO1xuICAgICAgaGVpZ2h0OiByZW0oNDAwcHgpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKCdjcm9zc2luZy1tYXJrZXIuc3ZnJyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIHRvcDogcmVtKDgwcHgpO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSByci1icmVhay1kaXJlY3RpdmUoeGwpIHtcbiAgICAgIC5wYWdlLWhlYWRlcl9fdGV4dF9faW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtb2RpZmllcignc3RhbmRhcmQnKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGgxIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nLXVuZGVybGluZTtcbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyX190ZXh0X19pbm5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogcnItZ3JpZGJhc2UoNCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcnItZ3JpZGJhc2UoNik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1vZGlmaWVyKCdhcnRpY2xlJykge1xuICAgIC5wYWdlLWhlYWRlcl9fdGV4dCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5uZXdzLW1ldGFfX2RhdGUsXG4gICAgLm5ld3MtbWV0YV9fYXV0aG9yIHtcbiAgICAgID4gKiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKG5lYXItd2hpdGUpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgfVxuICAgIH1cbiAgICAubmV3cy1tZXRhX19kYXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JpZF9fbWFpbiB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgLnBhZ2UtaGVhZGVyX190ZXh0IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJi5wYWdlLWhlYWRlci0taGFzLW1lZGlhIHtcbiAgICAgIEBpbmNsdWRlIHJyLWJyZWFrLWRpcmVjdGl2ZShsKSB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSJdfQ== */
