.portfolio-card {
  --card-content-padding: 2.5rem;
  --card-gap: 1.875rem;
  --card-image-aspect-ration: 560 / 350;
  --card-image-background-color: var(--bg-light);
  --card-image-border-radius: var(--radius-card);
  --card-max-width: var(--card-max-width-3);
  --card-title-color: var(--section-text-color-primary, var(--text-dark-primary));
  --card-title-color-hover: var(--accent-primary-hover);
  --card-title-font: var(--font-title-M);
  --card-text-color: var(--section-text-color-secondary, var(--text-dark-secondary));
  position: relative;
  width: 100%;
  max-width: var(--card-max-width);
  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: var(--card-gap);
}
@media (min-width: 1921px) {
  .portfolio-card {
    --card-content-padding: 2.0833333333vw;
    --card-gap: 1.5625vw;
  }
}
@media (max-width: 1600px) {
  .portfolio-card {
    --card-content-padding: 1.25rem;
    --card-gap: 1.5625rem;
    --card-image-aspect-ration: 413 / 260;
  }
}
@media (max-width: 1160px) {
  .portfolio-card {
    --card-image-aspect-ration: 334 / 232;
  }
}
@media (max-width: 630px) {
  .portfolio-card {
    --card-content-padding: 1.25rem;
    --card-gap: 0.9375rem;
    --card-image-aspect-ration: 291 / 202;
  }
}
.portfolio-card__head {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: var(--card-image-aspect-ration);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-color: var(--card-image-background-color);
  border-radius: var(--card-image-border-radius);
  overflow: hidden;
}
.portfolio-card__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.portfolio-card__image img, .portfolio-card__image picture {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.portfolio-card__body {
  padding-right: var(--card-content-padding);
  width: 100%;
  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;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.625rem;
}
@media (max-width: 630px) {
  .portfolio-card__body {
    gap: 0.3125rem;
  }
}
.portfolio-card__time {
  color: var(--card-text-color);
  font: var(--font-body-M-r);
}
@media (max-width: 630px) {
  .portfolio-card__time {
    font: var(--font-body-S-r);
  }
}
.portfolio-card__cluster {
  width: 100%;
  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;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.9375rem;
}
@media (min-width: 1921px) {
  .portfolio-card__cluster {
    gap: 0.5208333333vw;
  }
}
@media (max-width: 630px) {
  .portfolio-card__cluster {
    gap: 0.625rem;
  }
}
.portfolio-card__title {
  display: -webkit-box;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  color: var(--card-title-color);
  font: var(--card-title-font);
  text-decoration: none;
  text-overflow: ellipsis;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color var(--animation-default);
  transition: color var(--animation-default);
}
@media (any-hover: hover) {
  .portfolio-card__title:hover ~ .button .icon_animate {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .portfolio-card__title:hover ~ .button .icon_animate_reverse {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .portfolio-card__title:hover ~ .button .icon_animate_wheel {
    -webkit-animation: button-wheel calc(var(--animation-duration) * 2.5) var(--cubic-bezier);
            animation: button-wheel calc(var(--animation-duration) * 2.5) var(--cubic-bezier);
  }
}
.portfolio-card__title::before {
  top: -0rem;
  left: -0rem;
  width: calc(100% + 0rem * 2);
  height: calc(100% + 0rem * 2);
  content: "";
  position: absolute;
  background-color: transparent;
  opacity: 0;
}
@media (min-width: 1921px) {
  .portfolio-card__title::before {
    top: 0vw;
    left: 0vw;
    width: calc(100% + 0vw * 2);
    height: calc(100% + 0vw * 2);
  }
}
.portfolio-card__description {
  display: -webkit-box;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--card-text-color);
  font: var(--card-text-font);
  text-overflow: ellipsis;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.portfolio-card__description:empty {
  display: none;
}
.portfolio-card__button {
  margin-top: auto;
  color: var(--accent-primary-default);
  cursor: pointer;
}
.portfolio-card__button .icon {
  --button-icon-color: var(--accent-primary-default);
  --accent-primary-hover: ;
}
@media (any-hover: hover) {
  .portfolio-card__button:hover {
    color: var(--accent-primary-hover);
  }
}
.modal-window__body .portfolio-card {
  max-width: unset;
}
.modal-window__body .portfolio-card__head {
  aspect-ratio: 730/224;
}
.modal-window__body .portfolio-card__image img {
  aspect-ratio: 730/224;
}
.modal-window__body .portfolio-card__button {
  display: none;
}
.modal-window__body .portfolio-card__description {
  display: block;
  -webkit-line-clamp: initial;
  -webkit-box-orient: initial;
  overflow: visible;
  text-overflow: initial;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvY2FyZHMvcG9ydGZvbGlvLWNhcmQvcG9ydGZvbGlvLWNhcmQuc2NzcyUyM3Nhc3MiLCJjb21wb25lbnRzL2NhcmRzL3BvcnRmb2xpby1jYXJkL3BvcnRmb2xpby1jYXJkLnNjc3MiLCJtaXhpbnMvX21lZGlhLnNjc3MiLCJtaXhpbnMvX2Rpc2FibGUtbW9iLWhvdmVyLnNjc3MiLCJtaXhpbnMvX2FuaW1hdGlvbnMuc2NzcyIsIm1peGlucy9fcHNldWRvLWhvdmVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSw4QkFBQTtFQ0RGLG9CQUFBO0VER0UscUNBQUE7RUFDQSw4Q0FBQTtFQUNBLDhDQUFBO0VBQ0EseUNBQUE7RUFDQSwrRUFBQTtFQUNBLHFEQUFBO0VBQ0Esc0NBQUE7RUFDQSxrRkFBQTtFQUVBLGtCQUFBO0VBRUEsV0FBQTtFQUNBLGdDQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHVCQUFBO01BQUEsb0JBQUE7VUFBQSwyQkFBQTtFQUNBLG9CQUFBO0FDSEY7QUNYRTtFRk5GO0lDb0JFLHNDREdFO0lBQ0Esb0JBQUE7RUNGRjtBQUNGO0FDWEU7RUZaRjtJQTRCSSwrQkFBQTtJQ0RGLHFCQUFBO0lER0UscUNBQUE7RUNERjtBQUNGO0FDWkU7RUZsQkY7SUNpQ0UscUNBQUE7RUFDQTtBQUNGO0FDWEU7RUZ4QkY7SUFzQ0ksK0JBQUE7SUFDQSxxQkFBQTtJQUNBLHFDQUFBO0VDQ0Y7QUFDRjtBRENFO0VBQ0Usa0JBQUE7RUFFQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLDZDQUFBO0VBQ0Esb0JBQUE7TUFBQSxjQUFBO0VBRUEsb0RBQUE7RUFDQSw4Q0FBQTtFQUNBLGdCQUFBO0FDREo7QURJRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFFQSxXQUFBO0VBQ0EsWUFBQTtBQ0hKO0FES0k7RUFFRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0tBQUEsaUJBQUE7RUFDQSwwQkFBQTtLQUFBLHVCQUFBO0FDSk47QURRRTtFQUNFLDBDQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtVQUFBLDJCQUFBO0VBQ0EsYUFBQTtBQ05KO0FDbkRFO0VGaURBO0lBV0ksY0FBQTtFQ0xKO0FBQ0Y7QURRRTtFQUNFLDZCQUFBO0VBQ0EsMEJBQUE7QUNOSjtBQzVERTtFRmdFQTtJQUtJLDBCQUFBO0VDTEo7QUFDRjtBRFFFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtVQUFBLDJCQUFBO0VBQ0EsY0FBQTtBQ05KO0FDNUZFO0VGMkZBO0lBVUksbUJBQUE7RUNMSjtBQUNGO0FDL0VFO0VGeUVBO0lBY0ksYUFBQTtFQ0pKO0FBQ0Y7QURPRTtFQUNFLG9CQUFBO0VBQ0EsNEJBQUE7TUFBQSxtQkFBQTtFQUVBLDhCQUFBO0VBQ0EsNEJBQUE7RUFDQSxxQkFBQTtFQUNBLHVCQUFBO0VBQ0EsYUFBQTtFQUNBLHFCQUFBO0VBQ0EsNEJBQUE7RUFFQSxnQkFBQTtFQUVBLGtEQUFBO0VBQUEsMENBQUE7QUNSSjtBRTFIRTtFQ0VBO0lBQ0UsZ0NBQUE7UUFBQSw0QkFBQTtZQUFBLHdCQUFBO0VIMkhGO0VHeEhBO0lBQ0UsaUNBQUE7UUFBQSw2QkFBQTtZQUFBLHlCQUFBO0VIMEhGO0VHdkhBO0lBQ0UseUZBQUE7WUFBQSxpRkFBQTtFSHlIRjtBQUNGO0FETUk7RUszSUYsVUFBQTtFQUNBLFdBQUE7RUFFQSw0QkFBQTtFQUNBLDZCQUFBO0VBR0UsV0FBQTtFQUVBLGtCQUFBO0VBR0UsNkJBQUE7RUFDQSxVQUFBO0FKa0lOO0FDeElFO0VGb0lFO0lLMUhFLFFBQUE7SUFDQSxTQUFBO0lBRUEsMkJBQUE7SUFDQSw0QkFBQTtFSmlJSjtBQUNGO0FEUEU7RUFDRSxvQkFBQTtFQUNBLDRCQUFBO01BQUEsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLDRCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUVBLDZCQUFBO0VBQ0EsMkJBQUE7RUFDQSx1QkFBQTtFQUNBLGFBQUE7RUFDQSxxQkFBQTtFQUNBLDRCQUFBO0VBRUEsZ0JBQUE7QUNPSjtBRExJO0VBQ0UsYUFBQTtBQ09OO0FESEU7RUFDRSxnQkFBQTtFQUNBLG9DQUFBO0VBQ0EsZUFBQTtBQ0tKO0FESEk7RUFDSSxrREFBQTtFQUNBLHdCQUFBO0FDS1I7QUVsTEU7RUZvTEY7SURITSxrQ0FBQTtFQ0tOO0FBQ0E7QURBSTtFQUNJLGdCQUFBO0FDR1I7QURBSTtFQUNJLHFCQUFBO0FDRVI7QURFUTtFQUNJLHFCQUFBO0FDQVo7QURLSTtFQUNJLGFBQUE7QUNIUjtBRE1JO0VBQ0ksY0FBQTtFQUNBLDJCQUFBO0VBQ0EsMkJBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBO0FDSlIiLCJmaWxlIjoiY29tcG9uZW50cy9jYXJkcy9wb3J0Zm9saW8tY2FyZC9wb3J0Zm9saW8tY2FyZC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiLi4vLi4vLi4vbWl4aW5zXCI7XG5cbi5wb3J0Zm9saW8tY2FyZCB7XG4gIC0tY2FyZC1jb250ZW50LXBhZGRpbmc6ICN7cmVtKDQwKX07XG4gIC0tY2FyZC1nYXA6ICN7cmVtKDMwKX07XG4gIC0tY2FyZC1pbWFnZS1hc3BlY3QtcmF0aW9uOiA1NjAgLyAzNTA7XG4gIC0tY2FyZC1pbWFnZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG4gIC0tY2FyZC1pbWFnZS1ib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtY2FyZCk7XG4gIC0tY2FyZC1tYXgtd2lkdGg6IHZhcigtLWNhcmQtbWF4LXdpZHRoLTMpO1xuICAtLWNhcmQtdGl0bGUtY29sb3I6IHZhcigtLXNlY3Rpb24tdGV4dC1jb2xvci1wcmltYXJ5LCB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSkpO1xuICAtLWNhcmQtdGl0bGUtY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWhvdmVyKTtcbiAgLS1jYXJkLXRpdGxlLWZvbnQ6IHZhcigtLWZvbnQtdGl0bGUtTSk7XG4gIC0tY2FyZC10ZXh0LWNvbG9yOiB2YXIoLS1zZWN0aW9uLXRleHQtY29sb3Itc2Vjb25kYXJ5LCB2YXIoLS10ZXh0LWRhcmstc2Vjb25kYXJ5KSk7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLWNhcmQtbWF4LXdpZHRoKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZ2FwOiB2YXIoLS1jYXJkLWdhcCk7XG5cbiAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAtLWNhcmQtY29udGVudC1wYWRkaW5nOiAje2JpZyg0MCl9O1xuICAgIC0tY2FyZC1nYXA6ICN7YmlnKDMwKX07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgLS1jYXJkLWNvbnRlbnQtcGFkZGluZzogI3tyZW0oMjApfTtcbiAgICAtLWNhcmQtZ2FwOiAje3JlbSgyNSl9O1xuICAgIC0tY2FyZC1pbWFnZS1hc3BlY3QtcmF0aW9uOiA0MTMgLyAyNjA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgLS1jYXJkLWltYWdlLWFzcGVjdC1yYXRpb246IDMzNCAvIDIzMjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAtLWNhcmQtY29udGVudC1wYWRkaW5nOiAje3JlbSgyMCl9O1xuICAgIC0tY2FyZC1nYXA6ICN7cmVtKDE1KX07XG4gICAgLS1jYXJkLWltYWdlLWFzcGVjdC1yYXRpb246IDI5MSAvIDIwMjtcbiAgfVxuXG4gICZfX2hlYWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IHZhcigtLWNhcmQtaW1hZ2UtYXNwZWN0LXJhdGlvbik7XG4gICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jYXJkLWltYWdlLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWNhcmQtaW1hZ2UtYm9yZGVyLXJhZGl1cyk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICZfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAmIGltZyxcbiAgICAmIHBpY3R1cmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICZfX2JvZHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNhcmQtY29udGVudC1wYWRkaW5nKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IHJlbSgxMCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICBnYXA6IHJlbSg1KTtcbiAgICB9XG4gIH1cblxuICAmX190aW1lIHtcbiAgICBjb2xvcjogdmFyKC0tY2FyZC10ZXh0LWNvbG9yKTtcbiAgICBmb250OiB2YXIoLS1mb250LWJvZHktTS1yKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1TLXIpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NsdXN0ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogcmVtKDE1KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICBnYXA6IGJpZygxMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgZ2FwOiByZW0oMTApO1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuXG4gICAgY29sb3I6IHZhcigtLWNhcmQtdGl0bGUtY29sb3IpO1xuICAgIGZvbnQ6IHZhcigtLWNhcmQtdGl0bGUtZm9udCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuXG4gICAgICAmIH4gLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGljb25BbmltYXRlKGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgcHNldWRvKDApO1xuICAgIH1cbiAgfVxuICBcbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzOyAgICAgICAgIFxuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7IFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IFxuXG4gICAgY29sb3I6IHZhcigtLWNhcmQtdGV4dC1jb2xvcik7XG4gICAgZm9udDogdmFyKC0tY2FyZC10ZXh0LWZvbnQpO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBjb2xvcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIFxuICAgIC5pY29uIHtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAgIC0tYWNjZW50LXByaW1hcnktaG92ZXI6XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1ob3Zlcik7XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbC13aW5kb3dfX2JvZHkge1xuICAgIC5wb3J0Zm9saW8tY2FyZCB7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgfVxuICAgIFxuICAgIC5wb3J0Zm9saW8tY2FyZF9faGVhZCB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogNzMwIC8gMjI0O1xuICAgIH1cbiAgICBcbiAgICAucG9ydGZvbGlvLWNhcmRfX2ltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNzMwIC8gMjI0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAucG9ydGZvbGlvLWNhcmRfX2J1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5wb3J0Zm9saW8tY2FyZF9fZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiBpbml0aWFsO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGluaXRpYWw7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBpbml0aWFsO1xuICAgIH1cbn0iLCJAaW1wb3J0IFwiLi4vLi4vLi4vbWl4aW5zXCI7XG5cbi5wb3J0Zm9saW8tY2FyZCB7XG4gIC0tY2FyZC1jb250ZW50LXBhZGRpbmc6ICN7cmVtKDQwKX07XG4gIC0tY2FyZC1nYXA6ICN7cmVtKDMwKX07XG4gIC0tY2FyZC1pbWFnZS1hc3BlY3QtcmF0aW9uOiA1NjAgLyAzNTA7XG4gIC0tY2FyZC1pbWFnZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG4gIC0tY2FyZC1pbWFnZS1ib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtY2FyZCk7XG4gIC0tY2FyZC1tYXgtd2lkdGg6IHZhcigtLWNhcmQtbWF4LXdpZHRoLTMpO1xuICAtLWNhcmQtdGl0bGUtY29sb3I6IHZhcigtLXNlY3Rpb24tdGV4dC1jb2xvci1wcmltYXJ5LCB2YXIoLS10ZXh0LWRhcmstcHJpbWFyeSkpO1xuICAtLWNhcmQtdGl0bGUtY29sb3ItaG92ZXI6IHZhcigtLWFjY2VudC1wcmltYXJ5LWhvdmVyKTtcbiAgLS1jYXJkLXRpdGxlLWZvbnQ6IHZhcigtLWZvbnQtdGl0bGUtTSk7XG4gIC0tY2FyZC10ZXh0LWNvbG9yOiB2YXIoLS1zZWN0aW9uLXRleHQtY29sb3Itc2Vjb25kYXJ5LCB2YXIoLS10ZXh0LWRhcmstc2Vjb25kYXJ5KSk7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLWNhcmQtbWF4LXdpZHRoKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZ2FwOiB2YXIoLS1jYXJkLWdhcCk7XG5cbiAgQGluY2x1ZGUgbWVkaWFCaWdEZXNrdG9wIHtcbiAgICAtLWNhcmQtY29udGVudC1wYWRkaW5nOiAje2JpZyg0MCl9O1xuICAgIC0tY2FyZC1nYXA6ICN7YmlnKDMwKX07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYUxhcHRvcCB7XG4gICAgLS1jYXJkLWNvbnRlbnQtcGFkZGluZzogI3tyZW0oMjApfTtcbiAgICAtLWNhcmQtZ2FwOiAje3JlbSgyNSl9O1xuICAgIC0tY2FyZC1pbWFnZS1hc3BlY3QtcmF0aW9uOiA0MTMgLyAyNjA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYVRhYmxldCB7XG4gICAgLS1jYXJkLWltYWdlLWFzcGVjdC1yYXRpb246IDMzNCAvIDIzMjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAtLWNhcmQtY29udGVudC1wYWRkaW5nOiAje3JlbSgyMCl9O1xuICAgIC0tY2FyZC1nYXA6ICN7cmVtKDE1KX07XG4gICAgLS1jYXJkLWltYWdlLWFzcGVjdC1yYXRpb246IDI5MSAvIDIwMjtcbiAgfVxuXG4gICZfX2hlYWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IHZhcigtLWNhcmQtaW1hZ2UtYXNwZWN0LXJhdGlvbik7XG4gICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jYXJkLWltYWdlLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWNhcmQtaW1hZ2UtYm9yZGVyLXJhZGl1cyk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICZfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAmIGltZyxcbiAgICAmIHBpY3R1cmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICZfX2JvZHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNhcmQtY29udGVudC1wYWRkaW5nKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IHJlbSgxMCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYU1vYmlsZSB7XG4gICAgICBnYXA6IHJlbSg1KTtcbiAgICB9XG4gIH1cblxuICAmX190aW1lIHtcbiAgICBjb2xvcjogdmFyKC0tY2FyZC10ZXh0LWNvbG9yKTtcbiAgICBmb250OiB2YXIoLS1mb250LWJvZHktTS1yKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhTW9iaWxlIHtcbiAgICAgIGZvbnQ6IHZhcigtLWZvbnQtYm9keS1TLXIpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NsdXN0ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogcmVtKDE1KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICBnYXA6IGJpZygxMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWFNb2JpbGUge1xuICAgICAgZ2FwOiByZW0oMTApO1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuXG4gICAgY29sb3I6IHZhcigtLWNhcmQtdGl0bGUtY29sb3IpO1xuICAgIGZvbnQ6IHZhcigtLWNhcmQtdGl0bGUtZm9udCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tYW5pbWF0aW9uLWRlZmF1bHQpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuXG4gICAgICAmIH4gLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGljb25BbmltYXRlKGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgcHNldWRvKDApO1xuICAgIH1cbiAgfVxuICBcbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzOyAgICAgICAgIFxuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7IFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IFxuXG4gICAgY29sb3I6IHZhcigtLWNhcmQtdGV4dC1jb2xvcik7XG4gICAgZm9udDogdmFyKC0tY2FyZC10ZXh0LWZvbnQpO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBjb2xvcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIFxuICAgIC5pY29uIHtcbiAgICAgICAgLS1idXR0b24taWNvbi1jb2xvcjogdmFyKC0tYWNjZW50LXByaW1hcnktZGVmYXVsdCk7XG4gICAgICAgIC0tYWNjZW50LXByaW1hcnktaG92ZXI6XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtcHJpbWFyeS1ob3Zlcik7XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbC13aW5kb3dfX2JvZHkge1xuICAgIC5wb3J0Zm9saW8tY2FyZCB7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgfVxuICAgIFxuICAgIC5wb3J0Zm9saW8tY2FyZF9faGVhZCB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogNzMwIC8gMjI0O1xuICAgIH1cbiAgICBcbiAgICAucG9ydGZvbGlvLWNhcmRfX2ltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNzMwIC8gMjI0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAucG9ydGZvbGlvLWNhcmRfX2J1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5wb3J0Zm9saW8tY2FyZF9fZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiBpbml0aWFsO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGluaXRpYWw7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBpbml0aWFsO1xuICAgIH1cbn0iLCIvLyAvKlxuLy8g4pWt4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA0JfQsNC80LXRgtCe0YfQutCw4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pWuXG4vLyDilIIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICDQl9Cw0LzQtdC90LjRgtGMINC30LDQv9GA0L7RgdGLINCyIGNvbW1vbi5qcyAgICAgICAg4pSCXG4vLyDilIIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pWw4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pWvXG4vLyAqL1xuQG1peGluIG1lZGlhQmlnRGVza3RvcCB7XG4gIEBtZWRpYSAod2lkdGggPiAxOTIwcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWVkaWFMYXB0b3Age1xuICBAbWVkaWEgKHdpZHRoIDw9IDE2MDBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYVRhYmxldCB7XG4gIEBtZWRpYSAod2lkdGggPD0gMTE2MHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhTW9iaWxlIHtcbiAgQG1lZGlhICh3aWR0aCA8PSA2MzBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYSgkd2lkdGgpIHtcbiAgQG1lZGlhICh3aWR0aCA8PSAkd2lkdGgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQG1peGluIGhvdmVyIHtcbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBpY29uQW5pbWF0ZSgkdGhpczogZmFsc2UpIHtcbiAgJHNlbGVjdG9yOiBpZigkdGhpcywgXCImXCIsIFwiJiBcIik7XG4gIFxuICAjeyRzZWxlY3Rvcn0uaWNvbl9hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0uaWNvbl9hbmltYXRlX3JldmVyc2Uge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0uaWNvbl9hbmltYXRlX3doZWVsIHtcbiAgICBhbmltYXRpb246IGJ1dHRvbi13aGVlbCBjYWxjKHZhcigtLWFuaW1hdGlvbi1kdXJhdGlvbikgKiAyLjUpIHZhcigtLWN1YmljLWJlemllcik7XG4gIH1cbn1cbiIsIkBtaXhpbiBwc2V1ZG8oJHBpeGVsLCAkcmVwZWF0OiBmYWxzZSwgJHRyYW5zcGFyZW50OiB0cnVlKSB7XG4gIHRvcDogLSN7cmVtKCRwaXhlbCl9O1xuICBsZWZ0OiAtI3tyZW0oJHBpeGVsKX07XG5cbiAgd2lkdGg6IGNhbGMoMTAwJSArICN7cmVtKCRwaXhlbCl9ICogMik7XG4gIGhlaWdodDogY2FsYygxMDAlICsgI3tyZW0oJHBpeGVsKX0gKiAyKTtcblxuICBAaWYgJHJlcGVhdCA9PSBmYWxzZSB7XG4gICAgY29udGVudDogXCJcIjtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgIEBpZiAkdHJhbnNwYXJlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhQmlnRGVza3RvcCB7XG4gICAgICB0b3A6ICN7YmlnKC0kcGl4ZWwpfTtcbiAgICAgIGxlZnQ6ICN7YmlnKC0kcGl4ZWwpfTtcbiAgXG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgI3tiaWcoJHBpeGVsKX0gKiAyKTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlICsgI3tiaWcoJHBpeGVsKX0gKiAyKTtcbiAgICB9XG4gIH1cblxuICBAY29udGVudDtcbn1cbiJdfQ== */
