.services-card {
  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: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: var(--bg-alt);
  gap: 30px;
  border-radius: 30px;
  padding: 30px 25px;
}
@media screen and (max-width: 1399.98px) {
  .services-card {
    padding: 15px;
    gap: 15px;
    padding: 15px;
  }
}
@media screen and (max-width: 1199.98px) {
  .services-card {
    border-radius: 15px;
  }
}

.services-card-pic {
  margin-left: 7px;
  margin-right: 7px;
  border-radius: 50%;
  overflow: hidden;
  background-color: var(--bg);
}
@media screen and (max-width: 1399.98px) {
  .services-card-pic {
    margin-right: 4px;
    margin-left: 4px;
  }
}
.services-card-pic, .services-card-pic > img {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
}

.services-slide {
  height: auto;
  width: 300px;
}
@media screen and (max-width: 1399.98px) {
  .services-slide {
    width: 194px;
  }
}
@media screen and (max-width: 767.98px) {
  .services-slide {
    width: 170px;
  }
}

.services-list {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.services-swiper {
  overflow: visible;
}

.services {
  overflow: hidden;
}

.page-col-right .services {
  margin-left: calc(-1 * var(--container-gutters));
  margin-right: calc(-1 * var(--container-gutters));
  width: calc(100% + var(--container-gutters) * 2);
}

.services-full-list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 20px var(--gap);
}
@media screen and (max-width: 1399.98px) {
  .services-full-list {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 767.98px) {
  .services-full-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 15px 7px;
  }
}
@media screen and (max-width: 575.98px) {
  .services-full-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 374.98px) {
  .services-full-list {
    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: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}

.services-container {
  max-width: 1222px;
}

.services-hat {
  padding-top: 40px !important;
  display: grid;
  grid-template-columns: 1fr 36.8248772504%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  border-bottom: 1px solid var(--border);
}
@media screen and (max-width: 1399.98px) {
  .services-hat {
    padding-top: 30px !important;
  }
}
@media screen and (max-width: 1199.98px) {
  .services-hat {
    padding-top: 0 !important;
  }
}
@media screen and (max-width: 767.98px) {
  .services-hat {
    gap: 30px;
  }
}
@media screen and (max-width: 575.98px) {
  .services-hat {
    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: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}

.services-hat-pic {
  max-width: 450px;
}
@media screen and (max-width: 1399.98px) {
  .services-hat-pic {
    max-width: 375px;
  }
}
@media screen and (max-width: 767.98px) {
  .services-hat-pic {
    max-width: 275px;
  }
}
@media screen and (max-width: 575.98px) {
  .services-hat-pic {
    -ms-flex-item-align: center;
        align-self: center;
  }
}
.services-hat-pic > img {
  display: block;
  width: 100%;
}

.services-hat-content {
  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;
  gap: 40px;
  max-width: 610px;
}
@media screen and (max-width: 1399.98px) {
  .services-hat-content {
    gap: 30px;
  }
}
@media screen and (max-width: 767.98px) {
  .services-hat-content {
    gap: 20px;
  }
}

.services-delivery-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap);
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 767.98px) {
  .services-delivery-cards {
    grid-template-columns: 1fr;
    grid-auto-rows: 1fr;
  }
}

.services-delivery-card {
  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;
  gap: 20px;
  padding: 30px;
  border-radius: 40px;
  min-height: 300px;
}
@media screen and (max-width: 1399.98px) {
  .services-delivery-card {
    padding: 20px;
    border-radius: 30px;
    min-height: 260px;
  }
}
@media screen and (max-width: 1199.98px) {
  .services-delivery-card {
    border-radius: 20px;
  }
}
@media screen and (max-width: 767.98px) {
  .services-delivery-card {
    min-height: 230px;
  }
}

.page-col-right .services-swiper {
  padding: var(--container-gutters);
  margin-left: calc(-1 * var(--container-gutters));
  margin-right: calc(-1 * var(--container-gutters));
  width: calc(100% + var(--container-gutters) * 2);
}

.services-delivery-swiper {
  padding: var(--container-gutters);
  margin-left: calc(-1 * var(--container-gutters));
  margin-right: calc(-1 * var(--container-gutters));
  width: calc(100% + var(--container-gutters) * 2);
}

.services-calc-form {
  padding: 50px;
  border-radius: 30px;
  gap: 30px;
  background-color: var(--bg-alt);
  display: grid;
  grid-template-columns: 305px 1fr;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 1399.98px) {
  .services-calc-form {
    padding: 40px;
  }
}
@media screen and (max-width: 1199.98px) {
  .services-calc-form {
    border-radius: 15px;
  }
}
@media screen and (max-width: 991.98px) {
  .services-calc-form {
    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;
    max-width: 496px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767.98px) {
  .services-calc-form {
    padding: 30px 20px;
    max-width: 345px;
    gap: 20px;
  }
}

.services-calc-form-controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  max-width: 780px;
}
@media screen and (max-width: 991.98px) {
  .services-calc-form-controls {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 305px;
  }
}
.services-calc-form-controls .form-control {
  max-width: 100%;
  width: 100%;
}

.services-calc-form-group {
  max-width: 100%;
}
@media screen and (max-width: 991.98px) {
  .services-calc-form-group {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.services-calc-form-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 991.98px) {
  .services-calc-form-content {
    gap: 20px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    max-width: 336px;
  }
}
@media screen and (max-width: 767.98px) {
  .services-calc-form-content {
    gap: 10px;
    max-width: 222px;
  }
}
.services-calc-form-content .icon {
  width: 189px;
  height: 46px;
}
@media screen and (max-width: 991.98px) {
  .services-calc-form-content .icon {
    display: none;
  }
}

.services-calc-form-submit-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
@media screen and (max-width: 991.98px) {
  .services-calc-form-submit-wrap {
    -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;
  }
}

.services-calc-form-agreement {
  font-size: 12px;
  max-width: 210px;
}
@media screen and (max-width: 991.98px) {
  .services-calc-form-agreement {
    max-width: 303px;
    text-align: center;
  }
}

.products-card {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: var(--bg-alt);
  border-radius: 40px;
  padding: 10px;
}
@media screen and (max-width: 1599.98px) {
  .products-card {
    padding: 5px;
    border-radius: 10px;
  }
}

.products-card-piclink {
  background-color: var(--bg-fixed-grey);
  border-radius: 30px;
  overflow: hidden;
}
@media screen and (max-width: 1599.98px) {
  .products-card-piclink {
    border-radius: 7px;
  }
}
.products-card-piclink,
.products-card-piclink picture,
.products-card-piclink img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 432/304;
}
.products-card-piclink > img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.products-card-piclink--wide,
.products-card-piclink--wide picture,
.products-card-piclink--wide img {
  aspect-ratio: 586/304;
}

.products-card-content {
  padding: 30px 20px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  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;
}
@media screen and (max-width: 1599.98px) {
  .products-card-content {
    padding: 15px 10px 0;
  }
}
.products-card-content__in-stock {
  margin-bottom: 20px;
}
@media screen and (max-width: 1599.98px) {
  .products-card-content__in-stock {
    margin-bottom: 10px;
  }
}
.products-card-content__title {
  margin-bottom: 25px;
}
@media screen and (max-width: 1599.98px) {
  .products-card-content__title {
    margin-bottom: 30px;
  }
}
.products-card-content__footer {
  margin-top: auto;
}

.products-card-in-stock {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}

.products-card-footer {
  border-top: 1px solid var(--border);
  padding-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px var(--gap);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1599.98px) {
  .products-card-footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}

.products-card-buy-btn {
  border-radius: 10px;
  height: 40px;
  min-height: 40px;
  padding: 10px 15px;
  font-size: 15px;
  font-weight: 600;
  width: 160px;
  min-width: 160px;
}
@media screen and (max-width: 1599.98px) {
  .products-card-buy-btn {
    border-radius: 5px;
    height: 52px;
    min-height: 52px;
    font-size: 13px;
    font-weight: 600;
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
  }
}
@media screen and (max-width: 767.98px) {
  .products-card-buy-btn {
    height: 40px;
    min-height: 40px;
    font-size: 12px;
  }
}

.products-card-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3px 8px;
  white-space: nowrap;
}

.products-card-state {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
@media screen and (max-width: 1399.98px) {
  .products-card-state {
    gap: 4px;
  }
}

.products-card-stickers {
  top: 30px;
  left: 30px;
  max-width: calc(100% - 120px);
  position: absolute;
}
@media screen and (max-width: 1599.98px) {
  .products-card-stickers {
    max-width: calc(100% - 70px);
    top: 15px;
    left: 15px;
  }
}

.products-card-cart-btn {
  padding-left: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 25px;
  right: 25px;
  position: absolute;
  width: 46px;
  height: 46px;
  border-radius: 10px;
  background-color: var(--white);
  color: var(--black);
  cursor: pointer;
}
@media screen and (max-width: 1599.98px) {
  .products-card-cart-btn {
    top: 10px;
    right: 10px;
  }
}
@media screen and (max-width: 1399.98px) {
  .products-card-cart-btn {
    width: 35px;
    height: 35px;
    border-radius: 8px;
  }
}
.products-card-cart-btn .icon {
  -webkit-transition: var(--transition) opacity;
  transition: var(--transition) opacity;
}
@media screen and (max-width: 1399.98px) {
  .products-card-cart-btn .icon {
    width: 18px;
    height: 18px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .products-card-cart-btn:hover .icon {
    opacity: 0.3;
  }
}
.products-card-cart-btn:active .icon {
  -webkit-transition-duration: var(--transition-active);
          transition-duration: var(--transition-active);
  opacity: 0.3;
}
.products-card-cart-btn::after {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  content: "+";
  position: absolute;
  top: calc(50% + 2px);
  left: calc(50% + 2px);
  border: 1px solid var(--white);
  padding: 0;
  height: 16px;
  min-width: 16px;
  border-radius: 50%;
  background-color: var(--white);
  color: var(--black);
  text-align: center;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  font-family: var(--font-family-base);
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
.products-card-cart-btn[data-cart-content]::after {
  content: attr(data-cart-content);
  font-size: 12px;
  line-height: 16px;
  border-color: var(--accent);
  background-color: var(--accent);
  color: var(--white);
  border-radius: 50%;
}

.products-slide {
  height: auto;
}

.products-list {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.products-swiper {
  overflow: visible;
}

.products {
  overflow: hidden;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJsb2Nrcy9zZXJ2aWNlcy5zY3NzIiwic2VydmljZXMuY3NzIiwibWl4aW5zL19zbWFydC1ncmlkLnNjc3MiLCJibG9ja3MvcHJvZHVjdHMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtNQUFBLDBCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSwrQkFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FDQ0o7QUNzQkk7RUYvQko7SUFXUSxhQUFBO0lBQ0EsU0FBQTtJQUNBLGFBQUE7RUNFTjtBQUNGO0FDNkJJO0VGN0NKO0lBaUJRLG1CQUFBO0VDR047QUFDRjs7QURBQTtFQUNJLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMkJBQUE7QUNHSjtBQ0VJO0VGVko7SUFRUSxpQkFBQTtJQUNBLGdCQUFBO0VDSU47QUFDRjtBREZJO0VBRUksY0FBQTtFQUNBLG9CQUFBO01BQUEsY0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtBQ0dSOztBRENBO0VBQ0ksWUFBQTtFQUNBLFlBQUE7QUNFSjtBQ2hCSTtFRllKO0lBS1EsWUFBQTtFQ0dOO0FBQ0Y7QUNxQk07RUY5Qk47SUFTUSxZQUFBO0VDSU47QUFDRjs7QUREQTtFQUNJLDBCQUFBO01BQUEsdUJBQUE7VUFBQSxvQkFBQTtBQ0lKOztBRERBO0VBQ0ksaUJBQUE7QUNJSjs7QUREQTtFQUNJLGdCQUFBO0FDSUo7O0FEREE7RUFDSSxnREFBQTtFQUNBLGlEQUFBO0VBQ0EsZ0RBQUE7QUNJSjs7QUREQTtFQUNJLGFBQUE7RUFDQSxxQ0FBQTtFQUNBLG9CQUFBO0FDSUo7QUNsREk7RUYyQ0o7SUFNUSxxQ0FBQTtFQ0tOO0FBQ0Y7QUNi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dCI6WyIuc2VydmljZXMtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1hbHQpO1xuICAgIGdhcDogMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIHBhZGRpbmc6IDMwcHggMjVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXh4bCgnZG93bicpIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgZ2FwOiAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLXhsKCdkb3duJykge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLWNhcmQtcGljIHtcbiAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXh4bCgnZG93bicpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgfVxuXG4gICAgJixcbiAgICAmPmltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLXNsaWRlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDMwMHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEteHhsKCdkb3duJykge1xuICAgICAgICB3aWR0aDogMTk0cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtbWQoJ2Rvd24nKSB7XG4gICAgICAgIHdpZHRoOiAxNzBweDtcbiAgICB9XG59XG5cbi5zZXJ2aWNlcy1saXN0IHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLnNlcnZpY2VzLXN3aXBlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5zZXJ2aWNlcyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2UtY29sLXJpZ2h0IC5zZXJ2aWNlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1jb250YWluZXItZ3V0dGVycykpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSAqIDIpO1xufVxuXG4uc2VydmljZXMtZnVsbC1saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gICAgZ2FwOiAyMHB4IHZhcigtLWdhcCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS14eGwoJ2Rvd24nKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtbWQoJ2Rvd24nKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIGdhcDogMTVweCA3cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtc20oJ2Rvd24nKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc0Ljk4cHgpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxufVxuXG4uc2VydmljZXMtY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEyMjJweDtcbn1cblxuLnNlcnZpY2VzLWhhdCB7XG4gICAgcGFkZGluZy10b3A6IDQwcHggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDM2LjgyNDg3NzI1MDQlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IDQwcHg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS14eGwoJ2Rvd24nKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEteGwoJ2Rvd24nKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtbWQoJ2Rvd24nKSB7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1zbSgnZG93bicpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxufVxuXG4uc2VydmljZXMtaGF0LXBpYyB7XG4gICAgbWF4LXdpZHRoOiA0NTBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXh4bCgnZG93bicpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1tZCgnZG93bicpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNzVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1zbSgnZG93bicpIHtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cblxuICAgICY+aW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLWhhdC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiA0MHB4O1xuICAgIG1heC13aWR0aDogNjEwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS14eGwoJ2Rvd24nKSB7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1tZCgnZG93bicpIHtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLWRlbGl2ZXJ5LWNhcmRzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiB2YXIoLS1nYXApO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtbWQoJ2Rvd24nKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBncmlkLWF1dG8tcm93czogMWZyO1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLWRlbGl2ZXJ5LWNhcmQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAyMHB4O1xuXG4gICAgcGFkZGluZzogMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuXG4gICAgbWluLWhlaWdodDogMzAwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS14eGwoJ2Rvd24nKSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLXhsKCdkb3duJykge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLW1kKCdkb3duJykge1xuICAgICAgICBtaW4taGVpZ2h0OiAyMzBweDtcbiAgICB9XG59XG5cbi5wYWdlLWNvbC1yaWdodCB7XG4gICAgLnNlcnZpY2VzLXN3aXBlciB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1jb250YWluZXItZ3V0dGVycykpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1jb250YWluZXItZ3V0dGVycykpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tY29udGFpbmVyLWd1dHRlcnMpICogMik7XG4gICAgfVxufVxuXG4uc2VydmljZXMtZGVsaXZlcnktc3dpcGVyIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1jb250YWluZXItZ3V0dGVycyk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1jb250YWluZXItZ3V0dGVycykpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSAqIDIpO1xufVxuXG4uc2VydmljZXMtY2FsYy1mb3JtIHtcbiAgICBwYWRkaW5nOiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgZ2FwOiAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWFsdCk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMwNXB4IDFmcjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXh4bCgnZG93bicpIHtcbiAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgbWVkaWEteGwoJ2Rvd24nKSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtbGcoJ2Rvd24nKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogNDk2cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtbWQoJ2Rvd24nKSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAzNDVweDtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLWNhbGMtZm9ybS1jb250cm9scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMzBweDtcbiAgICBtYXgtd2lkdGg6IDc4MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtbGcoJ2Rvd24nKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogMzA1cHg7XG4gICAgfVxuXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uc2VydmljZXMtY2FsYy1mb3JtLWdyb3VwIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1sZygnZG93bicpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbn1cblxuLnNlcnZpY2VzLWNhbGMtZm9ybS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtbGcoJ2Rvd24nKSB7XG4gICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXgtd2lkdGg6IDMzNnB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLW1kKCdkb3duJykge1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIG1heC13aWR0aDogMjIycHg7XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgICB3aWR0aDogMTg5cHg7XG4gICAgICAgIGhlaWdodDogNDZweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1sZygnZG93bicpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZXJ2aWNlcy1jYWxjLWZvcm0tc3VibWl0LXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1sZygnZG93bicpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5zZXJ2aWNlcy1jYWxjLWZvcm0tYWdyZWVtZW50IHtcbiAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXgtd2lkdGg6IDIxMHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtbGcoJ2Rvd24nKSB7XG4gICAgICAgIG1heC13aWR0aDogMzAzcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG4iLCIuc2VydmljZXMtY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWFsdCk7XG4gIGdhcDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgcGFkZGluZzogMzBweCAyNXB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1jYXJkIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGdhcDogMTVweDtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWNhcmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIH1cbn1cblxuLnNlcnZpY2VzLWNhcmQtcGljIHtcbiAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1jYXJkLXBpYyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgfVxufVxuLnNlcnZpY2VzLWNhcmQtcGljLCAuc2VydmljZXMtY2FyZC1waWMgPiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGFzcGVjdC1yYXRpbzogMTtcbn1cblxuLnNlcnZpY2VzLXNsaWRlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMzAwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLXNsaWRlIHtcbiAgICB3aWR0aDogMTk0cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZXJ2aWNlcy1zbGlkZSB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICB9XG59XG5cbi5zZXJ2aWNlcy1saXN0IHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5zZXJ2aWNlcy1zd2lwZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnNlcnZpY2VzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2UtY29sLXJpZ2h0IC5zZXJ2aWNlcyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tY29udGFpbmVyLWd1dHRlcnMpKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tY29udGFpbmVyLWd1dHRlcnMpKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSAqIDIpO1xufVxuXG4uc2VydmljZXMtZnVsbC1saXN0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcbiAgZ2FwOiAyMHB4IHZhcigtLWdhcCk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWZ1bGwtbGlzdCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWZ1bGwtbGlzdCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBnYXA6IDE1cHggN3B4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuc2VydmljZXMtZnVsbC1saXN0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzQuOThweCkge1xuICAuc2VydmljZXMtZnVsbC1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbn1cblxuLnNlcnZpY2VzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTIyMnB4O1xufVxuXG4uc2VydmljZXMtaGF0IHtcbiAgcGFkZGluZy10b3A6IDQwcHggIWltcG9ydGFudDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMzYuODI0ODc3MjUwNCU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiA0MHB4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWhhdCB7XG4gICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1oYXQge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZXJ2aWNlcy1oYXQge1xuICAgIGdhcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWhhdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG59XG5cbi5zZXJ2aWNlcy1oYXQtcGljIHtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xuICAuc2VydmljZXMtaGF0LXBpYyB7XG4gICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWhhdC1waWMge1xuICAgIG1heC13aWR0aDogMjc1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1oYXQtcGljIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cbn1cbi5zZXJ2aWNlcy1oYXQtcGljID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VydmljZXMtaGF0LWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiA0MHB4O1xuICBtYXgtd2lkdGg6IDYxMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1oYXQtY29udGVudCB7XG4gICAgZ2FwOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc2VydmljZXMtaGF0LWNvbnRlbnQge1xuICAgIGdhcDogMjBweDtcbiAgfVxufVxuXG4uc2VydmljZXMtZGVsaXZlcnktY2FyZHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBnYXA6IHZhcigtLWdhcCk7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWRlbGl2ZXJ5LWNhcmRzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLWF1dG8tcm93czogMWZyO1xuICB9XG59XG5cbi5zZXJ2aWNlcy1kZWxpdmVyeS1jYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDIwcHg7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1kZWxpdmVyeS1jYXJkIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgbWluLWhlaWdodDogMjYwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAuc2VydmljZXMtZGVsaXZlcnktY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWRlbGl2ZXJ5LWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IDIzMHB4O1xuICB9XG59XG5cbi5wYWdlLWNvbC1yaWdodCAuc2VydmljZXMtc3dpcGVyIHtcbiAgcGFkZGluZzogdmFyKC0tY29udGFpbmVyLWd1dHRlcnMpO1xuICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSk7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKSk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1jb250YWluZXItZ3V0dGVycykgKiAyKTtcbn1cblxuLnNlcnZpY2VzLWRlbGl2ZXJ5LXN3aXBlciB7XG4gIHBhZGRpbmc6IHZhcigtLWNvbnRhaW5lci1ndXR0ZXJzKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1jb250YWluZXItZ3V0dGVycykpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1jb250YWluZXItZ3V0dGVycykpO1xuICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tY29udGFpbmVyLWd1dHRlcnMpICogMik7XG59XG5cbi5zZXJ2aWNlcy1jYWxjLWZvcm0ge1xuICBwYWRkaW5nOiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBnYXA6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWFsdCk7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzA1cHggMWZyO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xuICAuc2VydmljZXMtY2FsYy1mb3JtIHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnNlcnZpY2VzLWNhbGMtZm9ybSB7XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNlcnZpY2VzLWNhbGMtZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA0OTZweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZXJ2aWNlcy1jYWxjLWZvcm0ge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBtYXgtd2lkdGg6IDM0NXB4O1xuICAgIGdhcDogMjBweDtcbiAgfVxufVxuXG4uc2VydmljZXMtY2FsYy1mb3JtLWNvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAzMHB4O1xuICBtYXgtd2lkdGg6IDc4MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNlcnZpY2VzLWNhbGMtZm9ybS1jb250cm9scyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDMwNXB4O1xuICB9XG59XG4uc2VydmljZXMtY2FsYy1mb3JtLWNvbnRyb2xzIC5mb3JtLWNvbnRyb2wge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VydmljZXMtY2FsYy1mb3JtLWdyb3VwIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNlcnZpY2VzLWNhbGMtZm9ybS1ncm91cCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuLnNlcnZpY2VzLWNhbGMtZm9ybS1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAzMHB4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5zZXJ2aWNlcy1jYWxjLWZvcm0tY29udGVudCB7XG4gICAgZ2FwOiAyMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogMzM2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zZXJ2aWNlcy1jYWxjLWZvcm0tY29udGVudCB7XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1heC13aWR0aDogMjIycHg7XG4gIH1cbn1cbi5zZXJ2aWNlcy1jYWxjLWZvcm0tY29udGVudCAuaWNvbiB7XG4gIHdpZHRoOiAxODlweDtcbiAgaGVpZ2h0OiA0NnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNlcnZpY2VzLWNhbGMtZm9ybS1jb250ZW50IC5pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zZXJ2aWNlcy1jYWxjLWZvcm0tc3VibWl0LXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuc2VydmljZXMtY2FsYy1mb3JtLXN1Ym1pdC13cmFwIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnNlcnZpY2VzLWNhbGMtZm9ybS1hZ3JlZW1lbnQge1xuICBmb250LXNpemU6IDEycHg7XG4gIG1heC13aWR0aDogMjEwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuc2VydmljZXMtY2FsYy1mb3JtLWFncmVlbWVudCB7XG4gICAgbWF4LXdpZHRoOiAzMDNweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnByb2R1Y3RzLWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWFsdCk7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNTk5Ljk4cHgpIHtcbiAgLnByb2R1Y3RzLWNhcmQge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB9XG59XG5cbi5wcm9kdWN0cy1jYXJkLXBpY2xpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1maXhlZC1ncmV5KTtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1OTkuOThweCkge1xuICAucHJvZHVjdHMtY2FyZC1waWNsaW5rIHtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIH1cbn1cbi5wcm9kdWN0cy1jYXJkLXBpY2xpbmssXG4ucHJvZHVjdHMtY2FyZC1waWNsaW5rIHBpY3R1cmUsXG4ucHJvZHVjdHMtY2FyZC1waWNsaW5rIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBhc3BlY3QtcmF0aW86IDQzMi8zMDQ7XG59XG4ucHJvZHVjdHMtY2FyZC1waWNsaW5rID4gaW1nIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG59XG4ucHJvZHVjdHMtY2FyZC1waWNsaW5rLS13aWRlLFxuLnByb2R1Y3RzLWNhcmQtcGljbGluay0td2lkZSBwaWN0dXJlLFxuLnByb2R1Y3RzLWNhcmQtcGljbGluay0td2lkZSBpbWcge1xuICBhc3BlY3QtcmF0aW86IDU4Ni8zMDQ7XG59XG5cbi5wcm9kdWN0cy1jYXJkLWNvbnRlbnQge1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gIC5wcm9kdWN0cy1jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDE1cHggMTBweCAwO1xuICB9XG59XG4ucHJvZHVjdHMtY2FyZC1jb250ZW50X19pbi1zdG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNTk5Ljk4cHgpIHtcbiAgLnByb2R1Y3RzLWNhcmQtY29udGVudF9faW4tc3RvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cbi5wcm9kdWN0cy1jYXJkLWNvbnRlbnRfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1OTkuOThweCkge1xuICAucHJvZHVjdHMtY2FyZC1jb250ZW50X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuLnByb2R1Y3RzLWNhcmQtY29udGVudF9fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cblxuLnByb2R1Y3RzLWNhcmQtaW4tc3RvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA1cHg7XG59XG5cbi5wcm9kdWN0cy1jYXJkLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAyMHB4IHZhcigtLWdhcCk7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1OTkuOThweCkge1xuICAucHJvZHVjdHMtY2FyZC1mb290ZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbn1cblxuLnByb2R1Y3RzLWNhcmQtYnV5LWJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbWluLWhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHdpZHRoOiAxNjBweDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1OTkuOThweCkge1xuICAucHJvZHVjdHMtY2FyZC1idXktYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucHJvZHVjdHMtY2FyZC1idXktYnRuIHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxuLnByb2R1Y3RzLWNhcmQtcHJpY2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogM3B4IDhweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnByb2R1Y3RzLWNhcmQtc3RhdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA1cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLnByb2R1Y3RzLWNhcmQtc3RhdGUge1xuICAgIGdhcDogNHB4O1xuICB9XG59XG5cbi5wcm9kdWN0cy1jYXJkLXN0aWNrZXJzIHtcbiAgdG9wOiAzMHB4O1xuICBsZWZ0OiAzMHB4O1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEyMHB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gIC5wcm9kdWN0cy1jYXJkLXN0aWNrZXJzIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDcwcHgpO1xuICAgIHRvcDogMTVweDtcbiAgICBsZWZ0OiAxNXB4O1xuICB9XG59XG5cbi5wcm9kdWN0cy1jYXJkLWNhcnQtYnRuIHtcbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0b3A6IDI1cHg7XG4gIHJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA0NnB4O1xuICBoZWlnaHQ6IDQ2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gIC5wcm9kdWN0cy1jYXJkLWNhcnQtYnRuIHtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xuICAucHJvZHVjdHMtY2FyZC1jYXJ0LWJ0biB7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgfVxufVxuLnByb2R1Y3RzLWNhcmQtY2FydC1idG4gLmljb24ge1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKSBvcGFjaXR5O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5wcm9kdWN0cy1jYXJkLWNhcnQtYnRuIC5pY29uIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gIH1cbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLnByb2R1Y3RzLWNhcmQtY2FydC1idG46aG92ZXIgLmljb24ge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxufVxuLnByb2R1Y3RzLWNhcmQtY2FydC1idG46YWN0aXZlIC5pY29uIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1hY3RpdmUpO1xuICBvcGFjaXR5OiAwLjM7XG59XG4ucHJvZHVjdHMtY2FyZC1jYXJ0LWJ0bjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29udGVudDogXCIrXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSArIDJweCk7XG4gIGxlZnQ6IGNhbGMoNTAlICsgMnB4KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0td2hpdGUpO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDE2cHg7XG4gIG1pbi13aWR0aDogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbn1cbi5wcm9kdWN0cy1jYXJkLWNhcnQtYnRuW2RhdGEtY2FydC1jb250ZW50XTo6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtY2FydC1jb250ZW50KTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5wcm9kdWN0cy1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnByb2R1Y3RzLWxpc3Qge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLnByb2R1Y3RzLXN3aXBlciB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucHJvZHVjdHMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufSIsIiR4czogMzc1cHggIWRlZmF1bHQ7XG4kc206IDU3NnB4ICFkZWZhdWx0O1xuJG1kOiA3NjhweCAhZGVmYXVsdDtcbiRsZzogOTkycHggIWRlZmF1bHQ7XG4keGw6IDEyMDBweCAhZGVmYXVsdDtcbiR4eGw6IDE0MDBweCAhZGVmYXVsdDtcbiR4eHhsOiAxOTIwcHggIWRlZmF1bHQ7XG5cblxuQG1peGluIG1lZGlhLXh4eGwoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgKCRkaXJlY3Rpb24gPT11cCkge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4eHhsKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogI3skeHh4bCAtIDAuMDJweH0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEteHhsKCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICgkZGlyZWN0aW9uID09dXApIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkeHhsKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogI3skeHhsIC0gMC4wMnB4fSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZWRpYS14bCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAoJGRpcmVjdGlvbiA9PXVwKSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogI3skeGwgLSAwLjAycHh9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lZGlhLWxnKCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICgkZGlyZWN0aW9uID09dXApIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGcpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRsZyAtIDAuMDJweH0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEtbWQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgKCRkaXJlY3Rpb24gPT11cCkge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1kKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRtZCAtIDAuMDJweH0pIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEtc20oJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgKCRkaXJlY3Rpb24gPT11cCkge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRzbSAtIDAuMDJweH0pIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEteHMoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgKCRkaXJlY3Rpb24gPT11cCkge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhzKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyR4cyAtIDAuMDJweH0pIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgfVxufVxuXG5cblxuQG1peGluIG1lZGlhLWhvdmVyIHtcbiAgQG1lZGlhIChob3Zlcjpob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi5wcm9kdWN0cy1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYWx0KTtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNTk5Ljk4cHgpIHtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1cbn1cblxuLnByb2R1Y3RzLWNhcmQtcGljbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZml4ZWQtZ3JleSk7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICB9XG4gICAgJixcbiAgICBwaWN0dXJlLFxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQzMi8zMDQ7XG4gICAgfVxuICAgIFxuICAgICY+aW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi0td2lkZSB7XG4gICAgICAgICYsXG4gICAgICAgIHBpY3R1cmUsXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDU4Ni8zMDQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0cy1jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1OTkuOThweCkge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMDtcbiAgICB9XG5cbiAgICAmX19pbi1zdG9jayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1OTkuOThweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgfVxufVxuXG4ucHJvZHVjdHMtY2FyZC1pbi1zdG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDVweDtcbn1cblxuLnByb2R1Y3RzLWNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAyMHB4IHZhcigtLWdhcCk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cbn1cblxuLnByb2R1Y3RzLWNhcmQtYnV5LWJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgd2lkdGg6IDE2MHB4O1xuICAgIG1pbi13aWR0aDogMTYwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNTk5Ljk4cHgpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBoZWlnaHQ6IDUycHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtbWQoJ2Rvd24nKSB7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbn1cblxuLnByb2R1Y3RzLWNhcmQtcHJpY2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogM3B4IDhweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ucHJvZHVjdHMtY2FyZC1zdGF0ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXh4bCgnZG93bicpIHtcbiAgICAgICAgZ2FwOiA0cHg7XG4gICAgfVxufVxuXG4ucHJvZHVjdHMtY2FyZC1zdGlja2VycyB7XG4gICAgdG9wOiAzMHB4O1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICB9XG59XG5cbi5wcm9kdWN0cy1jYXJkLWNhcnQtYnRuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdG9wOiAyNXB4O1xuICAgIHJpZ2h0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDZweDtcbiAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cblxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTU5OS45OHB4KSB7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEteHhsKCdkb3duJykge1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKSBvcGFjaXR5O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXh4bCgnZG93bicpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtaG92ZXIge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXRyYW5zaXRpb24tYWN0aXZlKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IGNhbGMoNTAlICsgMnB4KTtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgKyAycHgpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13aGl0ZSk7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgbWluLXdpZHRoOiAxNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSk7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuICAgIH1cblxuICAgICZbZGF0YS1jYXJ0LWNvbnRlbnRdIHtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtY2FydC1jb250ZW50KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0cy1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucHJvZHVjdHMtbGlzdCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5wcm9kdWN0cy1zd2lwZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucHJvZHVjdHMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4iXX0= */
