/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover, .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before, .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

.form-header {
  position: relative;
  padding: 0 1rem;
  padding-top: 10.5rem;
  padding-bottom: 6rem; }
  @media screen and (max-width: 767px) {
    .form-header {
      padding-top: 8.5rem;
      padding-bottom: 4rem; } }
  .form-header__bg {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -2;
    max-height: 75rem; }
  .form-header__img {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1; }

.form-inner {
  max-width: 31.5rem;
  margin: 0 auto; }

.select2 {
  display: none; }

.mfp-close {
  display: flex !important;
  align-items: center;
  justify-content: center;
  right: 1rem;
  top: 1rem;
  font-size: 0 !important;
  opacity: 1;
  width: 40px !important;
  height: 40px !important; }
  .mfp-close:active {
    top: 1rem; }
  @media screen and (max-width: 1023px) {
    .mfp-close {
      right: 0.75rem;
      top: 0.75rem; }
      .mfp-close:active {
        top: 0.75rem; } }
  @media screen and (max-width: 767px) {
    .mfp-close {
      right: 0.5rem;
      top: 0.5rem; }
      .mfp-close:active {
        top: 0.5rem; } }
  .mfp-close:before {
    content: url("../images/close.svg");
    display: block;
    width: 1.5rem;
    height: 1.5rem; }

.form-wrapper,
.popup_information {
  margin: auto;
  position: relative;
  z-index: 100; }
  .form-wrapper .main-decor,
  .popup_information .main-decor {
    z-index: -1; }
  .form-wrapper form,
  .popup_information form {
    display: flex;
    flex-direction: column; }
  .form-wrapper .h2-title,
  .popup_information .h2-title {
    margin-bottom: 2rem; }
    @media screen and (max-width: 1023px) {
      .form-wrapper .h2-title,
      .popup_information .h2-title {
        margin-bottom: 1.5rem; } }
  .form-wrapper .btn,
  .popup_information .btn {
    width: fit-content;
    margin: 0 auto;
    margin-top: 2rem;
    margin-bottom: 2rem; }
    @media screen and (max-width: 1023px) {
      .form-wrapper .btn,
      .popup_information .btn {
        margin: 0 auto;
        margin-top: 1.5rem;
        margin-bottom: 1.5rem; } }
    @media screen and (max-width: 767px) {
      .form-wrapper .btn,
      .popup_information .btn {
        width: 100%; } }

.saccess-popup {
  flex-direction: column; }

.popup_information,
.form-wrapper {
  width: 100%;
  max-width: 70rem;
  padding: 2.5rem;
  background: white;
  box-shadow: 4px 4px 14px rgba(0, 0, 0, 0.13);
  border-radius: 1.25rem;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .popup_information,
    .form-wrapper {
      padding: 2.5rem 1.5rem; } }

.popup_information {
  text-align: center;
  display: flex;
  justify-content: center;
  background: white;
  max-width: 39.0625rem; }
  .popup_information .all-text {
    font-size: 16px;
    line-height: 24px;
    color: #171A42; }
    @media screen and (max-width: 1023px) {
      .popup_information .all-text {
        font-size: 14px;
        line-height: 20px; } }

.login-form {
  background: white; }

.form-group {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -16px;
  width: calc(100% + 32px); }
  .form-group .form-item {
    width: calc(100% / 12 * 6 - 32px);
    margin-right: 16px;
    margin-left: 16px;
    margin-bottom: 16px; }
    @media screen and (max-width: 1023px) {
      .form-group .form-item {
        width: 100%; } }

.form-item {
  width: 100%;
  margin-bottom: 1.5rem;
  overflow: visible;
  position: relative;
  text-align: left; }

.no-margin {
  margin-bottom: 0; }
  .no-margin .form-item {
    margin-bottom: 0; }

.form-item_wrapper {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  flex-flow: column-reverse; }

.custom-select,
.form-item_input {
  width: 100%;
  background: white;
  transition: .3s ease;
  padding: 0.75rem 1rem;
  font-size: 16px;
  line-height: 24px;
  -webkit-appearance: none;
  color: #768897;
  caret-color: #171A42;
  -webkit-text-fill-color: #171A42;
  border: 1px solid #D8D8D8;
  box-sizing: border-box;
  border-radius: 8px; }
  @media screen and (max-width: 1023px) {
    .custom-select,
    .form-item_input {
      font-size: 14px;
      line-height: 20px; } }
  .custom-select:focus,
  .form-item_input:focus {
    outline: none; }
  .custom-select.error,
  .form-item_input.error {
    border-color: #F7A970; }
  .custom-select.show ~ .show-icon::before,
  .form-item_input.show ~ .show-icon::before {
    background-image: url("../images/hidden-icon.svg"); }

.show-icon {
  width: 1.4375rem;
  height: 1.4375rem;
  position: absolute;
  right: 1rem;
  top: 2.625rem;
  cursor: pointer; }
  @media screen and (max-width: 1023px) {
    .show-icon {
      top: 2.25rem; } }
  .show-icon::before {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-image: url("../images/show-icon.svg");
    top: 0;
    left: 0; }

.custom-select {
  padding: 0.75rem 1rem;
  background: url(../images/arrow.svg), white;
  background-repeat: no-repeat;
  background-position: 95% center; }

.form-item_label {
  display: block;
  font-size: 16px;
  line-height: 24px;
  color: #7E7F94;
  margin-bottom: 0.25rem; }
  @media screen and (max-width: 1023px) {
    .form-item_label {
      font-size: 14px;
      line-height: 20px; } }

.error + .select2 .select2-selection__placeholder {
  color: #F7A970; }

label.error {
  position: absolute;
  color: #F7A970;
  font-size: 12px;
  line-height: 14px;
  bottom: -16px;
  z-index: 998;
  left: 0; }

.form-item_checkbox {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
  margin-top: 1.5rem; }
  @media screen and (max-width: 767px) {
    .form-item_checkbox {
      flex-direction: column; } }
  .form-item_checkbox .custom-checkbox-label {
    display: flex;
    position: relative;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
    @media screen and (max-width: 767px) {
      .form-item_checkbox .custom-checkbox-label {
        width: 100%; } }
    .form-item_checkbox .custom-checkbox-label:first-of-type {
      margin-right: 2rem; }
      @media screen and (max-width: 1023px) {
        .form-item_checkbox .custom-checkbox-label:first-of-type {
          margin-right: 1.5rem; } }
      @media screen and (max-width: 767px) {
        .form-item_checkbox .custom-checkbox-label:first-of-type {
          margin-right: 0;
          margin-bottom: 1rem; } }
    .form-item_checkbox .custom-checkbox-label .custom-checkbox-input {
      display: block;
      opacity: 0;
      cursor: pointer;
      height: 0;
      width: 0; }
      .form-item_checkbox .custom-checkbox-label .custom-checkbox-input:checked ~ .custom-checkbox {
        border: 1px solid #27313A; }
        .form-item_checkbox .custom-checkbox-label .custom-checkbox-input:checked ~ .custom-checkbox:after {
          opacity: 1;
          visibility: visible; }
    .form-item_checkbox .custom-checkbox-label .custom-checkbox {
      display: block;
      margin-right: 1rem;
      min-height: 24px;
      min-width: 24px;
      max-height: 24px;
      max-width: 24px;
      border: 1px solid #D8D8D8;
      border-radius: 8px;
      transition: .2s; }
      .form-item_checkbox .custom-checkbox-label .custom-checkbox:after {
        content: url(../images/check.svg);
        position: absolute;
        top: 0;
        left: 5px;
        height: 24px;
        width: 24px;
        opacity: 0;
        visibility: hidden;
        transition: .2s; }
    .form-item_checkbox .custom-checkbox-label .custom-checkbox-text {
      display: block;
      color: #7E7F94;
      font-size: 16px;
      line-height: 24px; }
      @media screen and (max-width: 1023px) {
        .form-item_checkbox .custom-checkbox-label .custom-checkbox-text {
          font-size: 14px; } }

#refund_cancellation-error,
#user_agreement-error {
  display: none !important; }
  #refund_cancellation-error + .custom-checkbox,
  #user_agreement-error + .custom-checkbox {
    border-color: #f7a970; }

.help-text {
  color: #7E7F94;
  font-size: 1rem;
  line-height: 1.5rem;
  margin-top: 1rem; }
  @media screen and (max-width: 1023px) {
    .help-text {
      font-size: 14px;
      line-height: 20px; } }

.registration-form .help-text, .callback-form .help-text {
  line-height: 3rem;
  margin-top: 1.75rem; }
  @media screen and (max-width: 767px) {
    .registration-form .help-text, .callback-form .help-text {
      margin-top: 1.5rem;
      line-height: 1; } }

.recomend-text {
  margin-bottom: 1.5rem; }

.form-links {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .form-links {
      flex-direction: column; } }
  .form-links .form-links_item {
    font-size: 16px;
    line-height: 24px;
    font-family: "Nunito", sans-serif;
    font-weight: 600;
    transition: .3s; }
    .form-links .form-links_item:hover {
      color: #7E7F94; }
    @media screen and (max-width: 1023px) {
      .form-links .form-links_item {
        font-size: 14px;
        line-height: 20px; } }
    .form-links .form-links_item:first-of-type {
      margin-right: 2rem; }
      @media screen and (max-width: 1023px) {
        .form-links .form-links_item:first-of-type {
          margin-right: 1.5rem; } }
      @media screen and (max-width: 767px) {
        .form-links .form-links_item:first-of-type {
          text-align: center;
          margin-right: 0;
          margin-bottom: 1rem; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMubWluLmNzcyIsInNvdXJjZXMiOlsiZm9ybXMuc2NzcyIsInBhcnRpYWxzL19taXhpbnMuc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInBhcnRpYWxzL19mdW5jdGlvbnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tYWduaWZpYy1wb3B1cC9zcmMvY3NzL21haW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tYWduaWZpYy1wb3B1cC9zcmMvY3NzL19zZXR0aW5ncy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJwYXJ0aWFscy9taXhpbnNcIjtcclxuQGltcG9ydCBcInBhcnRpYWxzL3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvZnVuY3Rpb25zXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbWFnbmlmaWMtcG9wdXAvc3JjL2Nzcy9tYWluXCI7XHJcblxyXG4vLyBAaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL3NlbGVjdDIvc3JjL3Njc3MvY29yZVwiO1xyXG4uZm9ybS1oZWFkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMCByZW0oMTZweCk7XHJcbiAgICBwYWRkaW5nLXRvcDogcmVtKDE2OHB4KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiByZW0oOTZweCk7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEzNnB4KTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDY0cHgpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2JnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogLTI7XHJcbiAgICAgICAgbWF4LWhlaWdodDogcmVtKDEyMDBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybS1pbm5lciB7XHJcbiAgICBtYXgtd2lkdGg6IHJlbSg1MDRweCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnNlbGVjdDIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm1mcC1jbG9zZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICByaWdodDogcmVtKDE2cHgpO1xyXG4gICAgdG9wOiByZW0oMTZweCk7XHJcbiAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB3aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIHRvcDogcmVtKDE2cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgIHJpZ2h0OiByZW0oMTJweCk7XHJcbiAgICAgICAgdG9wOiByZW0oMTJweCk7XHJcblxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgdG9wOiByZW0oMTJweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgcmlnaHQ6IHJlbSg4cHgpO1xyXG4gICAgICAgIHRvcDogcmVtKDhweCk7XHJcblxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgdG9wOiByZW0oOHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1hZ2VzL2Nsb3NlLnN2ZycpO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiByZW0oMjRweCk7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0oMjRweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mb3JtLXdyYXBwZXIsXHJcbi5wb3B1cF9pbmZvcm1hdGlvbiB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcblxyXG4gICAgLm1haW4tZGVjb3Ige1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgfVxyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAuaDItdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgzMnB4KTtcclxuXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyNHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgzMnB4KTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzJweCk7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDI0cHgpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjRweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zYWNjZXNzLXBvcHVwIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5wb3B1cF9pbmZvcm1hdGlvbixcclxuLmZvcm0td3JhcHBlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogcmVtKDExMjBweCk7XHJcbiAgICBwYWRkaW5nOiByZW0oNDBweCk7XHJcbiAgICBiYWNrZ3JvdW5kOndoaXRlO1xyXG4gICAgYm94LXNoYWRvdzogNHB4IDRweCAxNHB4IHJnYmEoMCwgMCwgMCwgMC4xMyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMjBweCk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIFxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0oNDBweCkgcmVtKDI0cHgpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucG9wdXBfaW5mb3JtYXRpb24ge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICBtYXgtd2lkdGg6IHJlbSg2MjVweCk7XHJcblxyXG4gICAgLmFsbC10ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxvZ2luLWZvcm0ge1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbn1cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW46IDAgLTE2cHg7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMzJweCk7XHJcblxyXG4gICAgLmZvcm0taXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDEyICogNiAtIDMycHgpO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTZweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybS1pdGVtIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDI0cHgpO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4ubm8tbWFyZ2luIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgLmZvcm0taXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmZvcm0taXRlbV93cmFwcGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlO1xyXG59XHJcblxyXG4uY3VzdG9tLXNlbGVjdCxcclxuLmZvcm0taXRlbV9pbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XHJcbiAgICBwYWRkaW5nOiByZW0oMTJweCkgcmVtKDE2cHgpO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBjb2xvcjogIzc2ODg5NztcclxuICAgIGNhcmV0LWNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xyXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICRtYWluLXRleHQtY29sb3I7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRDhEOEQ4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmVycm9yIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICNGN0E5NzA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zaG93IHtcclxuICAgICAgICAmfi5zaG93LWljb24ge1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2hpZGRlbi1pY29uLnN2Z1wiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNob3ctaWNvbiB7XHJcbiAgICB3aWR0aDogcmVtKDIzcHgpO1xyXG4gICAgaGVpZ2h0OiByZW0oMjNweCk7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogcmVtKDE2cHgpO1xyXG4gICAgdG9wOiByZW0oNDJweCk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgdG9wOiByZW0oMzZweCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zaG93LWljb24uc3ZnXCIpO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXNlbGVjdCB7XHJcbiAgICBwYWRkaW5nOiByZW0oMTJweCkgcmVtKDE2cHgpO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9hcnJvdy5zdmcpLCB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NSUgY2VudGVyO1xyXG59XHJcblxyXG4uZm9ybS1pdGVtX2xhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBjb2xvcjogJHNlY29uZC10ZXh0LWNvbG9yO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDRweCk7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uZXJyb3IrLnNlbGVjdDIge1xyXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6ICNGN0E5NzA7XHJcbiAgICB9XHJcbn1cclxuXHJcbmxhYmVsLmVycm9yIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbG9yOiAjRjdBOTcwO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7XHJcbiAgICBib3R0b206IC0xNnB4O1xyXG4gICAgei1pbmRleDogOTk4O1xyXG4gICAgbGVmdDogMDtcclxufVxyXG5cclxuLmZvcm0taXRlbV9jaGVja2JveCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWFyZ2luLXRvcDogcmVtKDI0cHgpO1xyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAuY3VzdG9tLWNoZWNrYm94LWxhYmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMzJweCk7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDI0cHgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgLmN1c3RvbS1jaGVja2JveC1pbnB1dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICBcclxuICAgICAgICAgICAgJjpjaGVja2VkIHtcclxuICAgICAgICAgICAgICAgICZ+LmN1c3RvbS1jaGVja2JveCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzI3MzEzQTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgLmN1c3RvbS1jaGVja2JveCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxNnB4KTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoLi4vaW1hZ2VzL2NoZWNrLnN2Zyk7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuMnM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAuY3VzdG9tLWNoZWNrYm94LXRleHQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmQtdGV4dC1jb2xvcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4jcmVmdW5kX2NhbmNlbGxhdGlvbi1lcnJvcixcclxuI3VzZXJfYWdyZWVtZW50LWVycm9yIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICArLmN1c3RvbS1jaGVja2JveCB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZjdhOTcwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVscC10ZXh0IHtcclxuICAgIGNvbG9yOiAkc2Vjb25kLXRleHQtY29sb3I7XHJcbiAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0oMjRweCk7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0oMTZweCk7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucmVnaXN0cmF0aW9uLWZvcm0sIC5jYWxsYmFjay1mb3JtIHtcclxuICAgIC5oZWxwLXRleHQge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oNDhweCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDI4cHgpO1xyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMjRweCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnJlY29tZW5kLXRleHQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDI0cHgpO1xyXG59XHJcblxyXG4uZm9ybS1saW5rcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWxpbmtzX2l0ZW0ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbWFpbjtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kLXRleHQtY29sb3I7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDMycHgpO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgyNHB4KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNnB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIkBtaXhpbiBjbGVhbnsgXHJcbiAgICAgbWFyZ2luOiAwO1xyXG4gICAgIHBhZGRpbmc6IDA7ICAgXHJcbn1cclxuXHJcbkBtaXhpbiBuZXctZm9udCgkZm9udC1uYW1lLCAkZm9udC1saW5rKXtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lO1xyXG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy8jeyRmb250LWxpbmt9LmVvdFwiKTtcclxuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvI3skZm9udC1saW5rfS5lb3Q/I2llZml4XCIpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgdXJsKFwiLi4vZm9udHMvI3skZm9udC1saW5rfS50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICB1cmwoXCIuLi9mb250cy8jeyRmb250LWxpbmt9LndvZmZcIikgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgIHVybChcIi4uL2ZvbnRzLyN7JGZvbnQtbGlua30ud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICB1cmwoXCIuLi9mb250cy8jeyRmb250LWxpbmt9LnN2ZyNNeUZvbnRcIikgZm9ybWF0KCdzdmcnKTsgICAgXHJcbn1cclxuXHJcbkBtaXhpbiBuZXctZm9udDIoJGZvbnQtbmFtZSwgJGZvbnQtbGluayl7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtbmFtZTtcclxuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvI3skZm9udC1saW5rfS50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICB1cmwoXCIuLi9mb250cy8jeyRmb250LWxpbmt9LndvZmZcIikgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgIHVybChcIi4uL2ZvbnRzLyN7JGZvbnQtbGlua30ud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpOyAgICBcclxufVxyXG5cclxuQG1peGluIGZsZXgtY2VudGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuQG1peGluIGZsZXgtYmV0d2VlbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcbkBtaXhpbiBmbGV4LWFyb3VuZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbn1cclxuQG1peGluIGJhY2stY29udGFpbiB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5AbWl4aW4gYmFjay1jb3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuQG1peGluIG1hIHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8v0KTQo9Cd0JrQptCY0JhcclxuXHJcbkBmdW5jdGlvbiBweC10by1lbSgkcHgsICRjb250ZXh0OiAxNnB4KXtcclxuIEByZXR1cm4gKCRweCAvICRjb250ZXh0KSAqIDFlbTsgICBcclxufVxyXG5cclxuXHJcbkBmdW5jdGlvbiBweCgkcHgpIHtcclxuXHRAcmV0dXJuICRweCAqIDAuNjI1IC8gMTIgKyB2dztcclxufSIsIi8vIEZPTlRTXHJcbiRmb250LW1haW46ICdOdW5pdG8nLFxyXG5zYW5zLXNlcmlmO1xyXG4kZm9udC1zZWNvbmQ6ICdNb250c2VycmF0Jyxcclxuc2Fucy1zZXJpZjtcclxuJHJvb3QtZm9udC1zaXplOiAxNnB4O1xyXG5cclxuLy9DT0xPUlNcclxuJG1haW4tY29sb3I6ICMzNDJGNjE7XHJcbiRzZWNvbmQtY29sb3I6ICNGMTlCMTE7XHJcblxyXG4kbWFpbi10ZXh0LWNvbG9yOiAjMTcxQTQyO1xyXG4kc2Vjb25kLXRleHQtY29sb3I6ICM3RTdGOTQ7XHJcblxyXG4kYmctY29sb3I6ICNGRkY7IiwiQGZ1bmN0aW9uIHJlbSgkc2l6ZSkge1xyXG5cdEByZXR1cm4gJHNpemUgLyAkcm9vdC1mb250LXNpemUgKiAxcmVtO1xyXG59XHJcblxyXG4vL0NPTE9SU1xyXG5AZnVuY3Rpb24gY29sb3ItbWFpbigkcjogMjUyLCAkZzogNDMsICRiOiA1OCwgJGE6IDEpIHtcclxuXHRAcmV0dXJuIHJnYmEoJHIsICRnLCAkYiwgJGEpO1xyXG59XHJcbkBmdW5jdGlvbiBjb2xvci1zZWNvbmQoJHI6IDQwLCAkZzogOTIsICRiOiAyMjYsICRhOiAxKSB7XHJcblx0QHJldHVybiByZ2JhKCRyLCAkZywgJGIsICRhKTtcclxufVxyXG5AZnVuY3Rpb24gY29sb3ItYmxhY2soJHI6IDAsICRnOiAwLCAkYjogMCwgJGE6IDEpIHtcclxuXHRAcmV0dXJuIHJnYmEoJHIsICRnLCAkYiwgJGEpO1xyXG59XHJcbkBmdW5jdGlvbiBjb2xvci1ncmF5KCRyOiAxMjIsICRnOiAxMjIsICRiOiAxMjIsICRhOiAxKSB7XHJcblx0QHJldHVybiByZ2JhKCRyLCAkZywgJGIsICRhKTtcclxufVxyXG5AZnVuY3Rpb24gY29sb3Itd2hpdGUoJHI6IDI1NSwgJGc6IDI1NSwgJGI6IDI1NSwgJGE6IDEpIHtcclxuXHRAcmV0dXJuIHJnYmEoJHIsICRnLCAkYiwgJGEpO1xyXG59IiwiLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG5cbkBpbXBvcnQgXCJzZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vXG4vLyBDb250ZW50czpcbi8vXG4vLyAxLiBHZW5lcmFsIHN0eWxlc1xuLy8gICAgLSBUcmFuc2x1c2NlbnQgb3ZlcmxheVxuLy8gICAgLSBDb250YWluZXJzLCB3cmFwcGVyc1xuLy8gICAgLSBDdXJzb3JzXG4vLyAgICAtIEhlbHBlciBjbGFzc2VzXG4vLyAyLiBBcHBlYXJhbmNlXG4vLyAgICAtIFByZWxvYWRlciAmIHRleHQgdGhhdCBkaXNwbGF5cyBlcnJvciBtZXNzYWdlc1xuLy8gICAgLSBDU1MgcmVzZXQgZm9yIGJ1dHRvbnNcbi8vICAgIC0gQ2xvc2UgaWNvblxuLy8gICAgLSBcIjEgb2YgWFwiIGNvdW50ZXJcbi8vICAgIC0gTmF2aWdhdGlvbiAobGVmdC9yaWdodCkgYXJyb3dzXG4vLyAgICAtIElmcmFtZSBjb250ZW50IHR5cGUgc3R5bGVzXG4vLyAgICAtIEltYWdlIGNvbnRlbnQgdHlwZSBzdHlsZXNcbi8vICAgIC0gTWVkaWEgcXVlcnkgd2hlcmUgc2l6ZSBvZiBhcnJvd3MgaXMgcmVkdWNlZFxuLy8gICAgLSBJRTcgc3VwcG9ydFxuLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyAxLiBHZW5lcmFsIHN0eWxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vIFRyYW5zbHVzY2VudCBvdmVybGF5XG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcblxuICBiYWNrZ3JvdW5kOiAkbWZwLW92ZXJsYXktY29sb3I7XG4gIG9wYWNpdHk6ICRtZnAtb3ZlcmxheS1vcGFjaXR5O1xufVxuXG4vLyBXcmFwcGVyIGZvciBwb3B1cFxuLm1mcC13cmFwIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLy8gZml4ZXMgd2Via2l0IGJ1ZyB0aGF0IGNhbiBjYXVzZSBcImZhbHNlXCIgc2Nyb2xsYmFyXG59XG5cbi8vIFJvb3QgY29udGFpbmVyXG4ubWZwLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmc6IDAgJG1mcC1wb3B1cC1wYWRkaW5nLWxlZnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8vIFZlcnRpY2FsIGNlbnRlcmVyIGhlbHBlclxuLm1mcC1jb250YWluZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi8vIFJlbW92ZSB2ZXJ0aWNhbCBjZW50ZXJpbmcgd2hlbiBwb3B1cCBoYXMgY2xhc3MgYG1mcC1hbGlnbi10b3BgXG4ubWZwLWFsaWduLXRvcCB7XG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQb3B1cCBjb250ZW50IGhvbGRlclxuLm1mcC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDU7XG59XG4ubWZwLWlubGluZS1ob2xkZXIsXG4ubWZwLWFqYXgtaG9sZGVyIHtcbiAgLm1mcC1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLy8gQ3Vyc29yc1xuLm1mcC1hamF4LWN1ciB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7XG59XG4ubWZwLXpvb20tb3V0LWN1ciB7XG4gICYsIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICAgIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbiAgfVxufVxuLm1mcC16b29tIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cbi5tZnAtYXV0by1jdXJzb3Ige1xuICAubWZwLWNvbnRlbnQge1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxufVxuXG4ubWZwLWNsb3NlLFxuLm1mcC1hcnJvdyxcbi5tZnAtcHJlbG9hZGVyLFxuLm1mcC1jb3VudGVyIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8gSGlkZSB0aGUgaW1hZ2UgZHVyaW5nIHRoZSBsb2FkaW5nXG4ubWZwLWxvYWRpbmcge1xuICAmLm1mcC1maWd1cmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gSGVscGVyIGNsYXNzIHRoYXQgaGlkZXMgc3R1ZmZcbkBpZiAkbWZwLXVzZS12aXN1YWxseWhpZGRlbiB7XG4gIC8vIEZyb20gSFRNTDUgQm9pbGVycGxhdGUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi92NC4yLjAvZG9jL2Nzcy5tZCN2aXN1YWxseWhpZGRlblxuICAubWZwLWhpZGUge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICB9XG59IEBlbHNlIHtcbiAgLm1mcC1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIDIuIEFwcGVhcmFuY2Vcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBQcmVsb2FkZXIgYW5kIHRleHQgdGhhdCBkaXNwbGF5cyBlcnJvciBtZXNzYWdlc1xuLm1mcC1wcmVsb2FkZXIge1xuICBjb2xvcjogJG1mcC1jb250cm9scy10ZXh0LWNvbG9yO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtMC44ZW07XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyA0O1xuICBhIHtcbiAgICBjb2xvcjogJG1mcC1jb250cm9scy10ZXh0LWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvci1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGlkZSBwcmVsb2FkZXIgd2hlbiBjb250ZW50IHN1Y2Nlc3NmdWxseSBsb2FkZWRcbi5tZnAtcy1yZWFkeSB7XG4gIC5tZnAtcHJlbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIEhpZGUgY29udGVudCB3aGVuIGl0IHdhcyBub3QgbG9hZGVkXG4ubWZwLXMtZXJyb3Ige1xuICAubWZwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gQ1NTLXJlc2V0IGZvciBidXR0b25zXG5idXR0b24ge1xuICAmLm1mcC1jbG9zZSxcbiAgJi5tZnAtYXJyb3cge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgfVxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDBcbiAgfVxufVxuXG5cbi8vIENsb3NlIGljb25cbi5tZnAtY2xvc2Uge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkbWZwLWNvbnRyb2xzLW9wYWNpdHk7XG4gIHBhZGRpbmc6IDAgMCAxOHB4IDEwcHg7XG4gIGNvbG9yOiAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEJhc2tlcnZpbGxlLCBtb25vc3BhY2U7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0b3A6IDFweDtcbiAgfVxufVxuLm1mcC1jbG9zZS1idG4taW4ge1xuICAubWZwLWNsb3NlIHtcbiAgICBjb2xvcjogJG1mcC1pbm5lci1jbG9zZS1pY29uLWNvbG9yO1xuICB9XG59XG4ubWZwLWltYWdlLWhvbGRlcixcbi5tZnAtaWZyYW1lLWhvbGRlciB7XG4gIC5tZnAtY2xvc2Uge1xuICAgIGNvbG9yOiAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuICAgIHJpZ2h0OiAtNnB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vLyBcIjEgb2YgWFwiIGNvdW50ZXJcbi5tZnAtY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gTmF2aWdhdGlvbiBhcnJvd3NcbkBpZiAkbWZwLWluY2x1ZGUtYXJyb3dzIHtcbiAgLm1mcC1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6ICRtZnAtY29udHJvbHMtb3BhY2l0eTtcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTU1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogOTBweDtcbiAgICBoZWlnaHQ6IDExMHB4O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtNTRweDtcbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICAgIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxM3B4O1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMTNweDtcbiAgICAgIHRvcDo4cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMjFweDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIxcHg7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuXG4gIH1cblxuICAubWZwLWFycm93LWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgJG1mcC1jb250cm9scy1jb2xvcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgIGJvcmRlci1yaWdodDogMjdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubWZwLWFycm93LXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxN3B4IHNvbGlkICRtZnAtY29udHJvbHMtY29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogMzlweFxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItbGVmdDogMjdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIElmcmFtZSBjb250ZW50IHR5cGVcbkBpZiAkbWZwLWluY2x1ZGUtaWZyYW1lLXR5cGUge1xuICAubWZwLWlmcmFtZS1ob2xkZXIge1xuICAgIHBhZGRpbmctdG9wOiAkbWZwLWlmcmFtZS1wYWRkaW5nLXRvcDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJG1mcC1pZnJhbWUtcGFkZGluZy10b3A7XG4gICAgLm1mcC1jb250ZW50IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6ICRtZnAtaWZyYW1lLW1heC13aWR0aDtcbiAgICB9XG4gICAgLm1mcC1jbG9zZSB7XG4gICAgICB0b3A6IC00MHB4O1xuICAgIH1cbiAgfVxuICAubWZwLWlmcmFtZS1zY2FsZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAkbWZwLWlmcmFtZS1yYXRpbyAqIDEwMCU7XG4gICAgaWZyYW1lIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm94LXNoYWRvdzogJG1mcC1zaGFkb3c7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWZwLWlmcmFtZS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gSW1hZ2UgY29udGVudCB0eXBlXG5AaWYgJG1mcC1pbmNsdWRlLWltYWdlLXR5cGUge1xuXG4gIC8qIE1haW4gaW1hZ2UgaW4gcG9wdXAgKi9cbiAgaW1nIHtcbiAgICAmLm1mcC1pbWcge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBhZGRpbmc6ICRtZnAtaW1hZ2UtcGFkZGluZy10b3AgMCAkbWZwLWltYWdlLXBhZGRpbmctYm90dG9tO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLyogVGhlIHNoYWRvdyBiZWhpbmQgdGhlIGltYWdlICovXG4gIC5tZnAtZmlndXJlIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogJG1mcC1pbWFnZS1wYWRkaW5nLXRvcDtcbiAgICAgIGJvdHRvbTogJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYm94LXNoYWRvdzogJG1mcC1zaGFkb3c7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWZwLWltYWdlLWJhY2tncm91bmQ7XG4gICAgfVxuICAgIHNtYWxsIHtcbiAgICAgIGNvbG9yOiAkbWZwLWNhcHRpb24tc3VidGl0bGUtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgIH1cbiAgICBmaWd1cmUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAubWZwLWJvdHRvbS1iYXIge1xuICAgIG1hcmdpbi10b3A6IC0kbWZwLWltYWdlLXBhZGRpbmctYm90dG9tICsgNDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG4gIC5tZnAtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgY29sb3I6ICRtZnAtY2FwdGlvbi10aXRsZS1jb2xvcjtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgcGFkZGluZy1yaWdodDogMzZweDsgLy8gbGVhdmUgc29tZSBzcGFjZSBmb3IgY291bnRlciBhdCByaWdodCBzaWRlXG4gIH1cblxuICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgLm1mcC1jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubWZwLWdhbGxlcnkge1xuICAgIC5tZnAtaW1hZ2UtaG9sZGVyIHtcbiAgICAgIC5tZnAtZmlndXJlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgQGlmICRtZnAtaW5jbHVkZS1tb2JpbGUtbGF5b3V0LWZvci1pbWFnZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMzAwcHgpIHtcbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlblxuICAgICAgICovXG4gICAgICAubWZwLWltZy1tb2JpbGUge1xuICAgICAgICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAmLm1mcC1pbWcge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1maWd1cmUge1xuICAgICAgICAgIC8vIFRoZSBzaGFkb3cgYmVoaW5kIHRoZSBpbWFnZVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWZwLWJvdHRvbS1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC42KTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAzcHggNXB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1jb3VudGVyIHtcbiAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICB9XG4gICAgICAgIC5tZnAtY2xvc2Uge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gU2NhbGUgbmF2aWdhdGlvbiBhcnJvd3MgYW5kIHJlZHVjZSBwYWRkaW5nIGZyb20gc2lkZXNcbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5tZnAtYXJyb3cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICB9XG4gIC5tZnAtYXJyb3ctbGVmdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7XG4gIH1cbiAgLm1mcC1hcnJvdy1yaWdodCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gIH1cbiAgLm1mcC1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogJG1mcC1wb3B1cC1wYWRkaW5nLWxlZnQtbW9iaWxlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTtcbiAgfVxufVxuXG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vICAgICAgU2V0dGluZ3MgICAgICAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vIG92ZXJsYXlcbiRtZnAtb3ZlcmxheS1jb2xvcjogICAgICAgICAgICAgICAgICAgIzBiMGIwYiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIG9mIG92ZXJsYXkgc2NyZWVuXG4kbWZwLW92ZXJsYXktb3BhY2l0eTogICAgICAgICAgICAgICAgIDAuOCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAvLyBPcGFjaXR5IG9mIG92ZXJsYXkgc2NyZWVuXG4kbWZwLXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgIDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpICFkZWZhdWx0OyAvLyBTaGFkb3cgb24gaW1hZ2Ugb3IgaWZyYW1lXG5cbi8vIHNwYWNpbmdcbiRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgOHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhZGRpbmcgZnJvbSBsZWZ0IGFuZCBmcm9tIHJpZ2h0IHNpZGVcbiRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTogICAgICAgNnB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNhbWUgYXMgYWJvdmUsIGJ1dCBpcyBhcHBsaWVkIHdoZW4gd2lkdGggb2Ygd2luZG93IGlzIGxlc3MgdGhhbiA4MDBweFxuXG4kbWZwLXotaW5kZXgtYmFzZTogICAgICAgICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBCYXNlIHotaW5kZXggb2YgcG9wdXBcblxuLy8gY29udHJvbHNcbiRtZnAtaW5jbHVkZS1hcnJvd3M6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEluY2x1ZGUgc3R5bGVzIGZvciBuYXYgYXJyb3dzXG4kbWZwLWNvbnRyb2xzLW9wYWNpdHk6ICAgICAgICAgICAgICAgIDAuNjUgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBPcGFjaXR5IG9mIGNvbnRyb2xzXG4kbWZwLWNvbnRyb2xzLWNvbG9yOiAgICAgICAgICAgICAgICAgICNGRkYgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBjb250cm9sc1xuJG1mcC1jb250cm9scy1ib3JkZXItY29sb3I6ICAgICAgICAgICAjM0YzRjNGICFkZWZhdWx0OyBcdCAgICAgICAgICAgICAgICAgLy8gQm9yZGVyIGNvbG9yIG9mIGNvbnRyb2xzXG4kbWZwLWlubmVyLWNsb3NlLWljb24tY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBjbG9zZSBidXR0b24gd2hlbiBpbnNpZGVcbiRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjogICAgICAgICAgICAgI0NDQyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIG9mIHByZWxvYWRlciBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3JcbiRtZnAtY29udHJvbHMtdGV4dC1jb2xvci1ob3ZlcjogICAgICAgI0ZGRiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEhvdmVyIGNvbG9yIG9mIHByZWxvYWRlciBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3JcblxuLy8gSWZyYW1lLXR5cGUgb3B0aW9uc1xuJG1mcC1pbmNsdWRlLWlmcmFtZS10eXBlOiAgICAgICAgICAgICB0cnVlICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5hYmxlIElmcmFtZS10eXBlIHBvcHVwc1xuJG1mcC1pZnJhbWUtcGFkZGluZy10b3A6ICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSWZyYW1lIHBhZGRpbmcgdG9wXG4kbWZwLWlmcmFtZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGlmcmFtZXNcbiRtZnAtaWZyYW1lLW1heC13aWR0aDogICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vIE1heGltdW0gd2lkdGggb2YgaWZyYW1lc1xuJG1mcC1pZnJhbWUtcmF0aW86ICAgICAgICAgICAgICAgICAgICA5LzE2ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gUmF0aW8gb2YgaWZyYW1lICg5LzE2ID0gd2lkZXNjcmVlbiwgMy80ID0gc3RhbmRhcmQsIGV0Yy4pXG5cbi8vIEltYWdlLXR5cGUgb3B0aW9uc1xuJG1mcC1pbmNsdWRlLWltYWdlLXR5cGU6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5hYmxlIEltYWdlLXR5cGUgcG9wdXBzXG4kbWZwLWltYWdlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbWZwLWltYWdlLXBhZGRpbmctdG9wOiAgICAgICAgICAgICAgIDQwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbWFnZSBwYWRkaW5nIHRvcFxuJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTogICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSW1hZ2UgcGFkZGluZyBib3R0b21cbiRtZnAtaW5jbHVkZS1tb2JpbGUtbGF5b3V0LWZvci1pbWFnZTogdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlbW92ZXMgcGFkZGluZ3MgZnJvbSB0b3AgYW5kIGJvdHRvbVxuXG4vLyBJbWFnZSBjYXB0aW9uIG9wdGlvbnNcbiRtZnAtY2FwdGlvbi10aXRsZS1jb2xvcjogICAgICAgICAgICAgI0YzRjNGMyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENhcHRpb24gdGl0bGUgY29sb3JcbiRtZnAtY2FwdGlvbi1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgI0JEQkRCRCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENhcHRpb24gc3VidGl0bGUgY29sb3JcblxuLy8gQTExeVxuJG1mcC11c2UtdmlzdWFsbHloaWRkZW46ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgLy8gSGlkZSBjb250ZW50IGZyb20gYnJvd3NlcnMsIGJ1dCBtYWtlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUlBQSx3QkFBd0I7QUFpQ3hCLEFBQUEsT0FBTyxDQUFDO0VBQ04sR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVDekI2QixJQUFJO0VEMEJ4QyxRQUFRLEVBQUUsTUFBTTtFQUNoQixRQUFRLEVBQUUsS0FBSztFQUVmLFVBQVUsRUNyQzBCLE9BQU87RURzQzNDLE9BQU8sRUNyQzZCLEdBQUcsR0RzQ3hDOztBQUdELEFBQUEsU0FBUyxDQUFDO0VBQ1IsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVDdkM2QixJQUFJO0VEd0N4QyxRQUFRLEVBQUUsS0FBSztFQUNmLE9B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 */
