/**
 * Strips the unit from a given number-unit-combination and returns the number.
 * @link: http://stackoverflow.com/a/12335841/1779999
 * @usage: parse-int(10px) => 10
 */
/**
   * Simply adds the em unit to a given number. This is used twice in the
   * function underneath, thus the need for a separate function.
   */
/**
   * Calculates em values for a given list of (px or em) values and a given em
   * base. Multiply base values for nested em structures (last @usage example).
   * @usage: em(10px, 1.125) => .55556em
   *         em(24px, .875em) => 1.71429em
   *         em(12px 0 7em rgba(0, 0, 0, .7), 1.75) => .42857em 0 4em rgba(0, 0, 0, 0.7)
   *         em(12px) + em(3em) => 3.75em
   *         em(23px, em(53px)) => .43396em
   *         em(24px, 1.5 * 1.125) => .88889em
   */
.add-to-cart-box {
  background-color: #f2f2f2;
  border-radius: 1.125rem;
  padding: 2rem 1rem;
  position: relative;
  margin: 0 auto; }
  @media (min-width: 768px) {
    .add-to-cart-box {
      max-width: 18.625rem; } }
  @media (min-width: 1280px) {
    .add-to-cart-box {
      padding: 2rem 1.375rem 1.375rem; } }
  .add-to-cart-box span.iso {
    position: absolute;
    top: 0.4rem;
    left: 0.4rem;
    border: 2px solid #222;
    border-radius: 100%;
    width: 28px;
    height: 28px;
    display: block;
    text-align: center;
    font-size: 0.9rem;
    line-height: 24px; }
  .add-to-cart-box > a {
    color: #000;
    text-align: center;
    font-size: 1.125rem;
    width: 100%;
    display: block;
    margin-bottom: 1.375rem;
    font-weight: bold; }
  .add-to-cart-box .quantity-holder {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 1.5rem; }
    .add-to-cart-box .quantity-holder > div {
      width: calc(100% - 30px);
      max-width: 17.5rem;
      margin: 0 0.9375rem; }
      .add-to-cart-box .quantity-holder > div input {
        width: 100%;
        border: 0; }
    .add-to-cart-box .quantity-holder > span {
      border: 0.0625rem solid #0000004d;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 2.875rem;
              flex: 0 0 2.875rem;
      line-height: 2.75rem;
      border-radius: 100%;
      display: inline-block;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      cursor: pointer;
      text-align: center;
      -webkit-transition: all 0.25s ease-out;
      transition: all 0.25s ease-out; }
      .add-to-cart-box .quantity-holder > span:hover {
        border-color: #000; }
      .add-to-cart-box .quantity-holder > span:visited {
        border-color: #000;
        background-color: #fff; }
  .add-to-cart-box .price {
    width: 100%;
    background-color: #fff;
    border-radius: 1.25rem;
    padding: 0.75rem 0;
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 2rem; }
  .add-to-cart-box .btn-holder {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly; }
    .add-to-cart-box .btn-holder a, .add-to-cart-box .btn-holder button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: space-evenly;
          -ms-flex-pack: space-evenly;
              justify-content: space-evenly;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      height: 3rem;
      width: 100%;
      max-width: 17.1875rem;
      -webkit-box-flex: 0;
          -ms-flex: 0 1 47%;
              flex: 0 1 47%;
      text-align: center;
      line-height: 1.3;
      padding: .667em 1em; }
  .add-to-cart-box label {
    text-align: center;
    display: block;
    margin-bottom: 0.9375rem; }
  .add-to-cart-box input {
    position: relative;
    display: block;
    border-radius: 1.25rem;
    height: 2.75rem;
    text-align: center; }
  .add-to-cart-box input[type=number]::-webkit-inner-spin-button,
  .add-to-cart-box input[type=number]::-webkit-outer-spin-button {
    opacity: 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2Fzc2V0cy9zYXNzL3ZhcmlhYmxlcy9fc2l6aW5nLWZ1bmN0aW9ucy5zY3NzIiwiYmxvY2stYWRkLXRvLWNhcnQtYm94LmNzcyIsImJsb2NrLWFkZC10by1jYXJ0LWJveC5zY3NzIiwiLi4vLi4vLi4vYXNzZXRzL3Nhc3MvdmFyaWFibGVzL19jb2xvcnMuc2NzcyIsIi4uLy4uLy4uL2Fzc2V0cy9zYXNzL3ZhcmlhYmxlcy9fYnJlYWtwb2ludHMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTs7OztFQ0FFO0FEVUE7OztJQ05FO0FEbUJGOzs7Ozs7Ozs7SUNURTtBQ2hCSjtFQUNJLHlCQ1FhO0VEUGIsdUJGb0JzQjtFRW5CdEIsa0JGbUJzQjtFRWxCdEIsa0JBQWtCO0VBSWxCLGNBQWMsRUFBQTtFRXFDZDtJRjdDSjtNQU1RLG9CRmdCa0IsRUFBQSxFRWtJekI7RUV6Rkc7SUYvREo7TUFVUSwrQkZZa0IsRUFBQSxFRWtJekI7RUF4SkQ7SUFjUSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxZQUFZO0lBQ1osY0FBYztJQUNkLGtCQUFrQjtJQUNsQixpQkFBaUI7SUFDakIsaUJBQWlCLEVBQUE7RUF4QnpCO0lBMkJRLFdDdEJJO0lEdUJKLGtCQUFrQjtJQUNsQixtQkZQa0I7SUVRbEIsV0FBVztJQUNYLGNBQWM7SUFDZCx1QkZWa0I7SUVXbEIsaUJBQWlCLEVBQUE7RUFqQ3pCO0lBMENRLGtCQUFrQjtJQUNsQixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLFdBQVc7SUFFWCx3QkFBdUI7UUFBdkIscUJBQXVCO1lBQXZCLHVCQUF1QjtJQUN2QixxQkYxQmtCLEVBQUE7SUV0QjFCO01BbURZLHdCQUF3QjtNQUN4QixrQkY5QmM7TUUrQmQsbUJGL0JjLEVBQUE7TUV0QjFCO1FBd0RnQixXQUFXO1FBQ1gsU0FBUyxFQUFBO0lBekR6QjtNQThEWSxpQ0N0RFk7TUR1RFosbUJGekNjO1VFeUNkLHNCRnpDYztjRXlDZCxrQkZ6Q2M7TUUwQ2Qsb0JGMUNjO01FMkNkLG1CQUFtQjtNQUNuQixxQkFBcUI7TUFDckIsd0JBQXVCO1VBQXZCLHFCQUF1QjtjQUF2Qix1QkFBdUI7TUFDdkIseUJBQW1CO1VBQW5CLHNCQUFtQjtjQUFuQixtQkFBbUI7TUFDbkIsZUFBZTtNQUNmLGtCQUFrQjtNQUNsQixzQ0FBOEI7TUFBOUIsOEJBQThCLEVBQUE7TUF2RTFDO1FBMkVnQixrQkN0RUosRUFBQTtNRExaO1FBK0VnQixrQkMxRUo7UUQyRUksc0JDOUVKLEVBQUE7RURGWjtJQXNGUSxXQUFXO0lBQ1gsc0JDckZJO0lEc0ZKLHNCRmxFa0I7SUVtRWxCLGtCQUFrQjtJQUNsQixpQkZwRWtCO0lFcUVsQixrQkFBa0I7SUFDbEIsbUJGdEVrQixFQUFBO0VFdEIxQjtJQW9HUSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLDhCQUE2QjtRQUE3QiwyQkFBNkI7WUFBN0IsNkJBQTZCLEVBQUE7SUFyR3JDO01BdUdZLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhO01BQ2IsOEJBQTZCO1VBQTdCLDJCQUE2QjtjQUE3Qiw2QkFBNkI7TUFDN0IseUJBQW1CO1VBQW5CLHNCQUFtQjtjQUFuQixtQkFBbUI7TUFDbkIsWUZwRmM7TUVxRmQsV0FBVztNQUNYLHFCRnRGYztNRXVGZCxtQkFBYTtVQUFiLGlCQUFhO2NBQWIsYUFBYTtNQUNiLGtCQUFrQjtNQUNsQixnQkFBZ0I7TUFDaEIsbUJBQW1CLEVBQUE7RUFoSC9CO0lBNEhRLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2Qsd0JGeEdrQixFQUFBO0VFdEIxQjtJQWtJUSxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLHNCRjlHa0I7SUUrR2xCLGVGL0drQjtJRWdIbEIsa0JBQWtCLEVBQUE7RUF0STFCOztJQThJUSxVQUFVLEVBQUEiLCJmaWxlIjoiYmxvY2stYWRkLXRvLWNhcnQtYm94LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFBYIHRvIEVNL1JFTSAtIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2lzZWxsc29hcC84Mjk5NzI2XHJcblxyXG4kYmFzZS1mb250LXNpemU6IDE2cHg7XHJcblxyXG4vKipcclxuICogU3RyaXBzIHRoZSB1bml0IGZyb20gYSBnaXZlbiBudW1iZXItdW5pdC1jb21iaW5hdGlvbiBhbmQgcmV0dXJucyB0aGUgbnVtYmVyLlxyXG4gKiBAbGluazogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTIzMzU4NDEvMTc3OTk5OVxyXG4gKiBAdXNhZ2U6IHBhcnNlLWludCgxMHB4KSA9PiAxMFxyXG4gKi9cclxuXHJcbiBAZnVuY3Rpb24gcGFyc2UtaW50KCRudW1iZXIpIHtcclxuICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xyXG4gIH1cclxuICBcclxuICAvKipcclxuICAgKiBTaW1wbHkgYWRkcyB0aGUgZW0gdW5pdCB0byBhIGdpdmVuIG51bWJlci4gVGhpcyBpcyB1c2VkIHR3aWNlIGluIHRoZVxyXG4gICAqIGZ1bmN0aW9uIHVuZGVybmVhdGgsIHRodXMgdGhlIG5lZWQgZm9yIGEgc2VwYXJhdGUgZnVuY3Rpb24uXHJcbiAgICovXHJcbiAgXHJcbiAgQGZ1bmN0aW9uIGFkZC1lbS11bml0KCRudW1iZXIpIHtcclxuICAgIEByZXR1cm4gJG51bWJlciAqIDFlbTtcclxuICB9XHJcbiAgXHJcbiAgQGZ1bmN0aW9uIGFkZC1yZW0tdW5pdCgkbnVtYmVyKSB7XHJcbiAgICBAcmV0dXJuICRudW1iZXIgKiAxcmVtO1xyXG4gIH1cclxuICBcclxuICAvKipcclxuICAgKiBDYWxjdWxhdGVzIGVtIHZhbHVlcyBmb3IgYSBnaXZlbiBsaXN0IG9mIChweCBvciBlbSkgdmFsdWVzIGFuZCBhIGdpdmVuIGVtXHJcbiAgICogYmFzZS4gTXVsdGlwbHkgYmFzZSB2YWx1ZXMgZm9yIG5lc3RlZCBlbSBzdHJ1Y3R1cmVzIChsYXN0IEB1c2FnZSBleGFtcGxlKS5cclxuICAgKiBAdXNhZ2U6IGVtKDEwcHgsIDEuMTI1KSA9PiAuNTU1NTZlbVxyXG4gICAqICAgICAgICAgZW0oMjRweCwgLjg3NWVtKSA9PiAxLjcxNDI5ZW1cclxuICAgKiAgICAgICAgIGVtKDEycHggMCA3ZW0gcmdiYSgwLCAwLCAwLCAuNyksIDEuNzUpID0+IC40Mjg1N2VtIDAgNGVtIHJnYmEoMCwgMCwgMCwgMC43KVxyXG4gICAqICAgICAgICAgZW0oMTJweCkgKyBlbSgzZW0pID0+IDMuNzVlbVxyXG4gICAqICAgICAgICAgZW0oMjNweCwgZW0oNTNweCkpID0+IC40MzM5NmVtXHJcbiAgICogICAgICAgICBlbSgyNHB4LCAxLjUgKiAxLjEyNSkgPT4gLjg4ODg5ZW1cclxuICAgKi9cclxuICBcclxuICBAZnVuY3Rpb24gZW0oJHZhbHVlcywgJGVtLWJhc2U6IDEpIHtcclxuICAgICRiYXNlLWZvbnQtc2l6ZTogcGFyc2UtaW50KCRiYXNlLWZvbnQtc2l6ZSk7XHJcbiAgICAkZW0tYmFzZTogcGFyc2UtaW50KCRlbS1iYXNlKTtcclxuICAgICRyZXN1bHQ6ICgpO1xyXG4gIFxyXG4gICAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xyXG4gICAgICBAaWYgJHZhbHVlID09IDAgb3IgdHlwZS1vZigkdmFsdWUpICE9IFwibnVtYmVyXCIge1xyXG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkdmFsdWUpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkdW5pdDogdW5pdCgkdmFsdWUpO1xyXG4gICAgICAgICR2YWx1ZTogcGFyc2UtaW50KCR2YWx1ZSk7XHJcbiAgXHJcbiAgICAgICAgQGlmICR1bml0ID09IFwicHhcIiB7XHJcbiAgICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgYWRkLWVtLXVuaXQoJHZhbHVlIC8gKCRiYXNlLWZvbnQtc2l6ZSAqICRlbS1iYXNlKSkpO1xyXG4gICAgICAgIH0gQGVsc2UgaWYgJHVuaXQgPT0gXCJlbVwiIHtcclxuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtZW0tdW5pdCgkdmFsdWUgLyAkZW0tYmFzZSkpO1xyXG4gICAgICAgIH0gQGVsc2UgaWYgJHVuaXQgPT0gXCJcIiB7XHJcbiAgICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgYWRkLWVtLXVuaXQoJHZhbHVlIC8gKCRiYXNlLWZvbnQtc2l6ZSAqICRlbS1iYXNlKSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgLyoqXHJcbiAgICAgKiBJZiBvbmx5IG9uZSB2YWx1ZSBpcyBwcm92aWRlZCwgb3V0cHV0IHRoZSBpbnN0YW5jZSBvZiB0aGF0IG9iamVjdCBpbnN0ZWFkXHJcbiAgICAgKiBvZiB0aGUgd2hvbGUgbGlzdC4gVGhpcyBlbmFibGVzIHVzZSBjYXNlcyBsaWtlIG5lc3RlZCBmdW5jdGlvbiBpbnZvY2F0aW9uc1xyXG4gICAgICogKGUuZy4gYGVtKDJweCwgZW0oMTVweCkpYCkgb3IgYWRkaXRpb25zL3N1YnRyYWN0aW9ucyAoZS5nLiBgZW0oNXB4KSArIGVtKDMycHgpYCkuXHJcbiAgICAgKi9cclxuICAgIEBpZiBsZW5ndGgoJHJlc3VsdCkgPT0gMSB7XHJcbiAgICAgIEByZXR1cm4gbnRoKCRyZXN1bHQsIDEpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIEByZXR1cm4gJHJlc3VsdDtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgQGZ1bmN0aW9uIHJlbSgkdmFsdWVzLCAkZW0tYmFzZTogMSkge1xyXG4gICAgJGJhc2UtZm9udC1zaXplOiBwYXJzZS1pbnQoJGJhc2UtZm9udC1zaXplKTtcclxuICAgICRlbS1iYXNlOiBwYXJzZS1pbnQoJGVtLWJhc2UpO1xyXG4gICAgJHJlc3VsdDogKCk7XHJcbiAgXHJcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XHJcbiAgICAgIEBpZiAkdmFsdWUgPT0gMCBvciB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudW1iZXJcIiB7XHJcbiAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2YWx1ZSk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICR1bml0OiB1bml0KCR2YWx1ZSk7XHJcbiAgICAgICAgJHZhbHVlOiBwYXJzZS1pbnQoJHZhbHVlKTtcclxuICBcclxuICAgICAgICBAaWYgJHVuaXQgPT0gXCJweFwiIHtcclxuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtcmVtLXVuaXQoJHZhbHVlIC8gKCRiYXNlLWZvbnQtc2l6ZSAqICRlbS1iYXNlKSkpO1xyXG4gICAgICAgIH0gQGVsc2UgaWYgJHVuaXQgPT0gXCJlbVwiIHtcclxuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtcmVtLXVuaXQoJHZhbHVlIC8gJGVtLWJhc2UpKTtcclxuICAgICAgICB9IEBlbHNlIGlmICR1bml0ID09IFwiXCIge1xyXG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGFkZC1yZW0tdW5pdCgkdmFsdWUgLyAoJGJhc2UtZm9udC1zaXplICogJGVtLWJhc2UpKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICAvKipcclxuICAgICAqIElmIG9ubHkgb25lIHZhbHVlIGlzIHByb3ZpZGVkLCBvdXRwdXQgdGhlIGluc3RhbmNlIG9mIHRoYXQgb2JqZWN0IGluc3RlYWRcclxuICAgICAqIG9mIHRoZSB3aG9sZSBsaXN0LiBUaGlzIGVuYWJsZXMgdXNlIGNhc2VzIGxpa2UgbmVzdGVkIGZ1bmN0aW9uIGludm9jYXRpb25zXHJcbiAgICAgKiAoZS5nLiBgZW0oMnB4LCBlbSgxNXB4KSlgKSBvciBhZGRpdGlvbnMvc3VidHJhY3Rpb25zIChlLmcuIGBlbSg1cHgpICsgZW0oMzJweClgKS5cclxuICAgICAqL1xyXG4gICAgQGlmIGxlbmd0aCgkcmVzdWx0KSA9PSAxIHtcclxuICAgICAgQHJldHVybiBudGgoJHJlc3VsdCwgMSk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQHJldHVybiAkcmVzdWx0O1xyXG4gICAgfVxyXG4gIH0iLCIvKipcclxuICogU3RyaXBzIHRoZSB1bml0IGZyb20gYSBnaXZlbiBudW1iZXItdW5pdC1jb21iaW5hdGlvbiBhbmQgcmV0dXJucyB0aGUgbnVtYmVyLlxyXG4gKiBAbGluazogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTIzMzU4NDEvMTc3OTk5OVxyXG4gKiBAdXNhZ2U6IHBhcnNlLWludCgxMHB4KSA9PiAxMFxyXG4gKi9cbi8qKlxyXG4gICAqIFNpbXBseSBhZGRzIHRoZSBlbSB1bml0IHRvIGEgZ2l2ZW4gbnVtYmVyLiBUaGlzIGlzIHVzZWQgdHdpY2UgaW4gdGhlXHJcbiAgICogZnVuY3Rpb24gdW5kZXJuZWF0aCwgdGh1cyB0aGUgbmVlZCBmb3IgYSBzZXBhcmF0ZSBmdW5jdGlvbi5cclxuICAgKi9cbi8qKlxyXG4gICAqIENhbGN1bGF0ZXMgZW0gdmFsdWVzIGZvciBhIGdpdmVuIGxpc3Qgb2YgKHB4IG9yIGVtKSB2YWx1ZXMgYW5kIGEgZ2l2ZW4gZW1cclxuICAgKiBiYXNlLiBNdWx0aXBseSBiYXNlIHZhbHVlcyBmb3IgbmVzdGVkIGVtIHN0cnVjdHVyZXMgKGxhc3QgQHVzYWdlIGV4YW1wbGUpLlxyXG4gICAqIEB1c2FnZTogZW0oMTBweCwgMS4xMjUpID0+IC41NTU1NmVtXHJcbiAgICogICAgICAgICBlbSgyNHB4LCAuODc1ZW0pID0+IDEuNzE0MjllbVxyXG4gICAqICAgICAgICAgZW0oMTJweCAwIDdlbSByZ2JhKDAsIDAsIDAsIC43KSwgMS43NSkgPT4gLjQyODU3ZW0gMCA0ZW0gcmdiYSgwLCAwLCAwLCAwLjcpXHJcbiAgICogICAgICAgICBlbSgxMnB4KSArIGVtKDNlbSkgPT4gMy43NWVtXHJcbiAgICogICAgICAgICBlbSgyM3B4LCBlbSg1M3B4KSkgPT4gLjQzMzk2ZW1cclxuICAgKiAgICAgICAgIGVtKDI0cHgsIDEuNSAqIDEuMTI1KSA9PiAuODg4ODllbVxyXG4gICAqL1xuLmFkZC10by1jYXJ0LWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gIGJvcmRlci1yYWRpdXM6IDEuMTI1cmVtO1xuICBwYWRkaW5nOiAycmVtIDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFkZC10by1jYXJ0LWJveCB7XG4gICAgICBtYXgtd2lkdGg6IDE4LjYyNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuYWRkLXRvLWNhcnQtYm94IHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMS4zNzVyZW0gMS4zNzVyZW07IH0gfVxuICAuYWRkLXRvLWNhcnQtYm94IHNwYW4uaXNvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjRyZW07XG4gICAgbGVmdDogMC40cmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG4gIC5hZGQtdG8tY2FydC1ib3ggPiBhIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxLjM3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuYWRkLXRvLWNhcnQtYm94IC5xdWFudGl0eS1ob2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgLmFkZC10by1jYXJ0LWJveCAucXVhbnRpdHktaG9sZGVyID4gZGl2IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgIG1heC13aWR0aDogMTcuNXJlbTtcbiAgICAgIG1hcmdpbjogMCAwLjkzNzVyZW07IH1cbiAgICAgIC5hZGQtdG8tY2FydC1ib3ggLnF1YW50aXR5LWhvbGRlciA+IGRpdiBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7IH1cbiAgICAuYWRkLXRvLWNhcnQtYm94IC5xdWFudGl0eS1ob2xkZXIgPiBzcGFuIHtcbiAgICAgIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDAwMDA0ZDtcbiAgICAgIGZsZXg6IDAgMCAyLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjc1cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDsgfVxuICAgICAgLmFkZC10by1jYXJ0LWJveCAucXVhbnRpdHktaG9sZGVyID4gc3Bhbjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzAwMDsgfVxuICAgICAgLmFkZC10by1jYXJ0LWJveCAucXVhbnRpdHktaG9sZGVyID4gc3Bhbjp2aXNpdGVkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5hZGQtdG8tY2FydC1ib3ggLnByaWNlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gICAgcGFkZGluZzogMC43NXJlbSAwO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5hZGQtdG8tY2FydC1ib3ggLmJ0bi1ob2xkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgICAuYWRkLXRvLWNhcnQtYm94IC5idG4taG9sZGVyIGEsIC5hZGQtdG8tY2FydC1ib3ggLmJ0bi1ob2xkZXIgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTcuMTg3NXJlbTtcbiAgICAgIGZsZXg6IDAgMSA0NyU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgcGFkZGluZzogLjY2N2VtIDFlbTsgfVxuICAuYWRkLXRvLWNhcnQtYm94IGxhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5hZGQtdG8tY2FydC1ib3ggaW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMi43NXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmFkZC10by1jYXJ0LWJveCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIC5hZGQtdG8tY2FydC1ib3ggaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XHJcblxyXG4uYWRkLXRvLWNhcnQtYm94IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWJnO1xyXG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDE4KTtcclxuICAgIHBhZGRpbmc6IHJlbSgzMikgcmVtKDE2KTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtKDI5OCk7XHJcbiAgICB9XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XHJcbiAgICAgICAgcGFkZGluZzogcmVtKDMyKSByZW0oMjIpIHJlbSgyMik7XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5pc297XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMC40cmVtO1xyXG4gICAgICAgIGxlZnQ6IDAuNHJlbTtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMjIyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgIH1cclxuICAgID4gYSB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XHJcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiByZW0oMjApO1xyXG4gICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IHJlbSgzMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5xdWFudGl0eS1ob2xkZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyNCk7XHJcblxyXG4gICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSgyODApO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgcmVtKDE1KTtcclxuXHJcbiAgICAgICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogcmVtKDEpIHNvbGlkICRib3JkZXItY29sb3I7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCByZW0oNDZweCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oNDRweCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjp2aXNpdGVkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcmljZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSgyMCk7XHJcbiAgICAgICAgcGFkZGluZzogcmVtKDEyKSAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMyKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcclxuICAgICAgICAgICAgLy9mb250LXNpemU6IHJlbSgzMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4taG9sZGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xyXG4gICAgICAgIGEgLCBidXR0b24ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDgpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oMjc1KTtcclxuICAgICAgICAgICAgZmxleDogMCAxIDQ3JTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAuNjY3ZW0gMWVtO1xyXG4gICAgICAgICAgICAmOmhvdmVye1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYXtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxhYmVse1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDIwKTtcclxuICAgICAgICBoZWlnaHQ6IHJlbSg0NCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XHJcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiByZW0oMzIpXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuICAgIGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLmJ1dHRvbiwgLmJ0bi13aGl0ZSwgLnByb2R1Y3QtaGVhZGluZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcclxuICAgICAgICAgICAgLy9mb250LXNpemU6IHJlbSgzMilcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuIiwiLy8gQWRkIHlvdXIgbWFpbiBjb2xvciB2YXJpYWJsZXMgaGVyZVxyXG5cclxuJGdyZXktdGV4dDogIzY0NjQ2NDtcclxuJGRhcmstZ3JleTogIzMzMzMzMztcclxuJHdoaXRlOiAjZmZmO1xyXG4kYWNjZW50LWNvbG9yOiAjNkVEODQ3O1xyXG4kYmx1ZTogIzRBOTdFNztcclxuJGJsYWNrOiAjMDAwO1xyXG4kbGlnaHQtYmx1ZTogI2RjZWFmOTtcclxuXHJcbiRib3JkZXItY29sb3I6ICMwMDAwMDA0ZDtcclxuJGdyZXktYmc6ICNmMmYyZjI7XHJcblxyXG4vLyBWYXJpYWJsZXMgZm9ybSBVbmRlcnNjb3Jlc1xyXG5cclxuLy9UaGUgbmV4dCBmZXcgc2hvdWxkIGJlIHJldmlzZWQgb24gcHJvamVjdCBzdGFydDpcclxuJGNvbG9yX190ZXh0LW1haW46ICRibGFjazsgLy8gTWFpbiB0ZXh0IGNvbG9yXHJcblxyXG4kY29sb3JfX2xpbms6ICMwMDg2ZTY7ICAvLyBMaW5rc1xyXG4kY29sb3JfX2xpbmstdmlzaXRlZDogbGlnaHRlbigkY29sb3JfX2xpbmssMTAlKTtcclxuJGNvbG9yX19saW5rLWhvdmVyOiAjNmQ2ZDZkO1xyXG4gXHJcbiRjb2xvcl9fYmFja2dyb3VuZC1ib2R5OiAkd2hpdGU7XHJcblxyXG5cclxuLy9CdXR0b25zXHJcbiRjb2xvcl9fdGV4dC1idXR0b246ICR3aGl0ZTtcclxuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjogIzMyMzczYztcclxuXHJcbiRjb2xvcl9fYmFja2dyb3VuZC1idXR0b24taG92ZXI6IGxpZ2h0ZW4oJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbiw0JSk7XHJcbiRjb2xvcl9fYmFja2dyb3VuZC1idXR0b24tZm9jdXM6IGxpZ2h0ZW4oJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbiw4JSk7XHJcblxyXG4vL0lucHV0c1xyXG4kY29sb3JfX2JvcmRlci1pbnB1dDogI2NjYztcclxuJGNvbG9yX19ib3JkZXItYWJicjogIzY2NjtcclxuJGNvbG9yX190ZXh0LXNjcmVlbjogIzIxNzU5YjtcclxuJGNvbG9yX190ZXh0LWlucHV0OiAjNjY2O1xyXG4kY29sb3JfX3RleHQtaW5wdXQtZm9jdXM6ICMxMTE7XHJcblxyXG5cclxuLy9UaGVzZSBjYW4gYmUgcmV2aXNlZCBvbiB0aGUgbW92ZSB3aGlsZSBkZXZlbG9waW5nOlxyXG4kY29sb3JfX2JhY2tncm91bmQtc2NyZWVuOiAjZjFmMWYxO1xyXG4kY29sb3JfX2JhY2tncm91bmQtaHI6ICNjY2M7XHJcbiRjb2xvcl9fYmFja2dyb3VuZC1wcmU6ICNlZWU7XHJcbiRjb2xvcl9fYmFja2dyb3VuZC1pbnM6ICNmZmY5YzA7XHJcblxyXG5cclxuXHJcbiIsIlxyXG4vLyBEZWZhdWx0IC0gMzIxIC0gNDAwXHJcblxyXG5AbWl4aW4gYnAoJHBvaW50KSB7XHJcblxyXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmV4eHN7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmV4c2Rvd257XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJHBvaW50ID09IHBob25leGx7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJHBvaW50ID09IHBob25lcG9ydHJhaXQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU2OHB4KXtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJHBvaW50ID09IHBob25lcG9ydHJhaXRPbmx5IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NjhweCkgYW5kIChtYXgtd2lkdGg6IDY3MHB4KXtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJHBvaW50ID09IHBob25lcG9ydHJhaXR4bE9ubHkge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpe1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXRkb3duIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCl7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpe1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXRsYW5kc2NhcGV7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpe1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXR4bHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpe1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRwb2ludCA9PSBsYXB0b3B4cyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KXtcclxuICAgICAgQGNvbnRlbnQ7IFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJHBvaW50ID09IGxhcHRvcCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KXtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkcG9pbnQgPT0gbGFwdG9weGwge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCl7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3B4cyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KXtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KXtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcHhsIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAyNTAwcHgpe1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG59Il19 */
