/**
 * 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
 */
.ff-trial-fonts-form {
  container-name: ff-trial-form;
  container-type: inline-size;
  border-radius: 2rem;
  overflow: hidden;
  margin-bottom: 3rem;
}
.ff-trial-fonts-form__inner {
  padding: 3rem 2rem;
}
.ff-trial-fonts-form__heading {
  margin-top: 0;
  margin-bottom: 1.5rem;
  max-width: 32.5rem;
}
.ff-trial-fonts-form__inner > p:not([class]) {
  margin: 0 0 2.25rem;
  max-width: 32.5rem;
  font-size: 1rem;
}
.ff-trial-fonts-form .ff-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem 2rem;
  margin: 0;
}
.ff-trial-fonts-form .ff-form > p:first-of-type {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
  margin: 0;
}
@media (min-width: 768px) {
  .ff-trial-fonts-form .ff-form > p:first-of-type {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.ff-trial-fonts-form .ff-form > p:first-of-type .fname,
.ff-trial-fonts-form .ff-form > p:first-of-type .email {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
  margin: 0;
}
.ff-trial-fonts-form .ff-form .red-button {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0;
  font-size: 1.125rem;
}
.ff-trial-fonts-form .ff-form .ff-checkbox {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 20rem;
          flex: 1 1 20rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.75rem;
  margin: 0;
}
.ff-trial-fonts-form .ff-form .ff-checkbox .styled-checkbox {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0;
}
.ff-trial-fonts-form .ff-form .ff-checkbox label {
  margin: 0;
  line-height: 1.35;
  font-size: 0.75rem;
}
.ff-trial-fonts-form .ff-form svg,
.ff-trial-fonts-form .ff-form svg path {
  fill: #fff;
}
.ff-trial-fonts-form.is-bg-black {
  background-color: #000;
  color: #fff;
}
.ff-trial-fonts-form.is-bg-blue {
  background-color: #4000FF;
  color: #fff;
}
.ff-trial-fonts-form.is-bg-black .ff-trial-fonts-form__heading,
.ff-trial-fonts-form.is-bg-black .ff-form label,
.ff-trial-fonts-form.is-bg-black .ff-trial-fonts-form__inner > p:not([class]), .ff-trial-fonts-form.is-bg-blue .ff-trial-fonts-form__heading,
.ff-trial-fonts-form.is-bg-blue .ff-form label,
.ff-trial-fonts-form.is-bg-blue .ff-trial-fonts-form__inner > p:not([class]) {
  color: #fff;
}
.ff-trial-fonts-form.is-bg-light {
  background-color: transparent;
  color: #181818;
  border-radius: 0;
  margin-bottom: 0;
}
.ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner {
  padding: 0;
}
.ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__heading,
.ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner > p:not([class]) {
  color: #181818;
}
.ff-trial-fonts-form.is-bg-light .ff-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: #949494;
}
.ff-trial-fonts-form.is-bg-light .ff-field input {
  width: 100%;
  margin: 0;
  padding: 0.75rem 1rem;
  border: 1px solid #DCDCDC;
  border-radius: 0.25rem;
  background-color: #fff;
  font-size: 0.875rem;
  color: #181818;
}
.ff-trial-fonts-form.is-bg-light .ff-form label {
  color: #181818;
}
.ff-trial-fonts-form.is-bg-light .ff-form .ff-field {
  color: #949494;
}
.ff-trial-fonts-form.is-bg-light .ff-form .ff-checkbox {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.ff-trial-fonts-form.is-bg-light .ff-form .red-button {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  font-family: "Mont", Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
  padding: 0.625rem 2rem;
  border-radius: 5.625rem;
}
.ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__note {
  display: block;
  margin: 1rem 0 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #181818;
  text-decoration: underline;
}

.ff-trial-fonts-form.ff-trial-fonts-form .ff-trial-fonts-form__inner h2.ff-trial-fonts-form__heading {
  max-width: 32.5rem;
  margin: 0 0 1.5rem;
}

@container ff-trial-form (min-width: 900px) {
  .ff-trial-fonts-form__inner {
    display: grid;
    grid-template-columns: 483fr 439fr;
    grid-template-rows: 1fr auto auto 1fr;
    -webkit-column-gap: clamp(2rem, 15.221cqi, 12.9375rem);
       -moz-column-gap: clamp(2rem, 15.221cqi, 12.9375rem);
            column-gap: clamp(2rem, 15.221cqi, 12.9375rem);
    row-gap: 0;
    padding: clamp(3rem, 4.706cqi, 4rem) clamp(2.5rem, 8.456cqi, 7.1875rem);
  }
  .ff-trial-fonts-form__heading {
    grid-column: 1;
    grid-row: 2;
    max-width: none;
    margin: 0 0 1.5rem;
  }
  .ff-trial-fonts-form__inner > p:not([class]) {
    grid-column: 1;
    grid-row: 3;
    max-width: none;
    margin: 0;
  }
  .ff-trial-fonts-form .ff-form {
    grid-column: 2;
    grid-row: 1/-1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    align-self: center;
    gap: 1rem;
  }
  .ff-trial-fonts-form .ff-form > p:first-of-type {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
  .ff-trial-fonts-form .ff-form > p:first-of-type .fname,
  .ff-trial-fonts-form .ff-form > p:first-of-type .email {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 100%;
  }
  .ff-trial-fonts-form .ff-form .ff-checkbox {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    gap: 0.5rem;
  }
  .ff-trial-fonts-form .ff-form .red-button {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 100%;
    max-width: none;
    margin-top: 0.5rem;
    padding: 0.625rem 2rem;
  }
  .ff-trial-fonts-form.ff-trial-fonts-form .ff-trial-fonts-form__inner h2.ff-trial-fonts-form__heading {
    max-width: none;
    margin: 0 0 1.5rem;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto 1fr auto;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
    padding: 0;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner .ff-trial-fonts-form__heading,
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner > p:not([class]) {
    padding-right: clamp(0px, 10.177cqi, 7.1875rem);
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner .ff-trial-fonts-form__heading {
    grid-row: 1;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner > p:not([class]) {
    grid-row: 2;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner .ff-form {
    grid-row: 1/4;
    align-self: start;
    gap: 1.5rem;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner .ff-form > p:first-of-type {
    gap: 1rem;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner .ff-form .red-button {
    width: auto;
    -ms-flex-item-align: start;
        align-self: flex-start;
    margin-top: 0;
  }
  .ff-trial-fonts-form.is-bg-light .ff-trial-fonts-form__inner .ff-trial-fonts-form__note {
    grid-column: 2;
    grid-row: 4;
    margin-top: 2.5rem;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2Fzc2V0cy9zYXNzL3ZhcmlhYmxlcy9fc2l6aW5nLWZ1bmN0aW9ucy5zY3NzIiwiYmxvY2stdHJpYWwtZm9udHMtZm9ybS9zY3NzL2Jsb2NrLXRyaWFsLWZvbnRzLWZvcm0uc2NzcyIsImJsb2NrLXRyaWFsLWZvbnRzLWZvcm0vc2Nzcy9ibG9jay10cmlhbC1mb250cy1mb3JtLmNzcyIsIi4uLy4uL2Fzc2V0cy9zYXNzL3ZhcmlhYmxlcy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uL2Fzc2V0cy9zYXNzL3ZhcmlhYmxlcy9fY29sb3JzLnNjc3MiLCIuLi8uLi9hc3NldHMvc2Fzcy92YXJpYWJsZXMvX3R5cG9ncmFwaHkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQTs7OztFQUFBO0FBV0E7OztFQUFBO0FBYUE7Ozs7Ozs7OztFQUFBO0FDbEJBO0VBS0MsNkJBQUE7RUFDQSwyQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBQ0tEO0FESEM7RUFDQyxrQkFBQTtBQ0tGO0FERkM7RUFDQyxhQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtBQ0lGO0FEQ0M7RUFDQyxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtBQ0NGO0FER0M7RUFDQyxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLG1CQUFBO01BQUEsZUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtBQ0RGO0FESUU7RUFDQyxtQkFBQTtNQUFBLGtCQUFBO1VBQUEsY0FBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtNQUFBLDBCQUFBO1VBQUEsc0JBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtBQ0ZIO0FDQ0k7RUZKRjtJQVFFLDhCQUFBO0lBQUEsNkJBQUE7UUFBQSx1QkFBQTtZQUFBLG1CQUFBO0VDREY7QUFDRjtBREdHOztFQUVDLG1C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QSxrQkFBQTtZQUFBLGNBQUE7SUFDQSxXQUFBO0VDbEVGO0VEcUVDO0lBQ0MsNEJBQUE7UUFBQSxpQkFBQTtZQUFBLFFBQUE7SUFDQSxtQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0lBQ0Esa0JBQUE7SUFDQSxzQkFBQTtFQ25FRjtFRDBFQTtJQUNDLGVBQUE7SUFDQSxrQkFBQTtFQ3hFRDtFRGdGRDtJQUNDLDhCQUFBO0lBQ0Esc0NBQUE7SUFDQSwyQkFBQTtPQUFBLHdCQUFBO1lBQUEsbUJBQUE7SUFDQSxVQUFBO0VDOUVBO0VEZ0ZBOztJQUVDLCtDQUFBO0VDOUVEO0VEaUZBO0lBQ0MsV0FBQTtFQy9FRDtFRGtGQTtJQUNDLFdBQUE7RUNoRkQ7RURtRkE7SUFDQyxhQUFBO0lBQ0EsaUJBQUE7SUFDQSxXQUFBO0VDakZEO0VEbUZDO0lBQ0MsU0FBQTtFQ2pGRjtFRG9GQztJQUNDLFdBQUE7SUFDQSwwQkFBQTtRQUFBLHNCQUFBO0lBQ0EsYUFBQTtFQ2xGRjtFRHNGQTtJQUNDLGNBQUE7SUFDQSxXQUFBO0lBQ0Esa0JBQUE7RUNwRkQ7QUFDRiIsImZpbGUiOiJibG9jay10cmlhbC1mb250cy1mb3JtL3Njc3MvYmxvY2stdHJpYWwtZm9udHMtZm9ybS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBQWCB0byBFTS9SRU0gLSBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9pc2VsbHNvYXAvODI5OTcyNlxuXG4kYmFzZS1mb250LXNpemU6IDE2cHg7XG4kYnJvd3Nlci1kZXNrdG9wLWNvbnRleHQ6IDE5MjBweDtcblxuLyoqXG4gKiBTdHJpcHMgdGhlIHVuaXQgZnJvbSBhIGdpdmVuIG51bWJlci11bml0LWNvbWJpbmF0aW9uIGFuZCByZXR1cm5zIHRoZSBudW1iZXIuIFxuICogQGxpbms6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzEyMzM1ODQxLzE3Nzk5OTlcbiAqIEB1c2FnZTogcGFyc2UtaW50KDEwcHgpID0+IDEwXG4gKi9cbkB1c2UgJ3Nhc3M6bWF0aCc7XG5AZnVuY3Rpb24gcGFyc2UtaW50KCRudW1iZXIpIHtcblxuICBAcmV0dXJuIG1hdGguZGl2KCRudW1iZXIsICRudW1iZXIgKiAwICsgMSk7XG59XG5cbi8qKlxuICogU2ltcGx5IGFkZHMgdGhlIGVtIHVuaXQgdG8gYSBnaXZlbiBudW1iZXIuIFRoaXMgaXMgdXNlZCB0d2ljZSBpbiB0aGVcbiAqIGZ1bmN0aW9uIHVuZGVybmVhdGgsIHRodXMgdGhlIG5lZWQgZm9yIGEgc2VwYXJhdGUgZnVuY3Rpb24uXG4gKi9cblxuQGZ1bmN0aW9uIGFkZC1lbS11bml0KCRudW1iZXIpIHtcbiAgQHJldHVybiAkbnVtYmVyICogMWVtO1xufVxuXG5AZnVuY3Rpb24gYWRkLXJlbS11bml0KCRudW1iZXIpIHtcbiAgQHJldHVybiAkbnVtYmVyICogMXJlbTtcbn1cblxuLyoqXG4gKiBDYWxjdWxhdGVzIGVtIHZhbHVlcyBmb3IgYSBnaXZlbiBsaXN0IG9mIChweCBvciBlbSkgdmFsdWVzIGFuZCBhIGdpdmVuIGVtXG4gKiBiYXNlLiBNdWx0aXBseSBiYXNlIHZhbHVlcyBmb3IgbmVzdGVkIGVtIHN0cnVjdHVyZXMgKGxhc3QgQHVzYWdlIGV4YW1wbGUpLlxuICogQHVzYWdlOiBlbSgxMHB4LCAxLjEyNSkgPT4gLjU1NTU2ZW1cbiAqICAgICAgICAgZW0oMjRweCwgLjg3NWVtKSA9PiAxLjcxNDI5ZW1cbiAqICAgICAgICAgZW0oMTJweCAwIDdlbSByZ2JhKDAsIDAsIDAsIC43KSwgMS43NSkgPT4gLjQyODU3ZW0gMCA0ZW0gcmdiYSgwLCAwLCAwLCAwLjcpXG4gKiAgICAgICAgIGVtKDEycHgpICsgZW0oM2VtKSA9PiAzLjc1ZW1cbiAqICAgICAgICAgZW0oMjNweCwgZW0oNTNweCkpID0+IC40MzM5NmVtXG4gKiAgICAgICAgIGVtKDI0cHgsIDEuNSAqIDEuMTI1KSA9PiAuODg4ODllbVxuICovXG5cbkBmdW5jdGlvbiBlbSgkdmFsdWVzLCAkZW0tYmFzZTogMSkge1xuICAkYmFzZS1mb250LXNpemU6IHBhcnNlLWludCgkYmFzZS1mb250LXNpemUpO1xuICAkZW0tYmFzZTogcGFyc2UtaW50KCRlbS1iYXNlKTtcbiAgJHJlc3VsdDogKCk7XG5cbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCBvciB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudW1iZXJcIiB7XG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR1bml0OiB1bml0KCR2YWx1ZSk7XG4gICAgICAkdmFsdWU6IHBhcnNlLWludCgkdmFsdWUpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gXCJweFwiIHtcbiAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGFkZC1lbS11bml0KChjYWxjKCR2YWx1ZSAvICgkYmFzZS1mb250LXNpemUgKiAkZW0tYmFzZSkpKSkpO1xuICAgICAgfSBAZWxzZSBpZiAkdW5pdCA9PSBcImVtXCIge1xuICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgYWRkLWVtLXVuaXQoY2FsYygkdmFsdWUgLyAkZW0tYmFzZSkpKTtcbiAgICAgIH0gQGVsc2UgaWYgJHVuaXQgPT0gXCJcIiB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtZW0tdW5pdCgoY2FsYygkdmFsdWUgLyAoJGJhc2UtZm9udC1zaXplICogJGVtLWJhc2UpKSkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSWYgb25seSBvbmUgdmFsdWUgaXMgcHJvdmlkZWQsIG91dHB1dCB0aGUgaW5zdGFuY2Ugb2YgdGhhdCBvYmplY3QgaW5zdGVhZFxuICAgKiBvZiB0aGUgd2hvbGUgbGlzdC4gVGhpcyBlbmFibGVzIHVzZSBjYXNlcyBsaWtlIG5lc3RlZCBmdW5jdGlvbiBpbnZvY2F0aW9uc1xuICAgKiAoZS5nLiBgZW0oMnB4LCBlbSgxNXB4KSlgKSBvciBhZGRpdGlvbnMvc3VidHJhY3Rpb25zIChlLmcuIGBlbSg1cHgpICsgZW0oMzJweClgKS5cbiAgICovXG4gIEBpZiBsZW5ndGgoJHJlc3VsdCkgPT0gMSB7XG4gICAgQHJldHVybiBudGgoJHJlc3VsdCwgMSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHJlc3VsdDtcbiAgfVxufVxuXG5cbkBmdW5jdGlvbiByZW0oJHZhbHVlcywgJGVtLWJhc2U6IDEpIHtcbiAgJGJhc2UtZm9udC1zaXplOiBwYXJzZS1pbnQoJGJhc2UtZm9udC1zaXplKTtcbiAgJGVtLWJhc2U6IHBhcnNlLWludCgkZW0tYmFzZSk7XG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAgb3IgdHlwZS1vZigkdmFsdWUpICE9IFwibnVtYmVyXCIge1xuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkdW5pdDogdW5pdCgkdmFsdWUpO1xuICAgICAgJHZhbHVlOiBwYXJzZS1pbnQoJHZhbHVlKTtcblxuICAgICAgQGlmICR1bml0ID09IFwicHhcIiB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtcmVtLXVuaXQoKGNhbGMoJHZhbHVlIC8gKCRiYXNlLWZvbnQtc2l6ZSAqICRlbS1iYXNlKSkpKSk7XG4gICAgICB9IEBlbHNlIGlmICR1bml0ID09IFwiZW1cIiB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtcmVtLXVuaXQoY2FsYygkdmFsdWUgLyAkZW0tYmFzZSkpKTtcbiAgICAgIH0gQGVsc2UgaWYgJHVuaXQgPT0gXCJcIiB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtcmVtLXVuaXQoKGNhbGMoJHZhbHVlIC8gKCRiYXNlLWZvbnQtc2l6ZSAqICRlbS1iYXNlKSkpKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIElmIG9ubHkgb25lIHZhbHVlIGlzIHByb3ZpZGVkLCBvdXRwdXQgdGhlIGluc3RhbmNlIG9mIHRoYXQgb2JqZWN0IGluc3RlYWRcbiAgICogb2YgdGhlIHdob2xlIGxpc3QuIFRoaXMgZW5hYmxlcyB1c2UgY2FzZXMgbGlrZSBuZXN0ZWQgZnVuY3Rpb24gaW52b2NhdGlvbnNcbiAgICogKGUuZy4gYGVtKDJweCwgZW0oMTVweCkpYCkgb3IgYWRkaXRpb25zL3N1YnRyYWN0aW9ucyAoZS5nLiBgZW0oNXB4KSArIGVtKDMycHgpYCkuXG4gICAqL1xuICBAaWYgbGVuZ3RoKCRyZXN1bHQpID09IDEge1xuICAgIEByZXR1cm4gbnRoKCRyZXN1bHQsIDEpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRyZXN1bHQ7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJHZhbHVlKSB7XG4gIEByZXR1cm4gbWF0aC5kaXYoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSk7XG59XG5cbkBmdW5jdGlvbiB2dygkcGl4ZWxzLCAkdmlld3BvcnRXaWR0aDokYnJvd3Nlci1kZXNrdG9wLWNvbnRleHQpIHtcbiAgJHZpZXdwb3J0V2lkdGg6IHN0cmlwLXVuaXQoJHZpZXdwb3J0V2lkdGgpO1xuICAkdnctY29udGV4dDogKCR2aWV3cG9ydFdpZHRoKi4wMSkgKiAxcHg7XG4gIEByZXR1cm4gbWF0aC5kaXYoJHBpeGVscywgJHZ3LWNvbnRleHQpICAqIDF2dztcbn1cblxuQGZ1bmN0aW9uIHZoKCRwaXhlbHMsICR2aWV3cG9ydFdpZHRoKSB7XG4gICR2aWV3cG9ydFdpZHRoOiBzdHJpcC11bml0KCR2aWV3cG9ydFdpZHRoKTtcbiAgJHZ3LWNvbnRleHQ6ICgkdmlld3BvcnRXaWR0aCouMDEpICogMXB4O1xuICBAcmV0dXJuIG1hdGguZGl2KCRwaXhlbHMsICR2dy1jb250ZXh0KSAgKiAxdmg7XG59IiwiLy8gQmxvY2s6IFRyaWFsIEZvbnRzIEZvcm0gKGlubGluZSB2ZXJzaW9uIG9mIHRoZSBhbGwtdHJpYWwtZm9udHMgcG9wdXApLlxuLy8gUmV1c2VzIC5mZi1mb3JtIC8gZmllbGQgLyBidXR0b24gc3R5bGVzIGZyb20gdGhlIGdsb2JhbCBmb3JtcyBwYXJ0aWFsczsgdGhpcyBmaWxlIG9ubHlcbi8vIGFkZHMgdGhlIGlubGluZSBibG9jayBsYXlvdXQgKGluY2wuIHRoZSBidXR0b24gKyBjaGVja2JveCBib3R0b20gcm93KSBhbmQgdGhlXG4vLyBibGFjayAvIGJsdWUgLyBsaWdodCBiYWNrZ3JvdW5kIHZhcmlhbnRzLlxuLy9cbi8vIExheW91dCByZWZlcmVuY2U6IGRlc2lnbiBzY3JlZW5zaG90IChibG9ja19mZi5qcGcpIOKAlCBnZW5lcm91cyBwYWRkaW5nLCBuYW1lK2VtYWlsIHNpZGVcbi8vIGJ5IHNpZGUsIHRoZW4gYSBib3R0b20gcm93IHdpdGggdGhlIHN1Ym1pdCBidXR0b24gb24gdGhlIGxlZnQgYW5kIHRoZSBzdWJzY3JpYmVcbi8vIGNoZWNrYm94ICsgbGFiZWwgdG8gaXRzIHJpZ2h0LlxuXG5AaW1wb3J0IFwic2hhcmVkXCI7XG5cbi5mZi10cmlhbC1mb250cy1mb3JtIHtcblx0Ly8gVGhlIHR3byBsYXlvdXRzIGluIEZpZ21hIChcIkdsb3NzYXJ5IFBhZ2UgLSAwMVwiIDEyMzI3OjE4NDE1IHdpZGUgdnNcblx0Ly8gXCJJbm5lciBQYWdlXCIgMTIzMjc6MTg2MTggY29tcGFjdCkgYXJlIGNob3NlbiBieSBob3cgbXVjaCByb29tIHRoZSBDQVJEIGhhcyxcblx0Ly8gbm90IGJ5IHZpZXdwb3J0OiBib3RoIHJlbmRlciBhdCB0aGUgc2FtZSB3aW5kb3cgd2lkdGgsIG9uZSBpbiBhIDEzNjAgY29sdW1uXG5cdC8vIGFuZCBvbmUgaW4gdGhlIDc4NSBibG9nL2VudHJ5IGNvbHVtbi4gU28gdGhlIHN3aXRjaCBpcyBhIGNvbnRhaW5lciBxdWVyeS5cblx0Y29udGFpbmVyLW5hbWU6IGZmLXRyaWFsLWZvcm07XG5cdGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcblx0Ym9yZGVyLXJhZGl1czogcmVtKDMyKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDQ4KTtcblxuXHQmX19pbm5lciB7XG5cdFx0cGFkZGluZzogcmVtKDQ4KSByZW0oMzIpO1xuXHR9XG5cblx0Jl9faGVhZGluZyB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjQpO1xuXHRcdG1heC13aWR0aDogcmVtKDUyMCk7XG5cdH1cblxuXHQvLyBEZXNjcmlwdGlvbiBwYXJhZ3JhcGggcmVuZGVyZWQgYnkgdGhlIHNoYXJlZCBwYXJ0aWFsIChhIGNsYXNzbGVzcyA8cD4gYmVmb3JlIHRoZSBmb3JtKS5cblx0Ly8gZm9udC1zaXplIGlzIHBpbm5lZCB0byBvdmVycmlkZSB0aGUgdGhlbWUncyBgLnNpbmdsZS1ibG9nIHBgICgxLjEyNXJlbSkgbGVhay5cblx0Jl9faW5uZXIgPiBwOm5vdChbY2xhc3NdKSB7XG5cdFx0bWFyZ2luOiAwIDAgcmVtKDM2KTtcblx0XHRtYXgtd2lkdGg6IHJlbSg1MjApO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0fVxuXG5cdC8vIC0tLS0gRm9ybSBsYXlvdXQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0LmZmLWZvcm0ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Z2FwOiByZW0oNDApIHJlbSgzMik7XG5cdFx0bWFyZ2luOiAwO1xuXG5cdFx0Ly8gTmFtZSArIGVtYWlsIHJvdyAodGhlIHBhcnRpYWwncyBmaXJzdCA8cD4pOiBmdWxsIHdpZHRoLCBmaWVsZHMgc2lkZSBieSBzaWRlLlxuXHRcdD4gcDpmaXJzdC1vZi10eXBlIHtcblx0XHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRnYXA6IHJlbSgyNCk7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdEBpbmNsdWRlIGJwKHRhYmxldCkge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0fVxuXG5cdFx0XHQuZm5hbWUsXG5cdFx0XHQuZW1haWwge1xuXHRcdFx0XHRmbGV4OiAxIDEgNTAlO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQm90dG9tIHJvdzogYnV0dG9uIG9uIHRoZSBsZWZ0LCBjaGVja2JveCArIGxhYmVsIG9uIHRoZSByaWdodC5cblx0XHQucmVkLWJ1dHRvbiB7XG5cdFx0XHRvcmRlcjogMTtcblx0XHRcdGZsZXg6IDAgMCBhdXRvO1xuXHRcdFx0bWFyZ2luOiAwOyAvLyBvdmVycmlkZSBnbG9iYWwgLmZmLWZvcm0gLnJlZC1idXR0b24geyBtYXJnaW4tdG9wOiAycmVtIH1cblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHR9XG5cblx0XHQuZmYtY2hlY2tib3gge1xuXHRcdFx0b3JkZXI6IDI7XG5cdFx0XHRmbGV4OiAxIDEgcmVtKDMyMCk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRnYXA6IHJlbSgxMik7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdC5zdHlsZWQtY2hlY2tib3gge1xuXHRcdFx0XHRmbGV4OiAwIDAgYXV0bztcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRsYWJlbCB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMzU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDEyKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBTdWNjZXNzIHN0YXRlOiB0aGUgc2hhcmVkIGhhbmRsZXIgYXBwZW5kcyBhbiBlbWFpbCBpY29uIChTVkcgd2l0aCBubyBmaWxsIOKGkiBkZWZhdWx0c1xuXHQvLyB0byBibGFjaykgYW5kIGNvbmZpcm1hdGlvbiB0ZXh0LiBNYWtlIHRoZW0gbGVnaWJsZSBvbiB0aGUgZGFyayBjYXJkLlxuXHQuZmYtZm9ybSB7XG5cdFx0c3ZnLFxuXHRcdHN2ZyBwYXRoIHtcblx0XHRcdGZpbGw6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQvLyAtLS0tIEJhY2tncm91bmQgdmFyaWFudHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQvLyBCbGFjayAoZGVmYXVsdClcblx0Ji5pcy1iZy1ibGFjayB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdH1cblxuXHQvLyBCbHVlXG5cdCYuaXMtYmctYmx1ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGZmLXByaW1hcnk7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxuXG5cdC8vIFNoYXJlZCBsaWdodC1vbi1kYXJrIHRleHQgZm9yIGJvdGggdmFyaWFudHMuXG5cdCYuaXMtYmctYmxhY2ssXG5cdCYuaXMtYmctYmx1ZSB7XG5cdFx0LmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcsXG5cdFx0LmZmLWZvcm0gbGFiZWwsXG5cdFx0LmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyID4gcDpub3QoW2NsYXNzXSkge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQvLyBMaWdodCDigJQgc2l0cyBvbiBhIGdyYXkgKGBmZi1ncmF5YCkgcGFnZSBzZWN0aW9uOiBubyBjYXJkLCBkYXJrIHRleHQsIGxhYmVsbGVkIGZpZWxkcy5cblx0Ly8gRmlnbWEgXCJUcmlhbCBGb250cyBQYWdlXCIg4oaSIDE6MzMzLlxuXHQmLmlzLWJnLWxpZ2h0IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0LmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXG5cdFx0LmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcsXG5cdFx0LmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyID4gcDpub3QoW2NsYXNzXSkge1xuXHRcdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRcdH1cblxuXHRcdC5mZi1maWVsZCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleDogMSAxIDUwJTtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRnYXA6IHJlbSg4KTtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiByZW0oMjApO1xuXHRcdFx0Y29sb3I6ICM5NDk0OTQ7IC8vIHNhbWUgbGl0ZXJhbCBhcyBgLmFmZndwLWZvcm0gbGFiZWxgXG5cblx0XHRcdGlucHV0IHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0cGFkZGluZzogcmVtKDEyKSByZW0oMTYpO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfX2JvcmRlci1pbnB1dDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDQpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5mZi1mb3JtIGxhYmVsIHtcblx0XHRcdGNvbG9yOiAkY29sb3JfX3RleHQtbWFpbjtcblx0XHR9XG5cblx0XHQuZmYtZm9ybSAuZmYtZmllbGQge1xuXHRcdFx0Y29sb3I6ICM5NDk0OTQ7XG5cdFx0fVxuXG5cdFx0Ly8gQ29uc2VudCBiZWZvcmUgc3VibWl0IChGaWdtYSAxOjM0NyDihpIgMTozNTApIOKAlCB0aGUgY29tcGFjdCBsYXlvdXQnc1xuXHRcdC8vIGJ1dHRvbi1sZWZ0IC8gY2hlY2tib3gtcmlnaHQgcm93IGlzIGEgYmxhY2svYmx1ZS1jYXJkIGlkaW9tLlxuXHRcdC5mZi1mb3JtIC5mZi1jaGVja2JveCB7XG5cdFx0XHRvcmRlcjogMTtcblx0XHRcdGZsZXgtYmFzaXM6IDEwMCU7XG5cdFx0fVxuXG5cdFx0LmZmLWZvcm0gLnJlZC1idXR0b24ge1xuXHRcdFx0b3JkZXI6IDI7XG5cdFx0XHQvLyBTYW1lIHZhbHVlcyBhcyB0aGUgXCJSZWQgYnV0dG9uIExcIiBzdHlsZSAoRmlnbWEgXCJCdXR0b25zXCIgNDAxOjE1OTcyKS5cblx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZi1oZWFkaW5ncztcblx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGxpbmUtaGVpZ2h0OiByZW0oMjgpO1xuXHRcdFx0cGFkZGluZzogcmVtKDEwKSByZW0oMzIpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDkwKTtcblx0XHR9XG5cblx0XHQuZmYtdHJpYWwtZm9udHMtZm9ybV9fbm90ZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogcmVtKDE2KSAwIDA7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS40O1xuXHRcdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIFdoZW4gdGhlIGJsb2NrIGlzIHBsYWNlZCBpbnNpZGUgYmxvZyBwb3N0IGNvbnRlbnQsIHRoZSB0aGVtZSdzXG4vLyBgLmZmLWJsb2ctY29udGFpbmVyLWlubmVyIC5lbnRyeS1jb250ZW50IGgyYCBydWxlIChzcGVjaWZpY2l0eSAwLDMsMSkgaGlqYWNrcyB0aGVcbi8vIGhlYWRpbmc6IGFkZHMgbWFyZ2luLXRvcCwgY2VudGVycyBpdCAobWFyZ2luOiAwIGF1dG8pIGFuZCBjYXBzIGl0cyB3aWR0aC4gT3ZlcnJpZGUgaXRcbi8vIGZyb20gaW5zaWRlIHRoZSBibG9jayB3aXRoIGhpZ2hlciBzcGVjaWZpY2l0eSAoMCw0LDEpIHNvIHRoZSBibG9jayBsYXlvdXQgYWx3YXlzIHdpbnMuXG4uZmYtdHJpYWwtZm9udHMtZm9ybS5mZi10cmlhbC1mb250cy1mb3JtIC5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciB7XG5cdGgyLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcge1xuXHRcdG1heC13aWR0aDogcmVtKDUyMCk7XG5cdFx0bWFyZ2luOiAwIDAgcmVtKDI0KTtcblx0fVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFdpZGUgbGF5b3V0IOKAlCBGaWdtYSBcIkdsb3NzYXJ5IFBhZ2UgLSAwMVwiIOKGkiBGcmFtZSA0MyAoMTIzMjc6MTg0MTUpLlxuLy8gVHdvIGNvbHVtbnMgKDQ4MyAvIDQzOSB3aXRoIGEgMjA3IGd1dHRlciBpbnNpZGUgYSAxMTMwIGNvbnRlbnQgYm94KSwgaW5wdXRzXG4vLyBzdGFja2VkLCBjb25zZW50IGJlbG93IHRoZW0sIGZ1bGwtd2lkdGggYnV0dG9uLiBFdmVyeXRoaW5nIGlzIGV4cHJlc3NlZCBhcyBhXG4vLyByYXRpbyBvZiB0aGUgY29udGFpbmVyIHNvIGl0IHNjYWxlcyBmbHVpZGx5IGZyb20gdGhlIDkwMHB4IHN3aXRjaCBwb2ludCB1cCB0b1xuLy8gdGhlIDEzNjAgdGhlIGZyYW1lIGlzIGRyYXduIGF0LCBpbnN0ZWFkIG9mIGp1bXBpbmcgdHdpY2UuXG4vL1xuLy8gUmF0aW9zIGFnYWluc3QgdGhlIDEzNjAgY2FyZDogcGFkZGluZyAxMTUgPSA4LjQ1NmNxaSwgNjQgPSA0LjcwNmNxaSxcbi8vIGd1dHRlciAyMDcgPSAxNS4yMjFjcWkuIENvbHVtbnMgYXJlIGZyIHNvIHRoZXkga2VlcCB0aGUgZHJhd24gNDgzIDogNDM5IHNwbGl0LlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AY29udGFpbmVyIGZmLXRyaWFsLWZvcm0gKG1pbi13aWR0aDogOTAwcHgpIHtcblx0Ly8gTk9URTogYW4gZWxlbWVudCBjYW4gbmV2ZXIgbWF0Y2ggaXRzIG93biBjb250YWluZXIgcXVlcnkg4oCUIGBjb250YWluZXItdHlwZWBcblx0Ly8gbWFrZXMgaXQgYSBjb250YWluZXIgZm9yIGl0cyBERVNDRU5EQU5UUy4gU28gbm90aGluZyBoZXJlIG1heSB0YXJnZXRcblx0Ly8gYC5mZi10cmlhbC1mb250cy1mb3JtYCBpdHNlbGY7IHRoZSBjYXJkIGtlZXBzIHRoZSBzaXRlLXdpZGUgcmFkaXVzIDMyLlxuXHQvLyAoQm90aCBmcmFtZXMgZHJhdyAyNCwgYnV0IHRoYXQgaXMgYSBzaXRlLXdpZGUgY2FsbCwgbm90IGEgbGF5b3V0IG9uZS4pXG5cdC5mZi10cmlhbC1mb250cy1mb3JtIHtcblx0XHQmX19pbm5lciB7XG5cdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0ODNmciA0Mzlmcjtcblx0XHRcdC8vIDFmciBzcGFjZXJzIGFib3ZlIGFuZCBiZWxvdyBjZW50cmUgdGhlIGNvcHkgYWdhaW5zdCB0aGUgdGFsbGVyIGZvcm0uXG5cdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmciBhdXRvIGF1dG8gMWZyO1xuXHRcdFx0Y29sdW1uLWdhcDogY2xhbXAoI3tyZW0oMzIpfSwgMTUuMjIxY3FpLCAje3JlbSgyMDcpfSk7XG5cdFx0XHRyb3ctZ2FwOiAwO1xuXHRcdFx0cGFkZGluZzogY2xhbXAoI3tyZW0oNDgpfSwgNC43MDZjcWksICN7cmVtKDY0KX0pIGNsYW1wKCN7cmVtKDQwKX0sIDguNDU2Y3FpLCAje3JlbSgxMTUpfSk7XG5cdFx0fVxuXG5cdFx0Jl9faGVhZGluZyB7XG5cdFx0XHRncmlkLWNvbHVtbjogMTtcblx0XHRcdGdyaWQtcm93OiAyO1xuXHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdFx0bWFyZ2luOiAwIDAgcmVtKDI0KTtcblx0XHR9XG5cblx0XHQmX19pbm5lciA+IHA6bm90KFtjbGFzc10pIHtcblx0XHRcdGdyaWQtY29sdW1uOiAxO1xuXHRcdFx0Z3JpZC1yb3c6IDM7XG5cdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXG5cdFx0LmZmLWZvcm0ge1xuXHRcdFx0Z3JpZC1jb2x1bW46IDI7XG5cdFx0XHRncmlkLXJvdzogMSAvIC0xO1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0XHRnYXA6IHJlbSgxNik7XG5cblx0XHRcdC8vIE5hbWUgKyBlbWFpbCBzdGFjayBpbiB0aGlzIGxheW91dCAodGhleSBzaXQgc2lkZSBieSBzaWRlIGluIHRoZSBjb21wYWN0IG9uZSkuXG5cdFx0XHQ+IHA6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdGZsZXg6IDAgMCBhdXRvO1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRnYXA6IHJlbSgxNik7XG5cblx0XHRcdFx0LmZuYW1lLFxuXHRcdFx0XHQuZW1haWwge1xuXHRcdFx0XHRcdGZsZXg6IDAgMCBhdXRvO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIERPTSBvcmRlciBpcyBpbnB1dHMg4oaSIGNvbnNlbnQg4oaSIGJ1dHRvbiwgd2hpY2ggaXMgdGhlIGRyYXduIG9yZGVyIGhlcmUuXG5cdFx0XHQuZmYtY2hlY2tib3gge1xuXHRcdFx0XHRvcmRlcjogMDtcblx0XHRcdFx0ZmxleDogMCAwIGF1dG87XG5cdFx0XHRcdGdhcDogcmVtKDgpO1xuXHRcdFx0fVxuXG5cdFx0XHQucmVkLWJ1dHRvbiB7XG5cdFx0XHRcdG9yZGVyOiAwO1xuXHRcdFx0XHRmbGV4OiAwIDAgYXV0bztcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRcdFx0bWFyZ2luLXRvcDogcmVtKDgpOyAvLyAxNiBnYXAgKyA4ID0gdGhlIGRyYXduIDI0XG5cdFx0XHRcdHBhZGRpbmc6IHJlbSgxMCkgcmVtKDMyKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBCZWF0IHRoZSAwLDQsMSBoZWFkaW5nIG92ZXJyaWRlIGZ1cnRoZXIgdXAgdGhlIGZpbGUuXG5cdC5mZi10cmlhbC1mb250cy1mb3JtLmZmLXRyaWFsLWZvbnRzLWZvcm0gLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIHtcblx0XHRoMi5mZi10cmlhbC1mb250cy1mb3JtX19oZWFkaW5nIHtcblx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRcdG1hcmdpbjogMCAwIHJlbSgyNCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gTGlnaHQ6IHR3byBFUVVBTCB0b3AtYWxpZ25lZCBjb2x1bW5zICg1NTUgLyAyMCAvIDU1NSA9IHRoZSAxMTMwIGNvbnRlbnQgY29sdW1uLFxuXHQvLyBGaWdtYSAxOjMzNCkuIE5vIHNpZGUgcGFkZGluZyDigJQgdGhlIHBhZ2UgcGxhY2VzIHRoZSBibG9jayBpbiB0aGUgdGhlbWUnc1xuXHQvLyBgbWF4LXctMTEzMGAgY29sdW1uIHNvIGl0IGxpbmVzIHVwIHdpdGggdGhlIG90aGVyIDExMzAgc2VjdGlvbnMgYXQgZXZlcnkgd2lkdGguXG5cdC8vIENvcHkgY29sdW1uIGtlZXBzIEZpZ21hJ3MgMTE1IHJpZ2h0IHBhZGRpbmcgKGhlYWRpbmcgd3JhcHMgYXQgNDQwKS5cblx0LmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyIGF1dG87XG5cdFx0Y29sdW1uLWdhcDogcmVtKDIwKTtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0LmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcsXG5cdFx0PiBwOm5vdChbY2xhc3NdKSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiBjbGFtcCgwcHgsIDEwLjE3N2NxaSwgI3tyZW0oMTE1KX0pO1xuXHRcdH1cblxuXHRcdC5mZi10cmlhbC1mb250cy1mb3JtX19oZWFkaW5nIHtcblx0XHRcdGdyaWQtcm93OiAxO1xuXHRcdH1cblxuXHRcdD4gcDpub3QoW2NsYXNzXSkge1xuXHRcdFx0Z3JpZC1yb3c6IDI7XG5cdFx0fVxuXG5cdFx0LmZmLWZvcm0ge1xuXHRcdFx0Z3JpZC1yb3c6IDEgLyA0O1xuXHRcdFx0YWxpZ24tc2VsZjogc3RhcnQ7XG5cdFx0XHRnYXA6IHJlbSgyNCk7XG5cblx0XHRcdD4gcDpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0Z2FwOiByZW0oMTYpO1xuXHRcdFx0fVxuXG5cdFx0XHQucmVkLWJ1dHRvbiB7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5mZi10cmlhbC1mb250cy1mb3JtX19ub3RlIHtcblx0XHRcdGdyaWQtY29sdW1uOiAyO1xuXHRcdFx0Z3JpZC1yb3c6IDQ7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0oNDApOyAvLyBGaWdtYSAxOjM1MTogMjQgZ2FwICsgMTYgZnJhbWUgaW5zZXRcblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogU3RyaXBzIHRoZSB1bml0IGZyb20gYSBnaXZlbiBudW1iZXItdW5pdC1jb21iaW5hdGlvbiBhbmQgcmV0dXJucyB0aGUgbnVtYmVyLiBcbiAqIEBsaW5rOiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMjMzNTg0MS8xNzc5OTk5XG4gKiBAdXNhZ2U6IHBhcnNlLWludCgxMHB4KSA9PiAxMFxuICovXG4vKipcbiAqIFNpbXBseSBhZGRzIHRoZSBlbSB1bml0IHRvIGEgZ2l2ZW4gbnVtYmVyLiBUaGlzIGlzIHVzZWQgdHdpY2UgaW4gdGhlXG4gKiBmdW5jdGlvbiB1bmRlcm5lYXRoLCB0aHVzIHRoZSBuZWVkIGZvciBhIHNlcGFyYXRlIGZ1bmN0aW9uLlxuICovXG4vKipcbiAqIENhbGN1bGF0ZXMgZW0gdmFsdWVzIGZvciBhIGdpdmVuIGxpc3Qgb2YgKHB4IG9yIGVtKSB2YWx1ZXMgYW5kIGEgZ2l2ZW4gZW1cbiAqIGJhc2UuIE11bHRpcGx5IGJhc2UgdmFsdWVzIGZvciBuZXN0ZWQgZW0gc3RydWN0dXJlcyAobGFzdCBAdXNhZ2UgZXhhbXBsZSkuXG4gKiBAdXNhZ2U6IGVtKDEwcHgsIDEuMTI1KSA9PiAuNTU1NTZlbVxuICogICAgICAgICBlbSgyNHB4LCAuODc1ZW0pID0+IDEuNzE0MjllbVxuICogICAgICAgICBlbSgxMnB4IDAgN2VtIHJnYmEoMCwgMCwgMCwgLjcpLCAxLjc1KSA9PiAuNDI4NTdlbSAwIDRlbSByZ2JhKDAsIDAsIDAsIDAuNylcbiAqICAgICAgICAgZW0oMTJweCkgKyBlbSgzZW0pID0+IDMuNzVlbVxuICogICAgICAgICBlbSgyM3B4LCBlbSg1M3B4KSkgPT4gLjQzMzk2ZW1cbiAqICAgICAgICAgZW0oMjRweCwgMS41ICogMS4xMjUpID0+IC44ODg4OWVtXG4gKi9cbi5mZi10cmlhbC1mb250cy1mb3JtIHtcbiAgY29udGFpbmVyLW5hbWU6IGZmLXRyaWFsLWZvcm07XG4gIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciB7XG4gIHBhZGRpbmc6IDNyZW0gMnJlbTtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtX19oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBtYXgtd2lkdGg6IDMyLjVyZW07XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybV9faW5uZXIgPiBwOm5vdChbY2xhc3NdKSB7XG4gIG1hcmdpbjogMCAwIDIuMjVyZW07XG4gIG1heC13aWR0aDogMzIuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmZmLXRyaWFsLWZvbnRzLWZvcm0gLmZmLWZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMi41cmVtIDJyZW07XG4gIG1hcmdpbjogMDtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtIC5mZi1mb3JtID4gcDpmaXJzdC1vZi10eXBlIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMS41cmVtO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0gLmZmLWZvcm0gPiBwOmZpcnN0LW9mLXR5cGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5mZi10cmlhbC1mb250cy1mb3JtIC5mZi1mb3JtID4gcDpmaXJzdC1vZi10eXBlIC5mbmFtZSxcbi5mZi10cmlhbC1mb250cy1mb3JtIC5mZi1mb3JtID4gcDpmaXJzdC1vZi10eXBlIC5lbWFpbCB7XG4gIGZsZXg6IDEgMSA1MCU7XG4gIG1hcmdpbjogMDtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtIC5mZi1mb3JtIC5yZWQtYnV0dG9uIHtcbiAgb3JkZXI6IDE7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSAuZmYtY2hlY2tib3gge1xuICBvcmRlcjogMjtcbiAgZmxleDogMSAxIDIwcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAwLjc1cmVtO1xuICBtYXJnaW46IDA7XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSAuZmYtY2hlY2tib3ggLnN0eWxlZC1jaGVja2JveCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDA7XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSAuZmYtY2hlY2tib3ggbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSBzdmcsXG4uZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSBzdmcgcGF0aCB7XG4gIGZpbGw6ICNmZmY7XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MDAwRkY7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctYmxhY2sgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcsXG4uZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1ibGFjayAuZmYtZm9ybSBsYWJlbCxcbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWJsYWNrIC5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciA+IHA6bm90KFtjbGFzc10pLCAuZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1ibHVlIC5mZi10cmlhbC1mb250cy1mb3JtX19oZWFkaW5nLFxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctYmx1ZSAuZmYtZm9ybSBsYWJlbCxcbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWJsdWUgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyID4gcDpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTgxODE4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIHtcbiAgcGFkZGluZzogMDtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi10cmlhbC1mb250cy1mb3JtX19oZWFkaW5nLFxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyID4gcDpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogIzE4MTgxODtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi1maWVsZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSA1MCU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMC41cmVtO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBjb2xvcjogIzk0OTQ5NDtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi1maWVsZCBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RDRENEQztcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICMxODE4MTg7XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1saWdodCAuZmYtZm9ybSBsYWJlbCB7XG4gIGNvbG9yOiAjMTgxODE4O1xufVxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLWZvcm0gLmZmLWZpZWxkIHtcbiAgY29sb3I6ICM5NDk0OTQ7XG59XG4uZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1saWdodCAuZmYtZm9ybSAuZmYtY2hlY2tib3gge1xuICBvcmRlcjogMTtcbiAgZmxleC1iYXNpczogMTAwJTtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi1mb3JtIC5yZWQtYnV0dG9uIHtcbiAgb3JkZXI6IDI7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAycmVtO1xuICBib3JkZXItcmFkaXVzOiA1LjYyNXJlbTtcbn1cbi5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi10cmlhbC1mb250cy1mb3JtX19ub3RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMXJlbSAwIDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMTgxODE4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmZmLXRyaWFsLWZvbnRzLWZvcm0uZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtdHJpYWwtZm9udHMtZm9ybV9faW5uZXIgaDIuZmYtdHJpYWwtZm9udHMtZm9ybV9faGVhZGluZyB7XG4gIG1heC13aWR0aDogMzIuNXJlbTtcbiAgbWFyZ2luOiAwIDAgMS41cmVtO1xufVxuXG5AY29udGFpbmVyIGZmLXRyaWFsLWZvcm0gKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDgzZnIgNDM5ZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgYXV0byBhdXRvIDFmcjtcbiAgICBjb2x1bW4tZ2FwOiBjbGFtcCgycmVtLCAxNS4yMjFjcWksIDEyLjkzNzVyZW0pO1xuICAgIHJvdy1nYXA6IDA7XG4gICAgcGFkZGluZzogY2xhbXAoM3JlbSwgNC43MDZjcWksIDRyZW0pIGNsYW1wKDIuNXJlbSwgOC40NTZjcWksIDcuMTg3NXJlbSk7XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcge1xuICAgIGdyaWQtY29sdW1uOiAxO1xuICAgIGdyaWQtcm93OiAyO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxLjVyZW07XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyID4gcDpub3QoW2NsYXNzXSkge1xuICAgIGdyaWQtY29sdW1uOiAxO1xuICAgIGdyaWQtcm93OiAzO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0gLmZmLWZvcm0ge1xuICAgIGdyaWQtY29sdW1uOiAyO1xuICAgIGdyaWQtcm93OiAxLy0xO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuICAuZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSA+IHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDFyZW07XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0gLmZmLWZvcm0gPiBwOmZpcnN0LW9mLXR5cGUgLmZuYW1lLFxuICAuZmYtdHJpYWwtZm9udHMtZm9ybSAuZmYtZm9ybSA+IHA6Zmlyc3Qtb2YtdHlwZSAuZW1haWwge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5mZi10cmlhbC1mb250cy1mb3JtIC5mZi1mb3JtIC5mZi1jaGVja2JveCB7XG4gICAgb3JkZXI6IDA7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0gLmZmLWZvcm0gLnJlZC1idXR0b24ge1xuICAgIG9yZGVyOiAwO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC42MjVyZW0gMnJlbTtcbiAgfVxuICAuZmYtdHJpYWwtZm9udHMtZm9ybS5mZi10cmlhbC1mb250cy1mb3JtIC5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciBoMi5mZi10cmlhbC1mb250cy1mb3JtX19oZWFkaW5nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMS41cmVtO1xuICB9XG4gIC5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDFmciBhdXRvO1xuICAgIGNvbHVtbi1nYXA6IDEuMjVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1saWdodCAuZmYtdHJpYWwtZm9udHMtZm9ybV9faW5uZXIgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcsXG4gIC5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciA+IHA6bm90KFtjbGFzc10pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjbGFtcCgwcHgsIDEwLjE3N2NxaSwgNy4xODc1cmVtKTtcbiAgfVxuICAuZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1saWdodCAuZmYtdHJpYWwtZm9udHMtZm9ybV9faW5uZXIgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2hlYWRpbmcge1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG4gIC5mZi10cmlhbC1mb250cy1mb3JtLmlzLWJnLWxpZ2h0IC5mZi10cmlhbC1mb250cy1mb3JtX19pbm5lciA+IHA6bm90KFtjbGFzc10pIHtcbiAgICBncmlkLXJvdzogMjtcbiAgfVxuICAuZmYtdHJpYWwtZm9udHMtZm9ybS5pcy1iZy1saWdodCAuZmYtdHJpYWwtZm9udHMtZm9ybV9faW5uZXIgLmZmLWZvcm0ge1xuICAgIGdyaWQtcm93OiAxLzQ7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgZ2FwOiAxLjVyZW07XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIC5mZi1mb3JtID4gcDpmaXJzdC1vZi10eXBlIHtcbiAgICBnYXA6IDFyZW07XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIC5mZi1mb3JtIC5yZWQtYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmZmLXRyaWFsLWZvbnRzLWZvcm0uaXMtYmctbGlnaHQgLmZmLXRyaWFsLWZvbnRzLWZvcm1fX2lubmVyIC5mZi10cmlhbC1mb250cy1mb3JtX19ub3RlIHtcbiAgICBncmlkLWNvbHVtbjogMjtcbiAgICBncmlkLXJvdzogNDtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gIH1cbn0iLCJcbi8vIERlZmF1bHQgLSAzMjEgLSA0MDBcblxuQG1peGluIGJwKCRwb2ludCkge1xuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmV4eHN7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGlmICRwb2ludCA9PSBwaG9uZXhzZG93bntcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmV4bHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmVkb3duIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTY3cHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwb2ludCA9PSBwaG9uZWxhbmRzY2FwZSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU2OHB4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmVsYW5kc2NhcGVPbmx5IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTY4cHgpIGFuZCAobWF4LXdpZHRoOiA2NzBweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgJHBvaW50ID09IHBob25lbGFuZHNjYXBleGxPbmx5IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0ZG93biB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXQge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0dXB0b2xhbmRzY2FwZSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTg3cHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuIFxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldGxhbmRzY2FwZWRvd257XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0bGFuZHNjYXBle1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IGxhcHRvcHhzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KXtcbiAgICAgIEBjb250ZW50OyBcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gbGFwdG9weHNkb3duIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KXtcbiAgICAgIEBjb250ZW50OyBcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gbGFwdG9wIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICRwb2ludCA9PSBsYXB0b3B4bCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcHhzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICRwb2ludCA9PSBzaXRld2lkdGgge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNzQwcHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3Age1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3B4bCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDI1MDBweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxufVxuIiwiLy8gQWRkIHlvdXIgbWFpbiBjb2xvciB2YXJpYWJsZXMgaGVyZVxuXG4kZmYtZ3JheTogI0Y3RjdGNztcbiRmZi1kYXJrLWdyYXk6ICNEOUQ5RDk7XG4kZmYtZGFyazogIzQxNDE0MTtcbiRmZi1hY3Rpb246ICNGRjEzNkI7XG4kZmYtYWN0aW9uLWRhcms6ICM1MzA5MjQ7XG4kZmYtcHJpbWFyeTogIzQwMDBGRjtcbiRkYXJrLWdyZXk6ICNEMUQxRDE7XG4kZ3JlZW46ICMwMEJENTM7XG4kd2hpdGU6ICNmZmY7XG4kYmxhY2s6ICMwMDA7XG4kY29sb3JfX2xpZ2h0LWdyZXk6ICNmN2Y3Zjc7XG4kY29sb3JfX2xpZ2h0LWdyZXktMjogI2Q4ZDhkODtcblxuLy8gVmFyaWFibGVzIGZvcm0gVW5kZXJzY29yZXNcblxuLy9UaGUgbmV4dCBmZXcgc2hvdWxkIGJlIHJldmlzZWQgb24gcHJvamVjdCBzdGFydDpcbiRjb2xvcl9fdGV4dC1tYWluOiAjMTgxODE4OyAvLyBNYWluIHRleHQgY29sb3JcblxuJGNvbG9yX19saW5rOiAjMDAwMDAwOyAgLy8gTGlua3NcbiRjb2xvcl9fbGluay12aXNpdGVkOiBsaWdodGVuKCRjb2xvcl9fbGluaywxMCUpO1xuJGNvbG9yX19saW5rLWhvdmVyOiAkZmYtYWN0aW9uO1xuIFxuJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk6ICR3aGl0ZTtcblxuXG4vL0J1dHRvbnNcbiRjb2xvcl9fdGV4dC1idXR0b246ICR3aGl0ZTtcbiRjb2xvcl9fYmFja2dyb3VuZC1idXR0b246ICRmZi1hY3Rpb247XG5cbiRjb2xvcl9fYmFja2dyb3VuZC1idXR0b24taG92ZXI6IGxpZ2h0ZW4oJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbiwxMiUpO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbi1mb2N1czogbGlnaHRlbigkY29sb3JfX2JhY2tncm91bmQtYnV0dG9uLDE2JSk7XG5cbi8vIExhYmVsc1xuJGNvbG9yX19zZWFyY2gtbGFiZWxzOiAjNDg0ODQ4O1xuXG4vL0lucHV0c1xuJGNvbG9yX19ib3JkZXItaW5wdXQ6ICNEQ0RDREM7XG4kY29sb3JfX3RleHQtaW5wdXQ6ICRmZi1kYXJrO1xuJGNvbG9yX190ZXh0LWlucHV0LWVycm9yOiAkZmYtYWN0aW9uO1xuJGNvbG9yX190ZXh0LWlucHV0LWZvY3VzOiAjMTExO1xuXG4kY29sb3JfX3BsYWNlaG9sZGVyOiByZ2JhKCRjb2xvcl9fdGV4dC1pbnB1dCwgLjYpO1xuJGNvbG9yX19wbGFjZWhvbGRlci1ob3ZlcjogcmdiYSgkY29sb3JfX3RleHQtaW5wdXQsIC44KTtcblxuLy8gQm9yZGVyc1xuJGNvbG9yX19ib3JkZXJzLWdyZXk6ICM5Nzk3OTc7XG4kY29sb3JfX2JvcmRlcnMtZ3JleS1wYWxlOiByZ2JhKCRjb2xvcl9fYm9yZGVycy1ncmV5LCAuMik7XG4kY29sb3JfX2JvcmRlcnMtZ3JleTItcGFsZTogcmdiYSgkZmYtZ3JheSwgLjQpO1xuXG4vL1RoZXNlIGNhbiBiZSByZXZpc2VkIG9uIHRoZSBtb3ZlIHdoaWxlIGRldmVsb3Bpbmc6XG4kY29sb3JfX2JhY2tncm91bmQtc2NyZWVuOiAjZmZmZmZmO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWhyOiAjY2NjO1xuJGNvbG9yX19iYWNrZ3JvdW5kLXByZTogI2VlZTtcbiRjb2xvcl9fYmFja2dyb3VuZC1pbnM6ICNmZmY5YzA7XG4kY29sb3JfX2JvcmRlci1hYmJyOiAjNjY2O1xuJGNvbG9yX190ZXh0LXNjcmVlbjogIzIxNzU5YjtcblxuLy8gQmxvZ1xuJGNvbG9yX19iYWNrZ3JvdW5kLWRhcmtlci1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4ZGVnLCAjQkNGNDkxIC0zMS42NCUsICM5REVBQTggMS45OSUsICM2RUQ1ODYgMzAuNTUlLCAjMkM0QTg1IDkwLjIlKTtcbiRjb2xvcl9fYmFja2dyb3VuZC1ibG9nLWhlYWRlci1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDIzOC4zMmRlZywgI0JDRjQ5MSAtMzEuNjQlLCAjOURFQUE4IDEuOTklLCAjNkVENTg2IDMwLjU1JSwgIzJDNEE4NSA5MC4yJSk7XG5cbiRjb2xvcl9fYmFja2dyb3VuZC1hdXRob3I6ICNGNkY5RkY7XG5cblxuXG5cblxuIiwiLy8gIEZvbnRzIGFuZCBpY29uc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vXG4vL1xuLy8gRm9yIEdvb2dsZSBGb250cyB1c2UgIGh0dHBzOi8vZ29vZ2xlLXdlYmZvbnRzLWhlbHBlci5oZXJva3VhcHAuY29tL2ZvbnRzXG4vLyBhbmQgcHV0IHRoZSBkZWZpbml0aW9ucyBpbiB0eXBvZ3JhcGh5L2ZvbnRfZmFjZXNcbi8vXG4vL1xuXG4vLyBVc2VkIG1haW5seSBmb3IgR3V0ZW5iZXJnIGZvbnQtc2l6ZXNcbiRmb250LXNpemUteHhzOiByZW0oMTApO1xuJGZvbnQtc2l6ZS14czogcmVtKDEyKTtcbiRmb250LXNpemUtczogcmVtKDE0KTtcbiRmb250LXNpemUtZDogcmVtKDE2KTtcbiRmb250LXNpemUtbTogcmVtKDE4KTtcbiRmb250LXNpemUtbDogcmVtKDI0KTtcbiRmb250LXNpemUteGw6IHJlbSgzMCk7XG4kZm9udC1zaXplLXh4bDogcmVtKDM2KTtcbiRmb250LXNpemUteHh4bDogcmVtKDQyKTtcbiRmb250LXNpemUteHh4eGw6IHJlbSg2MCk7XG5cbi8vTW9iaWxlIEd1dGVuYmVyZyBmb250LXNpemVzXG4kZm9udC1zaXplLXh4cy1tb2JpbGU6IHJlbSgxMCk7XG4kZm9udC1zaXplLXhzLW1vYmlsZTogcmVtKDEwKTtcbiRmb250LXNpemUtcy1tb2JpbGU6IHJlbSgxNCk7XG4kZm9udC1zaXplLWQtbW9iaWxlOiByZW0oMTYpO1xuJGZvbnQtc2l6ZS1tLW1vYmlsZTogcmVtKDE2KTtcbiRmb250LXNpemUtbC1tb2JpbGU6IHJlbSgyMCk7XG4kZm9udC1zaXplLXhsLW1vYmlsZTogcmVtKDI0KTtcbiRmb250LXNpemUteHhsLW1vYmlsZTogcmVtKDMwKTtcbiRmb250LXNpemUteHh4bC1tb2JpbGU6IHJlbSgzNyk7XG4kZm9udC1zaXplLXh4eHhsLW1vYmlsZTogcmVtKDQ2KTtcblxuLy9UYWJsZXQgR3V0ZW5iZXJnIGZvbnQtc2l6ZXMgIChNYXliZSBsZWF2ZSBzYW1lIGFzIG1vYmlsZSBmb3Igc3RhcnRlcnMpXG4kZm9udC1zaXplLXh4cy10YWJsZXQ6IHJlbSgxMCk7XG4kZm9udC1zaXplLXhzLXRhYmxldDogcmVtKDExKTtcbiRmb250LXNpemUtcy10YWJsZXQ6IHJlbSgxNCk7XG4kZm9udC1zaXplLWQtdGFibGV0OiByZW0oMTYpO1xuJGZvbnQtc2l6ZS1tLXRhYmxldDogcmVtKDE3KTtcbiRmb250LXNpemUtbC10YWJsZXQ6IHJlbSgyMik7XG4kZm9udC1zaXplLXhsLXRhYmxldDogcmVtKDI3KTtcbiRmb250LXNpemUteHhsLXRhYmxldDogcmVtKDMzKTtcbiRmb250LXNpemUteHh4bC10YWJsZXQ6IHJlbSgzOSk7XG4kZm9udC1zaXplLXh4eHhsLXRhYmxldDogcmVtKDUyKTtcblxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogXCJNb250IEJsYW5jXCIsIFwiTW9udFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmLWhlYWRpbmdzOiBcIk1vbnRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cblxuJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBzZXJpZjtcblxuJGZvbnRfX21haW46ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuJGZvbnRfX2NvZGU6IEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiRmb250X19wcmU6IFwiQ291cmllciAxMCBQaXRjaFwiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kZm9udF9fbGluZS1oZWlnaHQtYm9keTogMS41O1xuJGZvbnRfX2xpbmUtaGVpZ2h0LXByZTogMS42O1xuXG4kZm9udF9mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuJGZvbnRfZmFtaWx5X21lbnU6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuJGZvbnRfZmFtaWx5X2hlYWRpbmdzOiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZi1oZWFkaW5ncztcblxuLy9IZWFkaW5nIFNpemVzXG5cbiRmb250LXNpemUtaDE6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS14eHh4bCxcbiAgbGV0dGVyOiAtMXB4LFxuICB3ZWlnaHQ6IDcwMCxcbik7XG5cbiRmb250LXNpemUtaDEtbW9iaWxlOiAoXG4gIHNpemU6IHJlbSg0MCksXG4gIGxldHRlcjogLTFweCxcbiAgd2VpZ2h0OiA3MDAsXG4pO1xuXG4kZm9udC1zaXplLWgxLXRhYmxldDogKFxuICBzaXplOiAkZm9udC1zaXplLXh4eHhsLXRhYmxldCxcbiAgbGV0dGVyOiAtMXB4LFxuICB3ZWlnaHQ6IDcwMCxcbik7XG5cbiRmb250LXNpemUtaDI6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS14eHhsLFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcblxuJGZvbnQtc2l6ZS1oMi1tb2JpbGU6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS14eHhsLW1vYmlsZSxcbiAgbGV0dGVyOiAwLFxuICB3ZWlnaHQ6IDUwMCxcbik7XG5cbiRmb250LXNpemUtaDItdGFibGV0OiAoXG4gIHNpemU6ICRmb250LXNpemUteHh4bC10YWJsZXQsXG4gIGxldHRlcjogMCxcbiAgd2VpZ2h0OiA1MDAsXG4pO1xuXG4kZm9udC1zaXplLWgzOiAoXG4gIHNpemU6ICRmb250LXNpemUteHhsLFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcblxuJGZvbnQtc2l6ZS1oMy1tb2JpbGU6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS14eGwtbW9iaWxlLFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcblxuJGZvbnQtc2l6ZS1oMy10YWJsZXQ6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS14eGwtdGFibGV0LFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcblxuJGZvbnQtc2l6ZS1oNDogKFxuICBzaXplOiAkZm9udC1zaXplLXhsLFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcblxuJGZvbnQtc2l6ZS1oNC1tb2JpbGU6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS14bC1tb2JpbGUsXG4gIGxldHRlcjogMCxcbiAgd2VpZ2h0OiA1MDAsXG4pO1xuXG4kZm9udC1zaXplLWg0LXRhYmxldDogKFxuICBzaXplOiAkZm9udC1zaXplLXhsLXRhYmxldCxcbiAgbGV0dGVyOiAwLFxuICB3ZWlnaHQ6IDUwMCxcbik7XG5cbiRmb250LXNpemUtaDU6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS1sLFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcblxuJGZvbnQtc2l6ZS1oNS1tb2JpbGU6IChcbiAgc2l6ZTogJGZvbnQtc2l6ZS1sLW1vYmlsZSxcbiAgbGV0dGVyOiAwLFxuICB3ZWlnaHQ6IDUwMCxcbik7XG5cbiRmb250LXNpemUtaDUtdGFibGV0OiAoXG4gIHNpemU6ICRmb250LXNpemUtbC10YWJsZXQsXG4gIGxldHRlcjogMCxcbiAgd2VpZ2h0OiA1MDAsXG4pO1xuXG4kZm9udC1zaXplLWg2OiAoXG4gIHNpemU6ICRmb250LXNpemUtcyxcbiAgbGV0dGVyOiAwLFxuICB3ZWlnaHQ6IDQwMCxcbik7XG5cbiRmb250LXNpemUtaDYtbW9iaWxlOiAoXG4gIHNpemU6ICRmb250LXNpemUtcy1tb2JpbGUsXG4gIGxldHRlcjogMCxcbiAgd2VpZ2h0OiA1MDAsXG4pO1xuXG4kZm9udC1zaXplLWg2LXRhYmxldDogKFxuICBzaXplOiAkZm9udC1zaXplLXMtdGFibGV0LFxuICBsZXR0ZXI6IDAsXG4gIHdlaWdodDogNTAwLFxuKTtcbiJdfQ== */
