@charset "UTF-8";
.case-card.case-card_portfolio .case-card__header {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 28.125rem;
  border-radius: var(--radius-primary);
  overflow: hidden; }
  @media screen and (min-width: 1921px) {
    .case-card.case-card_portfolio .case-card__header {
      height: 23.4375vw; } }
  @media screen and (max-width: 1700px) {
    .case-card.case-card_portfolio .case-card__header {
      height: 20.4375rem; } }
  @media screen and (max-width: 1360px) {
    .case-card.case-card_portfolio .case-card__header {
      height: 14.375rem; } }
  @media screen and (max-width: 750px) {
    .case-card.case-card_portfolio .case-card__header {
      height: 12.5rem; } }
  .case-card.case-card_portfolio .case-card__header::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 8.125rem;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.5)));
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%); }
    @media screen and (min-width: 1921px) {
      .case-card.case-card_portfolio .case-card__header::before {
        height: 6.77083vw; } }
    @media screen and (max-width: 1700px) {
      .case-card.case-card_portfolio .case-card__header::before {
        height: 5.875rem; } }
    @media screen and (max-width: 750px) {
      .case-card.case-card_portfolio .case-card__header::before {
        height: 3.625rem; } }

.case-card.case-card_portfolio .case-card__button {
  margin-top: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  @media screen and (max-width: 750px) {
    .case-card.case-card_portfolio .case-card__button {
      width: 100%; } }

.case-card.case-card_portfolio .case-card__content {
  padding: 1.5625rem 1.875rem 1.875rem;
  width: 100%;
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 1.25rem; }
  @media screen and (min-width: 1921px) {
    .case-card.case-card_portfolio .case-card__content {
      padding: 1.30208vw 1.5625vw 1.5625vw;
      gap: 1.04167vw; } }
  @media screen and (max-width: 1360px) {
    .case-card.case-card_portfolio .case-card__content {
      padding: 1.5625rem 1.25rem;
      gap: 0.9375rem; } }
  .case-card.case-card_portfolio .case-card__content .product-details_description {
    height: 4.5rem;
    display: -webkit-box;
    text-overflow: ellipsis;
    line-clamp: 3;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden; }
    @media screen and (min-width: 1921px) {
      .case-card.case-card_portfolio .case-card__content .product-details_description {
        height: 3.75vw; } }
    @media screen and (max-width: 1700px) {
      .case-card.case-card_portfolio .case-card__content .product-details_description {
        height: 4rem; } }
  @media screen and (max-width: 750px) {
    .case-card.case-card_portfolio .case-card__content .product-button {
      width: 100%; } }
  .case-card.case-card_portfolio .case-card__content .product-button .button {
    width: 100%; }

.case-card.case-card_portfolio .case-card__hidden {
  height: 0;
  display: block;
  overflow: hidden;
  -webkit-transition: height var(--animation-default);
  transition: height var(--animation-default); }
  .case-card.case-card_portfolio .case-card__hidden_grid {
    min-height: 5.625rem; }
    @media screen and (min-width: 1921px) {
      .case-card.case-card_portfolio .case-card__hidden_grid {
        min-height: 4.6875vw; } }
    @media screen and (max-width: 1700px) {
      .case-card.case-card_portfolio .case-card__hidden_grid {
        min-height: 5rem; } }
    @media screen and (max-width: 1360px) {
      .case-card.case-card_portfolio .case-card__hidden_grid {
        min-height: 8.75rem; } }

.case-card.case-card_portfolio .case-card__wrapper {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem; }
  @media screen and (min-width: 1921px) {
    .case-card.case-card_portfolio .case-card__wrapper {
      gap: 1.04167vw; } }
  .case-card.case-card_portfolio .case-card__wrapper.js-accordion-active .button__text::before {
    content: "Свернуть"; }
  .case-card.case-card_portfolio .case-card__wrapper.js-accordion-active .button:not(.button_primary):not(.button_secondary) .icon {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .case-card.case-card_portfolio .case-card__wrapper .wrapper-button {
    position: relative;
    z-index: 1;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
    @media (any-hover: hover) {
      .case-card.case-card_portfolio .case-card__wrapper .wrapper-button:hover .icon {
        -webkit-transform: unset;
            -ms-transform: unset;
                transform: unset; } }
    .case-card.case-card_portfolio .case-card__wrapper .wrapper-button .button__text::before {
      content: "Развернуть"; }
    .case-card.case-card_portfolio .case-card__wrapper .wrapper-button.button {
      --button-icon-color: var(--text-dark-disabled);
      --button-icon-color-hover: var(--accent-primary-default);
      --button-text-color: var(--text-dark-disabled);
      --button-text-color-hover: var(--accent-primary-default); }
    .case-card.case-card_portfolio .case-card__wrapper .wrapper-button:not(.button_primary):not(.button_secondary) .icon {
      -webkit-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
              transform: rotate(0deg); }
    .case-card.case-card_portfolio .case-card__wrapper .wrapper-button .button__hidden {
      height: 1rem;
      display: block;
      cursor: none;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
      @media screen and (min-width: 1921px) {
        .case-card.case-card_portfolio .case-card__wrapper .wrapper-button .button__hidden {
          height: 0.83333vw; } }

.case-card.case-card_portfolio .case-card__title {
  width: 100%;
  height: auto;
  display: block;
  color: var(--text-dark-primary);
  font: var(--font-title-M);
  text-decoration: none;
  -webkit-transition: color var(--animation-default);
  transition: color var(--animation-default); }
  @media (any-hover: hover) {
    .case-card.case-card_portfolio .case-card__title[href]:hover {
      color: var(--accent-primary-default); } }
  .case-card.case-card_portfolio .case-card__title[href]::before {
    content: "";
    position: absolute;
    top: -0rem;
    left: -0rem;
    width: calc(100% + 0rem * 2);
    height: calc(100% + 0rem * 2);
    background-color: transparent;
    opacity: 0; }
    @media screen and (min-width: 1921px) {
      .case-card.case-card_portfolio .case-card__title[href]::before {
        top: 0vw;
        left: 0vw;
        width: calc(100% + 0vw * 2);
        height: calc(100% + 0vw * 2); } }

.case-card.case-card_portfolio .case-card__description {
  width: 100%;
  height: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  row-gap: var(--grid-row-gap);
  -webkit-column-gap: var(--grid-column-gap);
     -moz-column-gap: var(--grid-column-gap);
          column-gap: var(--grid-column-gap); }
  @media screen and (max-width: 1360px) {
    .case-card.case-card_portfolio .case-card__description {
      grid-template-columns: 1fr;
      grid-template-rows: 1fr;
      row-gap: 0.9375rem;
      -webkit-column-gap: 0rem;
         -moz-column-gap: 0rem;
              column-gap: 0rem; } }
  .case-card.case-card_portfolio .case-card__description .product-options__button {
    position: relative;
    z-index: 1;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
    @media (any-hover: hover) {
      .case-card.case-card_portfolio .case-card__description .product-options__button:hover .icon {
        -webkit-transform: unset;
            -ms-transform: unset;
                transform: unset; } }
    .case-card.case-card_portfolio .case-card__description .product-options__button.button {
      --button-icon-color: var(--text-dark-disabled);
      --button-icon-color-hover: var(--accent-primary-default);
      --button-text-color: var(--text-dark-disabled);
      --button-text-color-hover: var(--accent-primary-default); }
    .case-card.case-card_portfolio .case-card__description .product-options__button .button__text::before {
      content: "Развернуть"; }
    .case-card.case-card_portfolio .case-card__description .product-options__button:not(.button_primary):not(.button_secondary) .icon {
      -webkit-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
              transform: rotate(0deg); }

.case-card.case-card_portfolio .case-card__option {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.625rem;
  color: var(--text-dark-primary);
  font: var(--font-body-M-r); }
  @media screen and (min-width: 1921px) {
    .case-card.case-card_portfolio .case-card__option {
      gap: 0.52083vw; } }
  .case-card.case-card_portfolio .case-card__option > .icon {
    width: 1.5rem;
    height: 1.5rem;
    fill: var(--accent-secondary-default); }
    @media screen and (min-width: 1921px) {
      .case-card.case-card_portfolio .case-card__option > .icon {
        width: 1.25vw;
        height: 1.25vw; } }
  .case-card.case-card_portfolio .case-card__option__icon {
    width: 1.5rem;
    height: 1.5rem; }
    @media screen and (min-width: 1921px) {
      .case-card.case-card_portfolio .case-card__option__icon {
        width: 1.25vw;
        height: 1.25vw; } }

.case-card.case-card_portfolio .case-card__item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.case-card.case-card_portfolio .case-card__text {
  color: var(--text-dark-primary);
  font: var(--font-body-M-r); }

.case-card {
  position: relative;
  width: 100%;
  max-width: 46.5625rem;
  height: 100%;
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  border: 1px solid var(--stroke-light);
  border-radius: var(--radius-primary);
  overflow: hidden; }
  @media screen and (min-width: 1921px) {
    .case-card {
      max-width: 38.80208vw;
      border-width: 0.05208vw; } }
  @media screen and (max-width: 1700px) {
    .case-card {
      max-width: 34.6875rem; } }
  @media screen and (max-width: 1360px) {
    .case-card {
      max-width: 20.8125rem; } }
  @media screen and (max-width: 750px) {
    .case-card {
      max-width: 18.125rem; } }
  .case-card__tags {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    left: 0.75rem;
    z-index: 1; }
    @media screen and (min-width: 1921px) {
      .case-card__tags {
        top: 0.625vw;
        right: 0.625vw;
        left: 0.625vw; } }
  .case-card__image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    display: none;
    pointer-events: none; }
    .case-card__image_active {
      display: block; }
    .case-card__image img,
    .case-card__image picture {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      -o-object-position: center;
         object-position: center;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
  .case-card__slideshow {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    padding: 0.9375rem;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
            justify-content: stretch;
    gap: 0.625rem; }
    @media screen and (min-width: 1921px) {
      .case-card__slideshow {
        padding: 0.78125vw;
        gap: 0.52083vw; } }
  .case-card__button {
    position: relative;
    width: 100%;
    height: 100%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    @media (any-hover: hover) {
      .case-card__button:hover::after {
        background-color: var(--bg-white); } }
    .case-card__button::before {
      content: "";
      position: absolute;
      top: -0.3125rem;
      left: -0.3125rem;
      width: calc(100% + 0.3125rem * 2);
      height: calc(100% + 0.3125rem * 2);
      background-color: transparent;
      opacity: 0; }
      @media screen and (min-width: 1921px) {
        .case-card__button::before {
          top: -0.26042vw;
          left: -0.26042vw;
          width: calc(100% + 0.26042vw * 2);
          height: calc(100% + 0.26042vw * 2); } }
    .case-card__button::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 0.1875rem;
      background-color: var(--text-light-disabled);
      border-radius: var(--radius-infinity);
      -webkit-transition: background-color var(--animation-default);
      transition: background-color var(--animation-default); }
      @media screen and (min-width: 1921px) {
        .case-card__button::after {
          height: 0.15625vw; } }
    .case-card__button_active::after {
      background-color: var(--bg-white); }

.product-details {
  margin: 0;
  padding: 0;
  width: 100%;
  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.9375rem;
  color: var(--text-dark-secondary);
  font: var(--font-body-M-r); }
  @media screen and (min-width: 1921px) {
    .product-details {
      gap: 0.78125vw; } }
  @media screen and (max-width: 1700px) {
    .product-details {
      gap: 0.625rem; } }
  .product-details__description {
    color: var(--text-dark-secondary);
    font: var(--font-body-M-r); }
  .product-details__rate {
    color: var(--text-dark-primary);
    font: var(--font-body-M-m); }
  .product-details__item {
    padding-bottom: 0.9375rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px dashed var(--stroke-light); }
    @media screen and (min-width: 1921px) {
      .product-details__item {
        padding-bottom: 0.78125vw;
        border-width: 0.05208vw; } }
    @media screen and (max-width: 1700px) {
      .product-details__item {
        padding-bottom: 0.625rem; } }
    .product-details__item:last-child {
      padding-bottom: 0;
      border-bottom: 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvY2FyZHMvY2FzZS1jYXJkL2Nhc2UtY2FyZC1wb3J0Zm9saW8uY3NzIiwiY29tcG9uZW50cy9jYXJkcy9jYXNlLWNhcmQvY2FzZS1jYXJkLXBvcnRmb2xpby5zY3NzIiwibWl4aW5zL19taW5pLnNjc3MiLCJtaXhpbnMvX21lZGlhLnNjc3MiLCJtaXhpbnMvX2Rpc2FibGUtbW9iLWhvdmVyLnNjc3MiLCJtaXhpbnMvX3BzZXVkby1ob3Zlci5zY3NzIiwibWl4aW5zL19zcXVhcmUuc2NzcyIsImNvbXBvbmVudHMvY2FyZHMvY2FzZS1jYXJkL19jYXNlLWNhcmQtZ2VuZXJhbC5zY3NzIiwiY29tcG9uZW50cy9jYXJkcy9wcm9kdWN0LWNhcmQvX3Byb2R1Y3QtZGV0YWlscy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjtFQUdNLGtCQUFrQjtFQUNsQixVQUFVO0VBRVYsV0FBVztFQUNYLGlCQ1J5QjtFRFV6QixvQ0FBb0M7RUFDcEMsZ0JBQWdCLEVBQUE7RUVYcEI7SUZDRjtNQWFRLGlCQ1Y2QixFQUFBLEVEa0RoQztFRTFDSDtJRlhGO01BaUJRLGtCQ2xCdUIsRUFBQSxFRHNEMUI7RUVwQ0g7SUZqQkY7TUFxQlEsaUJDdEJ1QixFQUFBLEVEc0QxQjtFRTlCSDtJRnZCRjtNQXlCUSxlQzFCdUIsRUFBQSxFRHNEMUI7RUFyREw7SUE2QlEsV0FBVztJQUVYLGtCQUFrQjtJQUNsQixTQUFTO0lBQ1QsT0FBTztJQUNQLFVBQVU7SUFFVixXQUFXO0lBQ1gsZ0JDdEN1QjtJRHdDdkIsaUhBQTJGO0lBQTNGLHVGQUEyRixFQUFBO0lFeENqRztNRkNGO1FBMENVLGlCQ3ZDMkIsRUFBQSxFRGlEOUI7SUV6Q0w7TUZYRjtRQThDVSxnQkMvQ3FCLEVBQUEsRURxRHhCO0lFN0JMO01GdkJGO1FBa0RVLGdCQ25EcUIsRUFBQSxFRHFEeEI7O0FBcERQO0VBd0RNLGdCQUFnQjtFQUVoQiwwQkFBa0I7RUFBbEIsdUJBQWtCO0VBQWxCLGtCQUFrQixFQUFBO0VFbkN0QjtJRnZCRjtNQTZEUSxXQUFXLEVBQUEsRUFFZDs7QUEvREw7RUFrRU0sb0NDbkV5QjtFRG9FekIsV0FBVztFQUNYLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsNEJBQXNCO0VBQXRCLDZCQUFzQjtNQUF0QiwwQkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLHVCQUEyQjtNQUEzQixvQkFBMkI7VUFBM0IsMkJBQTJCO0VBQzNCLFlDekV5QixFQUFBO0VDQTdCO0lGQ0Y7TUEyRVEsb0NDeEU2QjtNRHlFN0IsY0N6RTZCLEVBQUEsRURnSGhDO0VFbEdIO0lGakJGO01BZ0ZRLDBCQ2pGdUI7TURrRnZCLGNDbEZ1QixFQUFBLEVEb0gxQjtFQW5ITDtJQXNGVSxjQ3ZGcUI7SUR3RnJCLG9CQUFvQjtJQUVwQix1QkFBdUI7SUFDZixhQUFhO0lBQ3JCLHFCQUFxQjtJQUNyQiw0QkFBNEI7SUFFNUIsZ0JBQWdCLEVBQUE7SUUvRnhCO01GQ0Y7UUFpR1ksY0M5RnlCLEVBQUEsRURvRzVCO0lFNUZQO01GWEY7UUFxR1ksWUN0R21CLEVBQUEsRUR3R3RCO0VFaEZQO0lGdkJGO01BNEdVLFdBQVcsRUFBQSxFQU1kO0VBbEhQO0lBZ0hVLFdBQVcsRUFBQTs7QUFoSHJCO0VBc0hNLFNBQVM7RUFDVCxjQUFjO0VBRWQsZ0JBQWdCO0VBRWhCLG1EQUEyQztFQUEzQywyQ0FBMkMsRUFBQTtFQTNIakQ7SUE4SFEsb0JDL0h1QixFQUFBO0lDQTdCO01GQ0Y7UUFpSVUsb0JDOUgyQixFQUFBLEVEd0k5QjtJRWhJTDtNRlhGO1FBcUlVLGdCQ3RJcUIsRUFBQSxFRDRJeEI7SUUxSEw7TUZqQkY7UUF5SVUsbUJDMUlxQixFQUFBLEVENEl4Qjs7QUEzSVA7RUErSU0sV0FBVztFQUNYLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsNEJBQXNCO0VBQXRCLDZCQUFzQjtNQUF0QiwwQkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLFlDbkp5QixFQUFBO0VDQTdCO0lGQ0Y7TUFxSlEsY0NsSjZCLEVBQUEsRURrTmhDO0VBck5MO0lBNEpjLG1CQUFtQixFQUFBO0VBNUpqQztJQWtLYyxpQ0FBeUI7UUFBekIsNkJBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBbEt2QztJQXlLUSxrQkFBa0I7SUFDbEIsVUFBVTtJQUVWLDBCQUFrQjtJQUFsQix1QkFBa0I7SUFBbEIsa0JBQWtCLEVBQUE7SUc3S3hCO01IQ0Y7UUFnTFksd0JBQWdCO1lBQWhCLG9CQUFnQjtnQkFBaEIsZ0JBQWdCLEVBQUEsRUFDakI7SUFqTFg7TUF1TGMscUJBQXFCLEVBQUE7SUF2TG5DO01BNkxVLDhDQUFvQjtNQUNwQix3REFBMEI7TUFDMUIsOENBQW9CO01BQ3BCLHdEQUEwQixFQUFBO0lBaE1wQztNQXFNWSwrQkFBdUI7VUFBdkIsMkJBQXVCO2NBQXZCLHVCQUF1QixFQUFBO0lBck1uQztNQTBNVSxZQzNNcUI7TUQ0TXJCLGNBQWM7TUFFZCxZQUFZO01BQ1oseUJBQWlCO1NBQWpCLHNCQUFpQjtVQUFqQixxQkFBaUI7Y0FBakIsaUJBQWlCLEVBQUE7TUUvTXpCO1FGQ0Y7VUFpTlksaUJDOU15QixFQUFBLEVEZ041Qjs7QUFuTlQ7RUF3Tk0sV0FBVztFQUNYLFlBQVk7RUFDWixjQUFjO0VBRWQsK0JBQStCO0VBQy9CLHlCQUF5QjtFQUN6QixxQkFBcUI7RUFFckIsa0RBQTBDO0VBQTFDLDBDQUEwQyxFQUFBO0VHak85QztJSENGO01Bb09TLG9DQUFvQyxFQUFBLEVHbE94QztFSEZMO0lJREUsV0FBVztJQUVYLGtCQUFrQjtJQUNsQixVQUFxQjtJQUNyQixXQUFzQjtJQUV0Qiw0QkFBc0M7SUFDdEMsNkJBQXVDO0lBRXZDLDZCQUE2QjtJQUM3QixVQUFVLEVBQUE7SUZWVjtNRkNGO1FJWUksUUFBSztRQUNMLFNBQU07UUFFTiwyQkFBc0M7UUFDdEMsNEJBQXVDLEVBQUEsRUp5TmxDOztBQXpPVDtFQThPTSxXQUFXO0VBQ1gsWUFBWTtFQUNaLGFBQWE7RUFDYiw4QkFBOEI7RUFDOUIsMkJBQTJCO0VBQzNCLDRCQUE0QjtFQUM1QiwwQ0FBa0M7S0FBbEMsdUNBQWtDO1VBQWxDLGtDQUFrQyxFQUFBO0VFbk90QztJRmpCRjtNQXVQUSwwQkFBMEI7TUFDMUIsdUJBQXVCO01BQ3ZCLGtCQzFQdUI7TUQyUHZCLHdCQzNQdUI7U0QyUHZCLHFCQzNQdUI7Y0QyUHZCLGdCQzNQdUIsRUFBQSxFRGlTMUI7RUFoU0w7SUErUFUsa0JBQWtCO0lBQ2xCLFVBQVU7SUFFViwwQkFBa0I7SUFBbEIsdUJBQWtCO0lBQWxCLGtCQUFrQixFQUFBO0lHblExQjtNSENGO1FBc1FjLHdCQUFnQjtZQUFoQixvQkFBZ0I7Z0JBQWhCLGdCQUFnQixFQUFBLEVBQ2pCO0lBdlFiO01BMlFZLDhDQUFvQjtNQUNwQix3REFBMEI7TUFDMUIsOENBQW9CO01BQ3BCLHdEQUEwQixFQUFBO0lBOVF0QztNQW9SZ0IscUJBQXFCLEVBQUE7SUFwUnJDO01BMlJjLCtCQUF1QjtVQUF2QiwyQkFBdUI7Y0FBdkIsdUJBQXVCLEVBQUE7O0FBM1JyQztFQW1TTSxrQkFBa0I7RUFFbEIsV0FBVztFQUNYLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsOEJBQW1CO0VBQW5CLDZCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLDRCQUFtQjtNQUFuQixtQkFBbUI7RUFDbkIsdUJBQTJCO01BQTNCLG9CQUEyQjtVQUEzQiwyQkFBMkI7RUFDM0IsYUM1U3lCO0VEOFN6QiwrQkFBK0I7RUFDL0IsMEJBQTBCLEVBQUE7RUUvUzlCO0lGQ0Y7TUFpVFEsY0M5UzZCLEVBQUEsRUQwVGhDO0VBN1RMO0lLREUsYUFBTztJQUNQLGNBQVE7SUx1VEYscUNBQXFDLEVBQUE7SUV4VDNDO01GQ0Y7UUtJTSxhQUFPO1FBQ1AsY0FBUSxFQUFBLEVMbVRQO0VBeFRQO0lLREUsYUFBTztJQUNQLGNBQVEsRUFBQTtJSERSO01GQ0Y7UUtJTSxhQUFPO1FBQ1AsY0FBUSxFQUFBLEVMdVRQOztBQTVUUDtFQWdVTSxXQUFXO0VBQ1gsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYiw4QkFBbUI7RUFBbkIsNkJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUI7RUFDdkIseUJBQThCO01BQTlCLHNCQUE4QjtVQUE5Qiw4QkFBOEIsRUFBQTs7QUFwVXBDO0VBd1VNLCtCQUErQjtFQUMvQiwwQkFBMEIsRUFBQTs7QU16VWhDO0VBQ0Usa0JBQWtCO0VBRWxCLFdBQVc7RUFDWCxxQkxMNkI7RUtNN0IsWUFBWTtFQUNaLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsNEJBQXNCO0VBQXRCLDZCQUFzQjtNQUF0QiwwQkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBRXZCLHFDQUFxQztFQUNyQyxvQ0FBb0M7RUFDcEMsZ0JBQWdCLEVBQUE7RUpiaEI7SUlDRjtNQWVJLHFCTFppQztNS2NqQyx1QkxkaUMsRUFBQSxFS3FJcEM7RUo3SEM7SUlYRjtNQXFCSSxxQkx0QjJCLEVBQUEsRUt5STlCO0VKdkhDO0lJakJGO01BeUJJLHFCTDFCMkIsRUFBQSxFS3lJOUI7RUpqSEM7SUl2QkY7TUE2Qkksb0JMOUIyQixFQUFBLEVLeUk5QjtFQXhHQztJQUNFLGtCQUFrQjtJQUNsQixZTG5DMkI7SUtvQzNCLGNMcEMyQjtJS3FDM0IsYUxyQzJCO0lLc0MzQixVQUFVLEVBQUE7SUp0Q1o7TUlpQ0E7UUFRSSxZTHJDK0I7UUtzQy9CLGNMdEMrQjtRS3VDL0IsYUx2QytCLEVBQUEsRUt5Q2xDO0VBRUQ7SUFDRSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxVQUFVO0lBRVYsV0FBVztJQUNYLFlBQVk7SUFDWixhQUFhO0lBRWIsb0JBQW9CLEVBQUE7SUFFcEI7TUFDRSxjQUFjLEVBQUE7SUFiakI7O01Ba0JHLFdBQVc7TUFDWCxZQUFZO01BQ1osb0JBQWlCO1NBQWpCLGlCQUFpQjtNQUNqQiwwQkFBdUI7U0FBdkIsdUJBQXVCO01BRXZCLHlCQUFpQjtTQUFqQixzQkFBaUI7VUFBakIscUJBQWlCO2NBQWpCLGlCQUFpQixFQUFBO0VBSXJCO0lBQ0Usa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixPQUFPO0lBQ1AsVUFBVTtJQUVWLGtCTGhGMkI7SUtpRjNCLFdBQVc7SUFDWCxZQUFZO0lBQ1osb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYiwwQkFBb0I7UUFBcEIsdUJBQW9CO1lBQXBCLG9CQUFvQjtJQUNwQix5QkFBd0I7UUFBeEIsc0JBQXdCO1lBQXhCLHdCQUF3QjtJQUN4QixhTHRGMkIsRUFBQTtJQ0E3QjtNSTBFQTtRQWVJLGtCTHJGK0I7UUtzRi9CLGNMdEYrQixFQUFBLEVLd0ZsQztFQUVEO0lBQ0Usa0JBQWtCO0lBRWxCLFdBQVc7SUFDWCxZQUFZO0lBQ1osbUJBQVk7UUFBWixvQkFBWTtZQUFaLFlBQVksRUFBQTtJSG5HZDtNRzhGQztRQVNLLGlDQUFpQyxFQUFBLEVBQ2xDO0lBVko7TUY5RkQsV0FBVztNQUVYLGtCQUFrQjtNQUNsQixlQUFxQjtNQUNyQixnQkFBc0I7TUFFdEIsaUNBQXNDO01BQ3RDLGtDQUF1QztNQUV2Qyw2QkFBNkI7TUFDN0IsVUFBVSxFQUFBO01GVlY7UUk4RkM7VUZqRkMsZUFBSztVQUNMLGdCQUFNO1VBRU4saUNBQXNDO1VBQ3RDLGtDQUF1QyxFQUFBLEVFNEZ0QztJQWZGO01Ba0JHLFdBQVc7TUFFWCxrQkFBa0I7TUFDbEIsU0FBUztNQUNULE9BQU87TUFFUCxXQUFXO01BQ1gsaUJMdkh5QjtNS3lIekIsNENBQTRDO01BQzVDLHFDQUFxQztNQUVyQyw2REFBcUQ7TUFBckQscURBQXFELEVBQUE7TUo1SHpEO1FJOEZDO1VBaUNLLGlCTDNINkIsRUFBQSxFSzZIaEM7SUFFQTtNQUVHLGlDQUFpQyxFQUFBOztBQ3RJekM7RUFDRSxTQUFTO0VBRVQsVUFBVTtFQUNWLFdBQVc7RUFDWCxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLDRCQUFzQjtFQUF0Qiw2QkFBc0I7TUFBdEIsMEJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0QixjTk42QjtFTVE3QixpQ0FBaUM7RUFDakMsMEJBQTBCLEVBQUE7RUxUMUI7SUtERjtNQWFJLGNOUmlDLEVBQUEsRU0rQ3BDO0VMdkNDO0lLYkY7TUFpQkksYU5oQjJCLEVBQUEsRU1tRDlCO0VBaENDO0lBQ0UsaUNBQWlDO0lBQ2pDLDBCQUEwQixFQUFBO0VBRzVCO0lBQ0UsK0JBQStCO0lBQy9CLDBCQUEwQixFQUFBO0VBRzVCO0lBQ0UseUJOOUIyQjtJTStCM0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBOEI7UUFBOUIsc0JBQThCO1lBQTlCLDhCQUE4QjtJQUU5Qiw2Q0FBNkMsRUFBQTtJTGxDL0M7TUs2QkE7UUFRSSx5Qk5qQytCO1FNbUMvQix1Qk5uQytCLEVBQUEsRU04Q2xDO0lMdENEO01LaUJBO1FBY0ksd0JOM0N5QixFQUFBLEVNa0Q1QjtJQXJCQTtNQWlCRyxpQkFBaUI7TUFFakIsZ0JBQWdCLEVBQUEiLCJmaWxlIjoiY29tcG9uZW50cy9jYXJkcy9jYXNlLWNhcmQvY2FzZS1jYXJkLXBvcnRmb2xpby5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4uY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyOC4xMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1wcmltYXJ5KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGVhZGVyIHtcbiAgICAgIGhlaWdodDogMjMuNDM3NXZ3OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTcwMHB4KSB7XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2hlYWRlciB7XG4gICAgICBoZWlnaHQ6IDIwLjQzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzYwcHgpIHtcbiAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGVhZGVyIHtcbiAgICAgIGhlaWdodDogMTQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGVhZGVyIHtcbiAgICAgIGhlaWdodDogMTIuNXJlbTsgfSB9XG4gIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19oZWFkZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDguMTI1cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC41KSAxMDAlKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2hlYWRlcjo6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiA2Ljc3MDgzdnc7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE3MDBweCkge1xuICAgICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2hlYWRlcjo6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiA1Ljg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19oZWFkZXI6OmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMy42MjVyZW07IH0gfVxuXG4uY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgd2lkdGg6IGZpdC1jb250ZW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2J1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19jb250ZW50IHtcbiAgcGFkZGluZzogMS41NjI1cmVtIDEuODc1cmVtIDEuODc1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZ2FwOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDEuMzAyMDh2dyAxLjU2MjV2dyAxLjU2MjV2dztcbiAgICAgIGdhcDogMS4wNDE2N3Z3OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM2MHB4KSB7XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogMS41NjI1cmVtIDEuMjVyZW07XG4gICAgICBnYXA6IDAuOTM3NXJlbTsgfSB9XG4gIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19jb250ZW50IC5wcm9kdWN0LWRldGFpbHNfZGVzY3JpcHRpb24ge1xuICAgIGhlaWdodDogNC41cmVtO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2NvbnRlbnQgLnByb2R1Y3QtZGV0YWlsc19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGhlaWdodDogMy43NXZ3OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNzAwcHgpIHtcbiAgICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19jb250ZW50IC5wcm9kdWN0LWRldGFpbHNfZGVzY3JpcHRpb24ge1xuICAgICAgICBoZWlnaHQ6IDRyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19jb250ZW50IC5wcm9kdWN0LWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19jb250ZW50IC5wcm9kdWN0LWJ1dHRvbiAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGlkZGVuIHtcbiAgaGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KTsgfVxuICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGlkZGVuX2dyaWQge1xuICAgIG1pbi1oZWlnaHQ6IDUuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGlkZGVuX2dyaWQge1xuICAgICAgICBtaW4taGVpZ2h0OiA0LjY4NzV2dzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTcwMHB4KSB7XG4gICAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faGlkZGVuX2dyaWQge1xuICAgICAgICBtaW4taGVpZ2h0OiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzYwcHgpIHtcbiAgICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19oaWRkZW5fZ3JpZCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDguNzVyZW07IH0gfVxuXG4uY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEuMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX3dyYXBwZXIge1xuICAgICAgZ2FwOiAxLjA0MTY3dnc7IH0gfVxuICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fd3JhcHBlci5qcy1hY2NvcmRpb24tYWN0aXZlIC5idXR0b25fX3RleHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLQodCy0LXRgNC90YPRgtGMXCI7IH1cbiAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX3dyYXBwZXIuanMtYWNjb3JkaW9uLWFjdGl2ZSAuYnV0dG9uOm5vdCguYnV0dG9uX3ByaW1hcnkpOm5vdCguYnV0dG9uX3NlY29uZGFyeSkgLmljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX3dyYXBwZXIgLndyYXBwZXItYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7IH1cbiAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX193cmFwcGVyIC53cmFwcGVyLWJ1dHRvbjpob3ZlciAuaWNvbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7IH0gfVxuICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX193cmFwcGVyIC53cmFwcGVyLWJ1dHRvbiAuYnV0dG9uX190ZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLQoNCw0LfQstC10YDQvdGD0YLRjFwiOyB9XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX3dyYXBwZXIgLndyYXBwZXItYnV0dG9uLmJ1dHRvbiB7XG4gICAgICAtLWJ1dHRvbi1pY29uLWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstZGlzYWJsZWQpO1xuICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAtLWJ1dHRvbi10ZXh0LWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstZGlzYWJsZWQpO1xuICAgICAgLS1idXR0b24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7IH1cbiAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fd3JhcHBlciAud3JhcHBlci1idXR0b246bm90KC5idXR0b25fcHJpbWFyeSk6bm90KC5idXR0b25fc2Vjb25kYXJ5KSAuaWNvbiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX193cmFwcGVyIC53cmFwcGVyLWJ1dHRvbiAuYnV0dG9uX19oaWRkZW4ge1xuICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjdXJzb3I6IG5vbmU7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX193cmFwcGVyIC53cmFwcGVyLWJ1dHRvbiAuYnV0dG9uX19oaWRkZW4ge1xuICAgICAgICAgIGhlaWdodDogMC44MzMzM3Z3OyB9IH1cblxuLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX3RpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gIGZvbnQ6IHZhcigtLWZvbnQtdGl0bGUtTSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpOyB9XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX190aXRsZVtocmVmXTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7IH0gfVxuICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fdGl0bGVbaHJlZl06OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMHJlbTtcbiAgICBsZWZ0OiAtMHJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMHJlbSAqIDIpO1xuICAgIGhlaWdodDogY2FsYygxMDAlICsgMHJlbSAqIDIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX190aXRsZVtocmVmXTo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwdnc7XG4gICAgICAgIGxlZnQ6IDB2dztcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDB2dyAqIDIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDB2dyAqIDIpOyB9IH1cblxuLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG4gIHJvdy1nYXA6IHZhcigtLWdyaWQtcm93LWdhcCk7XG4gIGNvbHVtbi1nYXA6IHZhcigtLWdyaWQtY29sdW1uLWdhcCk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM2MHB4KSB7XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gICAgICByb3ctZ2FwOiAwLjkzNzVyZW07XG4gICAgICBjb2x1bW4tZ2FwOiAwcmVtOyB9IH1cbiAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2Rlc2NyaXB0aW9uIC5wcm9kdWN0LW9wdGlvbnNfX2J1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50OyB9XG4gICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fZGVzY3JpcHRpb24gLnByb2R1Y3Qtb3B0aW9uc19fYnV0dG9uOmhvdmVyIC5pY29uIHtcbiAgICAgICAgdHJhbnNmb3JtOiB1bnNldDsgfSB9XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2Rlc2NyaXB0aW9uIC5wcm9kdWN0LW9wdGlvbnNfX2J1dHRvbi5idXR0b24ge1xuICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tdGV4dC1kYXJrLWRpc2FibGVkKTtcbiAgICAgIC0tYnV0dG9uLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgICAgLS1idXR0b24tdGV4dC1jb2xvcjogdmFyKC0tdGV4dC1kYXJrLWRpc2FibGVkKTtcbiAgICAgIC0tYnV0dG9uLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpOyB9XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2Rlc2NyaXB0aW9uIC5wcm9kdWN0LW9wdGlvbnNfX2J1dHRvbiAuYnV0dG9uX190ZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLQoNCw0LfQstC10YDQvdGD0YLRjFwiOyB9XG4gICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX2Rlc2NyaXB0aW9uIC5wcm9kdWN0LW9wdGlvbnNfX2J1dHRvbjpub3QoLmJ1dHRvbl9wcmltYXJ5KTpub3QoLmJ1dHRvbl9zZWNvbmRhcnkpIC5pY29uIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG5cbi5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19vcHRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMC42MjVyZW07XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1NLXIpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgIC5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX19vcHRpb24ge1xuICAgICAgZ2FwOiAwLjUyMDgzdnc7IH0gfVxuICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fb3B0aW9uID4gLmljb24ge1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgZmlsbDogdmFyKC0tYWNjZW50LXNlY29uZGFyeS1kZWZhdWx0KTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgLmNhc2UtY2FyZC5jYXNlLWNhcmRfcG9ydGZvbGlvIC5jYXNlLWNhcmRfX29wdGlvbiA+IC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDEuMjV2dztcbiAgICAgICAgaGVpZ2h0OiAxLjI1dnc7IH0gfVxuICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fb3B0aW9uX19pY29uIHtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAuY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9fb3B0aW9uX19pY29uIHtcbiAgICAgICAgd2lkdGg6IDEuMjV2dztcbiAgICAgICAgaGVpZ2h0OiAxLjI1dnc7IH0gfVxuXG4uY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8gLmNhc2UtY2FyZF9faXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5jYXNlLWNhcmQuY2FzZS1jYXJkX3BvcnRmb2xpbyAuY2FzZS1jYXJkX190ZXh0IHtcbiAgY29sb3I6IHZhcigtLXRleHQtZGFyay1wcmltYXJ5KTtcbiAgZm9udDogdmFyKC0tZm9udC1ib2R5LU0tcik7IH1cblxuLmNhc2UtY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDYuNTYyNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3Ryb2tlLWxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXByaW1hcnkpO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgIC5jYXNlLWNhcmQge1xuICAgICAgbWF4LXdpZHRoOiAzOC44MDIwOHZ3O1xuICAgICAgYm9yZGVyLXdpZHRoOiAwLjA1MjA4dnc7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNzAwcHgpIHtcbiAgICAuY2FzZS1jYXJkIHtcbiAgICAgIG1heC13aWR0aDogMzQuNjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNjBweCkge1xuICAgIC5jYXNlLWNhcmQge1xuICAgICAgbWF4LXdpZHRoOiAyMC44MTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAuY2FzZS1jYXJkIHtcbiAgICAgIG1heC13aWR0aDogMTguMTI1cmVtOyB9IH1cbiAgLmNhc2UtY2FyZF9fdGFncyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC43NXJlbTtcbiAgICByaWdodDogMC43NXJlbTtcbiAgICBsZWZ0OiAwLjc1cmVtO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgICAgIC5jYXNlLWNhcmRfX3RhZ3Mge1xuICAgICAgICB0b3A6IDAuNjI1dnc7XG4gICAgICAgIHJpZ2h0OiAwLjYyNXZ3O1xuICAgICAgICBsZWZ0OiAwLjYyNXZ3OyB9IH1cbiAgLmNhc2UtY2FyZF9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLmNhc2UtY2FyZF9faW1hZ2VfYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmNhc2UtY2FyZF9faW1hZ2UgaW1nLFxuICAgIC5jYXNlLWNhcmRfX2ltYWdlIHBpY3R1cmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLmNhc2UtY2FyZF9fc2xpZGVzaG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICAgIGdhcDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgICAgIC5jYXNlLWNhcmRfX3NsaWRlc2hvdyB7XG4gICAgICAgIHBhZGRpbmc6IDAuNzgxMjV2dztcbiAgICAgICAgZ2FwOiAwLjUyMDgzdnc7IH0gfVxuICAuY2FzZS1jYXJkX19idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxleC1ncm93OiAxOyB9XG4gICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAuY2FzZS1jYXJkX19idXR0b246aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpOyB9IH1cbiAgICAuY2FzZS1jYXJkX19idXR0b246OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMC4zMTI1cmVtO1xuICAgICAgbGVmdDogLTAuMzEyNXJlbTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAwLjMxMjVyZW0gKiAyKTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlICsgMC4zMTI1cmVtICogMik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgICAuY2FzZS1jYXJkX19idXR0b246OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAtMC4yNjA0MnZ3O1xuICAgICAgICAgIGxlZnQ6IC0wLjI2MDQydnc7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDAuMjYwNDJ2dyAqIDIpO1xuICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgMC4yNjA0MnZ3ICogMik7IH0gfVxuICAgIC5jYXNlLWNhcmRfX2J1dHRvbjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMC4xODc1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1saWdodC1kaXNhYmxlZCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtaW5maW5pdHkpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgICAuY2FzZS1jYXJkX19idXR0b246OmFmdGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDAuMTU2MjV2dzsgfSB9XG4gICAgLmNhc2UtY2FyZF9fYnV0dG9uX2FjdGl2ZTo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpOyB9XG5cbi5wcm9kdWN0LWRldGFpbHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuOTM3NXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtZGFyay1zZWNvbmRhcnkpO1xuICBmb250OiB2YXIoLS1mb250LWJvZHktTS1yKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgIGdhcDogMC43ODEyNXZ3OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTcwMHB4KSB7XG4gICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBnYXA6IDAuNjI1cmVtOyB9IH1cbiAgLnByb2R1Y3QtZGV0YWlsc19fZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstc2Vjb25kYXJ5KTtcbiAgICBmb250OiB2YXIoLS1mb250LWJvZHktTS1yKTsgfVxuICAucHJvZHVjdC1kZXRhaWxzX19yYXRlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1NLW0pOyB9XG4gIC5wcm9kdWN0LWRldGFpbHNfX2l0ZW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCB2YXIoLS1zdHJva2UtbGlnaHQpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAucHJvZHVjdC1kZXRhaWxzX19pdGVtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzgxMjV2dztcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwLjA1MjA4dnc7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE3MDBweCkge1xuICAgICAgLnByb2R1Y3QtZGV0YWlsc19faXRlbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfSB9XG4gICAgLnByb2R1Y3QtZGV0YWlsc19faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuIiwiQGltcG9ydCBcIi4uLy4uLy4uL21peGluc1wiO1xuXG4uY2FzZS1jYXJkLmNhc2UtY2FyZF9wb3J0Zm9saW8ge1xuICAuY2FzZS1jYXJkIHtcbiAgICAmX19oZWFkZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IHJlbSg0NTApO1xuXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcHJpbWFyeSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICBoZWlnaHQ6IGJpZyg0NTApO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgICAgIGhlaWdodDogcmVtKDMyNyk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgaGVpZ2h0OiByZW0oMjMwKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgICBoZWlnaHQ6IHJlbSgyMDApO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSgxMzApO1xuXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC4wMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC41MCkgMTAwJSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgICAgICBoZWlnaHQ6IGJpZygxMzApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWFMYXB0b3Age1xuICAgICAgICAgIGhlaWdodDogcmVtKDk0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbSg1OCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcblxuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogcmVtKDI1KSByZW0oMzApIHJlbSgzMCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBnYXA6IHJlbSgyMCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICAgIHBhZGRpbmc6IGJpZygyNSkgYmlnKDMwKSBiaWcoMzApO1xuICAgICAgICBnYXA6IGJpZygyMCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgcGFkZGluZzogcmVtKDI1KSByZW0oMjApO1xuICAgICAgICBnYXA6IHJlbSgxNSk7XG4gICAgICB9XG5cbiAgICAgICYgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICZfZGVzY3JpcHRpb24ge1xuICAgICAgICAgIGhlaWdodDogcmVtKDcyKTtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcblxuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgbGluZS1jbGFtcDogMztcbiAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcblxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICAgICAgaGVpZ2h0OiBiaWcoNzIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDY0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiAucHJvZHVjdC1idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmIC5idXR0b24ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9faGlkZGVuIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuXG4gICAgICAmX2dyaWQge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0oOTApO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICAgICAgbWluLWhlaWdodDogYmlnKDkwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiByZW0oODApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgxNDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiByZW0oMjApO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICBnYXA6IGJpZygyMCk7XG4gICAgICB9XG5cbiAgICAgICYuanMtYWNjb3JkaW9uLWFjdGl2ZSB7XG4gICAgICAgICYgLmJ1dHRvbiB7XG4gICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcItCh0LLQtdGA0L3Rg9GC0YxcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm5vdCguYnV0dG9uX3ByaW1hcnkpOm5vdCguYnV0dG9uX3NlY29uZGFyeSkge1xuICAgICAgICAgICAgJiAuaWNvbiB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgLndyYXBwZXItYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcblxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgJiAuaWNvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgLmJ1dHRvbiB7XG4gICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcItCg0LDQt9Cy0LXRgNC90YPRgtGMXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tdGV4dC1kYXJrLWRpc2FibGVkKTtcbiAgICAgICAgICAtLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICAgICAgICAtLWJ1dHRvbi10ZXh0LWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstZGlzYWJsZWQpO1xuICAgICAgICAgIC0tYnV0dG9uLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWRlZmF1bHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLmJ1dHRvbl9wcmltYXJ5KTpub3QoLmJ1dHRvbl9zZWNvbmRhcnkpIHtcbiAgICAgICAgICAmIC5pY29uIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgLmJ1dHRvbl9faGlkZGVuIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbSgxNik7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICBjdXJzb3I6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgICAgICAgaGVpZ2h0OiBiaWcoMTYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gICAgICBmb250OiB2YXIoLS1mb250LXRpdGxlLU0pO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1hbmltYXRpb24tZGVmYXVsdCk7XG5cbiAgICAgICZbaHJlZl0ge1xuICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1kZWZhdWx0KTtcbiAgICAgICAgfVxuICBcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG8oMCk7XG4gICAgICAgIH0gXG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xuICAgICAgcm93LWdhcDogdmFyKC0tZ3JpZC1yb3ctZ2FwKTtcbiAgICAgIGNvbHVtbi1nYXA6IHZhcigtLWdyaWQtY29sdW1uLWdhcCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhVGFibGV0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgICAgICByb3ctZ2FwOiByZW0oMTUpO1xuICAgICAgICBjb2x1bW4tZ2FwOiByZW0oMCk7XG4gICAgICB9XG5cbiAgICAgICYgLnByb2R1Y3Qtb3B0aW9ucyB7XG4gICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICAmIC5pY29uIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgICAtLWJ1dHRvbi1pY29uLWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstZGlzYWJsZWQpO1xuICAgICAgICAgICAgLS1idXR0b24taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAgICAgICAtLWJ1dHRvbi10ZXh0LWNvbG9yOiB2YXIoLS10ZXh0LWRhcmstZGlzYWJsZWQpO1xuICAgICAgICAgICAgLS1idXR0b24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJiAuYnV0dG9uIHtcbiAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi0KDQsNC30LLQtdGA0L3Rg9GC0YxcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bm90KC5idXR0b25fcHJpbWFyeSk6bm90KC5idXR0b25fc2Vjb25kYXJ5KSB7XG4gICAgICAgICAgICAmIC5pY29uIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fb3B0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgZ2FwOiByZW0oMTApO1xuXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrLXByaW1hcnkpO1xuICAgICAgZm9udDogdmFyKC0tZm9udC1ib2R5LU0tcik7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICAgIGdhcDogYmlnKDEwKTtcbiAgICAgIH1cblxuICAgICAgJiA+IC5pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDI0LCB0cnVlKTtcblxuICAgICAgICBmaWxsOiB2YXIoLS1hY2NlbnQtc2Vjb25kYXJ5LWRlZmF1bHQpO1xuICAgICAgfVxuXG4gICAgICAmX19pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDI0LCB0cnVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSk7XG4gICAgICBmb250OiB2YXIoLS1mb250LWJvZHktTS1yKTtcbiAgICB9XG4gIH1cbn1cblxuQGltcG9ydFxuXCJjYXNlLWNhcmQtZ2VuZXJhbFwiLFxuXCIuLi9wcm9kdWN0LWNhcmQvcHJvZHVjdC1kZXRhaWxzXCI7XG4iLCJAZnVuY3Rpb24gcmVtKCRwaXhlbHMpIHtcbiAgQHJldHVybiAjeyRwaXhlbHMgLyAxNn1yZW07XG59XG5cbkBmdW5jdGlvbiBiaWcoJHBpeGVscykge1xuICBAcmV0dXJuICN7JHBpeGVscyAvIDE5MjAgKiAxMDB9dnc7XG59XG4iLCJAbWl4aW4gbWVkaWFCaWdEZXNrdG9wIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gQG1peGluIG1lZGlhRGVza3RvcCB7XG4vLyAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7cmVtKDIyMDEpfSkge1xuLy8gICAgIEBjb250ZW50O1xuLy8gICB9XG4vLyB9XG5cbkBtaXhpbiBtZWRpYUxhcHRvcCB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE3MDBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYVRhYmxldCB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNjBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYU1vYmlsZSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhKCR3aWR0aCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQG1peGluIGhvdmVyIHtcbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzIHtcbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIFxuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gcHNldWRvKCRwaXhlbCkge1xuICBjb250ZW50OiBcIlwiO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtI3tyZW0oJHBpeGVsKX07XG4gIGxlZnQ6IC0je3JlbSgkcGl4ZWwpfTtcblxuICB3aWR0aDogY2FsYygxMDAlICsgI3tyZW0oJHBpeGVsKX0gKiAyKTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAje3JlbSgkcGl4ZWwpfSAqIDIpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgdG9wOiAje2JpZygtJHBpeGVsKX07XG4gICAgbGVmdDogI3tiaWcoLSRwaXhlbCl9O1xuXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7YmlnKCRwaXhlbCl9ICogMik7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAje2JpZygkcGl4ZWwpfSAqIDIpO1xuICB9XG5cbiAgQGNvbnRlbnQ7XG59XG4iLCJAbWl4aW4gc3F1YXJlKCRwaXhlbHMsICRtZWRpYUJpZ0Rlc2t0b3A6IGZhbHNlKSB7XG4gIHdpZHRoOiAje3JlbSgkcGl4ZWxzKX07XG4gIGhlaWdodDogI3tyZW0oJHBpeGVscyl9O1xuXG4gIEBpZiAkbWVkaWFCaWdEZXNrdG9wIHtcbiAgICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgICAgd2lkdGg6ICN7YmlnKCRwaXhlbHMpfTtcbiAgICAgIGhlaWdodDogI3tiaWcoJHBpeGVscyl9O1xuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uLy4uLy4uL21peGluc1wiO1xuXG4uY2FzZS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHJlbSg3NDUpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN0cm9rZS1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1wcmltYXJ5KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgIG1heC13aWR0aDogYmlnKDc0NSk7XG5cbiAgICBib3JkZXItd2lkdGg6IGJpZygxKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICBtYXgtd2lkdGg6IHJlbSg1NTUpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFUYWJsZXQge1xuICAgIG1heC13aWR0aDogcmVtKDMzMyk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgbWF4LXdpZHRoOiByZW0oMjkwKTtcbiAgfVxuXG4gICZfX3RhZ3Mge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSgxMik7XG4gICAgcmlnaHQ6IHJlbSgxMik7XG4gICAgbGVmdDogcmVtKDEyKTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIHRvcDogYmlnKDEyKTtcbiAgICAgIHJpZ2h0OiBiaWcoMTIpO1xuICAgICAgbGVmdDogYmlnKDEyKTtcbiAgICB9XG4gIH1cblxuICAmX19pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJl9hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJiBpbWcsXG4gICAgJiBwaWN0dXJlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcblxuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fc2xpZGVzaG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcblxuICAgIHBhZGRpbmc6IHJlbSgxNSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICAgIGdhcDogcmVtKDEwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiBiaWcoMTUpO1xuICAgICAgZ2FwOiBiaWcoMTApO1xuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBwc2V1ZG8oNSk7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IHJlbSgzKTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1saWdodC1kaXNhYmxlZCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtaW5maW5pdHkpO1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWFuaW1hdGlvbi1kZWZhdWx0KTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgICAgaGVpZ2h0OiBiaWcoMyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9hY3RpdmUge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucHJvZHVjdC1kZXRhaWxzIHtcbiAgbWFyZ2luOiAwO1xuXG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHJlbSgxNSk7XG5cbiAgY29sb3I6IHZhcigtLXRleHQtZGFyay1zZWNvbmRhcnkpO1xuICBmb250OiB2YXIoLS1mb250LWJvZHktTS1yKTtcblxuICBAaW5jbHVkZSBtZWRpYUJpZ0Rlc2t0b3Age1xuICAgIGdhcDogYmlnKDE1KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTGFwdG9wIHtcbiAgICBnYXA6IHJlbSgxMCk7XG4gIH1cblxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFyay1zZWNvbmRhcnkpO1xuICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1NLXIpO1xuICB9XG5cbiAgJl9fcmF0ZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFyay1wcmltYXJ5KTtcbiAgICBmb250OiB2YXIoLS1mb250LWJvZHktTS1tKTtcbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCB2YXIoLS1zdHJva2UtbGlnaHQpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBiaWcoMTUpO1xuXG4gICAgICBib3JkZXItd2lkdGg6IGJpZygxKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEwKTtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICBcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iXX0= */
