.calculator {
  padding: 35px 0 35px 0;
}
@media (max-width: 991.98px) {
  .calculator {
    padding: 22px 0 35px 0;
  }
}
.calculator__holder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: 40px;
}
@media (max-width: 991.98px) {
  .calculator__holder {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.calculator__col {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (max-width: 991.98px) {
  .calculator__col {
    width: 100%;
  }
}
.calculator__box {
  padding: 36px 32px 32px 32px;
  border: 1px solid #DEDEDE;
}
@media (max-width: 991.98px) {
  .calculator__box {
    padding: 29px 16px;
    max-width: 527px;
    margin: 0 auto;
  }
}
.calculator__box h3 {
  margin: 0 0 34px 0;
}
@media (max-width: 767.98px) {
  .calculator__box h3 {
    font-size: 26px;
  }
}
.calculator__info {
  color: #414042;
}
.calculator__info .title {
  margin: 0;
}
.calculator__info .paragraph-holder {
  margin: 38px 0 0 0;
}
@media (max-width: 991.98px) {
  .calculator__info .paragraph-holder {
    margin: 40px 0 0 0;
  }
}
.calculator__info .sub-title {
  margin: 0 0 20px 0;
}
.calculator__info p {
  line-height: 1.5;
}
.calculator__box-counter {
  padding: 24px;
  border-radius: 4px;
  background-color: rgba(235, 234, 228, 0.5);
}
@media (max-width: 575.98px) {
  .calculator__box-counter {
    padding: 24px 10px;
  }
}
.calculator__box-counter .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 16px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.calculator__box-counter .description {
  font-size: 14px;
  color: #414042;
}
.calculator__form {
  margin: 24px 0 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
.calculator__form .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
.calculator__form input,
.calculator__form select {
  width: 100%;
  background-color: #fff;
  border-radius: 4px;
  padding: 9px 15px 5px 15px;
  border: 1px solid #DEDEDE;
  font-size: 14px;
  color: #414042;
}
.calculator__form label {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 90px;
  text-align: right;
  font-size: 14px;
  color: #414042;
}
.calculator__form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: #fff;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEwLjAwMDQgMTIuODgxQzkuOTAwMDMgMTIuODgxIDkuODA2NTYgMTIuODY0OSA5LjcyMDAzIDEyLjgzMjlDOS42MzM1IDEyLjgwMDggOS41NTEyMSAxMi43NDU4IDkuNDczMTYgMTIuNjY3OUw1LjcyNzk1IDguOTIyNjZDNS42MTI2NyA4LjgwNzI0IDUuNTUzNjQgOC42NjIxNyA1LjU1MDg3IDguNDg3NDVDNS41NDgyMyA4LjMxMjg3IDUuNjA3MjUgOC4xNjUxNiA1LjcyNzk1IDguMDQ0MzJDNS44NDg3OCA3LjkyMzYzIDUuOTk1MTcgNy44NjMyOCA2LjE2NzEyIDcuODYzMjhDNi4zMzkwNiA3Ljg2MzI4IDYuNDg1NDUgNy45MjM2MyA2LjYwNjI4IDguMDQ0MzJMMTAuMDAwNCAxMS40Mzg3TDEzLjM5NDYgOC4wNDQzMkMxMy41MSA3LjkyOTA1IDEzLjY1NTEgNy44NzAwMiAxMy44Mjk4IDcuODY3MjRDMTQuMDA0NCA3Ljg2NDYgMTQuMTUyMSA3LjkyMzYzIDE0LjI3MjkgOC4wNDQzMkMxNC4zOTM2IDguMTY1MTYgMTQuNDU0IDguMzExNTUgMTQuNDU0IDguNDgzNDlDMTQuNDU0IDguNjU1NDMgMTQuMzkzNiA4LjgwMTgyIDE0LjI3MjkgOC45MjI2NkwxMC41Mjc3IDEyLjY2NzlDMTAuNDQ5NyAxMi43NDU4IDEwLjM2NzQgMTIuODAwOCAxMC4yODA5IDEyLjgzMjlDMTAuMTk0MyAxMi44NjQ5IDEwLjEwMDkgMTIuODgxIDEwLjAwMDQgMTIuODgxWiIgZmlsbD0iIzVGNjM2OCIvPgo8L3N2Zz4K");
  background-repeat: no-repeat;
  background-position-x: 97%;
  background-position-y: 5px;
}
@supports (-webkit-appearance:none){
.calculator__form select{background-image:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEwLjAwMDQgMTIuODgxQzkuOTAwMDMgMTIuODgxIDkuODA2NTYgMTIuODY0OSA5LjcyMDAzIDEyLjgzMjlDOS42MzM1IDEyLjgwMDggOS41NTEyMSAxMi43NDU4IDkuNDczMTYgMTIuNjY3OUw1LjcyNzk1IDguOTIyNjZDNS42MTI2NyA4LjgwNzI0IDUuNTUzNjQgOC42NjIxNyA1LjU1MDg3IDguNDg3NDVDNS41NDgyMyA4LjMxMjg3IDUuNjA3MjUgOC4xNjUxNiA1LjcyNzk1IDguMDQ0MzJDNS44NDg3OCA3LjkyMzYzIDUuOTk1MTcgNy44NjMyOCA2LjE2NzEyIDcuODYzMjhDNi4zMzkwNiA3Ljg2MzI4IDYuNDg1NDUgNy45MjM2MyA2LjYwNjI4IDguMDQ0MzJMMTAuMDAwNCAxMS40Mzg3TDEzLjM5NDYgOC4wNDQzMkMxMy41MSA3LjkyOTA1IDEzLjY1NTEgNy44NzAwMiAxMy44Mjk4IDcuODY3MjRDMTQuMDA0NCA3Ljg2NDYgMTQuMTUyMSA3LjkyMzYzIDE0LjI3MjkgOC4wNDQzMkMxNC4zOTM2IDguMTY1MTYgMTQuNDU0IDguMzExNTUgMTQuNDU0IDguNDgzNDlDMTQuNDU0IDguNjU1NDMgMTQuMzkzNiA4LjgwMTgyIDE0LjI3MjkgOC45MjI2NkwxMC41Mjc3IDEyLjY2NzlDMTAuNDQ5NyAxMi43NDU4IDEwLjM2NzQgMTIuODAwOCAxMC4yODA5IDEyLjgzMjlDMTAuMTk0MyAxMi44NjQ5IDEwLjEwMDkgMTIuODgxIDEwLjAwMDQgMTIuODgxWiIgZmlsbD0iIzVGNjM2OCIvPgo8L3N2Zz4K")}
}

 @media (max-width: 991.98px){

@supports (-webkit-appearance:none){

}

}

 @media (max-width: 767.98px){

@supports (-webkit-appearance:none){

}

}

 @media (max-width: 575.98px){

@supports (-webkit-appearance:none){

}

}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNhbGN1bGF0b3IvY2FsY3VsYXRvci5zY3NzIiwiY2FsY3VsYXRvci9jYWxjdWxhdG9yLmNzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi9zcmMvc2Nzcy9jb21wb25lbnRzL3ZhcnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTtFQUNJLHNCQUFBO0FDRko7QUMwRUk7RUZ6RUo7SUFJUSxzQkFBQTtFQ0ROO0FBQ0Y7QURHSTtFQUNJLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLDhCQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLGtCQUFBO0VBQ0EsU0FBQTtBQ0RSO0FDK0RJO0VGbEVBO0lBT1EsNEJBQUE7SUFBQSw2QkFBQTtRQUFBLDBCQUFBO1lBQUEsc0JBQUE7RUNBVjtBQUNGO0FER0k7RUFDSSxtQkFBQTtNQUFBLFdBQUE7VUFBQSxPQUFBO0FDRFI7QUN1REk7RUZ2REE7SUFJUSxXQUFBO0VDQVY7QUFDRjtBREdJO0VBQ0ksNEJBQUE7RUFDQSx5QkFBQTtBQ0RSO0FDOENJO0VGL0NBO0lBS1Esa0JBQUE7SUFDQSxnQkFBQTtJQUNBLGNBQUE7RUNBVjtBQUNGO0FERVE7RUFDSSxrQkFBQTtBQ0FaO0FDb0NJO0VGckNJO0lBSVEsZUFBQTtFQ0NkO0FBQ0Y7QURHSTtFQUNJLGNHQ0E7QUZGUjtBREdRO0VBQ0ksU0FBQTtBQ0RaO0FESVE7RUFDSSxrQkFBQTtBQ0ZaO0FDc0JJO0VGckJJO0lBSVEsa0JBQUE7RUNEZDtBQUNGO0FESVE7RUFDSSxrQkFBQTtBQ0ZaO0FES1E7RUFDSSxnQkFBQTtBQ0haO0FET0k7RUFDSSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSwwQ0FBQTtBQ0xSO0FDTUk7RUZKQTtJQU1RLGtCQUFBO0VDSlY7QUFDRjtBRE1RO0VBQ0ksb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxzQkFBQTtNQUFBLG1CQUFBO1VBQUEsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsbUJBQUE7TUFBQSxlQUFBO0FDSlo7QURPUTtFQUNJLGVHbkVIO0VIb0VHLGNHeENKO0FGbUNSO0FEU0k7RUFDSSxrQkFBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtNQUFBLDBCQUFBO1VBQUEsc0JBQUE7RUFDQSxTQUFBO0FDUFI7QURTUTtFQUNJLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsU0FBQTtBQ1BaO0FEVVE7O0VBRUksV0FBQTtFQUNBLHNCRy9ESDtFSGdFRyxrQkFBQTtFQUNBLDBCQUFBO0VBQ0EseUJBQUE7RUFDQSxlRzNGSDtFSDRGRyxjR2hFSjtBRndEUjtBRFdRO0VBQ0ksb0JBQUE7TUFBQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUFBO0VBQ0EsZUduR0g7RUhvR0csY0d4RUo7QUYrRFI7QURZUTtFQUNJLHdCQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkdsRkg7RUhtRkcsK2pDQUFBO0VBQ0EsNEJBQUE7RUFDQSwwQkFBQTtFQUNBLDBCQUFBO0FDVlo7QUFDQTtBQUNBLHlCQUF5Qiw4akNBQThqQztBQUN2bEM7O0NBRUM7O0FBRUQ7O0FBRUE7O0FBRUE7O0NBRUM7O0FBRUQ7O0FBRUE7O0FBRUE7O0NBRUM7O0FBRUQ7O0FBRUE7O0FBRUEiLCJmaWxlIjoiY2FsY3VsYXRvci9jYWxjdWxhdG9yLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi9zcmMvc2Nzcy9jb21wb25lbnRzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucyc7XG5cbi5jYWxjdWxhdG9yIHtcbiAgICBwYWRkaW5nOiAzNXB4IDAgMzVweCAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgIHBhZGRpbmc6IDIycHggMCAzNXB4IDA7XG4gICAgfVxuXG4gICAgJl9faG9sZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgIGdhcDogNDBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb2wge1xuICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib3gge1xuICAgICAgICBwYWRkaW5nOiAzNnB4IDMycHggMzJweCAzMnB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjREVERURFO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgcGFkZGluZzogMjlweCAxNnB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MjdweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzRweCAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbmZvIHtcbiAgICAgICAgY29sb3I6ICRncmF5O1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucGFyYWdyYXBoLWhvbGRlciB7XG4gICAgICAgICAgICBtYXJnaW46IDM4cHggMCAwIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWItdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYm94LWNvdW50ZXIge1xuICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yOiAjRUJFQUU0LCAkYWxwaGE6IDAuNSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNHB4IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgICAgICAgICBnYXA6IDE2cHg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XG4gICAgICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mb3JtIHtcbiAgICAgICAgbWFyZ2luOiAyNHB4IDAgMCAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDE2cHg7XG5cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0LFxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA5cHggMTVweCA1cHggMTVweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNERURFREU7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xuICAgICAgICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qQWlJR2hsYVdkb2REMGlNakVpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F5TVNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1pEMGlUVEV3TGpBd01EUWdNVEl1T0RneFF6a3VPVEF3TURNZ01USXVPRGd4SURrdU9EQTJOVFlnTVRJdU9EWTBPU0E1TGpjeU1EQXpJREV5TGpnek1qbERPUzQyTXpNMUlERXlMamd3TURnZ09TNDFOVEV5TVNBeE1pNDNORFU0SURrdU5EY3pNVFlnTVRJdU5qWTNPVXcxTGpjeU56azFJRGd1T1RJeU5qWkROUzQyTVRJMk55QTRMamd3TnpJMElEVXVOVFV6TmpRZ09DNDJOakl4TnlBMUxqVTFNRGczSURndU5EZzNORFZETlM0MU5EZ3lNeUE0TGpNeE1qZzNJRFV1TmpBM01qVWdPQzR4TmpVeE5pQTFMamN5TnprMUlEZ3VNRFEwTXpKRE5TNDRORGczT0NBM0xqa3lNell6SURVdU9UazFNVGNnTnk0NE5qTXlPQ0EyTGpFMk56RXlJRGN1T0RZek1qaEROaTR6TXprd05pQTNMamcyTXpJNElEWXVORGcxTkRVZ055NDVNak0yTXlBMkxqWXdOakk0SURndU1EUTBNekpNTVRBdU1EQXdOQ0F4TVM0ME16ZzNUREV6TGpNNU5EWWdPQzR3TkRRek1rTXhNeTQxTVNBM0xqa3lPVEExSURFekxqWTFOVEVnTnk0NE56QXdNaUF4TXk0NE1qazRJRGN1T0RZM01qUkRNVFF1TURBME5DQTNMamcyTkRZZ01UUXVNVFV5TVNBM0xqa3lNell6SURFMExqSTNNamtnT0M0d05EUXpNa014TkM0ek9UTTJJRGd1TVRZMU1UWWdNVFF1TkRVMElEZ3VNekV4TlRVZ01UUXVORFUwSURndU5EZ3pORGxETVRRdU5EVTBJRGd1TmpVMU5ETWdNVFF1TXprek5pQTRMamd3TVRneUlERTBMakkzTWprZ09DNDVNakkyTmt3eE1DNDFNamMzSURFeUxqWTJOemxETVRBdU5EUTVOeUF4TWk0M05EVTRJREV3TGpNMk56UWdNVEl1T0RBd09DQXhNQzR5T0RBNUlERXlMamd6TWpsRE1UQXVNVGswTXlBeE1pNDROalE1SURFd0xqRXdNRGtnTVRJdU9EZ3hJREV3TGpBd01EUWdNVEl1T0RneFdpSWdabWxzYkQwaUl6VkdOak0yT0NJdlBnbzhMM04yWno0S1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDk3JTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNXB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi5jYWxjdWxhdG9yIHtcbiAgcGFkZGluZzogMzVweCAwIDM1cHggMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuY2FsY3VsYXRvciB7XG4gICAgcGFkZGluZzogMjJweCAwIDM1cHggMDtcbiAgfVxufVxuLmNhbGN1bGF0b3JfX2hvbGRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBnYXA6IDQwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNhbGN1bGF0b3JfX2hvbGRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLmNhbGN1bGF0b3JfX2NvbCB7XG4gIGZsZXg6IDE7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNhbGN1bGF0b3JfX2NvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5jYWxjdWxhdG9yX19ib3gge1xuICBwYWRkaW5nOiAzNnB4IDMycHggMzJweCAzMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjREVERURFO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5jYWxjdWxhdG9yX19ib3gge1xuICAgIHBhZGRpbmc6IDI5cHggMTZweDtcbiAgICBtYXgtd2lkdGg6IDUyN3B4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uY2FsY3VsYXRvcl9fYm94IGgzIHtcbiAgbWFyZ2luOiAwIDAgMzRweCAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5jYWxjdWxhdG9yX19ib3ggaDMge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgfVxufVxuLmNhbGN1bGF0b3JfX2luZm8ge1xuICBjb2xvcjogIzQxNDA0Mjtcbn1cbi5jYWxjdWxhdG9yX19pbmZvIC50aXRsZSB7XG4gIG1hcmdpbjogMDtcbn1cbi5jYWxjdWxhdG9yX19pbmZvIC5wYXJhZ3JhcGgtaG9sZGVyIHtcbiAgbWFyZ2luOiAzOHB4IDAgMCAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5jYWxjdWxhdG9yX19pbmZvIC5wYXJhZ3JhcGgtaG9sZGVyIHtcbiAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gIH1cbn1cbi5jYWxjdWxhdG9yX19pbmZvIC5zdWItdGl0bGUge1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG59XG4uY2FsY3VsYXRvcl9faW5mbyBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5jYWxjdWxhdG9yX19ib3gtY291bnRlciB7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzUsIDIzNCwgMjI4LCAwLjUpO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5jYWxjdWxhdG9yX19ib3gtY291bnRlciB7XG4gICAgcGFkZGluZzogMjRweCAxMHB4O1xuICB9XG59XG4uY2FsY3VsYXRvcl9fYm94LWNvdW50ZXIgLnRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGVuZDtcbiAgZ2FwOiAxNnB4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uY2FsY3VsYXRvcl9fYm94LWNvdW50ZXIgLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzQxNDA0Mjtcbn1cbi5jYWxjdWxhdG9yX19mb3JtIHtcbiAgbWFyZ2luOiAyNHB4IDAgMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE2cHg7XG59XG4uY2FsY3VsYXRvcl9fZm9ybSAucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxNnB4O1xufVxuLmNhbGN1bGF0b3JfX2Zvcm0gaW5wdXQsXG4uY2FsY3VsYXRvcl9fZm9ybSBzZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiA5cHggMTVweCA1cHggMTVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RFREVERTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzQxNDA0Mjtcbn1cbi5jYWxjdWxhdG9yX19mb3JtIGxhYmVsIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiA5MHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzQxNDA0Mjtcbn1cbi5jYWxjdWxhdG9yX19mb3JtIHNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNakFpSUdobGFXZG9kRDBpTWpFaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeU1TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRFd0xqQXdNRFFnTVRJdU9EZ3hRemt1T1RBd01ETWdNVEl1T0RneElEa3VPREEyTlRZZ01USXVPRFkwT1NBNUxqY3lNREF6SURFeUxqZ3pNamxET1M0Mk16TTFJREV5TGpnd01EZ2dPUzQxTlRFeU1TQXhNaTQzTkRVNElEa3VORGN6TVRZZ01USXVOalkzT1V3MUxqY3lOemsxSURndU9USXlOalpETlM0Mk1USTJOeUE0TGpnd056STBJRFV1TlRVek5qUWdPQzQyTmpJeE55QTFMalUxTURnM0lEZ3VORGczTkRWRE5TNDFORGd5TXlBNExqTXhNamczSURVdU5qQTNNalVnT0M0eE5qVXhOaUExTGpjeU56azFJRGd1TURRME16SkROUzQ0TkRnM09DQTNMamt5TXpZeklEVXVPVGsxTVRjZ055NDROak15T0NBMkxqRTJOekV5SURjdU9EWXpNamhETmk0ek16a3dOaUEzTGpnMk16STRJRFl1TkRnMU5EVWdOeTQ1TWpNMk15QTJMall3TmpJNElEZ3VNRFEwTXpKTU1UQXVNREF3TkNBeE1TNDBNemczVERFekxqTTVORFlnT0M0d05EUXpNa014TXk0MU1TQTNMamt5T1RBMUlERXpMalkxTlRFZ055NDROekF3TWlBeE15NDRNams0SURjdU9EWTNNalJETVRRdU1EQTBOQ0EzTGpnMk5EWWdNVFF1TVRVeU1TQTNMamt5TXpZeklERTBMakkzTWprZ09DNHdORFF6TWtNeE5DNHpPVE0ySURndU1UWTFNVFlnTVRRdU5EVTBJRGd1TXpFeE5UVWdNVFF1TkRVMElEZ3VORGd6TkRsRE1UUXVORFUwSURndU5qVTFORE1nTVRRdU16a3pOaUE0TGpnd01UZ3lJREUwTGpJM01qa2dPQzQ1TWpJMk5rd3hNQzQxTWpjM0lERXlMalkyTnpsRE1UQXVORFE1TnlBeE1pNDNORFU0SURFd0xqTTJOelFnTVRJdU9EQXdPQ0F4TUM0eU9EQTVJREV5TGpnek1qbERNVEF1TVRrME15QXhNaTQ0TmpRNUlERXdMakV3TURrZ01USXVPRGd4SURFd0xqQXdNRFFnTVRJdU9EZ3hXaUlnWm1sc2JEMGlJelZHTmpNMk9DSXZQZ284TDNOMlp6NEtcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teDogOTclO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDVweDtcbn1cbkBzdXBwb3J0cyAoLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmUpe1xuLmNhbGN1bGF0b3JfX2Zvcm0gc2VsZWN0e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpBaUlHaGxhV2RvZEQwaU1qRWlJSFpwWlhkQ2IzZzlJakFnTUNBeU1DQXlNU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S1BIQmhkR2dnWkQwaVRURXdMakF3TURRZ01USXVPRGd4UXprdU9UQXdNRE1nTVRJdU9EZ3hJRGt1T0RBMk5UWWdNVEl1T0RZME9TQTVMamN5TURBeklERXlMamd6TWpsRE9TNDJNek0xSURFeUxqZ3dNRGdnT1M0MU5URXlNU0F4TWk0M05EVTRJRGt1TkRjek1UWWdNVEl1TmpZM09VdzFMamN5TnprMUlEZ3VPVEl5TmpaRE5TNDJNVEkyTnlBNExqZ3dOekkwSURVdU5UVXpOalFnT0M0Mk5qSXhOeUExTGpVMU1EZzNJRGd1TkRnM05EVkROUzQxTkRneU15QTRMak14TWpnM0lEVXVOakEzTWpVZ09DNHhOalV4TmlBMUxqY3lOemsxSURndU1EUTBNekpETlM0NE5EZzNPQ0EzTGpreU16WXpJRFV1T1RrMU1UY2dOeTQ0TmpNeU9DQTJMakUyTnpFeUlEY3VPRFl6TWpoRE5pNHpNemt3TmlBM0xqZzJNekk0SURZdU5EZzFORFVnTnk0NU1qTTJNeUEyTGpZd05qSTRJRGd1TURRME16Sk1NVEF1TURBd05DQXhNUzQwTXpnM1RERXpMak01TkRZZ09DNHdORFF6TWtNeE15NDFNU0EzTGpreU9UQTFJREV6TGpZMU5URWdOeTQ0TnpBd01pQXhNeTQ0TWprNElEY3VPRFkzTWpSRE1UUXVNREEwTkNBM0xqZzJORFlnTVRRdU1UVXlNU0EzTGpreU16WXpJREUwTGpJM01qa2dPQzR3TkRRek1rTXhOQzR6T1RNMklEZ3VNVFkxTVRZZ01UUXVORFUwSURndU16RXhOVFVnTVRRdU5EVTBJRGd1TkRnek5EbERNVFF1TkRVMElEZ3VOalUxTkRNZ01UUXVNemt6TmlBNExqZ3dNVGd5SURFMExqSTNNamtnT0M0NU1qSTJOa3d4TUM0MU1qYzNJREV5TGpZMk56bERNVEF1TkRRNU55QXhNaTQzTkRVNElERXdMak0yTnpRZ01USXVPREF3T0NBeE1DNHlPREE1SURFeUxqZ3pNamxETVRBdU1UazBNeUF4TWk0NE5qUTVJREV3TGpFd01Ea2dNVEl1T0RneElERXdMakF3TURRZ01USXVPRGd4V2lJZ1ptbHNiRDBpSXpWR05qTTJPQ0l2UGdvOEwzTjJaejRLXCIpfVxufVxuXG4gQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KXtcblxuQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6bm9uZSl7XG5cbn1cblxufVxuXG4gQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KXtcblxuQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6bm9uZSl7XG5cbn1cblxufVxuXG4gQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KXtcblxuQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6bm9uZSl7XG5cbn1cblxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyaWQuXG4kZ3JpZC1icmVha3BvaW50czogKFxuXHR4czogMCxcblx0c206IDU3NnB4LFxuXHRtZDogNzY4cHgsXG5cdGxnOiA5OTJweCxcblx0eGw6IDEyMDBweFxuKTtcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuXHRzbTogNTQwcHgsXG5cdG1kOiA3MjBweCxcblx0bGc6IDk2MHB4LFxuXHR4bDogMTE0MHB4XG4pO1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAyMHB4O1xuXG4vLyBGb250IGZhbWlsaWVzLlxuJGZmXHRcdFx0OiBcIlNvdXJjZSBTYW5zIDNcIiwgc2VyaWY7XG4kZmYtdGl0bGVcdDogXCJTb3VyY2UgU2FucyAzXCIsIHNlcmlmO1xuXG4vLyBGb250IHNpemVzLlxuJGZzLXhzXHQ6IDEycHg7XG4kZnMtc21cdDogMTRweDtcbiRmcy1tZFx0OiAxNnB4O1xuJGZzLWxnXHQ6IDE4cHg7XG4kZnMteGxcdDogMjBweDtcblxuJGZzLWgxIDogNjRweDtcbiRmcy1oMiA6IDMycHg7XG4kZnMtaDMgOiAyNHB4O1xuJGZzLWg0IDogMThweDtcblxuLy8gRm9udCB3ZWlnaHRzLlxuJGZ3LWxpZ2h0XHRcdDogMzAwO1xuJGZ3LXJlZ3VsYXJcdFx0OiA0MDA7XG4kZnctbWVkaXVtXHRcdDogNTAwO1xuJGZ3LXNlbWlib2xkXHQ6IDYwMDtcbiRmdy1ib2xkXHRcdDogNzAwO1xuJGZ3LWV4dHJhYm9sZFx0OiA4MDA7XG4kZnctYmxhY2tcdFx0OiA5MDA7XG5cbi8vIExpbmUgaGVpZ2h0cy5cbiRsaFx0XHRcdDogMS40O1xuJGxoLXRpdGxlXHQ6IDEuMjtcblxuLy8gQ29sb3JzLlxuJHdoaXRlXHQ6ICNmZmY7XG4kYmxhY2tcdDogIzAwMDtcbiRnb2xkZW4gOiAjQjU3ODM1O1xuJGRhcmtncmVlbiA6ICMyOTNBNDI7XG4kZ3JheSA6ICM0MTQwNDI7XG4kY2FyYW1lbCA6ICNFMURBRDI7XG5cbi8vIE90aGVycy5cbiR0clx0XHQ6IDAuMzVzO1xuJHJhZGl1c1x0OiA1cHg7Il19 */
