/*!***********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/commonui.scss ***!
  \***********************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css?family=Mulish:500,500i,700,700i,800,800i&display=swap);
/*!**********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/global.scss ***!
  \**********************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css?family=Mulish:500,500i,700,700i,800,800i&display=swap);
/*!**********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtalerts.scss ***!
  \**********************************************************************************************************************************************************************************************************************/
.mxt-alert-div {
  display: flex;
  flex-flow: column;
}

.mxt-alert-content {
  padding: 0px 25px 40px;
  display: flex;
  flex-flow: column;
  align-items: center;
  overflow: auto;
}
.mxt-alert-content .mxt-btn {
  min-height: 40px;
}
.mxt-alert-content .mxt-checkbox {
  margin-top: 24px;
  margin-bottom: 0px;
}

.mxt-alert-text.mxt-alert-info {
  color: var(--mxt-font-color);
}

.mxt-alert-input-clear {
  position: absolute;
  top: 10px;
  right: 25px;
  cursor: pointer;
  opacity: 0.5;
  transition: all 0.3s ease;
}

.mxt-alert-input-clear:hover {
  opacity: 1;
}

.mxt-alert-text {
  color: var(--mxt-font-color);
  text-align: center;
  margin-bottom: 20px;
  font: var(--mxt-font-body-lg);
  line-height: 24px;
}

.mxt-alert-danger {
  color: #a94442;
  background-color: #f2dede;
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid #ebccd1;
  border-radius: var(--mxt-corner-roundness);
}

.mxt-alert-text.mxt-alert-danger {
  background: none;
  border: none;
}

.mxt-alert-input-div {
  position: relative;
  width: 100%;
}

input.mxt-alert-input {
  height: 50px;
  padding: 6px 12px;
  font: var(--mxt-font-body-lg);
  width: 100%;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
  margin-bottom: 20px;
}

.mxt-alert-prompt-yes {
  margin-bottom: 10px;
}

.mxt-alert-prompt-third {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .mxt-alert-content {
    width: 600px;
    /** make sure it still fits*/
    max-width: 100%;
  }
}
/*!*********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtmodal.scss ***!
  \*********************************************************************************************************************************************************************************************************************/
.mxt-modal-background.mxt-full-modal-screen {
  background: rgba(0, 0, 0, 0.5);
  z-index: 10005;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 1s all ease;
}

.mxt-modal-div {
  background: #f7f7f7;
  border-radius: var(--mxt-corner-roundness);
  box-shadow: 0px 0px 5px 1px rgb(100, 100, 100);
  position: relative;
  width: 80%;
  max-height: calc(100% - 40px);
  height: fit-content;
  overflow: visible; /** so x button shows*/
}
.mxt-modal-div .mxt-modal-content {
  overflow: auto;
  height: 100%;
}
@media (min-width: 767px) {
  .mxt-modal-div {
    width: initial;
    max-width: 80%;
  }
}

.mxt-default-modal-header-container {
  display: flex;
  justify-content: center;
}

.mxt-default-modal-header {
  font: var(--mxt-font-header);
  color: var(--mxt-font-color);
  padding: 13px;
  text-align: center;
  margin-top: 20px;
  margin-bottom: 10px;
}

.closeButton {
  opacity: 0.8;
  position: absolute;
  top: -20px;
  right: -20px;
  background-color: white;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  z-index: 3;
  box-shadow: 0px 0px 10px black;
  user-select: none;
}

.closeIcon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtusermodals.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
#login-modal .form-container,
#register-modal .form-container {
  overflow: auto;
  width: 100%;
}
#login-modal .form-container .flex-form-parent,
#register-modal .form-container .flex-form-parent {
  display: flex;
  flex-wrap: wrap;
}
#login-modal .form-container .mxt-flex-form-group,
#register-modal .form-container .mxt-flex-form-group {
  flex: 1;
  min-width: 165px;
  margin: 5px;
}
#login-modal .form-container .form-input-label,
#register-modal .form-container .form-input-label {
  display: inline;
}
#login-modal .mxt-login-register-modal-equal-flex,
#register-modal .mxt-login-register-modal-equal-flex {
  flex: 1;
  position: relative;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
#login-modal .img-container,
#register-modal .img-container {
  background: var(--mxt-login-register-hero);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  margin: 10px;
  display: none;
}
#login-modal .img-container .freeRegistration,
#register-modal .img-container .freeRegistration {
  padding: 15px;
  text-align: center;
  width: 250px;
}
@media (min-width: 992px) {
  #login-modal .img-container,
  #register-modal .img-container {
    display: inherit;
  }
}

#login-modal .control-label,
#register-modal .control-label {
  font: var(--mxt-font-body-lg-bold);
}

#login-modal {
  width: 900px;
  height: 100%;
  display: flex;
  max-width: 100%;
  overflow: auto;
}
#login-modal #loginForm {
  width: 90%;
  margin: auto;
}
@media (min-width: 767px) {
  #login-modal #loginForm {
    width: 65%;
  }
}
#login-modal .form-container {
  padding-bottom: 0;
}
@media (min-width: 767px) {
  #login-modal .form-container {
    padding-bottom: 50px;
  }
}
#login-modal .form-container #saveReminder {
  font-size: 16px;
  margin-bottom: 20px;
}
#login-modal .form-container #forgotPasswordBtn {
  position: absolute;
  top: -10px;
  right: 0px;
  margin-top: 10px;
  line-height: 18px;
  font: var(--mxt-font-body);
  color: #4fc1df;
  text-decoration: underline;
  cursor: pointer;
}

.login-modal {
  height: 477px;
}

#register-modal {
  width: 900px;
  display: flex;
  max-width: 100%;
  /* We need to restrict the height on tablet so that we can force the modal to scroll and fit on the screen, but we only want that in landscape */
}
#register-modal #registerForm {
  padding: 15px;
}
#register-modal .form-container .help-block {
  min-height: 26px;
}
#register-modal .form-container .mxt-alert-danger {
  margin-top: 20px;
}
#register-modal .form-container .form-buttons {
  display: flex;
  flex-flow: column;
  align-items: center;
}
#register-modal .form-container .form-buttons > * {
  margin-top: 20px;
  width: 50%;
}
@media (max-width: 991px) and (orientation: landscape) {
  #register-modal {
    max-height: 330px;
  }
}
@media (max-width: 700px) and (orientation: portrait) {
  #register-modal {
    max-height: 600px;
  }
}
@media (min-width: 992px) and (orientation: landscape) {
  #register-modal {
    max-height: 600px;
  }
}

.background-save-popover-container,
.background-save-popover-container__blueprint {
  position: relative !important;
  left: unset !important;
  top: unset !important;
  text-align: center;
}
.background-save-popover-container.mxt-popover,
.background-save-popover-container__blueprint.mxt-popover {
  max-width: unset;
}
.background-save-popover-container .mxt-modal-arrow-outer,
.background-save-popover-container__blueprint .mxt-modal-arrow-outer {
  display: none;
}
.background-save-popover-container .saving-progress,
.background-save-popover-container__blueprint .saving-progress {
  width: 175px;
  height: 44px;
  font: var(--mxt-font-body-bold);
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-evenly;
}
.background-save-popover-container .saving-progress .progress-container,
.background-save-popover-container__blueprint .saving-progress .progress-container {
  width: 90%;
  height: 8px;
  border-radius: var(--mxt-corner-roundness);
  background-color: rgb(239, 239, 244);
}
.background-save-popover-container .saving-progress .progress-container #background-save-progress-bar,
.background-save-popover-container__blueprint .saving-progress .progress-container #background-save-progress-bar {
  width: 0;
  height: 100%;
  border-radius: var(--mxt-corner-roundness);
  background-image: linear-gradient(to right, #4fc1df -11%, #4fc1df 72%);
  transition: width 0.5s ease;
}
.background-save-popover-container .saving-complete,
.background-save-popover-container__blueprint .saving-complete {
  width: 175px;
  padding: 10px;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-evenly;
  background: var(--primary-right-gradient);
  color: #fff;
}
.background-save-popover-container .save-failure,
.background-save-popover-container__blueprint .save-failure {
  width: 330px;
  height: 200px;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-evenly;
}
.background-save-popover-container .save-failure .mxt-cta-button,
.background-save-popover-container__blueprint .save-failure .mxt-cta-button {
  width: 80%;
  padding: 0px 10px;
}
.background-save-popover-container .save-failure .close-button,
.background-save-popover-container__blueprint .save-failure .close-button {
  top: -20px;
  right: -20px;
  position: absolute;
  width: 40px;
  height: 40px;
  min-width: inherit;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: var(--mxt-dark-drop-shadow);
}
.background-save-popover-container .save-failure .error-icon,
.background-save-popover-container__blueprint .save-failure .error-icon {
  display: inline-block;
}
.background-save-popover-container .save-failure h5,
.background-save-popover-container__blueprint .save-failure h5 {
  font: var(--mxt-font-body-bold);
  padding-bottom: 10px;
}

.background-save-popover-container__blueprint {
  position: absolute !important;
  left: 0 !important;
  bottom: 15px;
  margin: -80px 0 0 20px;
}

* ~ .background-save-popover-container {
  margin-bottom: 10px;
}
/*!*********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtforms.scss ***!
  \*********************************************************************************************************************************************************************************************************************/
.mxt-form-input-error .help-block,
.mxt-form-input-error label {
  color: #a94442;
}

.mxt-form-input-error input,
.mxt-form-input-error textarea {
  border: 1px solid #a94442;
}

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
}

.mxt-form-container {
  display: flex;
  flex: 1;
  min-height: 0;
}
.mxt-form-container .mxt-form-contents {
  width: 100%;
  padding: 0 30px 20px 30px;
  flex: 1;
  overflow: auto;
}
@media (min-width: 767px) {
  .mxt-form-container .mxt-form-contents {
    display: flex;
    flex-flow: column;
    align-items: center;
  }
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  width: 100%;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container {
  flex: 1;
  min-width: 200px;
  margin: 10px;
}
@media (min-width: 767px) {
  .mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container {
    min-width: 240px;
  }
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container textarea {
  height: 100px;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .mxt-form-control {
  font: var(--mxt-font-body-lg);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
  background-color: #ffffff;
  border: none;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .mxt-dropdown-container {
  margin: 0;
  min-height: 50px;
  height: unset !important;
  width: unset !important;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .mxt-dropdown-container .mxt-dropdown {
  min-height: 50px;
  max-height: 300px;
  min-width: 200px;
  z-index: 1;
  overflow: auto;
  width: 100% !important;
}
@media (min-width: 767px) {
  .mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .mxt-dropdown-container .mxt-dropdown {
    min-width: 240px;
  }
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-header {
  min-height: 50px;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-header h5 {
  font: var(--mxt-font-body-lg);
  opacity: 1;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container .control-error {
  display: none;
  color: #aa4442;
  margin-top: 5px;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container.invalid .control-label {
  color: #aa4442;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container.invalid .mxt-form-control {
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  border: solid 2px #aa4442;
}
.mxt-form-container .mxt-form-contents .mxt-flex-form-row .mxt-form-input-container.invalid .control-error {
  display: block;
}
.mxt-form-container .mxt-form-contents .mxt-form-buttons {
  display: flex;
  flex-flow: column;
  align-items: center;
  margin-top: 20px;
  flex-shrink: 0;
}
.mxt-form-container .mxt-form-contents .mxt-form-buttons > * {
  width: 50%;
  min-width: 200px;
}
.mxt-form-container .mxt-form-contents .mxt-form-buttons .mxt-cta-button {
  margin-bottom: 10px;
}
.mxt-form-container .mxt-form-contents .mxt-form-buttons .mxt-cta-button.loading:before {
  content: "";
  display: block;
  background-image: var(--loading-image-url);
  background-size: 20px 20px;
  margin-right: 10px;
  height: 20px;
  width: 20px;
}
/*!**********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtcommon.scss ***!
  \**********************************************************************************************************************************************************************************************************************/
.mxt-form-control {
  display: block;
  width: 100%;
  line-height: 1.42857143;
  border: var(--mxt-form-control-border);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-form-control-box-shadow);
  height: var(--mxt-form-control-height);
}

.mxt-form-group {
  margin-bottom: 15px;
}

.mxt {
  font-synthesis: none;
}

@keyframes mxt-fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes mxt-fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
/*animations*/
@keyframes mxt-pop {
  0% {
    transform: scale(0);
  }
  80% {
    transform: scale(1.25);
  }
  100% {
    transform: scale(1);
  }
}
.mxt-animated {
  animation-duration: 0.25s;
  animation-fill-mode: both;
}

.mxt-animated-pause {
  animation-play-state: paused;
}

.mxt-animate-pop {
  animation-duration: 0.3s;
  animation-name: mxt-pop;
  animation-iteration-count: 1;
}

.mxt-animate-shrink {
  transform: scale(0);
}

.mxt-fadeOut {
  animation-name: mxt-fadeOut;
  pointer-events: none;
}

.mxt-fadeIn {
  animation-name: mxt-fadeIn;
}

.mxt-full-modal-screen {
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  margin: 0px auto;
  overflow: auto;
  z-index: 1;
}

.mxt-checkbox {
  display: flex;
  align-items: center;
}
.mxt-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.mxt-checkbox input:checked + .mxt-checkbox-checkmark {
  background-position: left center;
  background-color: var(--mxt-checkbox-checked-color);
  border: none;
}
.mxt-checkbox .mxt-checkbox-checkmark {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCAyNCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5hZGR0b2NhcnQtY2hlY2s8L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE3LjQxLDYuNjlhMSwxLDAsMCwwLTEuMzYuMzZMMTEuMzksMTUsNy42OCwxMi4yN2ExLDEsMCwwLDAtMS4zOS4yMSwxLDEsMCwwLDAsLjIxLDEuNGw0LjYsMy4zNy4wNiwwLDAsMCwuMTMuMDUuMDksMGEuOTIuOTIsMCwwLDAsLjI4LjA1LDEsMSwwLDAsMCwuNDEtLjFsLjA1LDBhMSwxLDAsMCwwLC4zMi0uMjZsMCwwLDAsMCwwLS4wNiw1LjIxLTguODlBMSwxLDAsMCwwLDE3LjQxLDYuNjlaIi8+PC9zdmc+);
  background-position: right center;
  background-size: auto 100%;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  cursor: pointer;
  border-radius: var(--mxt-corner-roundness);
  border: var(--mxt-checkbox-border);
}

/**
    * Mxt switch should be in format
    * <div class="mxt-switch-container">
        <p class='mxt-switch-label'>Off</p>
        <label class="mxt-switch">
            <input type="checkbox" checked>
            <span class="mxt-slider"></span>
        </label>
        <p class='mxt-switch-label'>On</p>
    </div>
    */
.mxt-switch-container {
  display: flex;
}

.mxt-switch-container.mxt-switch-disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.mxt-switch-label {
  line-height: 34px;
  padding: 0px 5px;
  user-select: none;
  color: var(--mxt-font-color);
}

.mxt-switch {
  position: relative;
  display: inline-block;
  width: 70px;
  height: 34px;
}

.mxt-switch input {
  display: none;
}

.mxt-switch input:checked + .mxt-slider {
  background: #4cd964;
}

.mxt-switch-container.mxt-switch-disabled .mxt-switch {
  pointer-events: none;
}

.mxt-switch .mxt-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e2e2e2;
  border-radius: 34px;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.mxt-switch .mxt-slider:before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  right: 38px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

.mxt-switch input:checked + .mxt-slider:before {
  -webkit-transform: translateX(36px);
  -ms-transform: translateX(36px);
  transform: translateX(36px);
}

.mxt-switch-container.mxt-switch-container-small-toggle {
  flex-grow: 1;
  align-items: center;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch {
  width: 40px;
  height: 20px;
  margin-bottom: unset;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider {
  background: var(--toggle-blue);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider::before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider {
  border-radius: 16px;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider::before {
  width: 16px;
  height: 16px;
  inset: 2px;
}

.mxt-font-header-lg {
  font: var(--mxt-font-header-lg);
}

.mxt-font-header {
  font: var(--mxt-font-header);
}

.mxt-font-subheader {
  font: var(--mxt-font-subheader);
}

.mxt-font-body-lg {
  font: var(--mxt-font-body-lg);
}

.mxt-font-body-lg-bold {
  font: var(--mxt-font-body-lg-bold);
}

.mxt-font-body {
  font: var(--mxt-font-body);
}

.mxt-font-body-bold {
  font: var(--mxt-font-body-bold);
}

.mxt-font-body-sm {
  font: var(--mxt-font-body-sm);
}

.mxt-hover-over-image {
  position: absolute;
  z-index: 99;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  display: none;
  justify-content: center;
  align-items: center;
}
.mxt-hover-over-image.mxt-hover-over-image-manual-trigger {
  display: flex;
}

.mxt-bounce-container {
  padding: 2px;
}

.mxt-bounce-container:hover .mxt-bounce {
  top: -2px;
}

.mxt-bounce {
  position: relative;
  transition: 0.2s top ease;
  top: 0px;
}

.mxt-fraction {
  display: inline-block;
  /** cannot use system font, not nearly enough space to stack*/
  font-size: 7px;
  padding: 0 0.2em;
  text-align: center;
  vertical-align: middle;
}

.mxt-fraction:before {
  border-bottom: 1px solid #666;
  content: attr(top);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-fraction:after {
  content: attr(bottom);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-hidden {
  display: none !important;
}

.mxt-visibility-hidden {
  visibility: hidden;
}

.mxt-rotate-180 {
  transform: rotate(180deg);
}

/* renderer WebGL Canvas */
.mxt-canvas {
  width: 100%;
  height: 100%;
  cursor: inherit;
}

.mxt-sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}
/*!*************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/splashscreen.scss ***!
  \*************************************************************************************************************************************************************************************************************************/
#mxt-splashscreen-login-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#descope-container {
  max-width: 800px;
  margin: auto;
}
#descope-container form {
  display: flex;
  align-items: center;
}

#mxt-splashscreen-legacy-sign-in {
  height: 50px;
  width: 300px;
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/update-spinner.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
.mxt-spins-loading-progress-background.update-loading {
  z-index: 100100;
}
/*!********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/loading.scss ***!
  \********************************************************************************************************************************************************************************************************************/
:root {
  --mxt-loading-container-padding: 15px 25px;
  --mxt-loading-bar-background-color: #e5e5e5;
  --mxt-loading-bar-background-color-dark: #a5a5a5;
  --mxt-loading-bar-color: var(--primary-right-gradient);
  --mxt-loading-bar-height: 10px;
  --mxt-loading-border-radius: 25px;
  --mxt-loading-container-background: rgba(255, 255, 255, 0.75);
  --mxt-loading-container-border: 1px solid var(--mxt-loading-container-background);
  --mxt-loading-background-color: rgba(0, 0, 0, 0.75);
  --mxt-loading-background-color-dim: rgba(0, 0, 0, 0.55);
  --mxt-loading-background-color-bright: rgba(0, 0, 0, 0.3);
}

@keyframes animate-indeterminate {
  from {
    left: -25%;
  }
  to {
    left: 75%;
  }
}
.mxt-spins-loading-progress-background {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  z-index: 3;
}
.mxt-spins-loading-progress-background.with-background {
  background: var(--mxt-loading-background-color);
}
.mxt-spins-loading-progress-background.with-background.dim {
  background: var(--mxt-loading-background-color-dim);
}
.mxt-spins-loading-progress-background.with-background.bright {
  background: var(--mxt-loading-background-color-bright);
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container {
  border-radius: var(--mxt-corner-roundness);
  padding: var(--mxt-loading-container-padding);
  max-width: 60%;
  width: 420px;
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-progress-header {
  font: var(--mxt-font-header);
  margin: 0px;
  margin-bottom: 10px;
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-progress-message {
  font: var(--mxt-font-body-lg);
  margin: 0px;
  margin-top: 10px;
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-progress-header,
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-progress-message {
  color: var(--mxt-font-color);
  text-align: center;
  max-width: 100%;
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-spins-loading-progress {
  height: var(--mxt-loading-bar-height);
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: var(--mxt-loading-border-radius);
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-spins-loading-progress .mxt-progress-background,
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-spins-loading-progress .mxt-progress {
  display: block;
  position: absolute;
  height: 100%;
  max-width: 100%;
  border-radius: var(--mxt-loading-border-radius);
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-spins-loading-progress .mxt-progress-background {
  width: 100%;
  background-color: var(--mxt-loading-bar-background-color);
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-spins-loading-progress .mxt-progress {
  width: 0%;
  background: var(--mxt-loading-bar-color);
  transition: width 0.4s ease-in-out;
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container .mxt-spins-loading-progress.indeterminate .mxt-progress {
  width: 50%;
  animation-name: animate-indeterminate;
  animation-duration: 1.5s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container.with-background {
  background: var(--mxt-loading-container-background);
  border: var(--mxt-loading-container-border);
}
.mxt-spins-loading-progress-background .mxt-spins-loading-progress-container.with-background .mxt-progress-background {
  background-color: var(--mxt-loading-bar-background-color-dark);
}
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/notification-bar.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
.mxt-notification-bar {
  width: 100%;
  box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  padding: 11px 5px 11px 25px;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  background: var(--info-background);
  border: var(--info-border);
  --info-background: white;
  --info-border: none;
  --warning-background: #f9eddc;
  --warning-border: 1px solid#DFA54F;
  --error-background: #f2d5d8;
  --error-border: 1px solid var(--mxt-error-color);
  --success-background: #d6eadc;
  --success-border: 1px solid #32974e;
}
.mxt-notification-bar.mxt-notification-bar-info {
  background: var(--info-background);
  border: var(--info-border);
}
.mxt-notification-bar.mxt-notification-bar-warning {
  background: var(--warning-background);
  border: var(--warning-border);
}
.mxt-notification-bar.mxt-notification-bar-error {
  background: var(--error-background);
  border: var(--error-border);
}
.mxt-notification-bar.mxt-notification-bar-success {
  background: var(--success-background);
  border: var(--success-border);
}
.mxt-notification-bar .notification-type-icon {
  width: 30px;
  height: 30px;
}
.mxt-notification-bar span {
  flex: 1;
}
.mxt-notification-bar .mxt-btn.mxt-btn-icon-only {
  height: 30px;
  width: 30px;
}
.mxt-notification-bar .notification-dont-show-again {
  color: rgb(22, 117, 134);
  text-decoration: underline;
  margin-left: 10px;
}
/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxt-product-availability.scss ***!
  \*************************************************************************************************************************************************************************************************************************************/
.mxt-product-availability-img {
  position: absolute;
  left: 2px;
  top: 2px;
  cursor: default;
}
.mxt-product-availability-popover {
  padding: 10px;
}
/*!***********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtpopover.scss ***!
  \***********************************************************************************************************************************************************************************************************************/
.mxt-popover {
  position: absolute;
  z-index: 1060;
  max-width: 230px;
  min-width: 50px;
  word-wrap: break-word;
  background: white;
  color: var(--mxt-toolbar-font-color);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-dark-drop-shadow);
  /* To allow for getBoundingClientRect before display */
}
.mxt-popover.hidden {
  display: inherit !important;
  opacity: 0;
}
.mxt-popover.left.bottom .mxt-modal-arrow-outer, .mxt-popover.right.bottom .mxt-modal-arrow-outer {
  top: calc(100% - 55px);
}
.mxt-popover.left.top .mxt-modal-arrow-outer, .mxt-popover.right.top .mxt-modal-arrow-outer {
  top: 10px;
}
.mxt-popover.mxt-tip {
  color: #ffffff;
  background: var(--primary-right-gradient);
  font: var(--mxt-font-body-bold);
  padding: 10px 16px;
  user-select: none;
  pointer-events: none;
}
.mxt-popover.mxt-tip .mxt-modal-arrow-inner {
  background: var(--primary-right-gradient);
}
.mxt-popover.mxt-tip .mxt-menu-left-arrow {
  width: 15px;
  left: -15px;
}
.mxt-popover.mxt-tip .mxt-menu-right-arrow {
  width: 15px;
}
.mxt-popover.mxt-tip .mxt-menu-right-arrow .mxt-modal-arrow-inner {
  left: -110px;
}
.mxt-popover.mxt-tip .mxt-menu-top-arrow {
  top: -15px;
  height: 15px;
}
.mxt-popover.mxt-tip.left, .mxt-popover.mxt-tip.right {
  padding: 15px 16px;
}
/*!***********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxthotspot.scss ***!
  \***********************************************************************************************************************************************************************************************************************/
.mxt-hotspot-modal {
  position: absolute;
  top: 5px;
  left: 5px;
  min-width: 200px;
  max-width: 30%;
  max-height: 25%;
  overflow: auto;
  background: white;
  border-radius: var(--mxt-corner-roundness);
  border: 2px solid grey;
  z-index: 1;
  padding: 5px;
}
.mxt-hotspot-modal .mxt-hotspot-modal-header {
  margin: 0px;
  font: var(--mxt-font-body-lg-bold);
  margin-bottom: 7px;
}
.mxt-hotspot-modal .mxt-hotspot-modal-text {
  margin: 0px;
  font: var(--mxt-font-body);
}
.mxt-hotspot-modal .mxt-hotspot-modal-link {
  margin: 0px;
  color: var(--toggle-blue);
  text-decoration: underline;
  cursor: pointer;
  margin-top: 10px;
}
/*!********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtvars.scss ***!
  \********************************************************************************************************************************************************************************************************************/
:root {
  /** Configurable colors */
  --mxt-corner-roundness: 6px;
  /* must be rgb, not hex, but without the parentheses so we can apply an opacity within it
     for example, 255,255,255 NOT rgb(255,255,255)*/
  --mxt-client-primary-rgb: 0, 0, 0;
  /* must be rgb, not hex, but without the parentheses so we can apply an opacity within it
     for example, 255,255,255 NOT rgb(255,255,255)*/
  --mxt-client-secondary-rgb: 0, 0, 0;
  /* must be rgb, not hex, but without the parentheses so we can apply an opacity within it
     for example, 255,255,255 NOT rgb(255,255,255)*/
  --mxt-client-drop-shadow-rgb: 0, 0, 0;
  --mxt-client-blueprint-active-toolbar-button: rgb(79, 193, 223);
  --mxt-cta-button-drop-shadow: 0 1px 0 0 var(--mxt-client-drop-shadow), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  --mxt-cta-button-border-thickness: 0px;
  --mxt-cta-button-border-color: #c1c1c1;
  --mxt-cta-button-font-color: #ffffff;
  --mxt-non-cta-button-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-non-cta-button-border-thickness: 0px;
  --mxt-non-cta-button-border-color: #c1c1c1;
  --mxt-non-cta-button-background-color: #ffffff;
  --mxt-non-cta-button-font-color: #222832;
  --mxt-toolbelt-btn-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-toolbelt-btn-border-thickness: 0px;
  --mxt-toolbelt-btn-border-color: #c1c1c1;
  --mxt-toolbelt-btn-background-color: #ffffff;
  --mxt-toolbelt-btn-font-color: #222832;
  --mxt-nav-control-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-nav-control-border-thickness: 0px;
  --mxt-nav-control-border-color: #c1c1c1;
  --mxt-nav-control-background-color: #ffffff;
  --mxt-nav-control-font-color: #222832;
  --mxt-nav-control-primary-background-color: var(--primary-right-gradient);
  --mxt-nav-control-primary-font-color: var(--mxt-cta-button-font-color);
  --mxt-action-menu-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-action-menu-border-thickness: 0px;
  --mxt-action-menu-border-color: #c1c1c1;
  --mxt-action-menu-background-color: #ffffff;
  --mxt-action-menu-font-color: #222832;
  --mxt-tooltip-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-tooltip-border-thickness: 0px;
  --mxt-tooltip-border-color: #c1c1c1;
  --mxt-tooltip-font-color: #222832;
  --mxt-toolbar-background-color: #ffffff;
  --mxt-toolbar-button-color: #f5f5f5;
  --mxt-toolbar-font-color: #222832;
  --mxt-toolbar-divider-color: #d8d8d8;
  --mxt-toolbar-cta-button-color: #5c5c5c;
  --mxt-toolbar-cta-font-color: #ffffff;
  --mxt-toolbar-cta-divider-color: #4c4c4c;
  --mxt-dimension-pip-border-color: #4fc1df;
  --mxt-error-color: #be2c3b;
  /** forms */
  --mxt-form-control-border-width: 1px;
  --mxt-form-control-border-style: solid;
  --mxt-form-control-border-color: #3d3d3d;
  --mxt-form-control-border: var(--mxt-form-control-border-width) var(--mxt-form-control-border-style) var(--mxt-form-control-border-color);
  --mxt-form-control-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  --mxt-form-control-height: 50px;
  /** checkbox */
  --mxt-checkbox-border-width: 3px;
  --mxt-checkbox-border-style: solid;
  --mxt-checkbox-border-color: #9e9e9e;
  --mxt-checkbox-border: var(--mxt-checkbox-border-width) var(--mxt-checkbox-border-style) var(--mxt-checkbox-border-color);
  --mxt-checkbox-checked-color: #90d425;
  /** fonts */
  --mxt-font: Mulish;
  --mxt-font-header-lg: 800 30px var(--mxt-font);
  --mxt-font-header: 800 22px var(--mxt-font);
  --mxt-font-subheader: 700 15px var(--mxt-font);
  --mxt-font-body-lg: 500 15px var(--mxt-font);
  --mxt-font-body-lg-bold: 700 15px var(--mxt-font);
  --mxt-font-body: 500 13px var(--mxt-font);
  --mxt-font-body-bold: 700 13px var(--mxt-font);
  --mxt-font-body-sm: 500 11px var(--mxt-font);
  --mxt-font-body-ex-sm: 500 10px var(--mxt-font);
  --mxt-login-register-hero: 'url("")';
  --style-grid-image-size-sm: 64px;
  --style-grid-image-size-md: 64px;
  --style-grid-image-size-lg: 70px;
  --style-grid-image-size-sm-wide: 100px;
  --style-grid-image-size-md-wide: 120px;
  --style-grid-image-size-lg-wide: 140px;
  /** Non configurable colors**/
  --mxt-dark-drop-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  --mxt-client-primary: rgb(var(--mxt-client-primary-rgb));
  --mxt-client-drop-shadow: rgb(var(--mxt-client-drop-shadow-rgb));
  --mxt-client-secondary: rgb(var(--mxt-client-secondary-rgb));
  --mxt-button-disabled-font-color: #a5a5a5;
  --mxt-font-color: #222832;
  --mxt-font-color-disabled: #bebebe;
  --mxt-button-disabled-background-color: #e5e5e5;
  --primary-right-gradient: linear-gradient(to right, var(--mxt-client-primary), var(--mxt-client-secondary));
  --primary-top-gradient: linear-gradient(to top, var(--mxt-client-primary), var(--mxt-client-secondary));
  --fancy-rotate-overlay-color: #2aace2;
  /*in edge, cannot use space evenly, must use space around; https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/15947692/ */
  --space-evenly: space-evenly;
  --mxt-action-menu-item-width: 70px;
  --mxt-toolbar-width: 160px;
  --mxt-interstitial-toolbar-width: 160px;
  --hover-blue: #edf9fc;
  --toggle-blue-rgb: 79, 193, 223; /*#4fc1df*/
  --toggle-blue: rgb(var(--toggle-blue-rgb));
  --toggle-green-rgb: 89, 191, 89;
  --toggle-green: rgb(var(--toggle-green-rgb));
  --mxt-primary-logo-width: 300px;
  --mxt-nav-control-button-primary-width: 145px;
  --mxt-nav-menu-height: 44px;
  --mxt-guided-design-font-color: #ffffff;
  --mxt-guided-design-border-color: #ffffff;
  --mxt-design-mode-panel-width: 340px;
  --kong-background-color-hover: rgb(0, 0, 0);
  --kong-background-color: rgb(255, 255, 255);
  --kong-background-color-active: rgb(0, 0, 0);
  --kong-text-color-hover: rgb(255, 255, 255);
}

/* Edge only */
@supports (-ms-accelerator: true) {
  :root {
    --space-evenly: space-around;
  }
}
/*!*******************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtbtn.scss ***!
  \*******************************************************************************************************************************************************************************************************************/
/** Standard buttons */
.mxt-btn {
  border: none;
  background: none;
  transition: all 0.3s ease;
  height: 40px;
  border-radius: var(--mxt-corner-roundness);
  position: relative;
  font: var(--mxt-font-body-bold);
  text-align: center;
  user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
  min-width: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  /** MXT-9078: to fix flicker on filter:brightness: https://stackoverflow.com/questions/23619520/chrome-flickering-on-webkit-filter-blur/24062670 */
  backface-visibility: hidden;
  color: var(--mxt-font-color);
}
.mxt-btn *:not(:first-child) {
  margin-left: 5px;
  padding-right: 10px;
}
.mxt-btn.mxt-transition-in {
  /*  Example: <button class="mxt-btn mxt-transition-in mxt-transition-in-<type>">
   * 
   *  Removeing class .mxt-transition-in-<type> will cause button to transition in based on defaults set above
   */
  opacity: 1;
}
.mxt-btn.mxt-transition-in.mxt-transition-in-opacity {
  opacity: 0;
  pointer-events: none;
}
.mxt-btn .mxt-btn-label {
  margin: 0px;
  padding: 0px;
}
.mxt-btn .navigationBaseButtonLabel.mxt-btn-label {
  font: var(--mxt-font-body);
  padding-right: 7px;
}
.mxt-btn.mxt-blue {
  color: var(--toggle-blue);
}
.mxt-btn.mxt-green {
  color: var(--toggle-green);
}
.mxt-btn.mxt-btn-toggled {
  box-shadow: none;
  background: var(--toggle-blue);
  color: #ffffff;
}
.mxt-btn.mxt-split-button {
  min-width: 0px;
  display: inline-block;
  box-shadow: none;
}
.mxt-btn.mxt-nav-control-button {
  height: var(--mxt-nav-menu-height);
}
.mxt-btn.mxt-btn-icon-only.mxt-nav-control-button {
  width: var(--mxt-nav-menu-height);
}
.mxt-btn-full {
  width: 100%;
}
.mxt-btn.navigationBaseButton {
  border-radius: 0px;
}
.mxt-btn.navigationBaseButton.navigationPanelLabelToggle {
  color: var(--mxt-toolbar-font-color);
  font: var(--mxt-font-body);
  flex: 0 0 var(--mxt-nav-menu-height);
}
.mxt-btn.navigationBaseButton.navigationPanelLabelToggle img {
  width: 50px;
  height: 50px;
}
.mxt-btn.navigationBaseButton.mxt-btn-disabled {
  cursor: not-allowed;
}
.mxt-btn.navigationBaseButton.mxt-btn-disabled * {
  opacity: 0.5;
}
.mxt-btn.navigationButton {
  background: var(--mxt-toolbar-button-color);
  color: var(--mxt-toolbar-font-color);
}
.mxt-btn.navigationButton.navigationButtonMain {
  background: var(--mxt-toolbar-background-color);
}
.mxt-btn.navigationQuickLink {
  background: var(--mxt-toolbar-cta-button-color);
  color: var(--mxt-toolbar-cta-font-color);
}
.mxt-btn:disabled, .mxt-btn.mxt-non-cta-button.mxt-btn-disabled, .mxt-btn.mxt-cta-button.mxt-btn-disabled {
  box-shadow: none;
  background: var(--mxt-button-disabled-background-color);
  color: var(--mxt-button-disabled-font-color);
  pointer-events: none;
}
.mxt-btn:disabled img, .mxt-btn.mxt-non-cta-button.mxt-btn-disabled img, .mxt-btn.mxt-cta-button.mxt-btn-disabled img {
  opacity: 0.5;
}
.mxt-btn.mxt-toolbelt-item.mxt-btn-disabled, .mxt-btn.mxt-nav-control-button.mxt-btn-disabled, .mxt-btn.mxt-action-menu-item.mxt-btn-disabled {
  box-shadow: none;
  opacity: 0.3;
  cursor: not-allowed;
}
.mxt-btn.mxt-toolbelt-item.mxt-btn-disabled:hover, .mxt-btn.mxt-nav-control-button.mxt-btn-disabled:hover {
  filter: unset;
}
@media (min-width: 1200px) {
  .mxt-btn:hover {
    filter: brightness(90%);
  }
}

.mxt-btn-md {
  width: 140px;
}

.mxt-btn-lg {
  width: 240px;
}

.mxt-btn-icon-only {
  width: 40px;
  min-width: 0px;
  padding: 0px;
}

.mxt-btn-no-bg {
  background: none;
  border: none;
}

.mxt-btn-link {
  background: none;
  border: none;
  color: var(--toggle-blue);
  text-decoration: underline;
  height: unset;
  font: var(--mxt-font-body);
  margin: 0.5rem 0;
}

img.mxt-btn-icon-absolute-left {
  position: absolute;
  left: 25px;
  width: 25px;
}

.mxt-cta-button {
  box-shadow: var(--mxt-cta-button-drop-shadow);
  color: var(--mxt-cta-button-font-color);
  background: var(--primary-right-gradient);
  border: var(--mxt-cta-button-border-thickness) solid var(--mxt-cta-button-border-color);
}

.mxt-non-cta-button {
  box-shadow: var(--mxt-non-cta-button-drop-shadow);
  color: var(--mxt-non-cta-button-font-color);
  background: var(--mxt-non-cta-button-background-color);
  border: var(--mxt-non-cta-button-border-thickness) solid var(--mxt-non-cta-button-border-color);
}

.mxt-split-button:last-child {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  padding-right: 5px;
}
.mxt-split-button:first-child {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
  padding-left: 5px;
}

/** defaults to bottom arrow */
.mxt-modal-arrow-outer {
  position: absolute;
  top: 100%;
  left: calc(50% - 25px);
  width: 50px;
  height: 25px;
  overflow: hidden;
  pointer-events: none;
  /** top */
  /** left */
  /** right */
}
.mxt-modal-arrow-outer.mxt-menu-no-arrow {
  display: none;
}
.mxt-modal-arrow-outer.mxt-menu-top-arrow {
  top: -25px;
}
.mxt-modal-arrow-outer.mxt-menu-top-arrow .mxt-modal-arrow-inner {
  top: 20px;
}
.mxt-modal-arrow-outer.mxt-menu-left-arrow {
  width: 25px;
  height: 50px;
  top: calc(50% - 25px);
  left: -25px;
}
.mxt-modal-arrow-outer.mxt-menu-left-arrow .mxt-modal-arrow-inner {
  top: -25px;
  left: 25px;
}
.mxt-modal-arrow-outer.mxt-menu-right-arrow {
  width: 25px;
  height: 50px;
  top: calc(50% - 25px);
  left: 100%;
}
.mxt-modal-arrow-outer.mxt-menu-right-arrow .mxt-modal-arrow-inner {
  top: -25px;
  left: -100px;
}

.mxt-modal-arrow-inner {
  transform: rotate(45deg);
  background-color: var(--mxt-action-menu-background-color);
  box-shadow: var(--mxt-action-menu-drop-shadow);
  width: 100px;
  height: 100px;
  top: -100px;
  left: -25px;
  position: relative;
  border-radius: var(--mxt-corner-roundness);
  pointer-events: auto;
}

/** Toolbelt*/
.mxt-toolbelt {
  display: flex;
  background: var(--mxt-toolbelt-btn-background-color);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-toolbelt-btn-drop-shadow);
  color: var(--mxt-toolbelt-btn-font-color);
  border: var(--mxt-toolbelt-btn-border-thickness) solid var(--mxt-toolbelt-btn-border-color);
}

/** Action Menu */
.mxt-action-menu {
  display: flex;
  background: var(--mxt-action-menu-background-color);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-action-menu-drop-shadow);
  color: var(--mxt-action-menu-font-color);
  border: var(--mxt-action-menu-border-thickness) solid var(--mxt-action-menu-border-color);
}
.mxt-action-menu.undocked .mxt-action-menu-container {
  grid-template-columns: 1fr 1fr;
  width: 300px;
}
.mxt-action-menu.undocked .mxt-action-menu-container.mxt-collapsed-label {
  grid-template-rows: 1fr 1fr;
  grid-auto-flow: column;
  width: 100%;
}

.mxt-menu-bottom-arrow .action-menu-drag {
  top: -5px;
  left: calc(50% - 10px);
}

.mxt-menu-right-arrow .action-menu-drag {
  left: -10px;
  top: calc(50% - 5px);
  transform: rotate(90deg);
  transform-origin: 10px 5px;
}

.mxt-menu-left-arrow .action-menu-drag {
  right: -10px;
  top: calc(50% - 5px);
  transform: rotate(90deg);
  transform-origin: 10px 5px;
}

.mxt-menu-top-arrow .action-menu-drag {
  bottom: -5px;
  left: calc(50% - 10px);
}

/** Shared toolbelt and action menu */
.mxt-toolbelt,
.mxt-action-menu {
  overflow: hidden;
  z-index: 5000 !important;
  width: fit-content;
  /** Override the button styles */
  /** Set the styles for when docked in various locations */
}
.mxt-toolbelt .mxt-toolbelt-container,
.mxt-toolbelt .mxt-action-menu-container,
.mxt-toolbelt .mxt-action-sub-menu-container,
.mxt-action-menu .mxt-toolbelt-container,
.mxt-action-menu .mxt-action-menu-container,
.mxt-action-menu .mxt-action-sub-menu-container {
  display: grid;
  gap: 0 10px;
  padding: 0 10px;
}
.mxt-toolbelt .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-toolbelt .mxt-action-menu-container.mxt-collapsed-label,
.mxt-toolbelt .mxt-action-sub-menu-container.mxt-collapsed-label,
.mxt-action-menu .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-action-menu .mxt-action-menu-container.mxt-collapsed-label,
.mxt-action-menu .mxt-action-sub-menu-container.mxt-collapsed-label {
  gap: 0 5px;
}
.mxt-toolbelt:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-menu-container,
.mxt-action-menu:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-menu-container {
  position: absolute;
}
.mxt-toolbelt:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible).undocked .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible).undocked .mxt-action-sub-menu-container .mxt-action-menu-item {
  min-width: 100px;
}
.mxt-toolbelt:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-sub-menu.mxt-action-sub-menu-visible,
.mxt-action-menu:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-sub-menu.mxt-action-sub-menu-visible {
  position: unset;
}
.mxt-toolbelt .mxt-action-sub-menu,
.mxt-action-menu .mxt-action-sub-menu {
  position: absolute;
  display: flex;
  transform: translateX(-100%);
  transition: transform ease 0.4s;
  background: white;
  min-width: calc(100% - 25px);
  max-width: calc(100% - 25px);
  min-height: 100%;
  z-index: 1;
  visibility: hidden;
}
.mxt-toolbelt .mxt-action-sub-menu.mxt-action-sub-menu-visible,
.mxt-action-menu .mxt-action-sub-menu.mxt-action-sub-menu-visible {
  transform: unset;
  visibility: visible;
}
.mxt-toolbelt .mxt-action-sub-menu-container,
.mxt-action-menu .mxt-action-sub-menu-container {
  grid-template-columns: 1fr 1fr;
}
.mxt-toolbelt .mxt-action-menu-back-button,
.mxt-action-menu .mxt-action-menu-back-button {
  min-width: 40px;
  align-self: flex-start;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item, .mxt-toolbelt .mxt-btn.mxt-action-menu-item,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item,
.mxt-action-menu .mxt-btn.mxt-action-menu-item {
  display: flex;
  flex-flow: row;
  align-items: center;
  overflow: hidden;
  justify-content: flex-start;
  transition: all 0.3s ease;
  min-width: unset;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item .mxt-btn-label, .mxt-toolbelt .mxt-btn.mxt-action-menu-item .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-action-menu-item .mxt-btn-label {
  font: var(--mxt-font-body);
  transition: all 0.3s ease;
  min-height: 0px;
  flex: 1;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-collapsed-label,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-collapsed-label {
  height: 40px;
  width: 40px;
  padding-bottom: 0px;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label img, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-collapsed-label img,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label img,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-collapsed-label img {
  min-width: 100%;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label .mxt-btn-label, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-collapsed-label .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-collapsed-label .mxt-btn-label {
  height: 0px;
  flex: 0 0 0px;
  transition: all 0.3s ease;
  padding-bottom: 0px;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-action-menu-item-empty, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-action-menu-item-empty,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-action-menu-item-empty,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-action-menu-item-empty {
  width: 130px;
  height: 40px;
}
.mxt-toolbelt.bottom-center .mxt-toolbelt-container,
.mxt-toolbelt.bottom-center .mxt-action-menu-container,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-center .mxt-toolbelt-container,
.mxt-action-menu.bottom-center .mxt-action-menu-container,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container {
  grid-template-rows: 1fr 1fr;
  grid-auto-flow: column;
  width: fit-content;
}
.mxt-toolbelt.bottom-center .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-toolbelt.bottom-center .mxt-action-menu-container.mxt-collapsed-label,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label,
.mxt-action-menu.bottom-center .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-action-menu.bottom-center .mxt-action-menu-container.mxt-collapsed-label,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label {
  grid-template-rows: 1fr;
}
.mxt-toolbelt.bottom-center .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-center .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-center .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-center .mxt-action-menu-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-center .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container .mxt-action-menu-item {
  text-align: left;
}
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container {
  border-left: 1px solid #d2d2d2;
}
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container .mxt-btn.mxt-action-menu-item {
  min-width: 110px;
}
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item {
  min-width: unset;
}
.mxt-toolbelt.bottom-center .mxt-action-menu-container .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container .mxt-btn.mxt-action-menu-item {
  min-width: 135px;
}
.mxt-toolbelt.bottom-center .mxt-action-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item {
  min-width: unset;
}
.mxt-toolbelt.top-right, .mxt-toolbelt.bottom-right,
.mxt-action-menu.top-right,
.mxt-action-menu.bottom-right {
  height: auto;
  justify-content: center;
}
.mxt-toolbelt.top-right .mxt-toolbelt-container,
.mxt-toolbelt.top-right .mxt-action-menu-container,
.mxt-toolbelt.top-right .mxt-action-sub-menu-container, .mxt-toolbelt.bottom-right .mxt-toolbelt-container,
.mxt-toolbelt.bottom-right .mxt-action-menu-container,
.mxt-toolbelt.bottom-right .mxt-action-sub-menu-container,
.mxt-action-menu.top-right .mxt-toolbelt-container,
.mxt-action-menu.top-right .mxt-action-menu-container,
.mxt-action-menu.top-right .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-right .mxt-toolbelt-container,
.mxt-action-menu.bottom-right .mxt-action-menu-container,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container {
  grid-template-columns: 1fr;
}
.mxt-toolbelt.top-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.top-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.top-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.top-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-toolbelt.top-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.top-right .mxt-action-sub-menu-container .mxt-action-menu-item, .mxt-toolbelt.bottom-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-right .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu.top-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.top-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.top-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.top-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.top-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-action-menu.top-right .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.bottom-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container .mxt-action-menu-item {
  flex-flow: row-reverse;
  text-align: right;
}
.mxt-toolbelt.top-right .mxt-action-sub-menu, .mxt-toolbelt.bottom-right .mxt-action-sub-menu,
.mxt-action-menu.top-right .mxt-action-sub-menu,
.mxt-action-menu.bottom-right .mxt-action-sub-menu {
  flex-direction: column;
}
.mxt-toolbelt.top-right .mxt-action-sub-menu-container, .mxt-toolbelt.bottom-right .mxt-action-sub-menu-container,
.mxt-action-menu.top-right .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container {
  border-top: 1px solid #d2d2d2;
}
.mxt-toolbelt.top-right,
.mxt-action-menu.top-right {
  flex-flow: column-reverse;
}
.mxt-toolbelt.top-right .mxt-action-sub-menu,
.mxt-action-menu.top-right .mxt-action-sub-menu {
  min-width: 100%;
  min-height: calc(100% - 25px);
  top: 25px;
}
.mxt-toolbelt.bottom-right,
.mxt-action-menu.bottom-right {
  flex-flow: column;
}
.mxt-toolbelt.bottom-right .mxt-action-sub-menu,
.mxt-action-menu.bottom-right .mxt-action-sub-menu {
  min-width: 100%;
  min-height: calc(100% - 25px);
  top: 0;
}
.mxt-toolbelt.undocked .mxt-toolbelt-container,
.mxt-action-menu.undocked .mxt-toolbelt-container {
  width: 150px;
}
.mxt-toolbelt.undocked .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.undocked .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.undocked .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.undocked .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.undocked .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.undocked .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.undocked .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.undocked .mxt-action-menu-container .mxt-action-menu-item {
  text-align: left;
}
.mxt-toolbelt.undocked .mxt-action-sub-menu,
.mxt-action-menu.undocked .mxt-action-sub-menu {
  min-width: calc(100% - 25px);
  max-width: calc(100% - 25px);
  min-height: 100%;
}
.mxt-toolbelt.undocked .mxt-action-sub-menu-container,
.mxt-action-menu.undocked .mxt-action-sub-menu-container {
  border-left: 1px solid #d2d2d2;
  min-width: max-content;
}

.navigationButtonContainerBoxShadow {
  position: absolute;
  height: 100%;
  width: var(--mxt-toolbar-width);
  transition: all 0.3s ease;
  top: 0px;
  left: 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  z-index: 1050;
  pointer-events: none;
}

.navigationButtonContainer.hidden + .navigationButtonContainerBoxShadow,
.navigationButtonContainer.mxt-hidden + .navigationButtonContainerBoxShadow {
  display: none;
}

/** Toolbar */
.navigationButtonContainer {
  position: relative;
  height: 100%;
  flex: 0 0 var(--mxt-toolbar-width);
  transition: all 0.3s ease;
  overflow-x: hidden;
}
.navigationButtonContainer .navigationBarScrollButtonContainer {
  width: 100%;
  display: flex;
  justify-content: center;
  position: absolute;
  height: 60px;
  z-index: 1111;
  cursor: pointer;
}
.navigationButtonContainer .navigationBarScrollButtonContainer.navigationBarScrollDown {
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #e5e5e5 44%);
  bottom: 0px;
  align-items: flex-end;
}
.navigationButtonContainer .navigationBarScrollButtonContainer.navigationBarScrollUp {
  background-image: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #e5e5e5 44%);
  top: 0px;
  align-items: flex-start;
}
.navigationButtonContainer .navigationBarScrollButtonContainer .navigationBarScrollButton {
  border-radius: 50%;
  width: 24px;
  height: 24px;
  background: white;
  margin: 6px;
}

.navigationButtons {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: auto;
  flex: 0 0 100%;
  display: flex;
  flex-flow: column;
  z-index: 1001; /*1 more than navigation panel*/
  background: var(--mxt-toolbar-background-color);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  overflow-x: hidden;
  overflow-y: scroll;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* Internet Explorer 10+ */
}
.navigationButtons::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.navigationButtons .navigationBaseButton {
  height: var(--mxt-nav-menu-height);
  width: 160px;
  justify-content: flex-start;
}
.navigationButtons #navigationPanelButtons {
  display: block;
  flex-flow: column wrap;
}
.navigationButtons #navigationPanelButtons .navigationButtonWrapper .navigationButton {
  background: white;
}
.navigationButtons #navigationPanelLabelToggle {
  display: flex;
}
.navigationButtons #navigationQuickLinks {
  width: 100%;
  display: flex;
  flex-flow: column;
}
.navigationButtons #navigationQuickLinks .navigationBaseButton {
  width: 100%;
}

.navigation-labels-collapsed .navigationBaseButtonLabel.mxt-btn-label {
  white-space: nowrap;
}

.navigationButtonWrapper {
  position: relative;
  width: auto;
}
.navigation-labels-collapsed .navigationButtonWrapper {
  overflow: hidden;
}
.navigationButtonWrapper.navigationButtonToolbarTip {
  padding: 20px;
}
.navigationButtonWrapper.navigationButtonToolbarTip a {
  cursor: pointer;
}
.navigation-labels-collapsed .navigationButtonWrapper.navigationButtonToolbarTip {
  display: none;
}
.navigationButtonWrapper.navigationButtonToolbarHeader {
  font: var(--mxt-font-body-bold);
  height: 30px;
  color: var(--mxt-font-color);
}
.navigation-labels-collapsed .navigationButtonWrapper.navigationButtonToolbarHeader {
  display: none;
}
.navigationButtonWrapper.navigationButtonToolbarHeader span {
  line-height: 29px;
  padding-left: 15px;
}

.navigationPanelButtons {
  flex: 1;
}

.navigationQuickLinkPrimary {
  background-image: var(--primary-right-gradient) !important;
}

.navigationBaseButtonImg {
  width: 50px;
  flex: 0 0 50px;
}

.navigationBaseButtonLabel {
  text-align: left;
}

.navigationButtonFlag {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  width: 5px;
  display: none;
}
.navigationButtonFlag.navigationButtonFlagCurrent {
  background: var(--mxt-client-primary);
  display: block;
}

/** Nav Control */
.mxt-nav-control-button-group {
  display: flex;
  margin-left: 10px;
  box-shadow: var(--mxt-nav-control-drop-shadow);
  border-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-btn.mxt-nav-control-button {
  border-radius: 0px;
  box-shadow: none;
}
.mxt-nav-control-button-group .mxt-nav-control-button {
  border-radius: 0px;
  box-shadow: none;
}
.mxt-nav-control-button-group .mxt-nav-control-button:first-child {
  border-top-left-radius: var(--mxt-corner-roundness);
  border-bottom-left-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-nav-control-button:last-child {
  border-top-right-radius: var(--mxt-corner-roundness);
  border-bottom-right-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-nav-control-button.force-first {
  border-top-left-radius: var(--mxt-corner-roundness);
  border-bottom-left-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-nav-control-button.force-last {
  border-top-right-radius: var(--mxt-corner-roundness);
  border-bottom-right-radius: var(--mxt-corner-roundness);
}

.mxt-nav-control-button {
  box-shadow: var(--mxt-nav-control-drop-shadow);
  color: var(--mxt-nav-control-font-color);
  background: var(--mxt-nav-control-background-color);
  border: var(--mxt-nav-control-border-thickness) solid var(--mxt-nav-control-border-color);
}
.mxt-nav-control-button.mxt-nav-disabled {
  box-shadow: none;
  background: #e5e5e5;
  color: var(--mxt-button-disabled-font-color);
  cursor: not-allowed;
}
.mxt-nav-control-button.mxt-nav-control-button-primary {
  color: var(--mxt-nav-control-primary-font-color);
  background: var(--mxt-nav-control-primary-background-color);
  justify-content: space-between;
  width: var(--mxt-nav-control-button-primary-width);
  padding-left: 10px;
  overflow: hidden;
}
.mxt-nav-control-button.mxt-nav-control-button-primary.mxt-nav-disabled {
  background: #e5e5e5;
}
.mxt-nav-control-button.mxt-nav-control-button-primary .mxt-btn-container {
  width: 145px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.navigationButtonBreak {
  border-top: 1px solid var(--mxt-toolbar-divider-color);
}

.navigationQuickLinkBreak {
  border-top: 1px solid var(--mxt-toolbar-cta-divider-color);
}

.navigationQuickLinkBreak:last-child {
  display: none;
}

.navigationBaseButtonBreak {
  width: 100%;
  left: 0px;
  position: relative;
  display: flex;
}

.mxtMainMenuButtons .mxt-btn-disabled {
  cursor: not-allowed !important;
}
.mxtMainMenuButtons .mxt-btn-disabled * {
  opacity: 0.5;
}

body.mxt-room-planner-phone .mxt-action-menu {
  display: none;
}
/*!***********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/download.scss ***!
  \***********************************************************************************************************************************************************************************************************************/
.mxt-switch-container {
  flex-grow: 1;
  align-items: center;
}
.mxt-switch-container .mxt-switch {
  width: 35px;
  height: 15px;
  margin-bottom: unset;
}
.mxt-switch-container .mxt-switch input:checked + .mxt-slider {
  background: var(--mxt-client-primary);
}
.mxt-switch-container .mxt-switch input:checked + .mxt-slider::before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}
.mxt-switch-container .mxt-switch .mxt-slider {
  border-radius: 11px;
}
.mxt-switch-container .mxt-switch .mxt-slider::before {
  width: 11px;
  height: 11px;
  inset: 2px;
}

.mxt-popover.mxt-download-options-popover {
  max-width: unset;
}
.mxt-popover.mxt-download-options-popover .mxt-popover-content {
  margin: 8px;
  max-height: 240px;
  overflow: auto;
}
.mxt-popover.mxt-download-options-popover .download-popover-title {
  font: var(--mxt-font-body-bold);
  margin-bottom: 4px;
}
.mxt-popover.mxt-download-options-popover .download-popover-title-rule {
  margin: 0 4px 4px 4px;
}
.mxt-popover.mxt-download-options-popover .mxt-download-image-option,
.mxt-popover.mxt-download-options-popover .mxt-switch-container .mxt-switch-label {
  font: var(--mxt-font-body);
  margin-bottom: 4px;
  width: 100%;
  white-space: nowrap;
  border: none;
  background: unset;
  text-align: left;
  color: var(--default-text-color);
  padding: 0;
  cursor: pointer;
}
.mxt-popover.mxt-download-options-popover .mxt-hd-render-footnote {
  color: var(--mxt-button-disabled-font-color);
  font: var(--mxt-font-body);
  margin-bottom: 4px;
  width: 100%;
  white-space: nowrap;
  font-style: italic;
}
.mxt-popover.mxt-download-options-popover .mxt-download-bom-option img {
  animation: mxt-spins-loading-spinner 1s linear infinite;
}

.mxt-disabled {
  color: var(--mxt-button-disabled-font-color);
  pointer-events: none;
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/commonui.scss (1) ***!
  \***************************************************************************************************************************************************************************************************************************/
.mxt-form-control {
  display: block;
  width: 100%;
  line-height: 1.42857143;
  border: var(--mxt-form-control-border);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-form-control-box-shadow);
  height: var(--mxt-form-control-height);
}

.mxt-form-group {
  margin-bottom: 15px;
}

.mxt {
  font-synthesis: none;
}

@keyframes mxt-fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes mxt-fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
/*animations*/
@keyframes mxt-pop {
  0% {
    transform: scale(0);
  }
  80% {
    transform: scale(1.25);
  }
  100% {
    transform: scale(1);
  }
}
.mxt-animated {
  animation-duration: 0.25s;
  animation-fill-mode: both;
}

.mxt-animated-pause {
  animation-play-state: paused;
}

.mxt-animate-pop {
  animation-duration: 0.3s;
  animation-name: mxt-pop;
  animation-iteration-count: 1;
}

.mxt-animate-shrink {
  transform: scale(0);
}

.mxt-fadeOut {
  animation-name: mxt-fadeOut;
  pointer-events: none;
}

.mxt-fadeIn {
  animation-name: mxt-fadeIn;
}

.mxt-full-modal-screen {
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  margin: 0px auto;
  overflow: auto;
  z-index: 1;
}

.mxt-checkbox {
  display: flex;
  align-items: center;
}
.mxt-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.mxt-checkbox input:checked + .mxt-checkbox-checkmark {
  background-position: left center;
  background-color: var(--mxt-checkbox-checked-color);
  border: none;
}
.mxt-checkbox .mxt-checkbox-checkmark {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCAyNCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5hZGR0b2NhcnQtY2hlY2s8L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE3LjQxLDYuNjlhMSwxLDAsMCwwLTEuMzYuMzZMMTEuMzksMTUsNy42OCwxMi4yN2ExLDEsMCwwLDAtMS4zOS4yMSwxLDEsMCwwLDAsLjIxLDEuNGw0LjYsMy4zNy4wNiwwLDAsMCwuMTMuMDUuMDksMGEuOTIuOTIsMCwwLDAsLjI4LjA1LDEsMSwwLDAsMCwuNDEtLjFsLjA1LDBhMSwxLDAsMCwwLC4zMi0uMjZsMCwwLDAsMCwwLS4wNiw1LjIxLTguODlBMSwxLDAsMCwwLDE3LjQxLDYuNjlaIi8+PC9zdmc+);
  background-position: right center;
  background-size: auto 100%;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  cursor: pointer;
  border-radius: var(--mxt-corner-roundness);
  border: var(--mxt-checkbox-border);
}

/**
    * Mxt switch should be in format
    * <div class="mxt-switch-container">
        <p class='mxt-switch-label'>Off</p>
        <label class="mxt-switch">
            <input type="checkbox" checked>
            <span class="mxt-slider"></span>
        </label>
        <p class='mxt-switch-label'>On</p>
    </div>
    */
.mxt-switch-container {
  display: flex;
}

.mxt-switch-container.mxt-switch-disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.mxt-switch-label {
  line-height: 34px;
  padding: 0px 5px;
  user-select: none;
  color: var(--mxt-font-color);
}

.mxt-switch {
  position: relative;
  display: inline-block;
  width: 70px;
  height: 34px;
}

.mxt-switch input {
  display: none;
}

.mxt-switch input:checked + .mxt-slider {
  background: #4cd964;
}

.mxt-switch-container.mxt-switch-disabled .mxt-switch {
  pointer-events: none;
}

.mxt-switch .mxt-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e2e2e2;
  border-radius: 34px;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.mxt-switch .mxt-slider:before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  right: 38px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

.mxt-switch input:checked + .mxt-slider:before {
  -webkit-transform: translateX(36px);
  -ms-transform: translateX(36px);
  transform: translateX(36px);
}

.mxt-switch-container.mxt-switch-container-small-toggle {
  flex-grow: 1;
  align-items: center;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch {
  width: 40px;
  height: 20px;
  margin-bottom: unset;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider {
  background: var(--toggle-blue);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider::before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider {
  border-radius: 16px;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider::before {
  width: 16px;
  height: 16px;
  inset: 2px;
}

.mxt-font-header-lg {
  font: var(--mxt-font-header-lg);
}

.mxt-font-header {
  font: var(--mxt-font-header);
}

.mxt-font-subheader {
  font: var(--mxt-font-subheader);
}

.mxt-font-body-lg {
  font: var(--mxt-font-body-lg);
}

.mxt-font-body-lg-bold {
  font: var(--mxt-font-body-lg-bold);
}

.mxt-font-body {
  font: var(--mxt-font-body);
}

.mxt-font-body-bold {
  font: var(--mxt-font-body-bold);
}

.mxt-font-body-sm {
  font: var(--mxt-font-body-sm);
}

.mxt-hover-over-image {
  position: absolute;
  z-index: 99;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  display: none;
  justify-content: center;
  align-items: center;
}
.mxt-hover-over-image.mxt-hover-over-image-manual-trigger {
  display: flex;
}

.mxt-bounce-container {
  padding: 2px;
}

.mxt-bounce-container:hover .mxt-bounce {
  top: -2px;
}

.mxt-bounce {
  position: relative;
  transition: 0.2s top ease;
  top: 0px;
}

.mxt-fraction {
  display: inline-block;
  /** cannot use system font, not nearly enough space to stack*/
  font-size: 7px;
  padding: 0 0.2em;
  text-align: center;
  vertical-align: middle;
}

.mxt-fraction:before {
  border-bottom: 1px solid #666;
  content: attr(top);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-fraction:after {
  content: attr(bottom);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-hidden {
  display: none !important;
}

.mxt-visibility-hidden {
  visibility: hidden;
}

.mxt-rotate-180 {
  transform: rotate(180deg);
}

/* renderer WebGL Canvas */
.mxt-canvas {
  width: 100%;
  height: 100%;
  cursor: inherit;
}

.mxt-sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

:root {
  --mxt-button-height: 44px;
  --mxt-buttons-margin-top: 2px;
  --mxt-button-min-width: 300px;
  --mxt-box-shadow: 0 1px 1px 0 rgb(0 0 0 / 20%), 0 0 2px 1px rgb(0 0 0 / 5%);
  --mxt-client-primary: #4f40ff;
  --mxt-client-secondary: #4f40ff;
  --mxt-background-color: white;
  --mxt-inset-button-size: 25px;
  --mxt-inset-button-padding: 10px;
  --mxt-webar-button-ondemand-background: white;
  --mxt-webar-button-ready-background: var(--mxt-client-primary);
  --mxt-text-color: #1c1c1c;
  --mxt-text-color-dark: #1c1c1c;
  --mxt-text-color-inverse: #ffffff;
}

.mxt-container {
  background-color: var(--mxt-background-color);
  font-family: var(--mxt-font);
  font: var(--mxt-font-body);
  color: var(--mxt-text-color);
  position: relative;
}
.mxt-container .mxt-modal-div {
  /** modals have a white background, so always use dark color, not changeable text color*/
  color: var(--mxt-text-color-dark);
}

.mxt-spins-canvas-container {
  width: 100%;
  min-width: 0px;
  height: 100%;
  display: flex;
  flex-flow: column;
}

.mxt-popover:not(.mxt-about-popover) .mxt-popover-content {
  padding: 15px;
}

.mxt-invisible {
  visibility: hidden;
}

.mxt-hidden {
  display: none !important;
}

.hidden {
  display: none !important;
}

@keyframes mxt-fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes mxt-fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes mxt-spins-loading-spinner {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
.mxt-animated {
  animation-duration: 0.25s;
  animation-fill-mode: both;
}

.mxt-fadeOut {
  animation-name: mxt-fadeOut;
  pointer-events: none;
}

.mxt-fadeIn {
  animation-name: mxt-fadeIn;
}
/*!************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/components/button-bar.scss ***!
  \************************************************************************************************************************************************************************************************************************************/
.mxt-spin-button-row {
  background: var(--mxt-background-color);
  display: flex;
  color: var(--mxt-text-color);
  justify-content: space-between;
  align-items: flex-end;
  margin-top: var(--mxt-buttons-margin-top);
  height: var(--mxt-button-height);
  box-shadow: var(--mxt-box-shadow);
  touch-action: pan-x pan-y;
  overflow-y: hidden;
  overflow-x: auto;
  position: unset;
}
.mxt-spin-button-row.mxt-button-row-small {
  --mxt-button-height: 40px;
}
@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .mxt-spin-button-row {
    padding-bottom: env(safe-area-inset-bottom);
  }
}
@media (max-width: 600px) {
  .mxt-spin-button-row {
    padding-bottom: 0;
  }
}
.mxt-spin-button-row .mxt-btn:disabled,
.mxt-spin-button-row .mxt-btn.mxt-btn-disabled {
  background: inherit;
  pointer-events: all;
  cursor: not-allowed;
  opacity: 20%;
}
.mxt-spin-button-row a.mxt-btn {
  text-decoration: none;
  color: var(--mxt-text-color);
}
.mxt-spin-button-row a.mxt-btn:link,
.mxt-spin-button-row a.mxt-btn:visited,
.mxt-spin-button-row a.mxt-btn:active,
.mxt-spin-button-row a.mxt-btn:hover {
  color: var(--mxt-text-color);
}
.mxt-spin-button-row .mxt-button-row-left {
  /** include the padding*/
  flex: 0 1 calc(33.3333% - 5px);
  padding-left: 5px;
  justify-content: left;
}
.mxt-spin-button-row .mxt-button-row-center {
  /** doesnt get padding from either side*/
  flex: 0 0 33.3333%;
  justify-content: center;
}
.mxt-spin-button-row .mxt-button-row-right {
  /** include the padding*/
  flex: 0 1 calc(33.3333% - 5px);
  justify-content: flex-end;
  padding-right: 5px;
}
.mxt-spin-button-row .mxt-button-row-section {
  display: flex;
  height: 100%;
  align-items: center;
}
.mxt-spin-button-row .mxt-spin-button-controls {
  display: flex;
}
.mxt-spin-button-row .mxt-btn.mxt-btn-icon-only {
  touch-action: manipulation;
  width: var(--mxt-button-height);
  height: var(--mxt-button-height);
}
.mxt-spin-button-row .mxt-btn.mxt-btn-icon-only img {
  max-height: 100%;
  pointer-events: none;
}
/*!********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/components/web-ar.scss ***!
  \********************************************************************************************************************************************************************************************************************************/
.mxt-webAr-container .mxt-btn-webAr {
  background: var(--mxt-webar-button-ready-background);
}
.mxt-webAr-container .mxt-btn-webAr.mxt-btn-disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.mxt-webAr-container .mxt-btn-webAr-onDemand {
  background: var(--mxt-webar-button-ondemand-background);
}
.mxt-webAr-container .mxt-btn-webAr-onDemand.mxt-btn-disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.mxt-webAr-container a {
  border-radius: 50%;
  width: var(--mxt-button-height);
  height: var(--mxt-button-height);
}
.mxt-webAr-container a img {
  max-width: 100%;
  max-height: 100%;
}
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/webar-on-demand.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
/**webar*/
.mxt-btn-webAr-onDemand-Loading {
  display: flex;
  align-items: center;
  width: var(--mxt-button-height);
  height: var(--mxt-button-height);
}
.mxt-btn-webAr-onDemand-Loading .mxt-inline-spinner {
  width: 100%;
  height: 100%;
}
.mxt-btn-webAr-onDemand-Loading .mxt-inline-spinner img {
  animation: mxt-spins-loading-spinner 1s linear infinite;
  width: 100%;
  height: 100%;
}

.mxt-popover.mxt-ar-on-demand-popover .mxt-popover-content {
  padding: 10px;
  font: var(--mxt-font-body);
  width: 132px;
}
/*!**********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/webar-desktop-modal.scss ***!
  \**********************************************************************************************************************************************************************************************************************************/
@keyframes animate-stripes {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 60px 0;
  }
}
.mxt-webar-desktop-modal {
  padding: 20px;
  background-color: #f7f7f7;
  color: var(--mxt-text-color-dark);
  max-height: calc(100% - 85px);
  display: flex;
  flex-direction: column;
}
.mxt-webar-desktop-modal-content {
  text-align: center;
  overflow: auto;
}
.mxt-webar-desktop-modal-content .header {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 450px;
  margin: auto;
  padding: 10px;
}
.mxt-webar-desktop-modal-content .body {
  background-color: white;
  color: var(--mxt-text-color-dark);
  padding: 30px;
}
.mxt-webar-desktop-modal-content .body .question .question-buttons {
  display: flex;
  gap: 10px;
  margin-top: 20px;
  justify-content: center;
}
.mxt-webar-desktop-modal-content .body .generate {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.mxt-webar-desktop-modal-content .body .generate .mxt-font-header {
  margin-bottom: 20px;
}
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/components/about.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
.mxt-about-button {
  width: var(--mxt-inset-button-size);
  height: var(--mxt-inset-button-size);
  cursor: pointer;
}
.mxt-about-button img {
  max-width: 100%;
  max-height: 100%;
}

.mxt-popover.mxt-about-popover {
  padding: 10px;
  min-width: 250px;
}
/*!*******************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/components/viewer-bottom-right-container.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-viewer-bottom-right {
  position: absolute;
  bottom: var(--mxt-inset-button-padding);
  right: var(--mxt-inset-button-padding);
  display: flex;
  flex-flow: column;
  align-items: end;
  gap: 10px;
  background: transparent;
  max-height: 100%;
}
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/demo-user-control.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
.mxt-demo-user-control-container {
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  pointer-events: none;
}
.mxt-demo-user-control-container .mxt-demo-user-control {
  position: relative;
  left: 0;
  top: 50%;
  opacity: 0;
  transition: all 1s ease-in-out;
  color: var(--mxt-text-color-dark);
}
.mxt-demo-user-control-container .mxt-demo-user-control-image {
  width: 50px;
  transition: all 1.2s linear;
}
@media (max-width: 700px) and (orientation: portrait) {
  .mxt-demo-user-control-container .mxt-demo-user-control-image {
    width: 30px;
  }
}
/*!**********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-3d-spin-viewer/scss/index.scss ***!
  \**********************************************************************************************************************************************************************************************************************/
.mxt-form-control {
  display: block;
  width: 100%;
  line-height: 1.42857143;
  border: var(--mxt-form-control-border);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-form-control-box-shadow);
  height: var(--mxt-form-control-height);
}

.mxt-form-group {
  margin-bottom: 15px;
}

.mxt {
  font-synthesis: none;
}

@keyframes mxt-fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes mxt-fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
/*animations*/
@keyframes mxt-pop {
  0% {
    transform: scale(0);
  }
  80% {
    transform: scale(1.25);
  }
  100% {
    transform: scale(1);
  }
}
.mxt-animated {
  animation-duration: 0.25s;
  animation-fill-mode: both;
}

.mxt-animated-pause {
  animation-play-state: paused;
}

.mxt-animate-pop {
  animation-duration: 0.3s;
  animation-name: mxt-pop;
  animation-iteration-count: 1;
}

.mxt-animate-shrink {
  transform: scale(0);
}

.mxt-fadeOut {
  animation-name: mxt-fadeOut;
  pointer-events: none;
}

.mxt-fadeIn {
  animation-name: mxt-fadeIn;
}

.mxt-full-modal-screen {
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  margin: 0px auto;
  overflow: auto;
  z-index: 1;
}

.mxt-checkbox {
  display: flex;
  align-items: center;
}
.mxt-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.mxt-checkbox input:checked + .mxt-checkbox-checkmark {
  background-position: left center;
  background-color: var(--mxt-checkbox-checked-color);
  border: none;
}
.mxt-checkbox .mxt-checkbox-checkmark {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCAyNCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5hZGR0b2NhcnQtY2hlY2s8L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE3LjQxLDYuNjlhMSwxLDAsMCwwLTEuMzYuMzZMMTEuMzksMTUsNy42OCwxMi4yN2ExLDEsMCwwLDAtMS4zOS4yMSwxLDEsMCwwLDAsLjIxLDEuNGw0LjYsMy4zNy4wNiwwLDAsMCwuMTMuMDUuMDksMGEuOTIuOTIsMCwwLDAsLjI4LjA1LDEsMSwwLDAsMCwuNDEtLjFsLjA1LDBhMSwxLDAsMCwwLC4zMi0uMjZsMCwwLDAsMCwwLS4wNiw1LjIxLTguODlBMSwxLDAsMCwwLDE3LjQxLDYuNjlaIi8+PC9zdmc+);
  background-position: right center;
  background-size: auto 100%;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  cursor: pointer;
  border-radius: var(--mxt-corner-roundness);
  border: var(--mxt-checkbox-border);
}

/**
    * Mxt switch should be in format
    * <div class="mxt-switch-container">
        <p class='mxt-switch-label'>Off</p>
        <label class="mxt-switch">
            <input type="checkbox" checked>
            <span class="mxt-slider"></span>
        </label>
        <p class='mxt-switch-label'>On</p>
    </div>
    */
.mxt-switch-container {
  display: flex;
}

.mxt-switch-container.mxt-switch-disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.mxt-switch-label {
  line-height: 34px;
  padding: 0px 5px;
  user-select: none;
  color: var(--mxt-font-color);
}

.mxt-switch {
  position: relative;
  display: inline-block;
  width: 70px;
  height: 34px;
}

.mxt-switch input {
  display: none;
}

.mxt-switch input:checked + .mxt-slider {
  background: #4cd964;
}

.mxt-switch-container.mxt-switch-disabled .mxt-switch {
  pointer-events: none;
}

.mxt-switch .mxt-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e2e2e2;
  border-radius: 34px;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.mxt-switch .mxt-slider:before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  right: 38px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

.mxt-switch input:checked + .mxt-slider:before {
  -webkit-transform: translateX(36px);
  -ms-transform: translateX(36px);
  transform: translateX(36px);
}

.mxt-switch-container.mxt-switch-container-small-toggle {
  flex-grow: 1;
  align-items: center;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch {
  width: 40px;
  height: 20px;
  margin-bottom: unset;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider {
  background: var(--toggle-blue);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider::before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider {
  border-radius: 16px;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider::before {
  width: 16px;
  height: 16px;
  inset: 2px;
}

.mxt-font-header-lg {
  font: var(--mxt-font-header-lg);
}

.mxt-font-header {
  font: var(--mxt-font-header);
}

.mxt-font-subheader {
  font: var(--mxt-font-subheader);
}

.mxt-font-body-lg {
  font: var(--mxt-font-body-lg);
}

.mxt-font-body-lg-bold {
  font: var(--mxt-font-body-lg-bold);
}

.mxt-font-body {
  font: var(--mxt-font-body);
}

.mxt-font-body-bold {
  font: var(--mxt-font-body-bold);
}

.mxt-font-body-sm {
  font: var(--mxt-font-body-sm);
}

.mxt-hover-over-image {
  position: absolute;
  z-index: 99;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  display: none;
  justify-content: center;
  align-items: center;
}
.mxt-hover-over-image.mxt-hover-over-image-manual-trigger {
  display: flex;
}

.mxt-bounce-container {
  padding: 2px;
}

.mxt-bounce-container:hover .mxt-bounce {
  top: -2px;
}

.mxt-bounce {
  position: relative;
  transition: 0.2s top ease;
  top: 0px;
}

.mxt-fraction {
  display: inline-block;
  /** cannot use system font, not nearly enough space to stack*/
  font-size: 7px;
  padding: 0 0.2em;
  text-align: center;
  vertical-align: middle;
}

.mxt-fraction:before {
  border-bottom: 1px solid #666;
  content: attr(top);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-fraction:after {
  content: attr(bottom);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-hidden {
  display: none !important;
}

.mxt-visibility-hidden {
  visibility: hidden;
}

.mxt-rotate-180 {
  transform: rotate(180deg);
}

/* renderer WebGL Canvas */
.mxt-canvas {
  width: 100%;
  height: 100%;
  cursor: inherit;
}

.mxt-sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

.mxt-download-image-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  z-index: 2;
  background: rgba(0, 0, 0, 0.5);
}
.mxt-download-image-overlay .mxt-download-image-overlay-box {
  box-shadow: var(--mxt-box-shadow);
  margin: 5% 10%;
  display: flex;
  background: white;
  color: var(--mxt-text-color-dark);
  align-items: center;
  justify-content: center;
  flex-flow: column;
  height: 80%;
  position: relative;
}
.mxt-download-image-overlay .mxt-download-image-overlay-box .mxt-download-image {
  height: 90%;
  position: relative;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mxt-download-image-overlay .mxt-download-image-overlay-box .mxt-download-image img {
  max-width: 100%;
  max-height: 100%;
}
.mxt-download-image-overlay .mxt-download-image-overlay-box .mxt-download-image-close {
  position: absolute;
  top: 20px;
  right: 20px;
}

.mxt-spins-loading-progress-background {
  top: 0px;
}

.mxt-canvas-container {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.mxt-canvas-container .mxt-about-button {
  position: absolute;
  bottom: var(--mxt-inset-button-padding);
  left: var(--mxt-inset-button-padding);
}
.mxt-canvas-container:focus {
  outline: none;
}
.mxt-canvas-container .mxt-canvas {
  width: 100%;
  height: 100%;
  user-select: none;
  -webkit-user-select: none;
}
.mxt-canvas-container .mxt-canvas.mxt-canvas-cursor-pointer {
  cursor: pointer;
}
.mxt-canvas-container .mxt-canvas:focus {
  outline: none;
}
.mxt-canvas-container .mxt-panning-guidance-container {
  display: flex;
  justify-content: center;
  bottom: 75px;
  width: 100%;
  position: absolute;
  pointer-events: none;
}
.mxt-canvas-container .mxt-panning-guidance-container .mxt-panning-guidance {
  pointer-events: all;
  display: flex;
  align-items: center;
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-box-shadow);
  background-color: #fff;
  color: var(--mxt-text-color-dark);
  padding: 5px 15px;
}
.mxt-canvas-container .mxt-panning-guidance-container .mxt-panning-guidance .mxt-guidance-flex {
  display: flex;
  align-items: center;
  margin-right: 15px;
}
.mxt-canvas-container .mxt-panning-guidance-container .mxt-panning-guidance .mxt-guidance-flex:last-of-type {
  margin-right: 0px;
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-3d-spin-viewer/scss/dimensions.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
.mxt-dimension-line-label {
  position: absolute;
  background: white;
  color: var(--mxt-text-color-dark);
  border-radius: 5px;
  box-shadow: var(--mxt-box-shadow);
  padding: 3px 6px;
}
.mxt-dimension-line-label > span {
  font-family: sans-serif;
}
.mxt-dimension-line-label.editable {
  padding: 0;
}
.mxt-dimension-line-label.editable .mxt-dimension-editable-label {
  padding: 3px 6px;
  border-radius: 5px;
}
.mxt-dimension-line-label.editable:hover .mxt-dimension-editable-label {
  background-color: rgba(var(--mxt-client-primary-rgb), 0.1);
  cursor: pointer;
}
.mxt-dimension-line-label.editable.updated .mxt-dimension-editable-label {
  border: 1px solid;
  border-color: var(--mxt-client-primary);
}

.mxt-dimension-editor-poppover .mxt-popover-content {
  padding: 10px;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-header {
  font: var(--mxt-font-body-bold);
  margin: 5px 0;
  text-align: center;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 140px;
  gap: 5px;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section {
  display: flex;
  justify-content: space-between;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dimension-editor-label {
  flex: 0;
  text-align: center;
  padding: 0 6px;
  min-width: 20px;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dimension-editor-input,
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container {
  flex: 2;
  font: var(--mxt-font-body);
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dimension-editor-input {
  height: 22px;
  width: 1%;
  padding: 3px 6px;
  font: var(--mxt-font-body);
  border: none;
  border-radius: var(--mxt-corner-roundness);
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container {
  align-self: baseline;
  margin: 0;
  font: var(--mxt-font-body-sm);
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-dropdown {
  min-width: 45px;
  min-height: 28px;
  padding-left: 6px;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-header {
  min-height: 28px;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-dropdown-header {
  justify-content: space-between;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-custom-checkmark,
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-custom-checkbox {
  display: none;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-dropdown-option-text {
  margin-left: unset !important;
}
.mxt-dimension-editor-poppover .mxt-dimension-editor-section.input-section .mxt-dropdown-container .mxt-dropdown-chevron {
  margin-left: unset;
}
.mxt-dimension-editor-poppover .mxt-btn {
  height: 30px;
  margin: 0;
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-3d-spin-viewer/scss/hd-render.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
.mxt-spins-left-corner-controls {
  position: absolute;
  bottom: calc(var(--mxt-button-height) + 20px);
  left: 20px;
  flex-flow: column-reverse;
  align-items: flex-start;
  display: flex;
  z-index: 1;
}

.hd-render-popover-container {
  position: relative !important;
  left: unset !important;
  top: unset !important;
  text-align: center;
}
.hd-render-popover-container.mxt-popover {
  max-width: unset;
}
.hd-render-popover-container .mxt-modal-arrow-outer {
  display: none;
}
.hd-render-popover-container .generating-render {
  min-width: 175px;
  max-width: 250px;
  max-height: 120px;
  font: var(--mxt-font-body-bold);
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-evenly;
}
.hd-render-popover-container .generating-render .generation-additional-text {
  font: var(--mxt-font-body);
  padding-bottom: 8px;
}
.hd-render-popover-container .generating-render .progress-container {
  position: relative;
  width: 90%;
  height: 8px;
  border-radius: var(--mxt-corner-roundness);
  background-color: rgb(239, 239, 244);
  color: var(--mxt-text-color-dark);
}
.hd-render-popover-container .generating-render .progress-container #hd-render-loading-bar {
  position: absolute;
  width: 0;
  height: 100%;
  border-radius: var(--mxt-corner-roundness);
  background-image: linear-gradient(to right, var(--mxt-client-primary) -11%, var(--mxt-client-secondary) 72%);
  animation: infiniteBar 2s linear infinite;
}
.hd-render-popover-container .generation-complete {
  max-width: 240px;
  padding: 15px;
  display: flex;
  flex-flow: column;
  gap: 12px;
  background: var(--primary-right-gradient);
  border-radius: var(--mxt-corner-roundness);
  color: var(--mxt-text-color-inverse);
}
.hd-render-popover-container .generation-complete .mxt-non-cta-btn {
  width: 100%;
}
.hd-render-popover-container .generation-failure {
  width: 100%;
  max-width: 220px;
  padding: 15px;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-evenly;
  gap: 10px;
}
.hd-render-popover-container .generation-failure .error-icon {
  display: inline-block;
}
.hd-render-popover-container .generation-failure .mxt-cta-button {
  width: 100%;
}
.hd-render-popover-container .close-button {
  top: -20px;
  right: -20px;
  position: absolute;
  width: 40px;
  height: 40px;
  min-width: unset;
  border-radius: 50%;
  background-color: rgb(255, 255, 255);
  color: var(--mxt-text-color-dark);
  box-shadow: var(--mxt-dark-drop-shadow);
}

@keyframes infiniteBar {
  0% {
    left: 0%;
    right: 100%;
    width: 0%;
  }
  10% {
    left: 0%;
    right: 75%;
    width: 25%;
  }
  90% {
    right: 0%;
    left: 75%;
    width: 25%;
  }
  100% {
    left: 100%;
    right: 0%;
    width: 0%;
  }
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-spins-common/scss/preset-views.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
.mxt-preset-views-popover-content {
  display: flex;
  flex-direction: column;
}
.mxt-preset-views-popover-content .mxt-preset-views-popover-header {
  padding: 10px 10px 0 10px;
}
.mxt-preset-views-popover-content .mxt-preset-views-popover-header hr {
  border: 1px solid var(--mxt-action-menu-border-color);
  margin-left: 0;
  margin-right: 0;
}
.mxt-preset-views-popover-content .mxt-preset-views-option {
  justify-content: start;
}

.mxt-compact-layout .mxt-preset-views-popover {
  max-width: none;
  transform: translateX(-1px);
}
.mxt-compact-layout .mxt-preset-views-popover .mxt-preset-views-popover-content {
  flex-direction: row;
}
.mxt-compact-layout .mxt-preset-views-popover .mxt-preset-views-popover-content .mxt-preset-views-popover-header {
  display: none;
}
.mxt-compact-layout .mxt-preset-views-popover .mxt-preset-views-popover-content .mxt-preset-views-option {
  justify-content: unset;
  width: 40px;
  min-width: 0px;
  padding: 0px;
}
.mxt-compact-layout .mxt-preset-views-popover .mxt-preset-views-popover-content .mxt-preset-views-option span {
  display: none;
}
.mxt-compact-layout .mxt-preset-views-popover .mxt-menu-bottom-arrow {
  transform: translateX(1px);
}
/*!************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/mxtdropdown.scss ***!
  \************************************************************************************************************************************************************************************************************************/
.mxt-dropdown-option-img {
  width: 18px;
  height: 18px;
  margin-left: 25px;
  margin-right: 15px;
}

.mxt-dropdown-container {
  position: relative;
  margin: 5px 5px;
}
.mxt-dropdown-container.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.mxt-dropdown {
  position: absolute;
  border-radius: var(--mxt-corner-roundness);
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
  padding-left: 15px;
  background: white;
  min-height: 40px;
  min-width: 170px;
  opacity: 1;
  transition: all 0.5s ease;
  z-index: 1;
}

.mxt-dropdown-no-checkbox {
  min-width: 100px;
}

.mxt-dropdown-options {
  padding-bottom: 10px;
  overflow: hidden;
}

.mxt-dropdown:hover {
  opacity: 1;
  box-shadow: 0px 2px 2px 0 rgba(0, 0, 0, 0.4);
}

.mxt-dropdown-option {
  margin-right: 10px;
}

.mxt-dropdown-option-no-checkbox p:hover {
  color: var(--selected);
}

.mxt-dropdown-option-no-checkbox p {
  cursor: pointer;
}

.mxt-dropdown-header {
  display: flex;
  cursor: pointer;
  min-height: 40px;
  align-items: center;
}

.mxt-dropdown-header h5 {
  font: var(--mxt-font-body-bold);
  color: var(--mxt-font-color);
  margin: 0px;
}

.mxt-dropdown-header-current {
  margin: 0px;
  font: var(--mxt-font-body-sm);
  padding: 0.3rem 0;
}

.mxt-dropdown-header-image {
  width: 40px;
  height: 40px;
}

.mxt-dropdown-header .mxt-dropdown-chevron.mxt-dropdown-rotate-chevron {
  transform: rotate(0deg);
}

.mxt-dropdown-header .mxt-dropdown-chevron {
  width: 25px;
  height: 25px;
  position: relative;
  margin-left: 10px;
  transform: rotate(-90deg);
  transition: 0.5s all ease;
}

/* Create the checkmark/indicator (hidden when not checked) */
.mxt-custom-checkbox-container .mxt-custom-checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.mxt-custom-checkbox-container input:checked ~ .mxt-custom-checkmark:after {
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.mxt-custom-checkbox-container {
  display: block;
  position: relative;
  cursor: pointer;
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Style the checkmark/indicator */
.mxt-custom-checkbox-container .mxt-custom-checkmark:after {
  left: 4px;
  top: 0px;
  width: 5px;
  height: 10px;
  border: solid #3aa8bc;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* hide default checkbox*/
.mxt-custom-checkbox {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.mxt-custom-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 18px;
  width: 18px;
  background-color: #fff;
  border: 3px solid #d7d7d7;
}

input:checked ~ .mxt-custom-checkmark {
  border: solid 3px #3aa8bc;
}

.mxt-dropdown-option-quantity {
  margin-left: 3px;
  font: var(--mxt-font-body-bold);
}

.mxt-dropdown-option.mxt-dropdown-option-disabled {
  color: var(--mxt-font-color-disabled);
}

.mxt-dropdown-option.mxt-dropdown-option-disabled .mxt-custom-checkbox-container {
  cursor: not-allowed;
}
/*!**************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/mxt-toaster.scss ***!
  \**************************************************************************************************************************************************************************************************************************************/
.mxt-toaster {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1000;
}
.mxt-toaster-background {
  width: 100%;
  height: 100%;
  background-color: var(--mxt-modal-background-color);
}
.mxt-toaster-main {
  width: 100%;
  min-height: 42px;
  max-height: 100%;
  position: absolute;
  bottom: 0;
  overflow-y: scroll;
  background-color: white;
  color: var(--mxt-text-color-dark);
  border: 1px solid black;
  display: flex;
  flex-direction: row;
}
.mxt-toaster-main .mxt-toaster-content {
  padding: 10px;
  flex-grow: 1;
}
.mxt-toaster-main .mxt-toaster-close {
  width: 40px;
  height: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0px;
}
.mxt-toaster-main .mxt-toaster-close img {
  width: 30px;
  height: 30px;
  pointer-events: none;
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/global.scss (1) ***!
  \**************************************************************************************************************************************************************************************************************************/
:root {
  /** Configurable colors */
  --mxt-corner-roundness: 6px;
  /* must be rgb, not hex, but without the parentheses so we can apply an opacity within it
     for example, 255,255,255 NOT rgb(255,255,255)*/
  --mxt-client-primary-rgb: 0, 0, 0;
  /* must be rgb, not hex, but without the parentheses so we can apply an opacity within it
     for example, 255,255,255 NOT rgb(255,255,255)*/
  --mxt-client-secondary-rgb: 0, 0, 0;
  /* must be rgb, not hex, but without the parentheses so we can apply an opacity within it
     for example, 255,255,255 NOT rgb(255,255,255)*/
  --mxt-client-drop-shadow-rgb: 0, 0, 0;
  --mxt-client-blueprint-active-toolbar-button: rgb(79, 193, 223);
  --mxt-cta-button-drop-shadow: 0 1px 0 0 var(--mxt-client-drop-shadow), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  --mxt-cta-button-border-thickness: 0px;
  --mxt-cta-button-border-color: #c1c1c1;
  --mxt-cta-button-font-color: #ffffff;
  --mxt-non-cta-button-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-non-cta-button-border-thickness: 0px;
  --mxt-non-cta-button-border-color: #c1c1c1;
  --mxt-non-cta-button-background-color: #ffffff;
  --mxt-non-cta-button-font-color: #222832;
  --mxt-toolbelt-btn-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-toolbelt-btn-border-thickness: 0px;
  --mxt-toolbelt-btn-border-color: #c1c1c1;
  --mxt-toolbelt-btn-background-color: #ffffff;
  --mxt-toolbelt-btn-font-color: #222832;
  --mxt-nav-control-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-nav-control-border-thickness: 0px;
  --mxt-nav-control-border-color: #c1c1c1;
  --mxt-nav-control-background-color: #ffffff;
  --mxt-nav-control-font-color: #222832;
  --mxt-nav-control-primary-background-color: var(--primary-right-gradient);
  --mxt-nav-control-primary-font-color: var(--mxt-cta-button-font-color);
  --mxt-action-menu-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-action-menu-border-thickness: 0px;
  --mxt-action-menu-border-color: #c1c1c1;
  --mxt-action-menu-background-color: #ffffff;
  --mxt-action-menu-font-color: #222832;
  --mxt-tooltip-drop-shadow: var(--mxt-dark-drop-shadow);
  --mxt-tooltip-border-thickness: 0px;
  --mxt-tooltip-border-color: #c1c1c1;
  --mxt-tooltip-font-color: #222832;
  --mxt-toolbar-background-color: #ffffff;
  --mxt-toolbar-button-color: #f5f5f5;
  --mxt-toolbar-font-color: #222832;
  --mxt-toolbar-divider-color: #d8d8d8;
  --mxt-toolbar-cta-button-color: #5c5c5c;
  --mxt-toolbar-cta-font-color: #ffffff;
  --mxt-toolbar-cta-divider-color: #4c4c4c;
  --mxt-dimension-pip-border-color: #4fc1df;
  --mxt-error-color: #be2c3b;
  /** forms */
  --mxt-form-control-border-width: 1px;
  --mxt-form-control-border-style: solid;
  --mxt-form-control-border-color: #3d3d3d;
  --mxt-form-control-border: var(--mxt-form-control-border-width) var(--mxt-form-control-border-style) var(--mxt-form-control-border-color);
  --mxt-form-control-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  --mxt-form-control-height: 50px;
  /** checkbox */
  --mxt-checkbox-border-width: 3px;
  --mxt-checkbox-border-style: solid;
  --mxt-checkbox-border-color: #9e9e9e;
  --mxt-checkbox-border: var(--mxt-checkbox-border-width) var(--mxt-checkbox-border-style) var(--mxt-checkbox-border-color);
  --mxt-checkbox-checked-color: #90d425;
  /** fonts */
  --mxt-font: Mulish;
  --mxt-font-header-lg: 800 30px var(--mxt-font);
  --mxt-font-header: 800 22px var(--mxt-font);
  --mxt-font-subheader: 700 15px var(--mxt-font);
  --mxt-font-body-lg: 500 15px var(--mxt-font);
  --mxt-font-body-lg-bold: 700 15px var(--mxt-font);
  --mxt-font-body: 500 13px var(--mxt-font);
  --mxt-font-body-bold: 700 13px var(--mxt-font);
  --mxt-font-body-sm: 500 11px var(--mxt-font);
  --mxt-font-body-ex-sm: 500 10px var(--mxt-font);
  --mxt-login-register-hero: 'url("")';
  --style-grid-image-size-sm: 64px;
  --style-grid-image-size-md: 64px;
  --style-grid-image-size-lg: 70px;
  --style-grid-image-size-sm-wide: 100px;
  --style-grid-image-size-md-wide: 120px;
  --style-grid-image-size-lg-wide: 140px;
  /** Non configurable colors**/
  --mxt-dark-drop-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  --mxt-client-primary: rgb(var(--mxt-client-primary-rgb));
  --mxt-client-drop-shadow: rgb(var(--mxt-client-drop-shadow-rgb));
  --mxt-client-secondary: rgb(var(--mxt-client-secondary-rgb));
  --mxt-button-disabled-font-color: #a5a5a5;
  --mxt-font-color: #222832;
  --mxt-font-color-disabled: #bebebe;
  --mxt-button-disabled-background-color: #e5e5e5;
  --primary-right-gradient: linear-gradient(to right, var(--mxt-client-primary), var(--mxt-client-secondary));
  --primary-top-gradient: linear-gradient(to top, var(--mxt-client-primary), var(--mxt-client-secondary));
  --fancy-rotate-overlay-color: #2aace2;
  /*in edge, cannot use space evenly, must use space around; https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/15947692/ */
  --space-evenly: space-evenly;
  --mxt-action-menu-item-width: 70px;
  --mxt-toolbar-width: 160px;
  --mxt-interstitial-toolbar-width: 160px;
  --hover-blue: #edf9fc;
  --toggle-blue-rgb: 79, 193, 223; /*#4fc1df*/
  --toggle-blue: rgb(var(--toggle-blue-rgb));
  --toggle-green-rgb: 89, 191, 89;
  --toggle-green: rgb(var(--toggle-green-rgb));
  --mxt-primary-logo-width: 300px;
  --mxt-nav-control-button-primary-width: 145px;
  --mxt-nav-menu-height: 44px;
  --mxt-guided-design-font-color: #ffffff;
  --mxt-guided-design-border-color: #ffffff;
  --mxt-design-mode-panel-width: 340px;
  --kong-background-color-hover: rgb(0, 0, 0);
  --kong-background-color: rgb(255, 255, 255);
  --kong-background-color-active: rgb(0, 0, 0);
  --kong-text-color-hover: rgb(255, 255, 255);
}

/* Edge only */
@supports (-ms-accelerator: true) {
  :root {
    --space-evenly: space-around;
  }
}
/** Standard buttons */
.mxt-btn, input[type=file]::file-selector-button {
  border: none;
  background: none;
  transition: all 0.3s ease;
  height: 40px;
  border-radius: var(--mxt-corner-roundness);
  position: relative;
  font: var(--mxt-font-body-bold);
  text-align: center;
  user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
  min-width: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  /** MXT-9078: to fix flicker on filter:brightness: https://stackoverflow.com/questions/23619520/chrome-flickering-on-webkit-filter-blur/24062670 */
  backface-visibility: hidden;
  color: var(--mxt-font-color);
}
.mxt-btn *:not(:first-child), input[type=file]::file-selector-button *:not(:first-child) {
  margin-left: 5px;
  padding-right: 10px;
}
.mxt-btn.mxt-transition-in, input.mxt-transition-in[type=file]::file-selector-button {
  /*  Example: <button class="mxt-btn mxt-transition-in mxt-transition-in-<type>">
   * 
   *  Removeing class .mxt-transition-in-<type> will cause button to transition in based on defaults set above
   */
  opacity: 1;
}
.mxt-btn.mxt-transition-in.mxt-transition-in-opacity, input.mxt-transition-in.mxt-transition-in-opacity[type=file]::file-selector-button {
  opacity: 0;
  pointer-events: none;
}
.mxt-btn .mxt-btn-label, input[type=file]::file-selector-button .mxt-btn-label {
  margin: 0px;
  padding: 0px;
}
.mxt-btn .navigationBaseButtonLabel.mxt-btn-label, input[type=file]::file-selector-button .navigationBaseButtonLabel.mxt-btn-label {
  font: var(--mxt-font-body);
  padding-right: 7px;
}
.mxt-btn.mxt-blue, input.mxt-blue[type=file]::file-selector-button {
  color: var(--toggle-blue);
}
.mxt-btn.mxt-green, input.mxt-green[type=file]::file-selector-button {
  color: var(--toggle-green);
}
.mxt-btn.mxt-btn-toggled, input.mxt-btn-toggled[type=file]::file-selector-button {
  box-shadow: none;
  background: var(--toggle-blue);
  color: #ffffff;
}
.mxt-btn.mxt-split-button, input.mxt-split-button[type=file]::file-selector-button {
  min-width: 0px;
  display: inline-block;
  box-shadow: none;
}
.mxt-btn.mxt-nav-control-button, input.mxt-nav-control-button[type=file]::file-selector-button {
  height: var(--mxt-nav-menu-height);
}
.mxt-btn.mxt-btn-icon-only.mxt-nav-control-button, input.mxt-btn-icon-only.mxt-nav-control-button[type=file]::file-selector-button {
  width: var(--mxt-nav-menu-height);
}
.mxt-btn-full {
  width: 100%;
}
.mxt-btn.navigationBaseButton, input.navigationBaseButton[type=file]::file-selector-button {
  border-radius: 0px;
}
.mxt-btn.navigationBaseButton.navigationPanelLabelToggle, input.navigationBaseButton.navigationPanelLabelToggle[type=file]::file-selector-button {
  color: var(--mxt-toolbar-font-color);
  font: var(--mxt-font-body);
  flex: 0 0 var(--mxt-nav-menu-height);
}
.mxt-btn.navigationBaseButton.navigationPanelLabelToggle img, input.navigationBaseButton.navigationPanelLabelToggle[type=file]::file-selector-button img {
  width: 50px;
  height: 50px;
}
.mxt-btn.navigationBaseButton.mxt-btn-disabled, input.navigationBaseButton.mxt-btn-disabled[type=file]::file-selector-button {
  cursor: not-allowed;
}
.mxt-btn.navigationBaseButton.mxt-btn-disabled *, input.navigationBaseButton.mxt-btn-disabled[type=file]::file-selector-button * {
  opacity: 0.5;
}
.mxt-btn.navigationButton, input.navigationButton[type=file]::file-selector-button {
  background: var(--mxt-toolbar-button-color);
  color: var(--mxt-toolbar-font-color);
}
.mxt-btn.navigationButton.navigationButtonMain, input.navigationButton.navigationButtonMain[type=file]::file-selector-button {
  background: var(--mxt-toolbar-background-color);
}
.mxt-btn.navigationQuickLink, input.navigationQuickLink[type=file]::file-selector-button {
  background: var(--mxt-toolbar-cta-button-color);
  color: var(--mxt-toolbar-cta-font-color);
}
.mxt-btn:disabled, input[type=file]:disabled::file-selector-button, .mxt-btn.mxt-non-cta-button.mxt-btn-disabled, input.mxt-btn-disabled[type=file]::file-selector-button, .mxt-btn.mxt-cta-button.mxt-btn-disabled {
  box-shadow: none;
  background: var(--mxt-button-disabled-background-color);
  color: var(--mxt-button-disabled-font-color);
  pointer-events: none;
}
.mxt-btn:disabled img, input[type=file]:disabled::file-selector-button img, .mxt-btn.mxt-non-cta-button.mxt-btn-disabled img, input.mxt-btn-disabled[type=file]::file-selector-button img, .mxt-btn.mxt-cta-button.mxt-btn-disabled img {
  opacity: 0.5;
}
.mxt-btn.mxt-toolbelt-item.mxt-btn-disabled, input.mxt-toolbelt-item.mxt-btn-disabled[type=file]::file-selector-button, .mxt-btn.mxt-nav-control-button.mxt-btn-disabled, input.mxt-nav-control-button.mxt-btn-disabled[type=file]::file-selector-button, .mxt-btn.mxt-action-menu-item.mxt-btn-disabled, input.mxt-action-menu-item.mxt-btn-disabled[type=file]::file-selector-button {
  box-shadow: none;
  opacity: 0.3;
  cursor: not-allowed;
}
.mxt-btn.mxt-toolbelt-item.mxt-btn-disabled:hover, input.mxt-toolbelt-item.mxt-btn-disabled[type=file]:hover::file-selector-button, .mxt-btn.mxt-nav-control-button.mxt-btn-disabled:hover, input.mxt-nav-control-button.mxt-btn-disabled[type=file]:hover::file-selector-button {
  filter: unset;
}
@media (min-width: 1200px) {
  .mxt-btn:hover, input[type=file]:hover::file-selector-button {
    filter: brightness(90%);
  }
}

.mxt-btn-md {
  width: 140px;
}

.mxt-btn-lg {
  width: 240px;
}

.mxt-btn-icon-only {
  width: 40px;
  min-width: 0px;
  padding: 0px;
}

.mxt-btn-no-bg {
  background: none;
  border: none;
}

.mxt-btn-link {
  background: none;
  border: none;
  color: var(--toggle-blue);
  text-decoration: underline;
  height: unset;
  font: var(--mxt-font-body);
  margin: 0.5rem 0;
}

img.mxt-btn-icon-absolute-left {
  position: absolute;
  left: 25px;
  width: 25px;
}

.mxt-cta-button {
  box-shadow: var(--mxt-cta-button-drop-shadow);
  color: var(--mxt-cta-button-font-color);
  background: var(--primary-right-gradient);
  border: var(--mxt-cta-button-border-thickness) solid var(--mxt-cta-button-border-color);
}

.mxt-non-cta-button, input[type=file]::file-selector-button {
  box-shadow: var(--mxt-non-cta-button-drop-shadow);
  color: var(--mxt-non-cta-button-font-color);
  background: var(--mxt-non-cta-button-background-color);
  border: var(--mxt-non-cta-button-border-thickness) solid var(--mxt-non-cta-button-border-color);
}

.mxt-split-button:last-child {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  padding-right: 5px;
}
.mxt-split-button:first-child {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
  padding-left: 5px;
}

/** defaults to bottom arrow */
.mxt-modal-arrow-outer {
  position: absolute;
  top: 100%;
  left: calc(50% - 25px);
  width: 50px;
  height: 25px;
  overflow: hidden;
  pointer-events: none;
  /** top */
  /** left */
  /** right */
}
.mxt-modal-arrow-outer.mxt-menu-no-arrow {
  display: none;
}
.mxt-modal-arrow-outer.mxt-menu-top-arrow {
  top: -25px;
}
.mxt-modal-arrow-outer.mxt-menu-top-arrow .mxt-modal-arrow-inner {
  top: 20px;
}
.mxt-modal-arrow-outer.mxt-menu-left-arrow {
  width: 25px;
  height: 50px;
  top: calc(50% - 25px);
  left: -25px;
}
.mxt-modal-arrow-outer.mxt-menu-left-arrow .mxt-modal-arrow-inner {
  top: -25px;
  left: 25px;
}
.mxt-modal-arrow-outer.mxt-menu-right-arrow {
  width: 25px;
  height: 50px;
  top: calc(50% - 25px);
  left: 100%;
}
.mxt-modal-arrow-outer.mxt-menu-right-arrow .mxt-modal-arrow-inner {
  top: -25px;
  left: -100px;
}

.mxt-modal-arrow-inner {
  transform: rotate(45deg);
  background-color: var(--mxt-action-menu-background-color);
  box-shadow: var(--mxt-action-menu-drop-shadow);
  width: 100px;
  height: 100px;
  top: -100px;
  left: -25px;
  position: relative;
  border-radius: var(--mxt-corner-roundness);
  pointer-events: auto;
}

/** Toolbelt*/
.mxt-toolbelt {
  display: flex;
  background: var(--mxt-toolbelt-btn-background-color);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-toolbelt-btn-drop-shadow);
  color: var(--mxt-toolbelt-btn-font-color);
  border: var(--mxt-toolbelt-btn-border-thickness) solid var(--mxt-toolbelt-btn-border-color);
}

/** Action Menu */
.mxt-action-menu {
  display: flex;
  background: var(--mxt-action-menu-background-color);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-action-menu-drop-shadow);
  color: var(--mxt-action-menu-font-color);
  border: var(--mxt-action-menu-border-thickness) solid var(--mxt-action-menu-border-color);
}
.mxt-action-menu.undocked .mxt-action-menu-container {
  grid-template-columns: 1fr 1fr;
  width: 300px;
}
.mxt-action-menu.undocked .mxt-action-menu-container.mxt-collapsed-label {
  grid-template-rows: 1fr 1fr;
  grid-auto-flow: column;
  width: 100%;
}

.mxt-menu-bottom-arrow .action-menu-drag {
  top: -5px;
  left: calc(50% - 10px);
}

.mxt-menu-right-arrow .action-menu-drag {
  left: -10px;
  top: calc(50% - 5px);
  transform: rotate(90deg);
  transform-origin: 10px 5px;
}

.mxt-menu-left-arrow .action-menu-drag {
  right: -10px;
  top: calc(50% - 5px);
  transform: rotate(90deg);
  transform-origin: 10px 5px;
}

.mxt-menu-top-arrow .action-menu-drag {
  bottom: -5px;
  left: calc(50% - 10px);
}

/** Shared toolbelt and action menu */
.mxt-toolbelt,
.mxt-action-menu {
  overflow: hidden;
  z-index: 5000 !important;
  width: fit-content;
  /** Override the button styles */
  /** Set the styles for when docked in various locations */
}
.mxt-toolbelt .mxt-toolbelt-container,
.mxt-toolbelt .mxt-action-menu-container,
.mxt-toolbelt .mxt-action-sub-menu-container,
.mxt-action-menu .mxt-toolbelt-container,
.mxt-action-menu .mxt-action-menu-container,
.mxt-action-menu .mxt-action-sub-menu-container {
  display: grid;
  gap: 0 10px;
  padding: 0 10px;
}
.mxt-toolbelt .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-toolbelt .mxt-action-menu-container.mxt-collapsed-label,
.mxt-toolbelt .mxt-action-sub-menu-container.mxt-collapsed-label,
.mxt-action-menu .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-action-menu .mxt-action-menu-container.mxt-collapsed-label,
.mxt-action-menu .mxt-action-sub-menu-container.mxt-collapsed-label {
  gap: 0 5px;
}
.mxt-toolbelt:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-menu-container,
.mxt-action-menu:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-menu-container {
  position: absolute;
}
.mxt-toolbelt:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible).undocked .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible).undocked .mxt-action-sub-menu-container .mxt-action-menu-item {
  min-width: 100px;
}
.mxt-toolbelt:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-sub-menu.mxt-action-sub-menu-visible,
.mxt-action-menu:has(.mxt-action-sub-menu.mxt-action-sub-menu-visible) .mxt-action-sub-menu.mxt-action-sub-menu-visible {
  position: unset;
}
.mxt-toolbelt .mxt-action-sub-menu,
.mxt-action-menu .mxt-action-sub-menu {
  position: absolute;
  display: flex;
  transform: translateX(-100%);
  transition: transform ease 0.4s;
  background: white;
  min-width: calc(100% - 25px);
  max-width: calc(100% - 25px);
  min-height: 100%;
  z-index: 1;
  visibility: hidden;
}
.mxt-toolbelt .mxt-action-sub-menu.mxt-action-sub-menu-visible,
.mxt-action-menu .mxt-action-sub-menu.mxt-action-sub-menu-visible {
  transform: unset;
  visibility: visible;
}
.mxt-toolbelt .mxt-action-sub-menu-container,
.mxt-action-menu .mxt-action-sub-menu-container {
  grid-template-columns: 1fr 1fr;
}
.mxt-toolbelt .mxt-action-menu-back-button,
.mxt-action-menu .mxt-action-menu-back-button {
  min-width: 40px;
  align-self: flex-start;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item, .mxt-toolbelt input.mxt-toolbelt-item[type=file]::file-selector-button, .mxt-toolbelt .mxt-btn.mxt-action-menu-item, .mxt-toolbelt input.mxt-action-menu-item[type=file]::file-selector-button,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item,
.mxt-action-menu input.mxt-toolbelt-item[type=file]::file-selector-button,
.mxt-action-menu .mxt-btn.mxt-action-menu-item,
.mxt-action-menu input.mxt-action-menu-item[type=file]::file-selector-button {
  display: flex;
  flex-flow: row;
  align-items: center;
  overflow: hidden;
  justify-content: flex-start;
  transition: all 0.3s ease;
  min-width: unset;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item .mxt-btn-label, .mxt-toolbelt input.mxt-toolbelt-item[type=file]::file-selector-button .mxt-btn-label, .mxt-toolbelt .mxt-btn.mxt-action-menu-item .mxt-btn-label, .mxt-toolbelt input.mxt-action-menu-item[type=file]::file-selector-button .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item .mxt-btn-label,
.mxt-action-menu input.mxt-toolbelt-item[type=file]::file-selector-button .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-action-menu-item .mxt-btn-label,
.mxt-action-menu input.mxt-action-menu-item[type=file]::file-selector-button .mxt-btn-label {
  font: var(--mxt-font-body);
  transition: all 0.3s ease;
  min-height: 0px;
  flex: 1;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label, .mxt-toolbelt input.mxt-toolbelt-item.mxt-collapsed-label[type=file]::file-selector-button, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-collapsed-label, .mxt-toolbelt input.mxt-action-menu-item.mxt-collapsed-label[type=file]::file-selector-button,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label,
.mxt-action-menu input.mxt-toolbelt-item.mxt-collapsed-label[type=file]::file-selector-button,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-collapsed-label,
.mxt-action-menu input.mxt-action-menu-item.mxt-collapsed-label[type=file]::file-selector-button {
  height: 40px;
  width: 40px;
  padding-bottom: 0px;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label img, .mxt-toolbelt input.mxt-toolbelt-item.mxt-collapsed-label[type=file]::file-selector-button img, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-collapsed-label img, .mxt-toolbelt input.mxt-action-menu-item.mxt-collapsed-label[type=file]::file-selector-button img,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label img,
.mxt-action-menu input.mxt-toolbelt-item.mxt-collapsed-label[type=file]::file-selector-button img,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-collapsed-label img,
.mxt-action-menu input.mxt-action-menu-item.mxt-collapsed-label[type=file]::file-selector-button img {
  min-width: 100%;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label .mxt-btn-label, .mxt-toolbelt input.mxt-toolbelt-item.mxt-collapsed-label[type=file]::file-selector-button .mxt-btn-label, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-collapsed-label .mxt-btn-label, .mxt-toolbelt input.mxt-action-menu-item.mxt-collapsed-label[type=file]::file-selector-button .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-collapsed-label .mxt-btn-label,
.mxt-action-menu input.mxt-toolbelt-item.mxt-collapsed-label[type=file]::file-selector-button .mxt-btn-label,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-collapsed-label .mxt-btn-label,
.mxt-action-menu input.mxt-action-menu-item.mxt-collapsed-label[type=file]::file-selector-button .mxt-btn-label {
  height: 0px;
  flex: 0 0 0px;
  transition: all 0.3s ease;
  padding-bottom: 0px;
}
.mxt-toolbelt .mxt-btn.mxt-toolbelt-item.mxt-action-menu-item-empty, .mxt-toolbelt input.mxt-toolbelt-item.mxt-action-menu-item-empty[type=file]::file-selector-button, .mxt-toolbelt .mxt-btn.mxt-action-menu-item.mxt-action-menu-item-empty, .mxt-toolbelt input.mxt-action-menu-item.mxt-action-menu-item-empty[type=file]::file-selector-button,
.mxt-action-menu .mxt-btn.mxt-toolbelt-item.mxt-action-menu-item-empty,
.mxt-action-menu input.mxt-toolbelt-item.mxt-action-menu-item-empty[type=file]::file-selector-button,
.mxt-action-menu .mxt-btn.mxt-action-menu-item.mxt-action-menu-item-empty,
.mxt-action-menu input.mxt-action-menu-item.mxt-action-menu-item-empty[type=file]::file-selector-button {
  width: 130px;
  height: 40px;
}
.mxt-toolbelt.bottom-center .mxt-toolbelt-container,
.mxt-toolbelt.bottom-center .mxt-action-menu-container,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-center .mxt-toolbelt-container,
.mxt-action-menu.bottom-center .mxt-action-menu-container,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container {
  grid-template-rows: 1fr 1fr;
  grid-auto-flow: column;
  width: fit-content;
}
.mxt-toolbelt.bottom-center .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-toolbelt.bottom-center .mxt-action-menu-container.mxt-collapsed-label,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label,
.mxt-action-menu.bottom-center .mxt-toolbelt-container.mxt-collapsed-label,
.mxt-action-menu.bottom-center .mxt-action-menu-container.mxt-collapsed-label,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label {
  grid-template-rows: 1fr;
}
.mxt-toolbelt.bottom-center .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-center .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-center .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-center .mxt-action-menu-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-center .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container .mxt-action-menu-item {
  text-align: left;
}
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container {
  border-left: 1px solid #d2d2d2;
}
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container .mxt-btn.mxt-action-menu-item, .mxt-toolbelt.bottom-center .mxt-action-sub-menu-container input.mxt-action-menu-item[type=file]::file-selector-button,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container input.mxt-action-menu-item[type=file]::file-selector-button {
  min-width: 110px;
}
.mxt-toolbelt.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item, .mxt-toolbelt.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label input.mxt-action-menu-item[type=file]::file-selector-button,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-sub-menu-container.mxt-collapsed-label input.mxt-action-menu-item[type=file]::file-selector-button {
  min-width: unset;
}
.mxt-toolbelt.bottom-center .mxt-action-menu-container .mxt-btn.mxt-action-menu-item, .mxt-toolbelt.bottom-center .mxt-action-menu-container input.mxt-action-menu-item[type=file]::file-selector-button,
.mxt-action-menu.bottom-center .mxt-action-menu-container .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container input.mxt-action-menu-item[type=file]::file-selector-button {
  min-width: 135px;
}
.mxt-toolbelt.bottom-center .mxt-action-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item, .mxt-toolbelt.bottom-center .mxt-action-menu-container.mxt-collapsed-label input.mxt-action-menu-item[type=file]::file-selector-button,
.mxt-action-menu.bottom-center .mxt-action-menu-container.mxt-collapsed-label .mxt-btn.mxt-action-menu-item,
.mxt-action-menu.bottom-center .mxt-action-menu-container.mxt-collapsed-label input.mxt-action-menu-item[type=file]::file-selector-button {
  min-width: unset;
}
.mxt-toolbelt.top-right, .mxt-toolbelt.bottom-right,
.mxt-action-menu.top-right,
.mxt-action-menu.bottom-right {
  height: auto;
  justify-content: center;
}
.mxt-toolbelt.top-right .mxt-toolbelt-container,
.mxt-toolbelt.top-right .mxt-action-menu-container,
.mxt-toolbelt.top-right .mxt-action-sub-menu-container, .mxt-toolbelt.bottom-right .mxt-toolbelt-container,
.mxt-toolbelt.bottom-right .mxt-action-menu-container,
.mxt-toolbelt.bottom-right .mxt-action-sub-menu-container,
.mxt-action-menu.top-right .mxt-toolbelt-container,
.mxt-action-menu.top-right .mxt-action-menu-container,
.mxt-action-menu.top-right .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-right .mxt-toolbelt-container,
.mxt-action-menu.bottom-right .mxt-action-menu-container,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container {
  grid-template-columns: 1fr;
}
.mxt-toolbelt.top-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.top-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.top-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.top-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-toolbelt.top-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.top-right .mxt-action-sub-menu-container .mxt-action-menu-item, .mxt-toolbelt.bottom-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-toolbelt.bottom-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.bottom-right .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu.top-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.top-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.top-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.top-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.top-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-action-menu.top-right .mxt-action-sub-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-right .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-right .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.bottom-right .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-right .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container .mxt-toolbelt-item,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container .mxt-action-menu-item {
  flex-flow: row-reverse;
  text-align: right;
}
.mxt-toolbelt.top-right .mxt-action-sub-menu, .mxt-toolbelt.bottom-right .mxt-action-sub-menu,
.mxt-action-menu.top-right .mxt-action-sub-menu,
.mxt-action-menu.bottom-right .mxt-action-sub-menu {
  flex-direction: column;
}
.mxt-toolbelt.top-right .mxt-action-sub-menu-container, .mxt-toolbelt.bottom-right .mxt-action-sub-menu-container,
.mxt-action-menu.top-right .mxt-action-sub-menu-container,
.mxt-action-menu.bottom-right .mxt-action-sub-menu-container {
  border-top: 1px solid #d2d2d2;
}
.mxt-toolbelt.top-right,
.mxt-action-menu.top-right {
  flex-flow: column-reverse;
}
.mxt-toolbelt.top-right .mxt-action-sub-menu,
.mxt-action-menu.top-right .mxt-action-sub-menu {
  min-width: 100%;
  min-height: calc(100% - 25px);
  top: 25px;
}
.mxt-toolbelt.bottom-right,
.mxt-action-menu.bottom-right {
  flex-flow: column;
}
.mxt-toolbelt.bottom-right .mxt-action-sub-menu,
.mxt-action-menu.bottom-right .mxt-action-sub-menu {
  min-width: 100%;
  min-height: calc(100% - 25px);
  top: 0;
}
.mxt-toolbelt.undocked .mxt-toolbelt-container,
.mxt-action-menu.undocked .mxt-toolbelt-container {
  width: 150px;
}
.mxt-toolbelt.undocked .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-toolbelt.undocked .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-toolbelt.undocked .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-toolbelt.undocked .mxt-action-menu-container .mxt-action-menu-item,
.mxt-action-menu.undocked .mxt-toolbelt-container .mxt-toolbelt-item,
.mxt-action-menu.undocked .mxt-toolbelt-container .mxt-action-menu-item,
.mxt-action-menu.undocked .mxt-action-menu-container .mxt-toolbelt-item,
.mxt-action-menu.undocked .mxt-action-menu-container .mxt-action-menu-item {
  text-align: left;
}
.mxt-toolbelt.undocked .mxt-action-sub-menu,
.mxt-action-menu.undocked .mxt-action-sub-menu {
  min-width: calc(100% - 25px);
  max-width: calc(100% - 25px);
  min-height: 100%;
}
.mxt-toolbelt.undocked .mxt-action-sub-menu-container,
.mxt-action-menu.undocked .mxt-action-sub-menu-container {
  border-left: 1px solid #d2d2d2;
  min-width: max-content;
}

.navigationButtonContainerBoxShadow {
  position: absolute;
  height: 100%;
  width: var(--mxt-toolbar-width);
  transition: all 0.3s ease;
  top: 0px;
  left: 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  z-index: 1050;
  pointer-events: none;
}

.navigationButtonContainer.hidden + .navigationButtonContainerBoxShadow,
.navigationButtonContainer.mxt-hidden + .navigationButtonContainerBoxShadow {
  display: none;
}

/** Toolbar */
.navigationButtonContainer {
  position: relative;
  height: 100%;
  flex: 0 0 var(--mxt-toolbar-width);
  transition: all 0.3s ease;
  overflow-x: hidden;
}
.navigationButtonContainer .navigationBarScrollButtonContainer {
  width: 100%;
  display: flex;
  justify-content: center;
  position: absolute;
  height: 60px;
  z-index: 1111;
  cursor: pointer;
}
.navigationButtonContainer .navigationBarScrollButtonContainer.navigationBarScrollDown {
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #e5e5e5 44%);
  bottom: 0px;
  align-items: flex-end;
}
.navigationButtonContainer .navigationBarScrollButtonContainer.navigationBarScrollUp {
  background-image: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #e5e5e5 44%);
  top: 0px;
  align-items: flex-start;
}
.navigationButtonContainer .navigationBarScrollButtonContainer .navigationBarScrollButton {
  border-radius: 50%;
  width: 24px;
  height: 24px;
  background: white;
  margin: 6px;
}

.navigationButtons {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: auto;
  flex: 0 0 100%;
  display: flex;
  flex-flow: column;
  z-index: 1001; /*1 more than navigation panel*/
  background: var(--mxt-toolbar-background-color);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  overflow-x: hidden;
  overflow-y: scroll;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* Internet Explorer 10+ */
}
.navigationButtons::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.navigationButtons .navigationBaseButton {
  height: var(--mxt-nav-menu-height);
  width: 160px;
  justify-content: flex-start;
}
.navigationButtons #navigationPanelButtons {
  display: block;
  flex-flow: column wrap;
}
.navigationButtons #navigationPanelButtons .navigationButtonWrapper .navigationButton {
  background: white;
}
.navigationButtons #navigationPanelLabelToggle {
  display: flex;
}
.navigationButtons #navigationQuickLinks {
  width: 100%;
  display: flex;
  flex-flow: column;
}
.navigationButtons #navigationQuickLinks .navigationBaseButton {
  width: 100%;
}

.navigation-labels-collapsed .navigationBaseButtonLabel.mxt-btn-label {
  white-space: nowrap;
}

.navigationButtonWrapper {
  position: relative;
  width: auto;
}
.navigation-labels-collapsed .navigationButtonWrapper {
  overflow: hidden;
}
.navigationButtonWrapper.navigationButtonToolbarTip {
  padding: 20px;
}
.navigationButtonWrapper.navigationButtonToolbarTip a {
  cursor: pointer;
}
.navigation-labels-collapsed .navigationButtonWrapper.navigationButtonToolbarTip {
  display: none;
}
.navigationButtonWrapper.navigationButtonToolbarHeader {
  font: var(--mxt-font-body-bold);
  height: 30px;
  color: var(--mxt-font-color);
}
.navigation-labels-collapsed .navigationButtonWrapper.navigationButtonToolbarHeader {
  display: none;
}
.navigationButtonWrapper.navigationButtonToolbarHeader span {
  line-height: 29px;
  padding-left: 15px;
}

.navigationPanelButtons {
  flex: 1;
}

.navigationQuickLinkPrimary {
  background-image: var(--primary-right-gradient) !important;
}

.navigationBaseButtonImg {
  width: 50px;
  flex: 0 0 50px;
}

.navigationBaseButtonLabel {
  text-align: left;
}

.navigationButtonFlag {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  width: 5px;
  display: none;
}
.navigationButtonFlag.navigationButtonFlagCurrent {
  background: var(--mxt-client-primary);
  display: block;
}

/** Nav Control */
.mxt-nav-control-button-group {
  display: flex;
  margin-left: 10px;
  box-shadow: var(--mxt-nav-control-drop-shadow);
  border-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-btn.mxt-nav-control-button, .mxt-nav-control-button-group input.mxt-nav-control-button[type=file]::file-selector-button {
  border-radius: 0px;
  box-shadow: none;
}
.mxt-nav-control-button-group .mxt-nav-control-button {
  border-radius: 0px;
  box-shadow: none;
}
.mxt-nav-control-button-group .mxt-nav-control-button:first-child {
  border-top-left-radius: var(--mxt-corner-roundness);
  border-bottom-left-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-nav-control-button:last-child {
  border-top-right-radius: var(--mxt-corner-roundness);
  border-bottom-right-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-nav-control-button.force-first {
  border-top-left-radius: var(--mxt-corner-roundness);
  border-bottom-left-radius: var(--mxt-corner-roundness);
}
.mxt-nav-control-button-group .mxt-nav-control-button.force-last {
  border-top-right-radius: var(--mxt-corner-roundness);
  border-bottom-right-radius: var(--mxt-corner-roundness);
}

.mxt-nav-control-button {
  box-shadow: var(--mxt-nav-control-drop-shadow);
  color: var(--mxt-nav-control-font-color);
  background: var(--mxt-nav-control-background-color);
  border: var(--mxt-nav-control-border-thickness) solid var(--mxt-nav-control-border-color);
}
.mxt-nav-control-button.mxt-nav-disabled {
  box-shadow: none;
  background: #e5e5e5;
  color: var(--mxt-button-disabled-font-color);
  cursor: not-allowed;
}
.mxt-nav-control-button.mxt-nav-control-button-primary {
  color: var(--mxt-nav-control-primary-font-color);
  background: var(--mxt-nav-control-primary-background-color);
  justify-content: space-between;
  width: var(--mxt-nav-control-button-primary-width);
  padding-left: 10px;
  overflow: hidden;
}
.mxt-nav-control-button.mxt-nav-control-button-primary.mxt-nav-disabled {
  background: #e5e5e5;
}
.mxt-nav-control-button.mxt-nav-control-button-primary .mxt-btn-container {
  width: 145px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.navigationButtonBreak {
  border-top: 1px solid var(--mxt-toolbar-divider-color);
}

.navigationQuickLinkBreak {
  border-top: 1px solid var(--mxt-toolbar-cta-divider-color);
}

.navigationQuickLinkBreak:last-child {
  display: none;
}

.navigationBaseButtonBreak {
  width: 100%;
  left: 0px;
  position: relative;
  display: flex;
}

.mxtMainMenuButtons .mxt-btn-disabled {
  cursor: not-allowed !important;
}
.mxtMainMenuButtons .mxt-btn-disabled * {
  opacity: 0.5;
}

body.mxt-room-planner-phone .mxt-action-menu {
  display: none;
}

.mxt-form-control, input[type=file] {
  display: block;
  width: 100%;
  line-height: 1.42857143;
  border: var(--mxt-form-control-border);
  border-radius: var(--mxt-corner-roundness);
  box-shadow: var(--mxt-form-control-box-shadow);
  height: var(--mxt-form-control-height);
}

.mxt-form-group {
  margin-bottom: 15px;
}

.mxt {
  font-synthesis: none;
}

@keyframes mxt-fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes mxt-fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
/*animations*/
@keyframes mxt-pop {
  0% {
    transform: scale(0);
  }
  80% {
    transform: scale(1.25);
  }
  100% {
    transform: scale(1);
  }
}
.mxt-animated {
  animation-duration: 0.25s;
  animation-fill-mode: both;
}

.mxt-animated-pause {
  animation-play-state: paused;
}

.mxt-animate-pop {
  animation-duration: 0.3s;
  animation-name: mxt-pop;
  animation-iteration-count: 1;
}

.mxt-animate-shrink {
  transform: scale(0);
}

.mxt-fadeOut {
  animation-name: mxt-fadeOut;
  pointer-events: none;
}

.mxt-fadeIn {
  animation-name: mxt-fadeIn;
}

.mxt-full-modal-screen {
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  margin: 0px auto;
  overflow: auto;
  z-index: 1;
}

.mxt-checkbox {
  display: flex;
  align-items: center;
}
.mxt-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.mxt-checkbox input:checked + .mxt-checkbox-checkmark {
  background-position: left center;
  background-color: var(--mxt-checkbox-checked-color);
  border: none;
}
.mxt-checkbox .mxt-checkbox-checkmark {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCAyNCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5hZGR0b2NhcnQtY2hlY2s8L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE3LjQxLDYuNjlhMSwxLDAsMCwwLTEuMzYuMzZMMTEuMzksMTUsNy42OCwxMi4yN2ExLDEsMCwwLDAtMS4zOS4yMSwxLDEsMCwwLDAsLjIxLDEuNGw0LjYsMy4zNy4wNiwwLDAsMCwuMTMuMDUuMDksMGEuOTIuOTIsMCwwLDAsLjI4LjA1LDEsMSwwLDAsMCwuNDEtLjFsLjA1LDBhMSwxLDAsMCwwLC4zMi0uMjZsMCwwLDAsMCwwLS4wNiw1LjIxLTguODlBMSwxLDAsMCwwLDE3LjQxLDYuNjlaIi8+PC9zdmc+);
  background-position: right center;
  background-size: auto 100%;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  cursor: pointer;
  border-radius: var(--mxt-corner-roundness);
  border: var(--mxt-checkbox-border);
}

/**
    * Mxt switch should be in format
    * <div class="mxt-switch-container">
        <p class='mxt-switch-label'>Off</p>
        <label class="mxt-switch">
            <input type="checkbox" checked>
            <span class="mxt-slider"></span>
        </label>
        <p class='mxt-switch-label'>On</p>
    </div>
    */
.mxt-switch-container {
  display: flex;
}

.mxt-switch-container.mxt-switch-disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.mxt-switch-label {
  line-height: 34px;
  padding: 0px 5px;
  user-select: none;
  color: var(--mxt-font-color);
}

.mxt-switch {
  position: relative;
  display: inline-block;
  width: 70px;
  height: 34px;
}

.mxt-switch input {
  display: none;
}

.mxt-switch input:checked + .mxt-slider {
  background: #4cd964;
}

.mxt-switch-container.mxt-switch-disabled .mxt-switch {
  pointer-events: none;
}

.mxt-switch .mxt-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e2e2e2;
  border-radius: 34px;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.mxt-switch .mxt-slider:before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  right: 38px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
  box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.2);
}

.mxt-switch input:checked + .mxt-slider:before {
  -webkit-transform: translateX(36px);
  -ms-transform: translateX(36px);
  transform: translateX(36px);
}

.mxt-switch-container.mxt-switch-container-small-toggle {
  flex-grow: 1;
  align-items: center;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch {
  width: 40px;
  height: 20px;
  margin-bottom: unset;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider {
  background: var(--toggle-blue);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch input:checked + .mxt-slider::before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider {
  border-radius: 16px;
}
.mxt-switch-container.mxt-switch-container-small-toggle .mxt-switch .mxt-slider::before {
  width: 16px;
  height: 16px;
  inset: 2px;
}

.mxt-font-header-lg {
  font: var(--mxt-font-header-lg);
}

.mxt-font-header {
  font: var(--mxt-font-header);
}

.mxt-font-subheader {
  font: var(--mxt-font-subheader);
}

.mxt-font-body-lg {
  font: var(--mxt-font-body-lg);
}

.mxt-font-body-lg-bold {
  font: var(--mxt-font-body-lg-bold);
}

.mxt-font-body {
  font: var(--mxt-font-body);
}

.mxt-font-body-bold {
  font: var(--mxt-font-body-bold);
}

.mxt-font-body-sm {
  font: var(--mxt-font-body-sm);
}

.mxt-hover-over-image {
  position: absolute;
  z-index: 99;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  display: none;
  justify-content: center;
  align-items: center;
}
.mxt-hover-over-image.mxt-hover-over-image-manual-trigger {
  display: flex;
}

.mxt-bounce-container {
  padding: 2px;
}

.mxt-bounce-container:hover .mxt-bounce {
  top: -2px;
}

.mxt-bounce {
  position: relative;
  transition: 0.2s top ease;
  top: 0px;
}

.mxt-fraction {
  display: inline-block;
  /** cannot use system font, not nearly enough space to stack*/
  font-size: 7px;
  padding: 0 0.2em;
  text-align: center;
  vertical-align: middle;
}

.mxt-fraction:before {
  border-bottom: 1px solid #666;
  content: attr(top);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-fraction:after {
  content: attr(bottom);
  display: block;
  line-height: 1.6em;
  padding: 0 0.2em;
}

.mxt-hidden {
  display: none !important;
}

.mxt-visibility-hidden {
  visibility: hidden;
}

.mxt-rotate-180 {
  transform: rotate(180deg);
}

/* renderer WebGL Canvas */
.mxt-canvas {
  width: 100%;
  height: 100%;
  cursor: inherit;
}

.mxt-sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

.mxt-download-options-popover .mxt-popover-content {
  margin: 0;
}

.mxt-portrait .mxt-configurator-root .mxt-download-options-popover.top {
  transform: translateY(80px);
}
.mxt-portrait .mxt-configurator-root .mxt-download-options-popover.top .mxt-menu-bottom-arrow {
  top: -25px;
}
.mxt-portrait .mxt-configurator-root .mxt-download-options-popover.top .mxt-menu-bottom-arrow .mxt-modal-arrow-inner {
  top: 100%;
}

:root {
  --mxt-viewer-container-height: 50%;
  --mxt-viewer-container-min-width: 360px;
  --mxt-picker-container-height: calc(100% - var(--mxt-viewer-container-height));
  --mxt-picker-width: 400px;
  --mxt-background-color-dark: rgb(0, 0, 0);
  --mxt-modal-background-color: rgba(0, 0, 0, 0.3);
  --mxt-border: 1px solid #3D3D3D;
  --mxt-configurator-virtual-assistant-button-background: white;
  --mxt-filter-badge-font-color: var(--mxt-cta-button-font-color);
  --mxt-filter-badge-background-color: var(--mxt-client-primary);
}

body {
  margin: 0;
}

.mxt-container {
  --mxt-virtual-assistant-font: Mulish;
  --mxt-virtual-assistant-placeholder-color: #aaaaaa;
  /** some custom options for unit config to resolve some differences betwen how we use it in unit config vs room planner*/
}
.mxt-container .hidden {
  display: none !important;
}
.mxt-container .mxt-modal-background.mxt-full-modal-screen {
  background: var(--mxt-modal-background-color);
}
.mxt-container .mxt-blocked-option {
  position: absolute;
  z-index: 99;
  width: 30px;
  height: 30px;
  right: 7px;
  top: 7px;
  border-radius: 15px;
  background: white;
  color: var(--mxt-text-color-dark);
}
.mxt-container .mxt-blocked-option img {
  width: 36px;
  height: 36px;
  transform: translate(-3px, -3px);
  max-width: none;
  max-height: none;
}
.mxt-container *:focus {
  outline-style: none;
}
.mxt-container.document-tabbing *:focus {
  outline: auto 2px Highlight;
  outline: auto 5px -webkit-focus-ring-color;
}
.mxt-container * {
  box-sizing: border-box;
}
.mxt-container .mxt-dropdown-option-text p {
  margin: 0px;
}
.mxt-container input {
  font: var(--mxt-font-body);
}
.mxt-container img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.mxt-container h1 {
  font: var(--mxt-font-header-lg);
  margin: 5px 0px;
}
.mxt-container h2 {
  font: var(--mxt-font-header);
}
.mxt-container h3 {
  font: var(--mxt-font-subheader);
}
.mxt-container button {
  font: var(--mxt-font-body-bold);
  /** any text within a button, like a span, etc */
}
.mxt-container button * {
  font: var(--mxt-font-body-bold);
}

.mxt-configurator-root {
  /** Take up the entire screen and dont scroll. Modals will get parented to this */
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  margin: 0px auto;
  overflow: hidden;
  display: flex;
  flex-flow: column;
  background: var(--mxt-background-color);
}
.mxt-configurator-root.mxt-landscape {
  flex-flow: row;
}
.mxt-configurator-root.mxt-landscape.mxt-mobile {
  --mxt-picker-width: 45%;
}
.mxt-configurator-root.mxt-portrait.mxt-mobile .mxt-spin-button-row {
  order: -1;
}
.mxt-configurator-root.mxt-device-ios {
  height: calc(100% - 20px);
}

@keyframes loading-bar {
  0% {
    transform: translateX(90%);
    width: 0;
  }
  50% {
    transform: translateX(100%);
    width: 100%;
    opacity: 1;
  }
  71% {
    opacity: 0;
    transform: translateX(100%);
  }
  72% {
    transform: translateX(-100%);
    opacity: 0;
  }
  73% {
    transform: translateX(-100%);
    opacity: 1;
  }
  100% {
    transform: translateX(100%);
  }
}
.mxt-hidden {
  display: none !important;
  /* Needed to override more specific selectors */
}

.mxt-modal-container *:focus-visible {
  outline: Highlight auto 1px;
}

.mxt-full-modal-screen.hidden {
  display: none !important;
}

select.mxt-form-control {
  padding-block: 1px;
  padding-inline: 2px;
  box-sizing: content-box;
}

input[type=file] {
  height: 50px;
  align-content: center;
  padding: 5px;
}
input[type=file]::file-selector-button {
  display: inline-block;
}
/*!************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/modules/configurator.scss ***!
  \************************************************************************************************************************************************************************************************************************************/
.mxt-popover:not(.mxt-about-popover) .mxt-popover-content {
  padding: 15px;
  width: 100%;
  height: 100%;
}

.mxt-section-tooltip-popover-header {
  font: var(--mxt-font-body-bold);
  color: var(--mxt-text-color);
}

.mxt-section-tooltip-popover-help {
  font: var(--mxt-font-body-bold);
  text-decoration: underline;
  cursor: pointer;
  text-transform: uppercase;
  color: var(--mxt-text-color);
}

.mxt-landscape.mxt-mobile .mxt-unavailable-modal .mxt-modal-div {
  width: 440px;
}

.mxt-unavailable-modal .mxt-modal-div {
  width: 350px;
  max-width: 100%;
  padding: 30px;
}
.mxt-unavailable-modal .closeButton {
  top: 23px;
  right: 30px;
  box-shadow: none;
  border: 2px solid black;
  border-radius: 2px;
}
.mxt-unavailable-modal .closeButton .closeIcon {
  width: 64px;
  height: 64px;
}
.mxt-unavailable-modal p {
  font: var(--mxt-font-body);
  font-weight: bold;
  font-size: 14px;
  line-height: 21px;
}
.mxt-unavailable-modal h3 {
  font: var(--mxt-font-header);
  margin-top: 0;
  margin-bottom: 29px;
}
.mxt-unavailable-modal-confirm {
  font: var(--mxt-font-body-lg);
  background: var(--mxt-client-primary);
  color: var(--mxt-text-color-inverse);
  border: none;
  padding: 10px 16px 12px;
  margin-top: 16px;
  cursor: pointer;
}

.mxt-filter-collapse {
  position: relative;
  display: flex;
  justify-content: space-between;
}
.mxt-filter-collapse .collapse-label {
  display: flex;
  justify-content: space-between;
  padding: 15px 0;
  padding-right: 20px;
}
.mxt-filter-collapse .collapse-label .collapse-name {
  color: var(--mxt-text-color);
}
.mxt-filter-collapse .collapse-btn {
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  cursor: pointer;
  width: 20px;
  height: 20px;
}
.mxt-filter-collapse .collapse-btn.active:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid black;
  border-top: 0;
}
.mxt-filter-collapse .collapse-btn:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 5px;
  width: 0;
  height: 0;
  transform: translateY(-50%);
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid black;
  border-bottom: 0;
}

.mxt-toaster {
  bottom: 0;
}
.mxt-toaster-content #mxt-share-modal {
  padding: unset;
  margin: auto;
}
.mxt-toaster-content #mxt-share-modal .mxt-share-modal-button {
  display: none !important;
}
.mxt-toaster-content .mxt-modal-div {
  background: unset;
  box-shadow: unset;
  max-width: unset;
  max-height: unset;
}
.mxt-toaster-content .mxt-modal-div .closeButton {
  display: none !important;
}
.mxt-toaster-content h5.mxt-dropdown-proxy-header {
  font: var(--mxt-font-body-bold);
  margin: 0px;
}
.mxt-toaster-content .mxt-dropdown-options {
  padding: unset;
  max-height: unset !important;
  overflow: unset !important;
}
/*!*****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/help-me-decide.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************/
#mxt-help-me-decide-popover-content {
  font: var(--mxt-font-header);
  display: flex;
  flex-direction: column;
  width: 75%;
  max-width: 940px;
  padding: 0px;
  line-height: 30px;
  color: var(--mxt-text-color-dark);
  box-sizing: border-box;
  overflow: auto;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  font-size: 16px;
  align-items: center;
  padding-top: 15px;
  position: sticky;
  top: 0;
  left: 0;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-header .mxt-help-me-decide-header-label-group {
  display: flex;
  width: 100%;
  gap: 10px;
  padding-left: 20px;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-header .mxt-help-me-decide-header-label {
  font-size: 16px;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs {
  display: flex;
  flex-direction: row;
  overflow-x: auto;
  overflow-y: auto;
  padding: 15px;
  justify-content: flex-start;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs.fixed-columns .mxt-help-me-decide-thumb {
  max-width: 195px;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb {
  display: flex;
  flex-direction: column;
  align-content: center;
  line-height: 23px;
  width: 100%;
  min-width: 195px;
  padding: 0 10px;
  box-sizing: border-box;
  flex-grow: 0;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb:first-child {
  padding-left: 0;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb:last-child {
  padding-right: 0;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .product-properties {
  margin: 0;
  line-height: 18px;
  padding: 15px 0 15px 20px;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper {
  width: 100%;
  padding: 2px;
  box-sizing: border-box;
  flex: 0 0 175px;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper.current {
  box-shadow: inset 0 0 0 2px var(--mxt-client-primary);
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image {
  position: relative;
  flex: 1;
  /** in a flex container, default doesn't allow item to be smaller than the content */
  min-width: 0;
  min-height: 0;
  height: 100%;
  align-items: center;
  justify-content: start;
  /** combo swatches need to be full width*/
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxt-combo-swatch {
  overflow: hidden;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxt-combo-swatch img,
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxt-combo-swatch .mxt-color-img {
  width: 100%;
  height: 200%;
  max-height: 200%;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxt-combo-swatch + .product-image {
  overflow: hidden;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxt-combo-swatch + .product-image img,
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxt-combo-swatch + .product-image .mxt-color-img {
  width: 100%;
  height: 200%;
  max-height: 200%;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image img {
  width: auto;
  height: 100%;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image .mxt-color-img {
  width: 100%;
  height: 100%;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .mxt-image-wrapper .product-image.mxtButtonEmulator {
  cursor: pointer;
}
#mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb .product-name {
  font: var(--mxt-font-body-lg-bold);
}
#mxt-help-me-decide-popover-content .mxt-image-wrapper {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  width: 140px;
  height: 140px;
  /** in a flex container, needs height specified as part of flex*/
  flex: 0 0 140px;
}
#mxt-help-me-decide-popover-content .product-image {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}
#mxt-help-me-decide-popover-content .product-price {
  position: absolute;
  right: 0;
  height: 22px;
  border-radius: var(--mxt-corner-roundness);
  width: 70px;
  margin-top: 5px;
  margin-left: auto;
  margin-right: 5px;
  background-color: white;
  color: var(--mxt-text-color-dark);
  padding-left: 10px;
  padding-right: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
#mxt-help-me-decide-popover-content .product-price.product-info--selected {
  color: var(--mxt-text-color-inverse);
  background-color: var(--mxt-background-color-dark);
}
#mxt-help-me-decide-popover-content .product-name {
  margin-top: 15px;
}
#mxt-help-me-decide-popover-content .apply-button {
  color: var(--mxt-client-primary);
  border-radius: var(--mxt-corner-roundness);
  border-width: 2px;
  border-style: solid;
  border-color: var(--mxt-client-primary);
  padding: 10px 15px;
  margin-top: auto;
  max-width: 100px;
  text-align: center;
  cursor: pointer;
  margin-left: auto;
  margin-right: auto;
  text-overflow: ellipsis;
  overflow: hidden;
  min-height: 40px;
}
#mxt-help-me-decide-popover-content .apply-button:hover, #mxt-help-me-decide-popover-content .apply-button:focus {
  background-color: var(--mxt-client-primary);
  color: var(--mxt-text-color-inverse);
}
#mxt-help-me-decide-popover-content .product-detail {
  font: var(--mxt-font-body);
}

.mxt-portrait #mxt-help-me-decide-popover-content {
  width: 90%;
  margin: 0 auto;
  height: 100%;
}
.mxt-portrait #mxt-help-me-decide-popover-content .mxt-help-me-decide-thumbs .mxt-help-me-decide-thumb {
  min-width: 180px;
}
/*!************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/mxt-toast.scss ***!
  \************************************************************************************************************************************************************************************************************************************/
.mxt-toast {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  height: 100%;
  width: 100%;
  background-color: var(--mxt-modal-background-color);
  transition: opacity 0.5s ease-out;
  z-index: 4000;
}
.mxt-toast #mxt-help-me-decide-popover-content {
  width: 90%;
  margin: 0 auto;
  height: 100%;
}
.mxt-toast-content {
  height: calc(50% - 10px);
  width: calc(100% - 20px);
  position: absolute;
  left: 10px;
  background: white;
  color: var(--mxt-text-color-dark);
  border-radius: 4px;
  bottom: -100%;
  transition: bottom 0.5s ease-out;
}
.mxt-toast--open {
  opacity: 1;
}
.mxt-toast--open .mxt-toast-content {
  bottom: 10px;
}
.mxt-toast-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 44px;
  height: 44px;
  z-index: 1;
  background: transparent;
  border: none;
  padding: 0;
}

.mxt-landscape.mxt-mobile .mxt-toast .mxt-toast-content {
  height: 95%;
}
/*!*************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/mxtfilter.scss ***!
  \*************************************************************************************************************************************************************************************************************************/
.mxt-search-filter {
  display: flex;
  gap: 10px;
  margin-bottom: 5px;
}
.mxt-search-filter .designProcessSearchDiv {
  flex: 1;
}

.mxt-filter-grid {
  border-top: 1px solid #ddd;
  display: flex;
  flex-direction: column;
}
.mxt-filter-grid.fullscreen {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--mxt-background-color);
  z-index: 500;
}
.mxt-filter-grid .mxt-filter-header {
  display: flex;
  gap: 0.5rem;
  flex: 0;
  padding: 10px 0;
}
.mxt-filter-grid .mxt-filter-header .mxt-back-button {
  align-self: center;
  height: 30px;
  min-width: 30px;
}
.mxt-filter-grid .mxt-filter-header .mxt-filter-header-text {
  font: var(--mxt-font-header);
  margin: 2px 0;
  flex: 1;
}
.mxt-filter-grid .mxt-filter-content {
  flex: 1;
}
.mxt-filter-grid .mxt-filter-footer {
  flex: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: center;
  padding: 0 10px;
}
.mxt-filter-grid .mxt-dropdown-container .mxt-filter-clear-btn {
  width: 100%;
  flex: 1;
  margin-right: 5px;
  margin-left: auto;
  justify-content: flex-end;
  padding-right: 15px;
}
.mxt-filter-grid .mxt-filter-clear-btn {
  display: flex;
  color: #666;
  cursor: pointer;
}
.mxt-filter-grid .designProcessFilters {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.mxt-filter-grid .designProcessFilters .mxt-filter-container[data-is-collapsed=false] .mxt-filter-collapse .collapse-btn:after {
  transform: rotate(180deg);
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container {
  display: flex;
  width: auto !important;
  margin: 5px 0px;
  padding-right: 5px;
  position: static;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown {
  flex: 1;
  position: static;
  width: auto !important;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  min-width: 100px;
  margin-right: 5px;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-options {
  overflow: auto;
  max-height: 350px;
  position: absolute;
  left: 0px;
  width: 85%;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.3921568627);
  border: solid thin #c4c4c4;
  border-radius: 5px;
  padding: 15px 1px 15px 15px;
  background: white;
  color: var(--mxt-text-color-dark);
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-options.mxt-custom-dropdown-options,
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-options.mxt-tag-dropdown-options {
  padding: 5px 15px;
  max-height: 250px;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options {
  overflow-x: hidden;
  overflow-y: auto;
  left: 0%;
  position: absolute;
  width: 85%;
  max-height: 350px;
  background: white;
  color: var(--mxt-text-color-dark);
  padding: 5px;
  border: solid thin #cbcbcb;
  border-radius: 5px;
}

.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown,
.mxt-toaster .mxt-toaster-content {
  /* a.k.a default checkbox */
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-options,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options {
  justify-content: left;
  background: white;
  color: var(--mxt-text-color-dark);
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container .mxt-dropdown .mxt-dropdown-options .mxt-dropdown-option,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options .mxt-dropdown-option {
  margin: 5px;
}

.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-custom-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-custom-dropdown-options,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-custom-dropdown-options {
  display: flex;
  flex-wrap: wrap;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-custom-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-custom-dropdown-options .mxt-option,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-custom-dropdown-options .mxt-option {
  display: flex;
  border-radius: 5px;
  border: solid thin #cbcbcb;
  padding: 5px 10px;
  flex-direction: row;
  align-items: center;
  align-content: center;
  justify-content: flex-start;
  cursor: pointer;
  width: auto;
  margin: 5px 3px;
  height: 32px;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-custom-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-custom-dropdown-options .mxt-option.mxt-option-disabled,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-custom-dropdown-options .mxt-option.mxt-option-disabled {
  pointer-events: none;
  opacity: 0.5;
  color: var(--mxt-text-color-inverse);
  background-color: var(--mxt-button-disabled-font-color);
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-custom-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-custom-dropdown-options .mxt-option.mxt-selected,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-custom-dropdown-options .mxt-option.mxt-selected {
  color: var(--mxt-text-color-inverse);
  background-color: var(--mxt-background-color-dark);
}

.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-tag-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-tag-dropdown-options,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-tag-dropdown-options {
  display: flex;
  flex-wrap: wrap;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-tag-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-tag-dropdown-options .mxt-option,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-tag-dropdown-options .mxt-option {
  display: flex;
  border-radius: 5px;
  border: solid thin #cbcbcb;
  padding: 5px 10px;
  flex-direction: row;
  align-items: center;
  align-content: center;
  justify-content: flex-start;
  cursor: pointer;
  width: auto;
  margin: 5px 3px;
  height: 32px;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-tag-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-tag-dropdown-options .mxt-option.mxt-option-disabled,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-tag-dropdown-options .mxt-option.mxt-option-disabled {
  pointer-events: none;
  opacity: 0.5;
  color: var(--mxt-text-color-inverse);
  background-color: var(--mxt-button-disabled-font-color);
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-tag-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-tag-dropdown-options .mxt-option.mxt-selected,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-tag-dropdown-options .mxt-option.mxt-selected {
  color: var(--mxt-text-color-inverse);
  background-color: var(--mxt-background-color-dark);
}

.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options {
  display: grid;
  grid-template-columns: 50% 50%;
  flex-wrap: wrap;
  justify-content: center;
  justify-items: center;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-content: center;
  justify-content: flex-start;
  cursor: pointer;
  width: 100%;
  height: 32px;
  margin: 5px 2px;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option .mxt-selector,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option .mxt-selector {
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin-right: 5px;
  padding: 2px;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option .mxt-selector .mxt-dot,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option .mxt-selector .mxt-dot {
  border: solid thin #e3e3e3;
  border-radius: 50%;
  width: 100%;
  height: 100%;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option label,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option label {
  color: inherit;
  word-break: normal;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option.mxt-option-disabled,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option.mxt-option-disabled {
  pointer-events: none;
  opacity: 0.5;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option.mxt-selected .mxt-selector,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option.mxt-selected .mxt-selector {
  border-radius: 50%;
  border-style: solid;
  border-width: thin;
  border-color: #000000;
}
.mxt-filter-grid .designProcessFilters .mxt-dropdown-container.mxt-dot-dropdown .mxt-dropdown .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option.mxt-selected label,
.mxt-toaster .mxt-toaster-content .mxt-dropdown-options.mxt-dot-dropdown-options .mxt-option.mxt-selected label {
  color: auto;
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/mxtdropdown.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* Style the checkmark/indicator */
.mxt-custom-checkbox-container .mxt-custom-checkmark:after {
  border-color: var(--mxt-client-primary);
}

input:checked ~ .mxt-custom-checkmark {
  border-color: var(--mxt-client-primary);
}

.mxt-dropdown-option.mxt-option-disabled {
  pointer-events: none;
  opacity: 0.5;
}
/*!**********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/options.scss ***!
  \**********************************************************************************************************************************************************************************************************************************/
:root {
  --mxt-placeholder-background-color: #eaeaea;
  --mxt-price-background--color: #eee;
}

.mxt-landscape.mxt-mobile .mxt-configurator-options {
  /** on certain phones on landscape, the top 10 pixels are reserved for dragging down and click events dont register*/
  margin-top: 10px;
}

.mxt-configurator-options {
  display: flex;
  flex-flow: column;
  height: 100%;
  padding: 0px var(--mxt-picker-horizontal-padding);
  overflow: auto;
}
.mxt-configurator-options .options-scroll {
  padding: 8px 1px 0;
  flex: 1;
  overflow: auto;
  display: flex;
  flex-flow: column;
}
.mxt-configurator-options .mxt-back-button {
  align-self: flex-start;
  padding: 0px;
  display: flex;
  justify-content: flex-start;
}
.mxt-configurator-options .mxt-back-button span {
  font: var(--mxt-font-body-lg-bold);
}
.mxt-configurator-options .mxt-question-mark {
  width: 25px;
  height: 25px;
  margin-right: 10px;
}
.mxt-configurator-options .designProcessSearchDiv {
  position: relative;
  display: flex;
}
.mxt-configurator-options .designProcessSearchDiv .designProcessSearchIcon {
  position: absolute;
  left: 8px;
  top: 5px;
  height: 30px;
}
.mxt-configurator-options .designProcessSearchDiv .designProcessSearch {
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  border-radius: var(--mxt-corner-roundness);
  width: 100%;
  height: 40px;
  border: none;
  padding-left: 40px;
  min-width: 120px;
}
.mxt-configurator-options .grid-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}
.mxt-configurator-options .grid-content.grid-content--grid-layout {
  grid-template-columns: repeat(10, 1fr);
}
.mxt-configurator-options .grid-content .mxt-blocked-text-option {
  position: relative !important;
  overflow: visible !important;
}
.mxt-configurator-options .grid-content .mxt-blocked-text-option .mxt-blocked-icon {
  position: absolute;
  top: -10px;
  right: -10px;
}
.mxt-configurator-options .grid-content .product-content > .mxt-filter-group {
  width: 100%;
}
.mxt-configurator-options .grid-content .product-content > .mxt-filter-group .grid-content {
  border-top: 0;
}
.mxt-configurator-options .icon-content {
  display: flex;
  justify-items: flex-start;
  align-items: start;
  flex-wrap: wrap;
}
.mxt-configurator-options .icon-content .labeled-image-option {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.mxt-configurator-options .icon-content .labeled-image-option .mxt-image-wrapper {
  height: 80px;
  width: 80px;
  position: relative;
}
.mxt-configurator-options .icon-content .product-option {
  border: 2px solid transparent;
  cursor: pointer;
  width: 84px;
}
.mxt-configurator-options .icon-content .product-option.current {
  border-color: var(--mxt-client-primary);
}
.mxt-configurator-options .icon-content .product-option-info {
  position: absolute;
  z-index: 99;
  width: 44px;
  height: 44px;
  right: 0;
  top: 0;
}
.mxt-configurator-options .icon-content .product-option-info-icon {
  background: white;
  border-radius: 15px;
  width: 30px;
  height: 30px;
  transform: translate(7px, 7px);
}
.mxt-configurator-options .icon-content .product-option-info-icon img {
  width: 46px;
  height: 46px;
  max-width: none;
  max-height: none;
  transform: translate(-8px, -8px);
}
.mxt-configurator-options .icon-content .product-info--name {
  text-align: center;
  text-overflow: ellipsis;
  overflow: hidden;
  -webkit-line-clamp: 3;
}
.mxt-configurator-options .icon-content .product-info--price {
  text-align: center;
}
.mxt-configurator-options .tag-content {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  justify-items: center;
}
.mxt-configurator-options .tag-content .labeled-tag-option {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.mxt-configurator-options .tag-content .product-info--name {
  text-align: center;
}
.mxt-configurator-options .tag-content .product-info--price {
  text-align: center;
}
.mxt-configurator-options .product-option-traditional {
  height: 70px;
  overflow: hidden;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.mxt-configurator-options .product-option-traditional.current {
  border: 2px solid var(--mxt-client-primary);
}
.mxt-configurator-options .product-option-traditional.product-pricing .product-info {
  flex: 1;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.mxt-configurator-options .product-option-traditional.product-pricing .product-info--name {
  height: unset;
  width: unset;
  margin-bottom: 4px;
  font: var(--mxt-font-body-lg-bold);
  line-height: 16px;
}
.mxt-configurator-options .product-option-traditional.product-pricing .product-info--price {
  height: unset;
  width: unset;
}
.mxt-configurator-options .content-pagination {
  font: var(--mxt-font-body-lg-bold);
  height: 53px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 10px;
}
.mxt-configurator-options .content-pagination .pagination-text {
  padding: 0px 5px;
}
.mxt-configurator-options .content-pagination .pagination-btn {
  display: contents;
  cursor: pointer;
}
.mxt-configurator-options .content-pagination .pagination-btn:disabled {
  pointer-events: none;
}
.mxt-configurator-options .content-pagination .pagination-btn:disabled .pagination-img {
  opacity: 0.3;
}
.mxt-configurator-options .mxt-filtersort-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mxt-configurator-options .mxt-filter-group .grid-content {
  border-top: 1px solid #d8d8d8;
  padding-top: 10px;
}
.mxt-configurator-options .mxt-sort-btn-container {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}
.mxt-configurator-options .mxt-sort-btn {
  cursor: pointer;
  position: relative;
  padding: 0 5px;
  text-transform: capitalize;
  text-align: right;
}
.mxt-configurator-options .mxt-sort-btn .mxt-sort-popover {
  position: absolute;
  top: -13px !important;
  right: -8px;
  left: auto !important;
  border-radius: 0;
  width: 200px;
  box-shadow: none;
  border: 3px solid rgb(235, 235, 235);
}
.mxt-configurator-options .mxt-sort-btn .mxt-sort-popover .mxt-popover-content {
  cursor: default;
  padding: 10px;
}
.mxt-configurator-options .mxt-sort-btn .mxt-sort-popover .mxt-modal-arrow-outer {
  display: none;
}
.mxt-configurator-options .grid-content.filter-group-grid-content .mxt-filter-group-container {
  display: flex;
  width: 100%;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 2px solid #ddd;
}
.mxt-configurator-options .grid-content.filter-group-grid-content .mxt-filter-group-container:last-child {
  border-bottom: 0;
}
.mxt-configurator-options .grid-content.filter-group-grid-content .mxt-filter-group-container .mxt-filter-group {
  display: flex;
  width: 100%;
  flex-flow: row wrap;
  gap: 5px;
}
.mxt-configurator-options .grid-content.filter-group-grid-content .mxt-filter-group-container .mxt-filter-group .mxt-filter-group-header {
  font-size: 14px;
  font-weight: bold;
  width: 100%;
  padding-bottom: 10px;
}
.mxt-configurator-options .mxt-hideshowfilters-button {
  display: flex;
  align-items: center;
  width: auto;
  cursor: pointer;
}
.mxt-configurator-options .mxt-hideshowfilters-button span {
  color: #666666;
}
.mxt-configurator-options .mxt-hideshowfilters-button .mxt-filter-badge {
  position: absolute;
  top: 0px;
  right: 0px;
  display: flex;
  font-size: 10px;
  justify-content: center;
  align-items: center;
  padding: 0px 3px;
  border-radius: 20px;
  text-align: center;
  color: var(--mxt-filter-badge-font-color);
  background-color: var(--mxt-filter-badge-background-color);
}
.mxt-configurator-options .icon-content .product-option.product-option-traditional {
  border: none;
}
.mxt-configurator-options .product-option-traditional,
.mxt-configurator-options .product-option-grid {
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
.mxt-configurator-options .product-option-traditional.current,
.mxt-configurator-options .product-option-grid.current {
  border: 2px solid var(--mxt-client-primary);
}
.mxt-configurator-options .product-option-traditional-simple-text,
.mxt-configurator-options .product-option-grid-simple-text {
  height: auto;
  border: none;
  flex-basis: calc(100% - 10px);
}
@media (min-width: 375px) {
  .mxt-configurator-options .product-option-traditional-simple-text,
  .mxt-configurator-options .product-option-grid-simple-text {
    flex-basis: calc(50% - 7px);
  }
}
@media (min-width: 992px) {
  .mxt-configurator-options .product-option-traditional-simple-text,
  .mxt-configurator-options .product-option-grid-simple-text {
    flex-basis: calc(33.33% - 7px);
  }
}
.mxt-configurator-options .product-option-traditional-simple-text .simple-text-option,
.mxt-configurator-options .product-option-grid-simple-text .simple-text-option {
  padding: 0;
  width: 100%;
}
.mxt-configurator-options .product-option-traditional-simple-text .simple-text-option .product-info,
.mxt-configurator-options .product-option-grid-simple-text .simple-text-option .product-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.mxt-configurator-options .product-option-traditional-simple-text .simple-text-option .product-info--name,
.mxt-configurator-options .product-option-grid-simple-text .simple-text-option .product-info--name {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  margin-bottom: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 5px;
  font: unset;
}
.mxt-configurator-options .product-option-traditional-simple-text .simple-text-option .product-info--name-truncated,
.mxt-configurator-options .product-option-grid-simple-text .simple-text-option .product-info--name-truncated {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.mxt-configurator-options .product-option-traditional-simple-text .simple-text-option .product-info--price,
.mxt-configurator-options .product-option-grid-simple-text .simple-text-option .product-info--price {
  display: flex;
  width: auto;
  height: auto;
  padding: 2px 4px;
  border: 1px solid #ddd;
  border-radius: 10px;
  background-color: var(--mxt-price-background--color);
  text-align: left;
}
.mxt-configurator-options .product-option-traditional-simple-text .simple-text-option .product-info--price:empty,
.mxt-configurator-options .product-option-grid-simple-text .simple-text-option .product-info--price:empty {
  display: none;
}
.mxt-configurator-options .product-option-traditional-simple-text.current,
.mxt-configurator-options .product-option-grid-simple-text.current {
  border: none;
}
.mxt-configurator-options .product-option-traditional-simple-text.current .simple-text-option .product-info--name,
.mxt-configurator-options .product-option-grid-simple-text.current .simple-text-option .product-info--name {
  border-color: var(--mxt-client-primary);
  background-color: var(--mxt-client-primary);
  color: var(--mxt-text-color-inverse);
}
.mxt-configurator-options .product-details-popover {
  border-radius: 0px;
}
.mxt-configurator-options .product-details-popover .mxt-popover-content {
  overflow: auto;
}
.mxt-configurator-options .product-details-popover .product-detail:not(:last-child) {
  margin-bottom: 8px;
}
.mxt-configurator-options .mxt-option-btn {
  color: var(--mxt-text-color);
  background-color: transparent;
  padding: 0;
}
.mxt-configurator-options .mxt-option-btn * {
  font: var(--mxt-font-body);
}

.mxt-toaster.mxt-sort-toaster .mxt-toaster-main .mxt-toaster-close {
  position: relative;
}

.mxt-desktop .mxt-configurator-options {
  padding: 0px;
  margin-top: 0px;
}

.mxt-help-me-decide {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  margin-top: 20px;
  margin-bottom: 20px;
}
.mxt-help-me-decide .mxt-help-me-decide-span {
  font: var(--mxt-font-body-bold);
  text-decoration: underline;
  text-transform: uppercase;
}

.mxt-sort-btn .mxt-sort-popover .mxt-sort-options,
.mxt-toaster .mxt-toaster-content .mxt-sort-options {
  display: block;
  width: 100%;
}
.mxt-sort-btn .mxt-sort-popover .mxt-sort-options.selection-active > ul li .mxt-sort-options-btn,
.mxt-toaster .mxt-toaster-content .mxt-sort-options.selection-active > ul li .mxt-sort-options-btn {
  padding-right: 20px;
}
.mxt-sort-btn .mxt-sort-popover .mxt-sort-options.selection-active > ul li .mxt-sort-options-btn.selected,
.mxt-toaster .mxt-toaster-content .mxt-sort-options.selection-active > ul li .mxt-sort-options-btn.selected {
  color: var(--toggle-blue);
}
.mxt-sort-btn .mxt-sort-popover .mxt-sort-options .mxt-sort-options-header,
.mxt-toaster .mxt-toaster-content .mxt-sort-options .mxt-sort-options-header {
  display: block;
  text-align: right;
  padding-bottom: 10px;
  font-weight: normal;
}
.mxt-sort-btn .mxt-sort-popover .mxt-sort-options > ul,
.mxt-toaster .mxt-toaster-content .mxt-sort-options > ul {
  padding: 0;
  margin: 0;
  text-align: right;
}
.mxt-sort-btn .mxt-sort-popover .mxt-sort-options > ul li,
.mxt-toaster .mxt-toaster-content .mxt-sort-options > ul li {
  display: block;
  padding: 5px 0;
  font-weight: normal;
  color: var(--mxt-text-color);
}
.mxt-sort-btn .mxt-sort-popover .mxt-sort-options > ul li .mxt-sort-options-btn,
.mxt-toaster .mxt-toaster-content .mxt-sort-options > ul li .mxt-sort-options-btn {
  cursor: pointer;
  position: relative;
}

.mxt-configurator-options .product-details-popover .mxt-product-details-popover-content .product-tooltip-header,
.mxt-toaster .mxt-toaster-content .mxt-product-details-popover-content .product-tooltip-header {
  font: var(--mxt-font-body-bold);
  margin-bottom: 10px;
}
.mxt-configurator-options .product-details-popover .mxt-product-details-popover-content .product-tooltip-body,
.mxt-toaster .mxt-toaster-content .mxt-product-details-popover-content .product-tooltip-body {
  font: var(--mxt-font-body);
}
/*!***********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/steps-options-common.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-browser:first-of-type, .mxt-configurator-options:first-of-type, .mxt-configurator-steps:first-of-type {
  margin-top: 2px;
}
.mxt-configurator-browser .mxt-image-wrapper .product-image, .mxt-configurator-options .mxt-image-wrapper .product-image, .mxt-configurator-steps .mxt-image-wrapper .product-image {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
.mxt-configurator-browser .mxt-image-wrapper .product-image.mxt-combo-swatch, .mxt-configurator-options .mxt-image-wrapper .product-image.mxt-combo-swatch, .mxt-configurator-steps .mxt-image-wrapper .product-image.mxt-combo-swatch {
  height: 50%;
}
.mxt-configurator-browser .mxt-image-wrapper .product-image2, .mxt-configurator-options .mxt-image-wrapper .product-image2, .mxt-configurator-steps .mxt-image-wrapper .product-image2 {
  height: 50%;
  width: 100%;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
.mxt-configurator-browser .mxt-combo-swatch, .mxt-configurator-options .mxt-combo-swatch, .mxt-configurator-steps .mxt-combo-swatch {
  height: 50%;
}
/*!********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/steps.scss ***!
  \********************************************************************************************************************************************************************************************************************************/
:root {
  --mxt-placeholder-background-color: #eaeaea;
  --mxt-price-background--color: #eee;
}

.mxt-mobile.mxt-portrait .mxt-configurator-browser .section .header .text .stepType,
.mxt-mobile.mxt-portrait .mxt-configurator-steps .section .header .text .stepType {
  min-width: unset;
}

.mxt-configurator-browser {
  margin-bottom: 6px;
}

.mxt-configurator-browser,
.mxt-configurator-steps {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.mxt-configurator-browser .section .header, .mxt-configurator-browser .section.section--itemSummary,
.mxt-configurator-steps .section .header,
.mxt-configurator-steps .section.section--itemSummary {
  padding: 10px var(--mxt-picker-horizontal-padding);
  min-height: 80px;
  height: fit-content;
}
.mxt-configurator-browser .section .header .text, .mxt-configurator-browser .section.section--itemSummary .text,
.mxt-configurator-steps .section .header .text,
.mxt-configurator-steps .section.section--itemSummary .text {
  font: var(--mxt-font-body-lg-bold);
}
.mxt-configurator-browser .section .header .text .current-text, .mxt-configurator-browser .section.section--itemSummary .text .current-text,
.mxt-configurator-steps .section .header .text .current-text,
.mxt-configurator-steps .section.section--itemSummary .text .current-text {
  text-align: left;
  font: var(--mxt-font-body);
}
.mxt-configurator-browser .section,
.mxt-configurator-steps .section {
  border-bottom: var(--mxt-border);
}
.mxt-configurator-browser .section:first-child,
.mxt-configurator-steps .section:first-child {
  border-top: var(--mxt-border);
}
.mxt-configurator-browser .section .sectionTooltip,
.mxt-configurator-steps .section .sectionTooltip {
  width: 25px;
  height: 25px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMzBweCIgaGVpZ2h0PSIzMHB4IiB2aWV3Qm94PSIwIDAgMzAgMzAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+SWNvbnMvTWlzYy9JY29ucy1NaXNjLUhlbHA8L3RpdGxlPgogICAgPGcgaWQ9Ikljb25zL01pc2MvSWNvbnMtTWlzYy1IZWxwIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8cGF0aCBkPSJNMjQsMTUgQzI0LDE5Ljk3MDcwMjkgMTkuOTcwNzAyOSwyNCAxNSwyNCBDMTAuMDI5Nzk4NCwyNCA2LDE5Ljk3MDcwMjkgNiwxNSBDNiwxMC4wMjkyOTcxIDEwLjAyOTc5ODQsNiAxNSw2IEMxOS45NzA3MDI5LDYgMjQsMTAuMDI5Mjk3MSAyNCwxNSBaIE0yMiwxNSBDMjIsMTEuMTMzODY2NiAxOC44NjYxMzM0LDggMTUsOCBDMTEuMTM0MTc3NSw4IDgsMTEuMTM0MDU2OSA4LDE1IEM4LDE4Ljg2NTk0MzEgMTEuMTM0MTc3NSwyMiAxNSwyMiBDMTguODY2MTMzNCwyMiAyMiwxOC44NjYxMzM0IDIyLDE1IFoiIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbD0iIzMzMzMzMyI+PC9wYXRoPgogICAgICAgIDx0ZXh0IGlkPSI/IiBmb250LWZhbWlseT0iSGVsdmV0aWNhTmV1ZS1Cb2xkLCBIZWx2ZXRpY2EgTmV1ZSIgZm9udC1zaXplPSIxMSIgZm9udC13ZWlnaHQ9ImJvbGQiIGZpbGw9IiMzMzMzMzMiPgogICAgICAgICAgICA8dHNwYW4geD0iMTIuMDUzMTExMSIgeT0iMTkiPj88L3RzcGFuPgogICAgICAgIDwvdGV4dD4KICAgIDwvZz4KPC9zdmc+);
  background-repeat: no-repeat;
  background-size: cover;
}
.mxt-configurator-browser .section .loading-image-placeholder,
.mxt-configurator-steps .section .loading-image-placeholder {
  margin-right: 5px;
  width: 120px;
  width: 70px;
  height: 70px;
  overflow: hidden;
}
.mxt-configurator-browser .section .loading-image-placeholder .product-image,
.mxt-configurator-steps .section .loading-image-placeholder .product-image {
  margin-right: 10px;
  max-width: 40%;
}
.mxt-configurator-browser .section .placeholder,
.mxt-configurator-steps .section .placeholder {
  background-color: var(--mxt-placeholder-background-color);
}
.mxt-configurator-browser .section .header,
.mxt-configurator-steps .section .header {
  display: flex;
  align-items: center;
  cursor: pointer;
  z-index: 1;
  top: 0;
  align-self: flex-start;
  gap: 15px;
}
.mxt-configurator-browser .section .header .mxt-image-wrapper,
.mxt-configurator-steps .section .header .mxt-image-wrapper {
  display: flex;
  flex: 0 0 60px;
  height: 60px;
  flex-flow: column;
}
.mxt-configurator-browser .section .header .text,
.mxt-configurator-steps .section .header .text {
  flex: 1;
  display: flex;
  flex-flow: column;
  align-items: flex-start;
  font: var(--mxt-font-body-lg-bold);
}
.mxt-configurator-browser .section .header .text .stepNumber,
.mxt-configurator-steps .section .header .text .stepNumber {
  display: flex;
  line-height: 32px;
  padding-right: 10px;
  text-align: left;
  align-items: center;
}
.mxt-configurator-browser .section .header .text .stepType,
.mxt-configurator-steps .section .header .text .stepType {
  display: flex;
  flex-grow: 1;
  text-align: left;
  align-items: center;
  min-width: 140px;
}
.mxt-configurator-browser .section .header .text .stepType .sectionTooltip-container,
.mxt-configurator-steps .section .header .text .stepType .sectionTooltip-container {
  display: inline-block;
  align-self: start;
}
.mxt-configurator-browser .section .header .text .loading-title-placeholder,
.mxt-configurator-steps .section .header .text .loading-title-placeholder {
  width: 160px;
  margin-bottom: 5px;
}
.mxt-configurator-browser .section .header .text .loading-subtitle-placeholder,
.mxt-configurator-steps .section .header .text .loading-subtitle-placeholder {
  width: 50px;
}
.mxt-configurator-browser .section .header .text .placeholder,
.mxt-configurator-steps .section .header .text .placeholder {
  height: 15px;
}
.mxt-configurator-browser .section .header .price,
.mxt-configurator-steps .section .header .price {
  font: var(--mxt-font-body-lg-bold);
  margin-right: 25px;
}
.mxt-configurator-browser .section .header .arrow,
.mxt-configurator-steps .section .header .arrow {
  flex: 0 0 20px;
  transform: rotate(180deg);
}
.mxt-configurator-browser .section.single-option .header,
.mxt-configurator-steps .section.single-option .header {
  cursor: unset;
}
.mxt-configurator-browser .section.single-option .arrow,
.mxt-configurator-steps .section.single-option .arrow {
  display: none;
}
.mxt-configurator-browser .options-section,
.mxt-configurator-steps .options-section {
  display: none;
}
.mxt-configurator-browser.mxt-multi-step .section .arrow,
.mxt-configurator-steps.mxt-multi-step .section .arrow {
  flex: 0 0 40px;
  transform: rotate(0);
}
.mxt-configurator-browser.mxt-multi-step .section .arrow img,
.mxt-configurator-steps.mxt-multi-step .section .arrow img {
  width: 40px;
  height: 40px;
}
.mxt-configurator-browser.mxt-multi-step .section.open .arrow,
.mxt-configurator-steps.mxt-multi-step .section.open .arrow {
  transform: rotate(180deg);
}
.mxt-configurator-browser.mxt-multi-step .options-section.open,
.mxt-configurator-steps.mxt-multi-step .options-section.open {
  display: block;
  margin-bottom: 10px;
}
.mxt-configurator-browser.mxt-multi-step .options-sticky,
.mxt-configurator-steps.mxt-multi-step .options-sticky {
  display: none;
}
.mxt-configurator-browser.mxt-multi-step .options-scroll,
.mxt-configurator-steps.mxt-multi-step .options-scroll {
  scrollbar-gutter: unset;
}
.mxt-configurator-browser.mxt-multi-step .mxt-filter-header,
.mxt-configurator-steps.mxt-multi-step .mxt-filter-header {
  display: none;
}
.mxt-configurator-browser.mxt-multi-step .mxt-filter-grid,
.mxt-configurator-steps.mxt-multi-step .mxt-filter-grid {
  border-top: none;
  border-bottom: 1px solid #ddd;
}

.mxt-desktop .mxt-configurator-browser,
.mxt-desktop .mxt-configurator-steps {
  gap: 6px;
}
.mxt-desktop .mxt-configurator-browser .section .header .text, .mxt-desktop .mxt-configurator-browser .section.section--itemSummary .text,
.mxt-desktop .mxt-configurator-steps .section .header .text,
.mxt-desktop .mxt-configurator-steps .section.section--itemSummary .text {
  font: var(--mxt-font-header);
}
.mxt-desktop .mxt-configurator-browser .section .header .text .current-text, .mxt-desktop .mxt-configurator-browser .section.section--itemSummary .text .current-text,
.mxt-desktop .mxt-configurator-steps .section .header .text .current-text,
.mxt-desktop .mxt-configurator-steps .section.section--itemSummary .text .current-text {
  font: var(--mxt-font-body-lg);
}
.mxt-desktop .mxt-configurator-browser .section,
.mxt-desktop .mxt-configurator-steps .section {
  border: none;
}
.mxt-desktop .mxt-configurator-browser .section .header,
.mxt-desktop .mxt-configurator-steps .section .header {
  border: var(--mxt-border);
}

.mxt-desktop.mxt-landscape .section .header, .mxt-desktop.mxt-landscape .section.section--itemSummary {
  padding: 10px 20px;
}
/*!***********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/modules/configuratorItemSection.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************/
.section--itemSummary {
  display: flex;
  width: 100%;
  padding: 10px var(--mxt-picker-horizontal-padding);
  border-top: var(--mxt-border);
  margin: 30px 0 !important;
  flex-flow: column nowrap;
  justify-content: center;
}
.section--itemSummary + .section {
  border-top: var(--mxt-border);
}
.section--itemSummary .item-label {
  display: flex;
  width: 100%;
}
.section--itemSummary .item-message {
  position: relative;
  width: 100%;
  font-size: 14px;
  border-radius: 4px;
  border: solid 1px #ebebeb;
  padding: 10px;
  padding-left: 40px;
}
.section--itemSummary .item-message .item-message-icon {
  height: 44px;
  width: 44px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.section--itemSummary .item-message .item-message-icon > img {
  width: 100%;
  height: auto;
  display: block;
}
.section--itemSummary .item-message .item-message-label {
  font-weight: bold;
}
/*!************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/configuratorStepGroup.scss ***!
  \************************************************************************************************************************************************************************************************************************************************/
.configurator-step-group-header {
  background-color: #fafafa;
  color: var(--mxt-text-color-dark);
  border: 1px solid rgb(235, 235, 235);
  border-bottom: none;
  font: 800 22px var(--mxt-font);
  font-weight: var(--mxt-font-weight-bold);
  margin: 0;
  padding: 27px 20px;
  cursor: pointer;
  position: relative;
  display: flex;
  justify-content: space-between;
}
.configurator-step-group-header p {
  margin: 0;
}
.configurator-step-group-header img {
  transform: rotate(180deg);
}
.configurator-step-group:last-child .configurator-step-group-header {
  border-bottom: 1px solid rgb(235, 235, 235);
}
.configurator-step-group-container {
  display: none;
}
.configurator-step-group.open .configurator-step-group-header {
  border-bottom: 1px solid rgb(235, 235, 235);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
}
.configurator-step-group.open .configurator-step-group-container {
  display: block;
}
.configurator-step-group.open img {
  transform: rotate(0deg);
}

.mxt-configurator-browser .configurator-step-group .section,
.mxt-configurator-steps .configurator-step-group .section {
  margin-top: 0;
}
/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/modules/config-selection.scss ***!
  \****************************************************************************************************************************************************************************************************************************************/
.mxt-config-picker {
  position: absolute;
  left: 5px;
  top: 45px;
  width: 200px;
  border-width: 1px;
  border-color: black;
  border-style: solid;
  z-index: 2000;
  background: white;
}
.mxt-config-picker .mxt-config-picker-toggle {
  background: black;
  color: white;
  font-size: 15px;
  cursor: pointer;
  width: 100%;
}
.mxt-config-picker .mxt-config-picker-scrollable {
  max-height: 308px;
  overflow-y: auto;
  display: flex;
  flex-flow: column;
  overflow: auto;
}
.mxt-config-picker .mxt-config-picker-scrollable.collapsed {
  max-height: 0px;
  overflow-y: hidden;
}
.mxt-config-picker .mxt-config-picker-cssvars .mxt-config-picker-var {
  margin-bottom: 10px;
}
.mxt-config-picker.mxt-config-picker-disabled {
  pointer-events: none;
  opacity: 0.5;
}
.mxt-config-picker .mxt-config-item {
  cursor: pointer;
  width: 100%;
}
/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/modalShare.scss ***!
  \*************************************************************************************************************************************************************************************************************************************/
#mxt-share-modal {
  padding: 20px;
  display: flex;
  flex-flow: column;
  align-items: center;
  box-sizing: border-box;
  overflow: auto;
}

#mxt-share-modal .mxt-share-modal-header,
.mxt-toaster .mxt-share-modal-header {
  width: 100%;
  font: var(--mxt-font-body-lg-bold);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--mxt-cta-button-border-color);
  margin-bottom: 20px;
}
#mxt-share-modal .mxt-share-modal-header .mxt-share-modal-button,
.mxt-toaster .mxt-share-modal-header .mxt-share-modal-button {
  cursor: pointer;
  display: flex;
}
#mxt-share-modal .mxt-share-modal-header .mxt-share-modal-header-label,
.mxt-toaster .mxt-share-modal-header .mxt-share-modal-header-label {
  font: var(--mxt-font-body-lg-bold);
}

#mxt-share-modal img.mxt-share-qr,
.mxt-toaster img.mxt-share-qr {
  height: 220px;
  width: 220px;
  image-rendering: pixelated;
}

.mxt-portrait .mxt-share-modal-background {
  top: 80px;
}
.mxt-portrait .mxt-share-modal-background #mxt-share-modal {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: none;
  border-radius: 0;
  align-items: flex-start;
  font-size: 18px;
}
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/ctas.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
.mxt-configurator-ctas {
  display: flex;
  box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2), 0px 0px 2px 1px rgba(0, 0, 0, 0.05);
}
.mxt-configurator-ctas .mxt-btn.mxt-btn-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.mxt-configurator-ctas .mxt-btn {
  height: var(--mxt-button-height);
}
.mxt-configurator-ctas .mxt-btn-icon-only {
  width: var(--mxt-button-height);
}
.mxt-configurator-ctas .mxt-cta-button {
  border-radius: 0px;
  margin-left: auto;
  box-shadow: none;
}

.mxt-landscape.mxt-desktop .mxt-configurator-picker .mxt-configurator-ctas {
  padding: 0px 0px;
  order: -1;
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/header.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
.mxt-configurator-header {
  background: var(--mxt-background-color);
}
.mxt-configurator-header .header-label {
  margin-top: 14px;
  margin-bottom: 5px;
  font: var(--mxt-font-subheader);
}

.mxt-desktop .mxt-configurator-header .header-label {
  margin-top: 25px;
  font: var(--mxt-font-header-lg);
}
/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/header-sku.scss ***!
  \*************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-header-sku {
  background: var(--mxt-background-color);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-height: 17px;
}
.mxt-configurator-header-sku .header-label {
  font: var(--mxt-font-body);
  margin-bottom: 5px;
}

.mxt-landscape .mxt-configurator-header-sku {
  min-height: 22px;
}

.mxt-desktop .mxt-configurator-header-sku .header-label {
  font: var(--mxt-font-body-lg);
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/modals.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
.mxt-modal-container.mxt-container {
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 10001;
  pointer-events: none;
  background-color: transparent;
}
.mxt-modal-container.mxt-container > * {
  pointer-events: all;
}
/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/picker-scrollable.scss ***!
  \********************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-scrollable {
  flex: 1;
  display: flex;
  flex-flow: column;
  overflow: auto;
  position: relative;
  scrollbar-gutter: stable;
  padding-left: var(--mxt-picker-horizontal-padding);
}

.mxt-portrait .mxt-configurator-scrollable {
  padding-left: 0;
}
/*!*******************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/picker-container.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************/
.mxt-portrait .mxt-configurator-picker {
  min-height: 300px;
  flex: 0 0 var(--mxt-picker-container-height);
  height: var(--mxt-picker-container-height);
}

.mxt-landscape .mxt-configurator-picker {
  flex: 0 0 var(--mxt-picker-width);
  max-width: calc(100% - var(--mxt-viewer-container-min-width));
  height: 100%;
  width: var(--mxt-picker-width);
}
.mxt-landscape.mxt-desktop .mxt-configurator-picker {
  --mxt-picker-horizontal-padding: 10px;
}
.mxt-landscape.mxt-desktop .mxt-configurator-picker > *:not(.mxt-configurator-scrollable) {
  padding: 0px var(--mxt-picker-horizontal-padding);
}

.mxt-configurator-picker {
  --mxt-picker-horizontal-padding: 20px;
  flex: 0 0 var(--mxt-picker-container-height);
  position: relative;
  z-index: 999;
  display: flex;
  flex-flow: column;
  width: 100%;
  height: 100%;
  background: var(--mxt-background-color);
}
.mxt-configurator-picker .mxt-header-label-component {
  padding: 0px var(--mxt-picker-horizontal-padding);
}
/*!**********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/pricing.scss ***!
  \**********************************************************************************************************************************************************************************************************************************/
.mxt-configurator-total-pricing {
  z-index: 1;
  position: sticky;
  top: 0;
  background: var(--mxt-background-color);
}
.mxt-configurator-total-pricing .header-label {
  font: var(--mxt-font-body-lg);
  color: var(--mxt-client-secondary);
  margin-bottom: 5px;
  margin-top: 10px;
}

.mxt-desktop .mxt-configurator-total-pricing .header-label {
  font: var(--mxt-font-header);
  font-weight: normal;
}
/*!************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/subheader.scss ***!
  \************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-subheader {
  background: var(--mxt-background-color);
}
.mxt-configurator-subheader .header-label {
  font: var(--mxt-font-body);
  margin-bottom: 5px;
}

.mxt-desktop .mxt-configurator-subheader .header-label {
  font: var(--mxt-font-body-lg);
}
/*!*******************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/viewer-container.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************/
.mxt-portrait .mxt-configurator-viewer {
  min-height: 300px;
  flex: 1 0 var(--mxt-viewer-container-height);
  border-bottom: var(--mxt-border);
}

.mxt-landscape .mxt-configurator-viewer {
  flex: 1 1 auto;
  min-width: var(--mxt-viewer-container-min-width);
  border: none;
}
.mxt-landscape .mxt-configurator-viewer.mxt-spins-fullscreen {
  /** make sure this is more important than the non landscape mxt-spins-fullscreen*/
  flex: 1 1 auto;
}

.mxt-configurator-viewer {
  position: relative;
  z-index: 1000;
  background: var(--mxt-background-color);
  height: 100%;
  width: 100%;
}
.mxt-configurator-viewer .mxt-about-button {
  position: absolute;
  bottom: var(--mxt-inset-button-padding);
  left: var(--mxt-inset-button-padding);
}
.mxt-configurator-viewer .mxt-spins-canvas-container .mxt-modal-background.mxt-full-modal-screen:has(.mxt-webar-desktop-modal) {
  height: 100vh;
}
/*!***************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/virtual-assistant-button.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-virtual-assistant-button.mxt-btn {
  width: var(--mxt-button-height);
  height: var(--mxt-button-height);
  background: var(--mxt-configurator-virtual-assistant-button-background);
  border-radius: 50%;
}
/*!*************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/virtual-assistant-chat.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-virtual-assistant-chat {
  max-height: 100%;
  height: 100%;
  padding: 0px;
  opacity: 0;
  transition: 0.5s ease opacity;
}

.mxt-virtual-assistant-open .mxt-configurator-virtual-assistant-chat {
  opacity: 1;
  padding: 28px 16px 16px 16px;
}
.mxt-virtual-assistant-open.mxt-virtual-assistant-messaging .mxt-va-prompt {
  display: none;
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-virtual-assistant/scss/global.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
:root {
  --mxt-virtual-assistant-font: Verdana;
  --mxt-virtual-assistant-header-color: #bd3a2e;
  --mxt-virtual-assistant-header-size: 15px;
  --mxt-virtual-assistant-header-weight: 700;
  --mxt-virtual-assistant-subheader-color: black;
  --mxt-virtual-assistant-subheader-size: 11px;
  --mxt-virtual-assistant-subheader-weight: 700;
  --mxt-virtual-assistant-prompt-color: black;
  --mxt-virtual-assistant-prompt-size: 11px;
  --mxt-virtual-assistant-prompt-weight: 700;
  --mxt-virtual-assistant-copyright-color: #d2d2d2;
  --mxt-virtual-assistant-copyright-size: 11px;
  --mxt-virtual-assistant-copyright-weight: 400;
  --mxt-virtual-assistant-button-color: white;
  --mxt-virtual-assistant-button-background: black;
  --mxt-virtual-assistant-button-disabled-color: white;
  --mxt-virtual-assistant-button-disabled-background: #d2d2d2;
  --mxt-virtual-assistant-button-border-radius: var(--mxt-virtual-assistant-button-height);
  --mxt-virtual-assistant-button-height: 33px;
  --mxt-virtual-assistant-button-width: 100%;
  --mxt-virtual-assistant-button-max-width: 300px;
  --mxt-virtual-assistant-message-name-size: 11px;
  --mxt-virtual-assistant-message-name-weight: 500;
  --mxt-virtual-assistant-message-text-size: 11px;
  --mxt-virtual-assistant-message-text-weight: 500;
  --mxt-virtual-assistant-user-text-color: black;
  --mxt-virtual-assistant-ai-text-color: black;
  --mxt-virtual-assistant-user-text-background: #f0f0f0;
  --mxt-virtual-assistant-ai-text-background: #d0d0d0;
  --mxt-virtual-assistant-rich-content-background: #ffffff;
  --mxt-virtual-assistant-rich-content-title-color: var(--mxt-virtual-assistant-header-color);
  --mxt-virtual-assistant-rich-content-title-size: 11px;
  --mxt-virtual-assistant-rich-content-title-weight: 700;
  --mxt-virtual-assistant-rich-content-subtitle-color: #666666;
  --mxt-virtual-assistant-rich-content-subtitle-size: 11px;
  --mxt-virtual-assistant-rich-content-subtitle-weight: 400;
  --mxt-virtual-assistant-user-name-color: #a5a5a5;
  --mxt-virtual-assistant-ai-name-color: #a5a5a5;
  --mxt-virtual-assistant-input-color: black;
  --mxt-virtual-assistant-input-size: 11px;
  --mxt-virtual-assistant-placeholder-color: #d2d2d2;
  --mxt-virtual-assistant-input-background: #f0f0f0;
  --mxt-virtual-assistant-border-radius: 10px;
}

.mxt-virtual-assistant {
  height: 100%;
  width: 100%;
  display: flex;
  flex-flow: column;
  font-family: var(--mxt-virtual-assistant-font);
}
.mxt-virtual-assistant .mxt-va-title {
  display: flex;
  gap: 10px;
  align-items: baseline;
  margin-bottom: 13px;
}
.mxt-virtual-assistant .mxt-va-title .mxt-va-header {
  color: var(--mxt-virtual-assistant-header-color);
  font-size: var(--mxt-virtual-assistant-header-size);
  font-weight: var(--mxt-virtual-assistant-header-weight);
}
.mxt-virtual-assistant .mxt-va-title .mxt-va-subheader {
  color: var(--mxt-virtual-assistant-subheader-color);
  font-size: var(--mxt-virtual-assistant-subheader-size);
  font-weight: var(--mxt-virtual-assistant-subheader-weight);
}
.mxt-virtual-assistant .mxt-va-prompt {
  color: var(--mxt-virtual-assistant-prompt-color);
  font-size: var(--mxt-virtual-assistant-prompt-size);
  font-weight: var(--mxt-virtual-assistant-prompt-weight);
  display: flex;
  flex-flow: column;
  align-items: baseline;
  margin-bottom: 12px;
}
.mxt-virtual-assistant .mxt-va-prompt p {
  margin: 0px;
}
.mxt-virtual-assistant .mxt-va-divider {
  margin: 0;
  border: none;
  border-top: 1px solid rgba(89, 90, 92, 0.2);
}
.mxt-virtual-assistant .mxt-va-input-container {
  margin-bottom: 10px;
}
.mxt-virtual-assistant .mxt-va-input-container textarea {
  width: 100%;
  background: var(--mxt-virtual-assistant-input-background);
  color: var(--mxt-virtual-assistant-input-color);
  border-radius: var(--mxt-virtual-assistant-border-radius);
  resize: none;
  border: none;
  padding: 7px 13px;
  box-sizing: border-box;
  font-size: var(--mxt-virtual-assistant-input-size);
  font-family: var(--mxt-virtual-assistant-font);
}
.mxt-virtual-assistant .mxt-va-input-container textarea[rows="1"], .mxt-virtual-assistant .mxt-va-input-container textarea[rows="2"] {
  overflow: hidden;
}
.mxt-virtual-assistant .mxt-va-input-container textarea::placeholder {
  color: var(--mxt-virtual-assistant-placeholder-color);
}
.mxt-virtual-assistant .mxt-va-input-send {
  display: flex;
  justify-content: flex-end;
}
.mxt-virtual-assistant .mxt-va-input-send button {
  cursor: pointer;
  width: var(--mxt-virtual-assistant-button-width);
  max-width: var(--mxt-virtual-assistant-button-max-width);
  height: var(--mxt-virtual-assistant-button-height);
  color: var(--mxt-virtual-assistant-button-color);
  background: var(--mxt-virtual-assistant-button-background);
  border-radius: var(--mxt-virtual-assistant-button-border-radius);
}
.mxt-virtual-assistant .mxt-va-input-send button:disabled {
  background: var(--mxt-virtual-assistant-button-disabled-background);
  color: var(--mxt-virtual-assistant-button-disabled-color);
}
.mxt-virtual-assistant .mxt-va-chat {
  margin-bottom: 20px;
  display: flex;
  flex: 1;
  flex-flow: column;
  overflow: auto;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message {
  width: fit-content;
  max-width: 80%;
  margin-bottom: 8px;
  overflow-wrap: anywhere;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message a {
  text-decoration: none;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message.mxt-va-user-message {
  align-self: flex-end;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message.mxt-va-ai-message {
  align-self: flex-start;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-name {
  font-size: var(--mxt-virtual-assistant-message-name-size);
  font-weight: var(--mxt-virtual-assistant-message-name-weight);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-name.mxt-va-user-name {
  text-align: right;
  color: var(--mxt-virtual-assistant-user-name-color);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-name.mxt-va-ai-name {
  text-align: left;
  color: var(--mxt-virtual-assistant-user-name-color);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble {
  padding: 7px 12px;
  box-sizing: border-box;
  font-size: var(--mxt-virtual-assistant-message-text-size);
  font-weight: var(--mxt-virtual-assistant-message-text-weight);
  text-align: left;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-user-bubble {
  border-radius: var(--mxt-virtual-assistant-border-radius) 0px var(--mxt-virtual-assistant-border-radius) var(--mxt-virtual-assistant-border-radius);
  background: var(--mxt-virtual-assistant-user-text-background);
  color: var(--mxt-virtual-assistant-user-text-color);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-ai-bubble {
  border-radius: 0px var(--mxt-virtual-assistant-border-radius) var(--mxt-virtual-assistant-border-radius) var(--mxt-virtual-assistant-border-radius);
  background: var(--mxt-virtual-assistant-ai-text-background);
  color: var(--mxt-virtual-assistant-ai-text-color);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-bubble-rich-content {
  background: var(--mxt-virtual-assistant-rich-content-background);
  color: var(--mxt-virtual-assistant-rich-content-title-color);
  box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.2), 0px 0px 2px 1px rgba(0, 0, 0, 0.05);
  display: flex;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-bubble-rich-content .mxt-va-rich-content-text {
  flex: 1;
  display: flex;
  flex-flow: column;
  gap: 5px;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-bubble-rich-content .mxt-va-rich-content-text p {
  margin: 0px;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-bubble-rich-content .mxt-va-rich-content-text .mxt-va-rich-content-title {
  color: var(--mxt-virtual-assistant-rich-content-title-color);
  font-size: var(mxt-virtual-assistant-rich-content-title-size);
  font-weight: var(mxt-virtual-assistant-rich-content-title-weight);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-bubble-rich-content .mxt-va-rich-content-text .mxt-va-rich-content-subtitle {
  display: none;
  color: var(--mxt-virtual-assistant-rich-content-subtitle-color);
  font-size: var(mxt-virtual-assistant-rich-content-subtitle-size);
  font-weight: var(mxt-virtual-assistant-rich-content-subtitle-weight);
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message .mxt-va-message-bubble.mxt-va-bubble-rich-content .mxt-va-link-icon {
  margin: 0 5px;
}
.mxt-virtual-assistant .mxt-va-chat .mxt-va-message.mxt-va-ai-error .mxt-va-message-bubble.mxt-va-ai-bubble {
  color: #b50000;
}
.mxt-virtual-assistant .mxt-va-copyright {
  color: var(--mxt-virtual-assistant-copyright-color);
  font-size: var(--mxt-virtual-assistant-copyright-size);
  font-weight: var(--mxt-virtual-assistant-copyright-weight);
  text-align: left;
}

.mxt-hidden {
  display: none !important;
}
/*!******************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/virtual-assistant-in-viewer.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-virtual-assistant-in-viewer {
  transition: 0.5s ease all;
  position: relative;
}
.mxt-configurator-virtual-assistant-in-viewer.mxt-container {
  background-color: transparent;
}
.mxt-configurator-virtual-assistant-in-viewer .mxt-configurator-virtual-assistant-chat {
  min-height: 0px;
  height: calc(100% - var(--mxt-button-height) - 5px);
  border-radius: 4px;
  background: white;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
}
.mxt-configurator-virtual-assistant-in-viewer.mxt-virtual-assistant-open {
  width: 280px;
  height: 300px;
  border-radius: 4px;
  max-height: 100%;
  max-width: 100%;
  z-index: 1;
}
.mxt-configurator-virtual-assistant-in-viewer.mxt-virtual-assistant-open.mxt-virtual-assistant-messaging {
  height: 500px;
}
.mxt-configurator-virtual-assistant-in-viewer.mxt-virtual-assistant-open.mxt-virtual-assistant-messaging .mxt-va-prompt {
  display: none;
}
.mxt-configurator-virtual-assistant-in-viewer .mxt-configurator-virtual-assistant-button {
  position: absolute;
  right: 0px;
  bottom: 0px;
}
/*!*************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-kongfigurator/scss/components/virtual-assistant-mobile-container.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************/
.mxt-configurator-virtual-assistant-mobile-toast.mxt-container {
  transition: 0.5s ease all;
  position: absolute;
  bottom: 0px;
  width: 100%;
  height: 0px;
  display: flex;
  flex-flow: column;
  min-height: 0px;
}
.mxt-configurator-virtual-assistant-mobile-toast.mxt-container.mxt-virtual-assistant-open {
  height: var(--mxt-picker-container-height);
  /** min is not always supported, so keep a lower value as a fallback, but if theres a min, use as much as we can*/
  min-height: 300px;
  min-height: min(300px, 100%);
  max-height: 100%;
}
.mxt-configurator-virtual-assistant-mobile-toast.mxt-container .mxt-configurator-virtual-assistant-button {
  position: absolute;
  right: 10px;
  top: 10px;
}
/*!*****************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./node_modules/@mxt/mxt-ui-utility/scss/grid.scss ***!
  \*****************************************************************************************************************************************************************************************************************/
.mxt-grid-container {
  position: absolute;
  width: 100%;
  display: flex;
  flex-flow: column;
}

.mxt-grid-container-paging {
  /*    height: 100%;*/
  overflow: auto;
  display: initial;
}

.mxt-grid-container-rigid.mxt-grid-container-paging {
  display: flex;
  overflow: hidden;
}

.mxt-grid-container-paging .mxt-grid {
  overflow-y: auto;
  overflow-x: hidden;
}

.mxt-grid {
  display: grid;
  justify-content: center;
}

.mxt-grid-pagination {
  flex: 0 0 36px;
  height: 36px; /*somewhat duplicative of flex height, but needed for stuff inside */
  text-align: center;
  margin-top: -5px;
  margin-bottom: 5px;
  display: flex;
  justify-content: center;
  container: pagination-info-container/inline-size;
}
.mxt-grid-pagination .mxt-grid-pagination-text {
  display: inline;
}

@container pagination-info-container (max-width: 250px) {
  .mxt-grid-pagination .mxt-grid-pagination-text {
    display: none;
  }
  .mxt-grid-pagination-text.mxt-grid-pagination-page-count {
    display: inline;
  }
}
p.mxt-grid-pagination-text.mxt-grid-pagination-page-count {
  flex-grow: 1;
}

p.mxt-grid-pagination-text {
  user-select: none;
  margin-bottom: 0px;
  font: var(--mxt-font-body-bold);
  line-height: 36px;
}

img.mxt-grid-pagination-arrow.mxt-grid-pagination-arrow-disabled {
  opacity: 0.3;
}

.mxt-grid-pagination-arrow:hover {
  opacity: 1;
}

.mxt-grid-pagination-arrow {
  position: relative;
  opacity: 0.6;
  transition: opacity 0.75s ease;
  cursor: pointer;
  border: 2px solid grey;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  background: white;
  transform: translateY(25%);
  margin: 0px 5px;
}

.mxt-grid-item {
  position: relative;
  text-align: center;
}

.mxt-grid-item-checkmark {
  position: absolute;
  z-index: 1;
  left: 3px;
  top: 3px;
  width: 25px;
  pointer-events: none;
}

.mxt-grid-item.mxt-grid-item-hover-grow {
  transform: scale(1);
  transition: all 0.5s ease;
  /* for items to look good when they grow, they require some white padding around the edges*/
  padding: 5px;
  background: white;
}

.mxt-grid-item.mxt-grid-item-hover-grow:hover {
  transform: scale(1.1);
  z-index: 1; /*ensures it shows over the item next to it in the grid*/
}

.mxt-grid-item-text-div {
  background: white;
  padding: 5px 0px;
  overflow: hidden;
  word-wrap: break-word;
  max-width: 100%;
  margin: 0 auto;
  background: linear-gradient(white 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), white 70%) 0 100%, radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background: linear-gradient(white 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), white 70%) 0 100%, radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background-repeat: no-repeat;
  background-color: white;
  background-size: 100% 15px, 100% 15px, 100% 5px, 100% 5px;
  background-attachment: local, local, scroll, scroll;
}
.mxt-grid-item-text-div .mxt-grid-item-text {
  font: var(--mxt-font-body);
  margin: 0px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.mxt-grid-item-content {
  display: flex;
  flex-flow: column;
  width: 100%;
  height: 100%;
}

/* This is used to handle two images in the same grid cell a.k.a. split images*/
.mxt-combo-swatch {
  height: 50%;
  /** if product-image is split, assume that it is just colors that we can "cover" and zoom in on them*/
  background-size: cover;
  background-position: top left;
}

.mxt-grid-item-bg-img {
  width: 100%;
  flex: 1;
  /* allows shrinking if necessary*/
  min-width: 0px;
  min-height: 0px;
}

.mxt-grid-item-bg-img-no-text {
  height: 100%;
}

/* this class is shared between content as background and the actual image item;
 used mostly so that other classes can find the item that represents the "image" in the grid, so keep a minimum of CSS in here*/
.mxt-grid-item-img {
  max-height: 100%;
  max-width: 100%;
}

.mxt-grid-item-rgba {
  border: 2px solid #cacaca;
}

/* separate class for hover, b/c only certain items hover; others have a hoverBox on them*/
.mxt-grid-item-hover {
  transition: all 0.2s ease-in-out;
}

.mxt-grid-item-hover:hover {
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.mxt-grid-item-popover {
  padding: 10px;
  text-align: center;
}

/**
 * Puts interior borders based on there being 2 columns
 * First put borders every other to form the middle border
 */
.mxt-grid .mxt-grid-interior-borders-2:nth-child(2n) {
  border-left: 2px solid #d1d1d1;
}

/**
 * Then put bottom borders on everything but the last
 */
.mxt-grid .mxt-grid-interior-borders-2:nth-last-child(n+3) {
  border-bottom: 2px solid #d1d1d1;
}

.mxt-grid-item-disabled-background {
  position: absolute;
  z-index: 10;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: rgba(216, 216, 216, 0.5);
  display: none;
  cursor: not-allowed;
}

.mxt-grid-item-disabled {
  pointer-events: none;
}

.mxt-grid-item-disabled .mxt-grid-item-disabled-background {
  display: block;
}

.mxt-grid-item-disabled.mxt-grid-item-hover:hover {
  box-shadow: none;
}

.mxt-blocked-option {
  position: absolute;
  z-index: 99;
  width: 30px;
  height: 30px;
  right: 0px;
  top: 0;
}

.mxt-unavailable-modal .mxt-modal-div {
  width: 300px;
  padding: 30px;
}
.mxt-unavailable-modal .closeButton {
  top: 23px;
  right: 30px;
  box-shadow: none;
  border: 2px solid black;
  border-radius: 2px;
}
.mxt-unavailable-modal .closeButton .closeIcon {
  width: 64px;
  height: 64px;
}
.mxt-unavailable-modal p {
  font: var(--mxt-font-body);
  font-weight: bold;
  font-size: 14px;
  line-height: 21px;
}
.mxt-unavailable-modal h3 {
  font: var(--mxt-font-header);
  margin-top: 0;
  margin-bottom: 29px;
}
.mxt-unavailable-modal-confirm {
  font: var(--mxt-font-body);
  background: var(--kong-background-color-active);
  color: var(--kong-text-color-hover);
  border-radius: 3px;
  padding: 10px 16px 12px;
  font-weight: bold;
  margin-top: 16px;
}

.mxt-unavailable-modal-confirm {
  font: var(--mxt-font-body);
  background: var(--kong-background-color-active);
  color: var(--kong-text-color-hover);
  border-radius: 3px;
  padding: 10px 16px 12px;
  font-weight: bold;
  margin-top: 16px;
}
/*!**************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/orderSwatchPlugin/index.scss ***!
  \**************************************************************************************************************************************************************************************************************/
.mxt-mobile .order-swatch-modal.mxt-modal-div {
  height: 100%;
  width: 100%;
  max-height: unset;
  max-width: unset;
  margin: unset;
  font-size: 0.9em;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .order-swatch-root {
  margin: unset;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .closeButton {
  top: 5px;
  right: 5px;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .zone-a {
  padding: 10px;
  flex-shrink: 0;
  gap: 5px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding-bottom: 0px;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .closeButton, .mxt-mobile .order-swatch-modal.mxt-modal-div .closeIcon {
  border: none !important;
  box-shadow: none !important;
  background-color: #ffffff;
  opacity: 1;
  border-radius: 20px;
  overflow: hidden;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .closeButton:hover, .mxt-mobile .order-swatch-modal.mxt-modal-div .closeIcon:hover {
  cursor: pointer;
  background: #cccccc;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .order-swatch-header {
  overflow: hidden;
  flex: 0 0 auto;
  height: min-content;
  min-height: fit-content;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .order-swatch-header .order-swatch-header-title {
  font-size: 1.5em;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .order-swatch-header .order-swatch-subheader {
  line-height: 1.5em;
  margin-top: unset;
  margin-bottom: 6px;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .order-swatch-footer .order-swatch-cart .swatch-count .swatch-count-text {
  font-size: 2em;
}
.mxt-mobile .order-swatch-modal.mxt-modal-div .order-swatch-footer .order-swatch-cart .order-swatch-btn.submit .submit-text {
  font-size: 1.5em;
}

.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container {
  height: 100%;
  width: 100%;
  padding: unset;
  margin: unset;
  max-height: unset;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .order-swatch-content {
  flex-flow: column;
  padding: 0px;
  min-height: 410px;
  min-width: 250px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .mxt-toaster {
  height: 100%;
  position: absolute;
  bottom: 0px;
  left: 0px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-a {
  flex-basis: fit-content;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-a .order-swatch-display-wrapper, .mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-a .order-swatch-chosen-wrapper {
  display: none;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b {
  gap: 10px;
  height: 100%;
  flex: 1 1 auto;
  padding: 10px 0px;
  padding-bottom: unset;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-steps {
  min-height: 70px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer {
  flex: 1 0 50%;
  flex-flow: column;
  overflow: hidden;
  min-height: 220px;
  border-top: 1px solid #cccccc;
  gap: unset;
  align-items: unset;
  max-height: 300px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-chosen {
  padding: 10px 0px;
  display: flex;
  overflow: auto;
  width: 100%;
  flex-wrap: wrap;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .display-text-container {
  padding: 0px 10px;
  margin: 10px 0px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-display-wrapper {
  flex: 0 0 80px;
  display: flex;
  overflow: hidden;
  height: 33%;
  border-top: 1px solid #cccccc;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-display-wrapper .order-swatch-display {
  padding: 0px;
  width: 100%;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-display-wrapper .order-swatch-display .display-img-container {
  flex: 0 0 25%;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-display-wrapper .order-swatch-display .display-text-container {
  flex: 1 1 auto;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-cart {
  flex: 0 0 25%;
  overflow: hidden;
  max-height: 45px;
  margin: 15px 0px 5px 0px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-cart .swatch-count {
  overflow: hidden;
  min-width: 90px;
  padding-top: 2px;
}
.mxt-mobile:not(.mxt-landscape) .order-swatch-modal.mxt-modal-div .order-swatch-container .zone-b .order-swatch-footer .order-swatch-cart .order-swatch-btn.submit {
  overflow: hidden;
  flex: 1 1 80%;
  margin-right: 15px;
}

.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content {
  padding: 5px;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-b, .mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-b {
  font-size: 0.9em;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-a {
  padding: 0px;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-a .order-swatch-display-wrapper {
  overflow: hidden;
  height: min-content;
  min-height: 60px;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-a .order-swatch-display-wrapper .order-swatch-display {
  height: 100%;
  padding-bottom: 2px;
  border-bottom: 1px solid #cccccc;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-a .order-swatch-display-wrapper .order-swatch-display .display-img-container {
  height: 100%;
  overflow: hidden;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-a .order-swatch-display-wrapper .order-swatch-display .display-text-container {
  height: fit-content;
}
.mxt-mobile.mxt-landscape .order-swatch-modal.mxt-modal-div .order-swatch-content .zone-a .order-swatch-chosen-wrapper {
  overflow: auto;
  flex: 1 1 auto;
  min-height: 60px;
}

.order-swatch-root {
  overflow: hidden;
  height: 100%;
}

.order-swatch-container {
  width: 100%;
  height: 100%;
  display: flex;
  flex-flow: column;
  overflow-x: auto;
}
.order-swatch-container .zone-a, .order-swatch-container .zone-b {
  height: 100%;
}
.order-swatch-container .order-swatch-content {
  height: 100%;
  display: flex;
  padding: 15px;
}
.order-swatch-container .order-swatch-content .zone-a {
  flex-basis: 45%;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  gap: 10px;
}
.order-swatch-container .order-swatch-content .zone-a .order-swatch-display-wrapper .display-img-container .display-img-wrapper img {
  height: auto;
}
.order-swatch-container .order-swatch-content .zone-b {
  padding: 10px;
  flex-basis: 55%;
  flex-shrink: 0;
  gap: 15px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.order-swatch-container .order-swatch-content .zone-b .order-swatch-steps {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  overflow: auto;
}
.order-swatch-container .order-swatch-content .zone-b .order-swatch-steps .order-swatch-step {
  display: flex;
  flex-flow: column;
  flex: 1;
  box-sizing: border-box;
  border-radius: 3px;
}
.order-swatch-container .order-swatch-content .zone-b .order-swatch-steps .order-swatch-step div.mxt-filter-grid {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  margin-bottom: 10px;
}
.order-swatch-container .order-swatch-content .zone-b .order-swatch-steps .order-swatch-step div.mxt-filter-grid > div.designProcessFilters {
  gap: unset;
}
.order-swatch-container .order-swatch-content .zone-b .order-swatch-steps .order-swatch-step .order-swatch-step-options {
  position: relative;
  overflow: hidden;
}
.order-swatch-container .order-swatch-content .zone-b .order-swatch-steps .order-swatch-step .order-swatch-step-options .mxt-grid {
  width: 100%;
}
.order-swatch-container .mxt-disabled {
  color: #cccccc;
}
.order-swatch-container .atc-disabled {
  opacity: 0.7;
  cursor: not-allowed;
  color: #cccccc;
}
.order-swatch-container .mxt-dropdown-container.mxt-custom-dropdown {
  height: auto !important;
}
.order-swatch-container .order-swatch-step .designProcessSearchDiv {
  position: relative;
  flex: 1;
  padding: 10px 5px;
  margin-bottom: 5px;
  display: flex;
}
.order-swatch-container .order-swatch-step .designProcessSearchDiv .designProcessSearchIcon {
  position: absolute;
  left: 15px;
}
.order-swatch-container .order-swatch-step .designProcessSearchDiv .designProcessSearch {
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2), 0 0 2px 1px rgba(0, 0, 0, 0.05);
  border-radius: 3px;
  width: 100%;
  height: 40px;
  border: none;
  padding-left: 40px;
  min-width: 120px;
}
.order-swatch-container .order-swatch-step .filter-menu {
  display: flex;
  align-items: center;
  gap: 20px;
}
.order-swatch-container .order-swatch-step .filter-menu .filter-menu-toggle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 50px;
}
.order-swatch-container .order-swatch-step .filter-menu .filter-menu-toggle:hover {
  cursor: pointer;
  background: #cccccc;
}
.order-swatch-container .order-swatch-step .filter-menu .filter-menu-toggle img {
  width: 20px;
  height: 20px;
  margin: 10px;
}
.order-swatch-container .order-swatch-btn:hover, .order-swatch-container .order-swatch-chosen-item-delete:hover {
  cursor: pointer;
  background: #cccccc;
}
.order-swatch-container .order-swatch-btn:not(.submit) {
  text-decoration: underline;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  padding: 10px;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item.disabled {
  cursor: not-allowed;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item.disabled div, .order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item.disabled img {
  cursor: not-allowed;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item {
  display: flex;
  flex-direction: column;
  flex: unset;
  cursor: pointer;
  min-width: 50px;
  width: 12%;
  border-radius: 3px;
  overflow: hidden;
  height: 100%;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item.selected {
  box-shadow: 0px 0px 0px 2px var(--mxt-client-primary);
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item .mxt-grid-item-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 3px;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item .mxt-grid-item-content:first-child {
  aspect-ratio: 1;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item .mxt-grid-item-img {
  height: 100%;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid > .mxt-grid-item .mxt-grid-item-text-div {
  max-height: 60px;
  flex: 1;
  align-content: center;
  padding: unset;
}
.order-swatch-container .order-swatch-step .order-swatch-step-options .mxt-grid-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 225px;
  max-width: 250px;
  width: 100%;
}
.order-swatch-container .order-swatch-header {
  border-bottom: 1px solid #cccccc;
  line-height: 1.2;
  text-align: left;
}
.order-swatch-container .order-swatch-step .order-swatch-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0px 10px;
}
.order-swatch-container .order-swatch-step .order-swatch-section-header, .order-swatch-container .order-swatch-step .order-swatch-section-body {
  border: 1px solid #cccccc;
}
.order-swatch-container .order-swatch-step .order-swatch-section-header {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  text-align: left;
  padding-left: 10px;
}
.order-swatch-container .order-swatch-step .order-swatch-section-body {
  padding: 10px;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top: none;
  margin-bottom: 10px;
}
.order-swatch-container .order-swatch-footer {
  display: flex;
  justify-content: end;
  gap: 40px;
  flex-basis: 65px;
  flex-shrink: 0;
  align-items: center;
}
.order-swatch-container .order-swatch-footer .order-swatch-cart {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  width: 100%;
}
.order-swatch-container .order-swatch-footer .order-swatch-cart .swatch-count {
  display: flex;
  flex-direction: column;
  text-align: end;
  flex: 0 0;
}
.order-swatch-container .order-swatch-footer .order-swatch-cart .swatch-count .swatch-count-text {
  font-size: 2.5em;
}
.order-swatch-container .order-swatch-footer .order-swatch-cart .swatch-count .swatch-count-subtext {
  flex: 0 1;
  font-size: 0.8em;
}
.order-swatch-container .order-swatch-footer .order-swatch-cart .order-swatch-btn.submit {
  display: flex;
  flex: 1 1 80%;
  justify-content: center;
  align-items: center;
  background-color: #242424;
  color: #ffffff;
  border-radius: 3px;
  overflow: hidden;
  max-width: 445px;
}
.order-swatch-container .order-swatch-footer .order-swatch-cart .order-swatch-btn.submit .submit-text {
  font-size: 1.5em;
}
.order-swatch-container .order-swatch-chosen-wrapper {
  display: flex;
  flex: 1 1 60%;
  overflow: auto;
  overflow-x: hidden;
}
.order-swatch-container .order-swatch-chosen-wrapper .order-swatch-chosen {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  overflow: auto;
  overflow-x: hidden;
  height: fit-content;
}
.order-swatch-container .order-swatch-chosen-wrapper .order-swatch-chosen .order-swatch-chosen-item {
  display: flex;
  padding: 5px;
  border: 1px solid #cccccc;
  border-radius: 200px;
  align-items: center;
  gap: 10px;
  overflow: hidden;
  height: 20%;
  min-height: 20px;
  max-height: 40px;
}
.order-swatch-container .order-swatch-chosen-wrapper .order-swatch-chosen .order-swatch-chosen-item .order-swatch-chosen-item-delete {
  font-weight: bolder;
  font-size: 11px;
  width: 25px;
  border-radius: 20px;
}
.order-swatch-container .order-swatch-chosen-wrapper .order-swatch-chosen .order-swatch-chosen-item .order-swatch-chosen-item-text {
  flex: 1;
  text-align: left;
  line-height: 1;
}
.order-swatch-container .order-swatch-chosen-wrapper .order-swatch-chosen .order-swatch-chosen-item .order-swatch-chosen-item-img {
  width: 15px;
  border-radius: 20px;
  overflow: hidden;
}
.order-swatch-container .order-swatch-display {
  display: flex;
  max-height: fit-content;
  flex-shrink: 1;
  overflow: hidden;
  width: 100%;
}
.order-swatch-container .order-swatch-display.bordered {
  padding-bottom: 10px;
  border-bottom: 1px solid #cccccc;
}
.order-swatch-container .order-swatch-display .display-img-container {
  flex: 1;
}
.order-swatch-container .order-swatch-display .display-img-container .display-img-wrapper {
  height: 100%;
  border-radius: 3px;
  overflow: hidden;
}
.order-swatch-container .order-swatch-display .display-img-container .display-img-wrapper img {
  height: fit-content;
  max-height: unset;
}
.order-swatch-container .order-swatch-display .display-text-container {
  flex: 0 1 65%;
  text-align: left;
  padding: 0px 5px;
  overflow: auto;
  line-height: 1.2;
}
.order-swatch-container .order-swatch-display .display-text-container .display-sku:not(:empty)::before {
  content: "#";
}
.order-swatch-container .order-swatch-display .displau-img {
  width: 100%;
}

.order-swatch-modal {
  display: flex;
  flex-flow: column;
  width: 90vw;
  height: 90vh;
}
.order-swatch-modal .mxt-default-modal-header-container {
  display: none;
}
.order-swatch-modal .mxt-alert-content {
  height: 100%;
  width: 100%;
  overflow: hidden;
  padding: 5px;
  margin-bottom: unset;
}
.order-swatch-modal .mxt-alert-content .mxt-alert-text {
  height: 100%;
  width: 100%;
  display: flex;
  overflow: hidden;
}
/*!*********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/AddToWishlistRegistryComponent.scss ***!
  \*********************************************************************************************************************************************************************************************************************/
.mxt-configurator-picker button.mxt-add-to-wishlist-registry {
  align-self: flex-end;
  background: transparent;
  border: 0 none;
  cursor: pointer;
  padding: 10px 5px 10px 0;
  position: relative;
  margin-right: 10px;
  width: auto;
}
.mxt-configurator-picker button.mxt-add-to-wishlist-registry span {
  font-size: 16px;
  font-weight: normal;
  padding-right: 5px;
}
.mxt-configurator-picker button.mxt-add-to-wishlist-registry:hover {
  text-decoration: underline;
}
.mxt-configurator-picker button.mxt-add-to-wishlist-registry::after {
  content: " ";
  display: inline-block;
  vertical-align: baseline;
  z-index: 1;
  height: 0;
  line-height: 0;
  color: currentColor;
  border-style: solid;
  border-width: 4px;
  border-right-width: 0;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-right-color: transparent;
}
/*!***************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/OrderASwatch.scss ***!
  \***************************************************************************************************************************************************************************************************/
.mxt-configurator-picker .mxt-order-a-swatch-container {
  border-top: 1px solid rgb(204, 204, 204);
  flex-direction: column;
  display: flex;
  gap: 16px;
  padding: 15px var(--mxt-picker-horizontal-padding) 28px;
}
.mxt-configurator-picker .mxt-order-a-swatch-container h3 {
  font-size: 14px;
  margin: 0;
  text-transform: uppercase;
}
.mxt-configurator-picker .mxt-order-a-swatch-container h3 > span {
  font-weight: 400;
  text-transform: none;
}
.mxt-configurator-picker .mxt-order-a-swatch-container button.mxt-order-a-swatch {
  align-self: center;
}

.mxt-configurator-picker button.mxt-order-a-swatch {
  background-color: transparent;
  border: 1px solid rgb(204, 204, 204);
  border-radius: 3px;
  color: var(--mxt-client-primary);
  cursor: pointer;
  display: flex;
  font-size: 14px;
  gap: 15px;
  margin: 10px;
  padding: 13px 24px;
  text-transform: uppercase;
  width: auto;
}
.mxt-configurator-picker button.mxt-order-a-swatch img {
  height: 20px;
  width: 20px;
}
/*!************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/PromoPricingComponent.scss ***!
  \************************************************************************************************************************************************************************************************************/
.mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  line-height: 17px;
  margin: 13px 0 8px;
}
.mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-total.mxt-promo-price {
  color: #BE2143;
}
.mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-total .mxt-currency-text, .mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-total .mxt-price-fraction-text {
  font-size: 20px;
  line-height: 1;
}
.mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-total .mxt-price-text {
  font-size: 32px;
  line-height: 28px;
}
.mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-non-promo-price {
  font-size: 20px;
  text-decoration: line-through;
}
.mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-total, .mxt-configurator-picker .mxt-configurator-total-pricing.mxt-configurator-promo-pricing .header-label .mxt-non-promo-price {
  line-height: 1;
}

.mxt-banner-slipcover-only {
  background-color: #1e8199;
  color: white;
  padding: 5px 10px;
  border-radius: 5px;
  font-weight: bold;
  line-height: 1;
  text-transform: uppercase;
  border: none;
}
/*!**********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/custom.scss ***!
  \**********************************************************************************************************************************************************************************/
.mxt-configurator-root.mxt-portrait {
  overflow: visible;
}

@media screen and (orientation: portrait) {
  .mxt-configurator-picker .mxt-toaster {
    padding: 0;
    height: 100%;
  }
  .mxt-configurator-picker .mxt-toaster-main {
    bottom: 0;
    position: sticky;
  }
}
@font-face {
  font-family: Montserrat;
  src: url(7e687123cd4528224ce5.ttf);
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas {
  box-shadow: none;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: space-between;
  order: 0;
  padding: 25px var(--mxt-picker-horizontal-padding);
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-shipping-info, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-shipping-info {
  width: 100%;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-shipping-info p, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-shipping-info p {
  font-size: 12px;
  font-weight: normal;
  padding: 0;
  margin: 0;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty {
  display: flex;
  padding-top: 35px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control {
  align-self: center;
  align-items: center;
  border: 1px solid rgb(204, 204, 204);
  border-radius: 3px;
  display: flex;
  height: 32px;
  padding: 0px;
  font-size: 16px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control input, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control input, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button {
  height: 100%;
  text-align: center;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control input:disabled, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control input:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button:disabled {
  cursor: not-allowed;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button {
  background-color: transparent;
  border: 0 none;
  color: rgb(124, 124, 124);
  cursor: pointer;
  font-family: Montserrat, Verdana, Helvetica, sans-serif;
  font-size: 28px;
  font-weight: 400;
  width: auto;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button[data-action=decrease], .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control button[data-action=decrease] {
  line-height: 20px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control input, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty .mxt-qty-control input {
  border: 1px solid #DEDEDE;
  border-bottom: 0 none;
  border-top: 0 none;
  padding: 9px 0;
  width: 60px;
  font-size: 16px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc {
  box-shadow: none;
  border-radius: 3px;
  cursor: pointer;
  flex-basis: calc(100% - 65px);
  margin-left: 0px;
  text-transform: uppercase;
  padding: 10px 0;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc img, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc img {
  display: none;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc > span, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc > span {
  font-size: 16px;
  font-weight: 700;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc:disabled, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc.mxt-btn-disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-cta-atc.mxt-btn-disabled {
  background: var(--mxt-client-primary);
  color: white;
  cursor: not-allowed;
  pointer-events: auto;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-registry, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-wishlist, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-registry, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-wishlist {
  align-items: center;
  background-color: rgb(255, 255, 255);
  border: 1px solid #ccc;
  border-radius: 3px;
  color: rgb(51, 51, 51);
  cursor: pointer;
  display: flex;
  flex-grow: 1;
  gap: 10px;
  justify-content: center;
  padding: 10px;
  text-transform: uppercase;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-registry img, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-wishlist img, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-registry img, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-wishlist img {
  height: 13px;
  width: 13px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-registry > span, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-wishlist > span, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-registry > span, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button.mxt-add-to-wishlist > span {
  font-size: 12px;
  font-weight: 400;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button:disabled, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas input:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas button:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas input:disabled {
  cursor: not-allowed;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty:disabled, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-registry:disabled, .mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-wishlist:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-cart-qty:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-registry:disabled, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-add-to-wishlist:disabled {
  color: inherit;
  background-color: inherit;
  opacity: 0.35;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing {
  padding: 0;
  width: 218px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing .mxt-banner-slipcover-only, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing .mxt-banner-slipcover-only {
  position: absolute;
  right: -7px;
  bottom: 40px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing:not(.mxt-configurator-promo-pricing) .mxt-banner-slipcover-only, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing:not(.mxt-configurator-promo-pricing) .mxt-banner-slipcover-only {
  bottom: 50px;
}
.mxt-configurator-root.mxt-container .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing .mxt-total, .mxt-configurator-picker .mxt-configurator-scrollable .mxt-configurator-ctas .mxt-configurator-total-pricing .mxt-total {
  justify-content: flex-end;
}

.mxt-configurator-options .mxt-filtersort-header {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  border-top: 2px solid rgb(235, 235, 235);
  padding: 10px;
}
.mxt-configurator-options .mxt-filtersort-header .collapse-clear-btn {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #666;
  padding-right: 20px;
}
.mxt-configurator-options .mxt-filtersort-header .collapse-clear-btn.dropdown-clear-btn {
  height: 50px;
}
.mxt-configurator-options .mxt-hideshowfilters-button .mxt-hideshowfilters-image {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMzBweCIgaGVpZ2h0PSIzMHB4IiB2aWV3Qm94PSIwIDAgMzAgMzAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+SWNvbnMvTWlzYy9JY29ucy1NaXNjLUZpbHRlcjwvdGl0bGU+CiAgICA8ZyBpZD0iSWNvbnMvTWlzYy9JY29ucy1NaXNjLUZpbHRlciIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZD0iTTE5LDE4IEMxOS43NDAyNTI0LDE4IDIwLjM4NjU3MzksMTguNDAyMTY2MSAyMC43MzIzOTM3LDE4Ljk5OTkyNzUgTDIyLDE5IEMyMi41NTIyODQ3LDE5IDIzLDE5LjQ0NzcxNTMgMjMsMjAgQzIzLDIwLjUxMjgzNTggMjIuNjEzOTU5OCwyMC45MzU1MDcyIDIyLjExNjYyMTEsMjAuOTkzMjcyMyBMMjIsMjEgTDIwLjczMTgxMTksMjEuMDAxMDc3NSBDMjAuMzg1ODQ5MywyMS41OTgyODQ2IDE5LjczOTgzNzUsMjIgMTksMjIgQzE4LjI2MDE2MjUsMjIgMTcuNjE0MTUwNywyMS41OTgyODQ2IDE3LjI2ODE4ODEsMjEuMDAxMDc3NSBMOCwyMSBDNy40NDc3MTUyNSwyMSA3LDIwLjU1MjI4NDcgNywyMCBDNywxOS40ODcxNjQyIDcuMzg2MDQwMTksMTkuMDY0NDkyOCA3Ljg4MzM3ODg3LDE5LjAwNjcyNzcgTDgsMTkgTDE3LjI2NzYwNjMsMTguOTk5OTI3NSBDMTcuNjEzNDI2MSwxOC40MDIxNjYxIDE4LjI1OTc0NzYsMTggMTksMTggWiBNMTUsMTMgQzE1Ljc0MDI1MjQsMTMgMTYuMzg2NTczOSwxMy40MDIxNjYxIDE2LjczMjM5MzcsMTMuOTk5OTI3NSBMMjIsMTQgQzIyLjU1MjI4NDcsMTQgMjMsMTQuNDQ3NzE1MyAyMywxNSBDMjMsMTUuNTEyODM1OCAyMi42MTM5NTk4LDE1LjkzNTUwNzIgMjIuMTE2NjIxMSwxNS45OTMyNzIzIEwyMiwxNiBMMTYuNzMxODExOSwxNi4wMDEwNzc1IEMxNi4zODU4NDkzLDE2LjU5ODI4NDYgMTUuNzM5ODM3NSwxNyAxNSwxNyBDMTQuMjYwMTYyNSwxNyAxMy42MTQxNTA3LDE2LjU5ODI4NDYgMTMuMjY4MTg4MSwxNi4wMDEwNzc1IEw4LDE2IEM3LjQ0NzcxNTI1LDE2IDcsMTUuNTUyMjg0NyA3LDE1IEM3LDE0LjQ4NzE2NDIgNy4zODYwNDAxOSwxNC4wNjQ0OTI4IDcuODgzMzc4ODcsMTQuMDA2NzI3NyBMOCwxNCBMMTMuMjY3NjA2MywxMy45OTk5Mjc1IEMxMy42MTM0MjYxLDEzLjQwMjE2NjEgMTQuMjU5NzQ3NiwxMyAxNSwxMyBaIE0xMSw4IEMxMS43NDAyNTI0LDggMTIuMzg2NTczOSw4LjQwMjE2NjEyIDEyLjczMjM5MzcsOC45OTk5Mjc1MiBMMjIsOSBDMjIuNTUyMjg0Nyw5IDIzLDkuNDQ3NzE1MjUgMjMsMTAgQzIzLDEwLjUxMjgzNTggMjIuNjEzOTU5OCwxMC45MzU1MDcyIDIyLjExNjYyMTEsMTAuOTkzMjcyMyBMMjIsMTEgTDEyLjczMTgxMTksMTEuMDAxMDc3NSBDMTIuMzg1ODQ5MywxMS41OTgyODQ2IDExLjczOTgzNzUsMTIgMTEsMTIgQzEwLjI2MDE2MjUsMTIgOS42MTQxNTA2NiwxMS41OTgyODQ2IDkuMjY4MTg4MTQsMTEuMDAxMDc3NSBMOCwxMSBDNy40NDc3MTUyNSwxMSA3LDEwLjU1MjI4NDcgNywxMCBDNyw5LjQ4NzE2NDE2IDcuMzg2MDQwMTksOS4wNjQ0OTI4NCA3Ljg4MzM3ODg3LDkuMDA2NzI3NzMgTDgsOSBMOS4yNjc2MDYzMiw4Ljk5OTkyNzUyIEM5LjYxMzQyNjA2LDguNDAyMTY2MTIgMTAuMjU5NzQ3Niw4IDExLDggWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjMzMzMzMzIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPg==);
  width: 40px;
  height: 40px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.mxt-configurator-options .designProcessSearchDiv {
  display: block;
  width: 100%;
  padding: 10px 5px;
  margin-bottom: 5px;
}

.mxt-filter-grid .designProcessFilters {
  padding: 10px 5px;
}

.mxt-filter-grid:not(.fullscreen) {
  position: relative;
  display: block;
}
.mxt-filter-grid:not(.fullscreen).mxt-hidden {
  display: none;
}

.mxt-dropdown-header h5 {
  color: var(--mxt-text-color);
}

.mxt-configurator-picker > *:not(.mxt-configurator-scrollable, .mxt-toaster) {
  padding: 15px var(--mxt-picker-horizontal-padding) 28px;
}

.mxt-configurator-scrollable > * {
  padding: 15px 0 28px;
}

.mxt-configurator-picker > *:not(.mxt-configurator-scrollable, .mxt-toaster), .mxt-configurator-scrollable > * {
  border-top: 1px solid rgb(204, 204, 204);
}

@media screen and (orientation: portrait) {
  .mxt-configurator-picker, .mxt-portrait .mxt-configurator-picker {
    flex: 0 0 auto;
    height: auto;
  }
}
@media screen and (orientation: portrait) {
  .mxt-configurator-scrollable {
    overflow: visible;
  }
}
.mxt-configurator-picker .mxt-configurator-total-pricing {
  padding-top: 15px !important;
}
.mxt-configurator-picker .mxt-configurator-total-pricing .header-label .mxt-total {
  align-items: flex-start;
  display: flex;
  font-weight: 300;
}
.mxt-configurator-picker .mxt-configurator-total-pricing .header-label .mxt-total .mxt-total-text {
  font-size: 12px;
  font-weight: 500;
  padding-right: 10px;
  text-transform: uppercase;
}
.mxt-configurator-picker .mxt-configurator-total-pricing .header-label .mxt-total .mxt-price-text {
  font-size: 30px;
  line-height: 22px;
}
.mxt-configurator-picker .mxt-configurator-total-pricing .header-label .mxt-total .mxt-currency-text, .mxt-configurator-picker .mxt-configurator-total-pricing .header-label .mxt-total .mxt-price-fraction-text {
  font-size: 17px;
  line-height: 0.8;
}

.mxt-configurator-browser > .section,
.mxt-configurator-steps > .section {
  padding-bottom: 5px;
}
.mxt-configurator-browser > .section .header,
.mxt-configurator-steps > .section .header {
  flex-wrap: wrap;
  row-gap: 10px;
}

.mxt-desktop .mxt-configurator-browser > .section .header,
.mxt-desktop .mxt-configurator-steps > .section .header {
  border-radius: 3px;
}

.mxt-mobile .mxt-configurator-browser > .section,
.mxt-mobile .mxt-configurator-steps > .section {
  border-radius: 3px;
}

.mxt-configurator-scrollable > * {
  padding: 15px 0 9px;
}

.mxt-configurator-browser .fabric-swatch-text,
.mxt-configurator-steps .fabric-swatch-text {
  display: block;
  font: var(--mxt-font-body-lg);
  font-style: italic;
  transform: translateX(-5px);
  width: 100%;
}

ul.preview-swatch-container {
  display: flex;
  justify-content: flex-start;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
ul.preview-swatch-container li {
  --swatch-height-width: 45px;
  height: var(--swatch-height-width);
  width: var(--swatch-height-width);
  margin: 0px 8px 0 0;
}
ul.preview-swatch-container img {
  height: 100%;
  width: 100%;
  border-radius: 4px;
}

.mxt-configurator-scrollable .mxt-configurator-options {
  padding: 0 10px;
}

.mxt-configurator-options .mxt-back-button {
  padding: 14px 0 0 5px;
}

.mxt-portrait .mxt-configurator-options .icon-content {
  justify-content: center;
}

.mxt-configurator-options .options-scroll .mxt-filtersort-header .mxt-hideshowfilters-button .mxt-hideshowfilters-image {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmNscy0xIHsKICAgICAgICBmaWxsOiAjMzMzOwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMjguNy4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogMS4yLjAgQnVpbGQgMTQyKSAgLS0+CiAgPGc+CiAgICA8ZyBpZD0iTGF5ZXJfMSI+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE4LDE0LjVjMCwuMiwwLC40LS4yLjUtLjEuMS0uMy4yLS41LjJoLTQuNmMtLjIuNi0uNSwxLjEtLjksMS40cy0xLC41LTEuNi41LTEuMS0uMi0xLjYtLjVjLS41LS40LS44LS44LS45LTEuNEguN2MtLjIsMC0uNCwwLS41LS4yLS4xLS4xLS4yLS4zLS4yLS41czAtLjQuMi0uNWMuMS0uMS4zLS4yLjUtLjJoN2MuMi0uNi41LTEuMS45LTEuNC41LS40LDEtLjUsMS42LS41czEuMS4yLDEuNi41Yy41LjQuOC44LjksMS40aDQuNmMuMiwwLC40LDAsLjUuMi4xLjEuMi4zLjIuNVpNMTgsMi42YzAsLjIsMCwuNC0uMi41LS4xLjEtLjMuMi0uNS4yaC0yLjJjLS4yLjYtLjUsMS4xLS45LDEuNC0uNS40LTEsLjUtMS42LjVzLTEuMS0uMi0xLjYtLjUtLjgtLjgtLjktMS40SC43YzAsMC0uMiwwLS4zLDAsMCwwLS4yLDAtLjItLjEsMCwwLS4xLS4xLS4xLS4yLDAsMCwwLS4yLDAtLjNzMC0uMiwwLS4zYzAsMCwwLS4yLjEtLjIsMCwwLC4xLS4xLjItLjEsMCwwLC4yLDAsLjMsMGg5LjRjLjItLjYuNS0xLjEuOS0xLjQuNS0uNCwxLS41LDEuNi0uNXMxLjEuMiwxLjYuNWMuNS40LjguOC45LDEuNGgyLjJjMCwwLC4yLDAsLjMsMCwwLDAsLjIsMCwuMi4xLDAsMCwuMS4xLjEuMiwwLDAsMCwuMiwwLC4zWk0xOCw4LjZjMCwwLDAsLjIsMCwuMywwLDAsMCwuMi0uMS4yLDAsMC0uMS4xLS4yLjEsMCwwLS4yLDAtLjMsMEg2LjhjLS4yLjYtLjUsMS4xLS45LDEuNC0uNS40LTEsLjUtMS42LjVzLTEuMS0uMi0xLjYtLjVjLS41LS40LS44LS44LS45LTEuNEguN2MtLjIsMC0uNCwwLS41LS4yLS4xLS4xLS4yLS4zLS4yLS41czAtLjQuMi0uNWMuMS0uMS4zLS4yLjUtLjJoMWMuMi0uNi41LTEuMS45LTEuNC41LS40LDEtLjUsMS42LS41czEuMS4yLDEuNi41Yy41LjQuOC44LjksMS40aDEwLjVjLjIsMCwuNCwwLC41LjIuMS4xLjIuMy4yLjVaIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4=) !important;
  background-size: 50% !important;
  background-position: center !important;
}
.mxt-configurator-options .options-scroll .mxt-filtersort-header .collapse-clear-btn {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDE2IDE4Ij4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmNscy0xIHsKICAgICAgICBmaWxsOiAjMzMzOwogICAgICAgIGZpbGwtcnVsZTogZXZlbm9kZDsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI4LjcuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDEuMi4wIEJ1aWxkIDE0MikgIC0tPgogIDxnPgogICAgPGcgaWQ9IkxheWVyXzEiPgogICAgICA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik02LjQsMS44Yy0uMiwwLS40LDAtLjYuMi0uMi4yLS4yLjQtLjIuNnYuOGg0Ljh2LS44YzAtLjIsMC0uNC0uMi0uNi0uMS0uMi0uNC0uMi0uNi0uMmgtMy4yWk0xMiwzLjR2LS44YzAtLjYtLjMtMS4yLS43LTEuNy0uNS0uNS0xLjEtLjctMS43LS43aC0zLjJjLS42LDAtMS4yLjMtMS43LjctLjUuNS0uNywxLjEtLjcsMS43di44SC44Qy40LDMuNCwwLDMuOCwwLDQuMnMuNC44LjguOGguOHYxMC40YzAsLjYuMywxLjIuNywxLjcuNS41LDEuMS43LDEuNy43aDhjLjYsMCwxLjItLjMsMS43LS43LjUtLjUuNy0xLjEuNy0xLjdWNWguOGMuNCwwLC44LS40LjgtLjhzLS40LS44LS44LS44aC0zLjJaTTEyLjgsNUgzLjJ2MTAuNGMwLC4yLDAsLjQuMi42LjIuMS40LjIuNi4yaDhjLjIsMCwuNCwwLC42LS4yLjItLjIuMi0uNC4yLS42VjVaTTYuNCw3LjRjLjQsMCwuOC40LjguOHY0LjhjMCwuNC0uNC44LS44LjhzLS44LS40LS44LS44di00LjhjMC0uNC40LS44LjgtLjhaTTkuNiw3LjRjLjQsMCwuOC40LjguOHY0LjhjMCwuNC0uNC44LS44LjhzLS44LS40LS44LS44di00LjhjMC0uNC40LS44LjgtLjhaIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4=);
  background-size: 22px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background-position: left center;
  background-repeat: no-repeat;
  padding-right: 0px !important;
}
.mxt-configurator-options .options-scroll .mxt-filtersort-header .collapse-clear-btn span {
  margin-left: 30px;
}
.mxt-configurator-options .options-scroll .mxt-filtersort-header .collapse-clear-btn .clear-count {
  margin-left: 3px;
}

.designProcessSearchDiv .designProcessSearch {
  border-radius: 3px;
}
.designProcessSearchDiv .designProcessSearchIcon {
  width: 22px;
  height: 22px;
  top: 18px !important;
}

@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .mxt-spin-button-row.mxt-container {
    min-height: calc(var(--mxt-button-height) + env(safe-area-inset-bottom));
    height: auto;
  }
}

.mxt-configurator-picker > *:not(.mxt-configurator-scrollable).mxt-configurator-steps,
.mxt-configurator-picker > *:not(.mxt-configurator-scrollable).mxt-configurator-browser,
.mxt-configurator-scrollable > .mxt-configurator-steps,
.mxt-configurator-scrollable > .mxt-configurator-browser {
  border-top: none;
}

.mxt-configurator-browser:empty {
  display: none;
}

.mxt-configurator-scrollable .mxt-configurator-options {
  height: auto;
  overflow: visible;
}
/*!**********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/options.scss ***!
  \**********************************************************************************************************************************************************************************************/
.mxt-configurator-options .mxt-hideshowfilters-button span,
.mxt-configurator-options .mxt-filtersort-header .collapse-clear-btn {
  color: var(--mxt-text-color);
}
/*!************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/VKSummary.scss ***!
  \************************************************************************************************************************************************************************************************/
.mxt-summary-list {
  display: grid;
  grid-template-columns: max-content 1fr; /* Adjust column widths, first column is as wide as needed */
  gap: 10px 20px; /* Adjust the space between columns and rows */
  max-width: 600px; /* You can adjust this based on your layout */
  width: 100%;
}

.mxt-summary-list-title {
  font-weight: bold;
  text-align: left;
  word-wrap: break-word; /* Make sure the text wraps if it's too long */
}

.mxt-summary-list-description {
  margin: 0; /* Remove default margin for dd */
  text-align: left;
  word-wrap: break-word;
}
/*!**************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./scss/components/ResetButton.scss ***!
  \**************************************************************************************************************************************************************************************************/
.mxt-configurator-picker button.mxt-reset-button {
  background-color: transparent;
  display: flex;
  border: none;
  color: var(--mxt-client-primary);
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 14px;
  gap: 10px;
  margin: 5px;
  padding: 0px 24px;
  padding-bottom: 10px;
  text-transform: uppercase;
  width: auto;
  margin-left: auto;
  margin-right: auto;
  text-decoration: underline;
}
.mxt-configurator-picker button.mxt-reset-button img {
  height: 20px;
  width: 20px;
}
.mxt-configurator-picker button.mxt-reset-button:disabled {
  opacity: 0.5;
}
.mxt-configurator-picker button.mxt-reset-button:focus {
  opacity: 0.7;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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RUFDQTtBQUNSLEM7Ozs7QUM1QkE7RUFDSTtFQUNBO0VBQ0E7bURBQUE7RUFFQTtFQUVBO21EQUFBO0VBRUE7RUFFQTttREFBQTtFQUVBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7QUEvQko7O0FBa0NBO0FBQ0E7RUFDSTtJQUNJO0VBL0JOO0FBQ0YsQzs7OztBQ3hIQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBREo7QUFHSTtFQUNJO0VBQ0E7QUFEUjtBQUtJO0VBRUk7OztJQUFBO0VBTUE7QUFOUjtBQVNRO0VBQ0k7RUFDQTtBQVBaO0FBV0k7RUFDSTtFQUNBO0FBVFI7QUFhUTtFQUNJO0VBQ0E7QUFYWjtBQWVJO0VBQ0k7QUFiUjtBQWdCSTtFQUNJO0FBZFI7QUFpQkk7RUFDSTtFQUNBO0VB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RUFDSTtFQUNBO0VBQ0E7QUFESjs7QUFJQTtFQUNJO0VBQ0E7QUFESjs7QUFJQTtFQUNJO0FBREo7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFESjs7QUFJQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0FBREo7O0FBSUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBREo7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBREo7O0FBSUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQURKOztBQUlBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7QUFESjs7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBREo7O0FBSUE7RUFDSTtBQURKOztBQUlBO0VBQ0k7RUFDQTtBQURKOztBQUlBO0VBQ0k7QUFESjs7QUFJQTtFQUNJO0FBREosQzs7OztBQ2xLQTtFQUtJO0VBQ0E7RUFDQTtFQUNBO0FBSko7QUFNSTtFQUNJO0VBQ0E7RUFDQTtBQUpSO0FBT0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBTFI7QUFPUTtFQUNJLGFBNUJVO0VBNkJWO0FBTFo7QUFRUTtFQUNJLFdBaENLO0VBaUNMLFlBakNLO0VBa0NMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQU5aO0FBUVk7RUFDSTtFQUNBO0VBQ0E7QUFOaEIsQzs7OztBbEJ6Q0E7RUFDSTtFQUNBO0VBQ0E7bURBQUE7RUFFQTtFQUVBO21EQUFBO0VBRUE7RUFFQTttREFBQTtFQUVBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7QW1COUJKOztBbkJpQ0E7QUFDQTtFQUNJO0lBQ0k7RW1COUJOO0FBQ0Y7QWxCekhBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWtCMkhKO0FsQnpISTtFQUNJO0VBQ0E7QWtCMkhSO0FsQnZISTtFQUVJOzs7SUFBQTtFQU1BO0FrQnNIUjtBbEJuSFE7RUFDSTtFQUNBO0FrQnFIWjtBbEJqSEk7RUFDSTtFQUNBO0FrQm1IUjtBbEIvR1E7RUFDSTtFQUNBO0FrQmlIWjtBbEI3R0k7RUFDSTtBa0IrR1I7QWxCNUdJO0VBQ0k7QWtCOEdSO0FsQjNHSTtFQUNJO0VBQ0E7RUFDQTtBa0I2R1I7QWxCMUdJO0VBQ0k7RUFDQTtFQUNBO0FrQjRHUjtBbEJ6R0k7RUFDSTtBa0IyR1I7QWxCdkdRO0VBQ0k7QWtCeUdaO0FsQnJHSTtFQUNJO0FrQnVHUjtBbEJwR0k7RUFDSTtBa0JzR1I7QWxCcEdRO0VBQ0k7RUFDQTtFQUNBO0FrQnNHWjtBbEJwR1k7RUFDSTtFQUNBO0FrQnNHaEI7QWxCbEdRO0VBQ0k7QWtCb0daO0FsQmxHWTtFQUNJO0FrQm9HaEI7QWxCL0ZJO0VBQ0k7RUFDQTtBa0JpR1I7QWxCL0ZRO0VBQ0k7QWtCaUdaO0FsQjdGSTtFQUNJO0VBQ0E7QWtCK0ZSO0FsQjVGSTtFQUdJO0VBQ0E7RUFDQTtFQUNBO0FrQjRGUjtBbEIxRlE7RUFDSTtBa0I0Rlo7QWxCckZRO0VBQ0k7RUFDQTtFQUNBO0FrQnVGWjtBbEJqRlE7RUFDSTtBa0JtRlo7QTlCcE1RO0VZc0hBO0lBQ0k7RWtCaUZWO0FBQ0Y7O0FsQjdFQTtFQUNJO0FrQmdGSjs7QWxCN0VBO0VBQ0k7QWtCZ0ZKOztBbEI3RUE7RUFDSTtFQUNBO0VBQ0E7QWtCZ0ZKOztBbEI3RUE7RUFDSTtFQUNBO0FrQmdGSjs7QWxCN0VBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWtCZ0ZKOztBbEI3RUE7RUFDSTtFQUNBO0VBQ0E7QWtCZ0ZKOztBbEI3RUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBa0JnRko7O0FsQjlFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FrQmlGSjs7QWxCN0VJO0VBQ0k7RUFDQTtFQUNBO0FrQmdGUjtBbEI5RUk7RUFDSTtFQUNBO0VBQ0E7QWtCZ0ZSOztBbEI1RUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUE7RUFRQTtFQVlBO0FrQndESjtBbEJoRkk7RUFDSTtBa0JrRlI7QWxCOUVJO0VBQ0k7QWtCZ0ZSO0FsQjlFUTtFQUNJO0FrQmdGWjtBbEI1RUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBa0I4RVI7QWxCNUVRO0VBQ0k7RUFDQTtBa0I4RVo7QWxCMUVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWtCNEVSO0FsQjFFUTtFQUNJO0VBQ0E7QWtCNEVaOztBbEJ4RUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBa0IyRUo7O0FsQnhFQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQjJFSjs7QWxCeEVBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWtCMkVKO0FsQnhFUTtFQUNJO0VBQ0E7QWtCMEVaO0FsQnhFWTtFQUNJO0VBQ0E7RUFDQTtBa0IwRWhCOztBbEJuRUk7RUFDSTtFQUNBO0FrQnNFUjs7QWxCbEVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWtCcUVSOztBbEJqRUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBa0JvRVI7O0FsQmhFSTtFQUNJO0VBQ0E7QWtCbUVSOztBbEIvREE7QUFDQTs7RUFFSTtFQUVBO0VBQ0E7RUE4REE7RUEyQ0E7QWtCdENKO0FsQmpFSTs7Ozs7O0VBR0k7RUFDQTtFQUNBO0FrQnNFUjtBbEJwRVE7Ozs7OztFQUNJO0FrQjJFWjtBbEJuRVE7O0VBQ0k7QWtCc0VaO0FsQmpFZ0I7O0VBQ0k7QWtCb0VwQjtBbEIvRFE7O0VBQ0k7QWtCa0VaO0FsQjlESTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBa0JpRVI7QWxCL0RROztFQUNJO0VBQ0E7QWtCa0VaO0FsQjlESTs7RUFDSTtBa0JpRVI7QWxCOURJOztFQUNJO0VBQ0E7QWtCaUVSO0FsQjVEUTs7Ozs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBa0JpRVo7QWxCL0RZOzs7OztFQUNJO0VBQ0E7RUFDQTtFQUNBO0FrQnFFaEI7QWxCbEVZOzs7OztFQUNJO0VBQ0E7RUFDQTtBa0J3RWhCO0FsQnRFZ0I7Ozs7O0VBQ0k7QWtCNEVwQjtBbEJ6RWdCOzs7OztFQUNJO0VBQ0E7RUFDQTtFQUNBO0FrQitFcEI7QWxCM0VZOzs7OztFQUNJO0VBQ0E7QWtCaUZoQjtBbEIxRVE7Ozs7OztFQUdJO0VBQ0E7RUFDQTtBa0IrRVo7QWxCN0VZOzs7Ozs7RUFDSTtBa0JvRmhCO0FsQmpGWTs7Ozs7Ozs7Ozs7O0VBRUk7QWtCNkZoQjtBbEJ6RlE7O0VBQ0k7QWtCNEZaO0FsQjFGWTs7O0VBQ0k7QWtCOEZoQjtBbEIzRmdCOzs7RUFDSTtBa0IrRnBCO0FsQjFGWTs7O0VBQ0k7QWtCOEZoQjtBbEIzRmdCOzs7RUFDSTtBa0IrRnBCO0FsQnpGSTs7O0VBRUk7RUFDQTtBa0I0RlI7QWxCMUZROzs7Ozs7Ozs7OztFQUdJO0FrQm9HWjtBbEJsR1k7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUk7RUFDQTtBa0J5SGhCO0FsQnJIUTs7O0VBQ0k7QWtCeUhaO0FsQnRIUTs7O0VBQ0k7QWtCMEhaO0FsQnZISTs7RUFDSTtBa0IwSFI7QWxCeEhROztFQUNJO0VBQ0E7RUFDQTtBa0IySFo7QWxCeEhJOztFQUNJO0FrQjJIUjtBbEJ6SFE7O0VBQ0k7RUFDQTtFQUNBO0FrQjRIWjtBbEJ4SFE7O0VBQ0k7QWtCMkhaO0FsQnRIWTs7Ozs7Ozs7RUFFSTtBa0I4SGhCO0FsQjFIUTs7RUFDSTtFQUNBO0VBQ0E7QWtCNkhaO0FsQjFIUTs7RUFDSTtFQUNBO0FrQjZIWjs7QWxCeEhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQjJISjs7QWxCeEhBOztFQUVJO0FrQjJISjs7QWxCeEhBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQjJISjtBbEJ6SEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBa0IySFI7QWxCekhRO0VBQ0k7RUFDQTtFQUNBO0FrQjJIWjtBbEJ6SFE7RUFDSTtFQUNBO0VBQ0E7QWtCMkhaO0FsQnhIUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWtCMEhaOztBbEJ0SEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7QWtCdUhKO0FsQnJISTtFQUNJO0VBQ0E7QWtCdUhSO0FsQnBISTtFQUNJO0VBQ0E7RUFDQTtBa0JzSFI7QWxCbkhJO0VBQ0k7RUFDQTtBa0JxSFI7QWxCbEhZO0VBQ0k7QWtCb0hoQjtBbEIvR0k7RUFDSTtBa0JpSFI7QWxCOUdJO0VBQ0k7RUFDQTtFQUNBO0FrQmdIUjtBbEI5R1E7RUFDSTtBa0JnSFo7O0FsQnpHUTtFQUNJO0FrQjRHWjs7QWxCdkdBO0VBQ0k7RUFDQTtBa0IwR0o7QWxCeEdJO0VBQ0k7QWtCMEdSO0FsQnZHSTtFQUNJO0FrQnlHUjtBbEJ2R1E7RUFDSTtBa0J5R1o7QWxCdEdRO0VBQ0k7QWtCd0daO0FsQnBHSTtFQUtJO0VBQ0E7RUFDQTtBa0JrR1I7QWxCeEdRO0VBQ0k7QWtCMEdaO0FsQm5HUTtFQUNJO0VBQ0E7QWtCcUdaOztBbEJoR0E7RUFDSTtBa0JtR0o7O0FsQmhHQTtFQUNJO0FrQm1HSjs7QWxCaEdBO0VBQ0k7RUFDQTtBa0JtR0o7O0FsQmhHQTtFQUNJO0FrQm1HSjs7QWxCaEdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQm1HSjtBbEJqR0k7RUFDSTtFQUNBO0FrQm1HUjs7QWxCL0ZBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBa0JrR0o7QWxCL0ZRO0VBQ0k7RUFDQTtBa0JpR1o7QWxCOUZJO0VBQ0k7RUFDQTtBa0JnR1I7QWxCOUZRO0VBQ0k7RUFDQTtBa0JnR1o7QWxCOUZRO0VBQ0k7RUFDQTtBa0JnR1o7QWxCOUZRO0VBQ0k7RUFDQTtBa0JnR1o7QWxCOUZRO0VBQ0k7RUFDQTtBa0JnR1o7O0FsQjNGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FrQjhGSjtBbEI1Rkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBa0I4RlI7QWxCM0ZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQjZGUjtBbEIzRlE7RUFDSTtBa0I2Rlo7QWxCMUZRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWtCNEZaOztBbEJ2RkE7RUFDSTtBa0IwRko7O0FsQnZGQTtFQUNJO0FrQjBGSjs7QWxCeEZBO0VBQ0k7QWtCMkZKOztBbEJ4RkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBa0IyRko7O0FsQnZGSTtFQUNJO0FrQjBGUjtBbEJ4RlE7RUFDSTtBa0IwRlo7O0FsQm5GSTtFQUNJO0FrQnNGUjs7QTNCaDdCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EyQm03Qko7O0EzQmo3QkE7RUFDSTtBMkJvN0JKOztBM0JsN0JBO0VBQ0k7QTJCcTdCSjs7QTNCbDdCQTtFQUNJO0lBQ0k7SUFDQTtFMkJxN0JOO0UzQm43QkU7SUFDSTtJQUNBO0UyQnE3Qk47QUFDRjtBM0JsN0JBO0VBQ0k7SUFDSTtJQUNBO0UyQm83Qk47RTNCbDdCRTtJQUNJO0lBQ0E7RTJCbzdCTjtBQUNGO0EzQmo3QkE7QUFDQTtFQUNJO0lBQ0k7RTJCbTdCTjtFM0JqN0JFO0lBQ0k7RTJCbTdCTjtFM0JqN0JFO0lBQ0k7RTJCbTdCTjtBQUNGO0EzQmg3QkE7RUFDSTtFQUNBO0EyQms3Qko7O0EzQi82QkE7RUFDSTtBMkJrN0JKOztBM0IvNkJBO0VBQ0k7RUFDQTtFQUNBO0EyQms3Qko7O0EzQi82QkE7RUFDSTtBMkJrN0JKOztBM0IvNkJBO0VBQ0k7RUFDQTtBMkJrN0JKOztBM0IvNkJBO0VBQ0k7QTJCazdCSjs7QTNCLzZCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTJCazdCSjs7QTNCLzZCQTtFQUNJO0VBQ0E7QTJCazdCSjtBM0JoN0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMkJrN0JSO0EzQmg3QlE7RUFDSTtFQUNBO0VBQ0E7QTJCazdCWjtBM0I5NkJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EyQmc3QlI7O0EzQjU2QkE7Ozs7Ozs7Ozs7S0FBQTtBQVlBO0VBQ0k7QTJCODZCSjs7QTNCMzZCQTtFQUNJO0VBQ0E7QTJCODZCSjs7QTNCMzZCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EyQjg2Qko7O0EzQjM2QkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMkI4NkJKOztBM0IzNkJBO0VBQ0k7QTJCODZCSjs7QTNCMzZCQTtFQUNJO0EyQjg2Qko7O0EzQjU2QkE7RUFDSTtBMkIrNkJKOztBM0I3NkJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTJCZzdCSjs7QTNCNzZCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7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QUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QUFGUjtBQUlRO0VBQ0k7QUFGWjtBQUlZO0VBQ0k7QUFGaEI7QUFRSTtFQUNJO0VBQ0E7RUFDQTtBQU5SLEM7Ozs7QUNoQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7QUFDSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDUjtBQUVJO0VBQ0k7RUFDQTtFQUNBO0FBQVIsQzs7OztBQ3JCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjtBQUNJO0VBQ0k7QUFDUjs7QUFHQTtFQUNJO0lBQ0k7RUFBTjtFQUdFO0lBQ0k7RUFETjtBQUNGO0FBSUE7RUFDSTtBQUZKOztBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFGSjs7QUFLQTtFQUNJO0FBRko7O0FBS0E7RUFDSTtBQUZKOztBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUZKOztBQUtBO0VBQ0k7RUFDQTtBQUZKOztBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRko7O0FBS0E7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FBSEo7O0FBTUE7RUFDSTtFQUNBO0FBSEo7O0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QUFOSjtBQVFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQU5SOztBQVVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFQSjs7QUFVQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFQSjs7QUFVQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7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QUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGZWhCO0FFYmdCO0VBQ0k7QUZlcEI7QUVYWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRmFoQjtBRVJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUZVUjtBRVRRO0VBQ0k7QUZXWjtBRVJRO0VBQ0k7RUFDQTtBRlVaO0FFUFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBRlNaO0FFTEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUZPUjtBRUxRO0VBQ0k7RUFDQTtBRk9aO0FFSlE7RUFDSTtFQUNBO0FGTVo7QUVEUTtFQUNJO0FGR1o7QUVFUTtFQUNJO0VBQ0E7RUFDQTtBRkFaO0FFSUk7RUFDSTtFQUNBO0FGRlI7QUVJUTtFQUNJO0VBQ0E7RUFDQTtBRkZaO0FFTVk7RUFDSTtBRkpoQjtBRVFRO0VBQ0k7QUZOWjs7QUc3SUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhnSlI7QUc3SVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIK0laO0FHN0lZO0VBQ0k7QUgrSWhCO0FHeElRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIMElaO0FHcklJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUh1SVI7O0FHbklBO0VBQ0k7QUhzSUo7O0FHbElBO0VBQ0k7RUFDQTtBSHFJSjtBR25JSTtFQUNJO0FIcUlSOztBSTdMQTtFQUNJO0FKZ01KOztBSzlMQTtFQUNJO0FMaU1KOztBSzlMQTtFQUNJO0FMaU1KOztBSzlMQTtFQUNJO0FMaU1KOztBSzlMQTtFQUVRO0lBQ0k7SUFDQTtFTGdNVjtBQUNGO0FNcE5BO0VBQ0k7SUFDSTtFTnNOTjtBQUNGO0FPek5BO0VBRUk7QVAwTko7QU94TlE7RUFDSTtFQUNBO0VBQ0E7QVAwTlo7QU94Tlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBUDBOaEI7QU92Tlk7RUFDSTtFQUNBO0FQeU5oQjtBT3ROWTtFQUNJO0VBQ0E7QVB3TmhCOztBUTVPSTs7RUFDSTtBUmdQUjtBUTlPUTs7RUFDSTtFQUNBO0FSaVBaOztBUXhPUTs7RUFDSTtBUjRPWjs7QVFuT1E7O0VBQ0k7QVJ1T1o7O0FRbE9BO0VBQ0k7QVJxT0o7O0FRL05JOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJtT1I7O0FRL05BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSa09KO0FRaE9JO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QVJrT1I7QVEvTkk7RUFDSTtFQUNBO0VBQ0E7QVJpT1I7O0FRN05BO0VBQ0k7QVJnT0o7O0FROU5BO0VBQ0k7QVJpT0o7O0FRL05BO0VBQ0k7QVJrT0o7O0FTNVNnQjtFQUNJO0VBQ0E7RUFDQTtBVCtTcEI7QVMzU1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUNlNoQjtBUzNTZ0I7RUFDSTtBVDZTcEI7QVMxU2dCO0VBQ0k7QVQ0U3BCOztBU2pTSTtFQUNJO0FUb1NSO0FTalNJO0VBQ0k7RUFDQTtFQUNBO0FUbVNSOztBVTNVSTtFQURKO0lBR1E7SUFDQTtFVjhVTjtBQUNGOztBV3JWQTs7OztFQUlFO0FYd1ZGOztBV3JWQTtFQUNJO0FYd1ZKOztBV3JWQTtFQUNJO0VBQ0E7QVh3VkosQzs7OztBWXRXQTs7RUFFSTtBQUNKLEM7Ozs7QUNIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtBQUNKOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0FBQ0osQzs7OztBQ2pCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFBSjtBQUNJO0VBQ0k7RUFDQTtBQUNSO0FBRUk7RUFDSTtBQUFSO0FBR0k7RUFDSTtBQURSLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC11aS11dGlsaXR5L3Njc3MvbXh0YWxlcnRzLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtdWktdXRpbGl0eS9zY3NzL214dG1vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtdWktdXRpbGl0eS9zY3NzL214dC1icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHR1c2VybW9kYWxzLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtdWktdXRpbGl0eS9zY3NzL214dGZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtdWktdXRpbGl0eS9zY3NzL214dGNvbW1vbi5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9zcGxhc2hzY3JlZW4uc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC11aS11dGlsaXR5L3Njc3MvdXBkYXRlLXNwaW5uZXIuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC11aS11dGlsaXR5L3Njc3MvbG9hZGluZy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9ub3RpZmljYXRpb24tYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtdWktdXRpbGl0eS9zY3NzL214dC1wcm9kdWN0LWF2YWlsYWJpbGl0eS5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHRwb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtdWktdXRpbGl0eS9zY3NzL214dGhvdHNwb3Quc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC11aS11dGlsaXR5L3Njc3MvbXh0dmFycy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHRidG4uc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1zcGlucy1jb21tb24vc2Nzcy9jb21wb25lbnRzL3N3aXRjaC5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXNwaW5zLWNvbW1vbi9zY3NzL2Rvd25sb2FkLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtc3BpbnMtY29tbW9uL3Njc3MvY29tbW9udWkuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1zcGlucy1jb21tb24vc2Nzcy9jb21wb25lbnRzL2J1dHRvbi1iYXIuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1zcGlucy1jb21tb24vc2Nzcy9nbG9iYWwuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1zcGlucy1jb21tb24vc2Nzcy9jb21wb25lbnRzL3dlYi1hci5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXNwaW5zLWNvbW1vbi9zY3NzL3dlYmFyLW9uLWRlbWFuZC5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXNwaW5zLWNvbW1vbi9zY3NzL3dlYmFyLWRlc2t0b3AtbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1zcGlucy1jb21tb24vc2Nzcy9jb21wb25lbnRzL2Fib3V0LnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQtc3BpbnMtY29tbW9uL3Njc3MvY29tcG9uZW50cy92aWV3ZXItYm90dG9tLXJpZ2h0LWNvbnRhaW5lci5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9kZW1vLXVzZXItY29udHJvbC5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LTNkLXNwaW4tdmlld2VyL3Njc3MvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC0zZC1zcGluLXZpZXdlci9zY3NzL2RpbWVuc2lvbnMuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC0zZC1zcGluLXZpZXdlci9zY3NzL2hkLXJlbmRlci5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXNwaW5zLWNvbW1vbi9zY3NzL3ByZXNldC12aWV3cy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHRkcm9wZG93bi5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL214dC10b2FzdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2dsb2JhbC5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL214dC1wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL21vZHVsZXMvY29uZmlndXJhdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL21vZHVsZXMvY29sbGFwc2Uuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvY29tcG9uZW50cy9oZWxwLW1lLWRlY2lkZS5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL214dC10b2FzdC5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9teHRmaWx0ZXIuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvbXh0ZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvY29tcG9uZW50cy9vcHRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvc3RlcHMtb3B0aW9ucy1jb21tb24uc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvY29tcG9uZW50cy9zdGVwcy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9tb2R1bGVzL2NvbmZpZ3VyYXRvckl0ZW1TZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvY29uZmlndXJhdG9yU3RlcEdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL21vZHVsZXMvY29uZmlnLXNlbGVjdGlvbi5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL21vZGFsU2hhcmUuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvY29tcG9uZW50cy9jdGFzLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvaGVhZGVyLXNrdS5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL21vZGFscy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL3BpY2tlci1zY3JvbGxhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvcGlja2VyLWNvbnRhaW5lci5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LWtvbmdmaWd1cmF0b3Ivc2Nzcy9jb21wb25lbnRzL3ByaWNpbmcuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvY29tcG9uZW50cy9zdWJoZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL25vZGVfbW9kdWxlcy9AbXh0L214dC1rb25nZmlndXJhdG9yL3Njc3MvY29tcG9uZW50cy92aWV3ZXItY29udGFpbmVyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvdmlydHVhbC1hc3Npc3RhbnQtY2hhdC5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXZpcnR1YWwtYXNzaXN0YW50L3Njc3MvZ2xvYmFsLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvdmlydHVhbC1hc3Npc3RhbnQtaW4tdmlld2VyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9ub2RlX21vZHVsZXMvQG14dC9teHQta29uZ2ZpZ3VyYXRvci9zY3NzL2NvbXBvbmVudHMvdmlydHVhbC1hc3Npc3RhbnQtbW9iaWxlLWNvbnRhaW5lci5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vbm9kZV9tb2R1bGVzL0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2NvbXBvbmVudHMvb3JkZXJTd2F0Y2hQbHVnaW4vbW9iaWxlLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2NvbXBvbmVudHMvb3JkZXJTd2F0Y2hQbHVnaW4vaW5kZXguc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvY29tcG9uZW50cy9BZGRUb1dpc2hsaXN0UmVnaXN0cnlDb21wb25lbnQuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvY29tcG9uZW50cy9PcmRlckFTd2F0Y2guc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvY29tcG9uZW50cy9Qcm9tb1ByaWNpbmdDb21wb25lbnQuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvY29uZmlndXJhdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2N1c3RvbS5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vc2Nzcy9mb250cy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vc2Nzcy9jb21wb25lbnRzL0NUQXNDb21wb25lbnQuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvbXh0ZmlsdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL214dGRyb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL3BpY2tlci1jb250YWluZXIuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvcGlja2VyLXNjcm9sbGFibGUuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvcHJpY2luZy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vc2Nzcy9zdGVwcy5zY3NzIiwid2VicGFjazovL0BteHQvYmxkLTNkLXByb2R1Y3QtY29uZmlnLy4vc2Nzcy9maWx0ZXItb3ZlcnJpZGVzLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2J1dHRvbi1iYXItb3ZlcnJpZGVzLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2NvbXBvbmVudHMvc3RlcHMuc2NzcyIsIndlYnBhY2s6Ly9AbXh0L2JsZC0zZC1wcm9kdWN0LWNvbmZpZy8uL3Njc3MvY29tcG9uZW50cy9vcHRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2NvbXBvbmVudHMvVktTdW1tYXJ5LnNjc3MiLCJ3ZWJwYWNrOi8vQG14dC9ibGQtM2QtcHJvZHVjdC1jb25maWcvLi9zY3NzL2NvbXBvbmVudHMvUmVzZXRCdXR0b24uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIubXh0LWFsZXJ0LWRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cbi5teHQtYWxlcnQtY29udGVudCB7XG4gICAgcGFkZGluZzogMHB4IDI1cHggNDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAubXh0LWJ0biB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuICAgIC5teHQtY2hlY2tib3gge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgfVxufVxuXG4ubXh0LWFsZXJ0LXRleHQubXh0LWFsZXJ0LWluZm8ge1xuICAgIGNvbG9yOiB2YXIoLS1teHQtZm9udC1jb2xvcik7XG59XG5cbi5teHQtYWxlcnQtaW5wdXQtY2xlYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDI1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ubXh0LWFsZXJ0LWlucHV0LWNsZWFyOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ubXh0LWFsZXJ0LXRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1teHQtZm9udC1jb2xvcik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZyk7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG59XG5cbi5teHQtYWxlcnQtZGFuZ2VyIHtcbiAgICBjb2xvcjogI2E5NDQ0MjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJkZWRlO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWJjY2QxO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbn1cblxuLm14dC1hbGVydC10ZXh0Lm14dC1hbGVydC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4ubXh0LWFsZXJ0LWlucHV0LWRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dC5teHQtYWxlcnQtaW5wdXQge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWxnKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ubXh0LWFsZXJ0LXByb21wdC15ZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4ubXh0LWFsZXJ0LXByb21wdC10aGlyZCB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm14dC1hbGVydC1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgICAvKiogbWFrZSBzdXJlIGl0IHN0aWxsIGZpdHMqL1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiQGltcG9ydCAnLi4vLi4vbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHQtYnJlYWtwb2ludHMuc2Nzcyc7XG5cbi5teHQtbW9kYWwtYmFja2dyb3VuZC5teHQtZnVsbC1tb2RhbC1zY3JlZW4ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB6LWluZGV4OiAxMDAwNTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogMXMgYWxsIGVhc2U7XG59XG5cbi5teHQtbW9kYWwtZGl2IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDVweCAxcHggcmdiKDEwMCwgMTAwLCAxMDApO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogODAlO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qKiBzbyB4IGJ1dHRvbiBzaG93cyovXG5cbiAgICAubXh0LW1vZGFsLWNvbnRlbnQge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KHNtKSB7XG4gICAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICB9XG59XG5cbi5teHQtZGVmYXVsdC1tb2RhbC1oZWFkZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubXh0LWRlZmF1bHQtbW9kYWwtaGVhZGVyIHtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1oZWFkZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1teHQtZm9udC1jb2xvcik7XG4gICAgcGFkZGluZzogMTNweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uY2xvc2VCdXR0b24ge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMjBweDtcbiAgICByaWdodDogLTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCBibGFjaztcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmNsb3NlSWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbiIsIkBtaXhpbiBtZWRpYS1xdWVyeSgkYnJlYWtwb2ludCkge1xuICAgIEBpZiAkYnJlYWtwb2ludCA9PSAnbWF4LXNtJyB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICdtYXgtbWQnIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ21heC1sZycge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ21heC14bCcge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ21heC14eGwnIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICd4cycge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY2cHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSAnc20nIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ3NtLW9ubHknIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSAnbWQnIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ21kLW9ubHknIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ2xnJyB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSAneGwnIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICd4eGwnIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICdtb2JpbGUtcG9ydHJhaXQnIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDcwMHB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICd0YWJsZXQtcG9ydHJhaXQnIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSAnbW9iaWxlLWxhbmRzY2FwZScge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICd0YWJsZXQtbGFuZHNjYXBlJyB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gJ2FsbC1wb3J0cmFpdCcge1xuICAgICAgICBAbWVkaWEgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICdyZXRpbmEnIHtcbiAgICAgICAgQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09ICdyZXRpbmEtbGcnIHtcbiAgICAgICAgLy8gV2UgbmVlZCB0aGlzIGNoZWNrIHNlcGFyYXRlbHkgZnJvbSB0aGUgYmFzZSByZXRpbmEgY2hlY2sgYXMgc29tZSBsYXB0b3BzL2Rlc2t0b3BzIGFyZSByZXRpbmEgYW5kIGFzIHN1Y2ggd2UgbWlnaHQgbmVlZCBzdHlsZXMgb25seSBmb3IgdGhlbVxuICAgICAgICBAbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChtaW4td2lkdGg6IDEyMDBweCksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJy4vbXh0LWJyZWFrcG9pbnRzLnNjc3MnO1xuXG4jbG9naW4tbW9kYWwsXG4jcmVnaXN0ZXItbW9kYWwge1xuICAgIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuZmxleC1mb3JtLXBhcmVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1mbGV4LWZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTY1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWlucHV0LWxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtbG9naW4tcmVnaXN0ZXItbW9kYWwtZXF1YWwtZmxleCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5pbWctY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWxvZ2luLXJlZ2lzdGVyLWhlcm8pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgLmZyZWVSZWdpc3RyYXRpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KG1kKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jbG9naW4tbW9kYWwsXG4jcmVnaXN0ZXItbW9kYWwge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZy1ib2xkKTtcbiAgICB9XG59XG5cbiNsb2dpbi1tb2RhbCB7XG4gICAgd2lkdGg6IDkwMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICNsb2dpbkZvcm0ge1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnkoc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnkoc20pIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgI3NhdmVSZW1pbmRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgI2ZvcmdvdFBhc3N3b3JkQnRuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgICAgICAgICBjb2xvcjogIzRmYzFkZjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubG9naW4tbW9kYWwge1xuICAgIGhlaWdodDogNDc3cHg7XG59XG5cbiNyZWdpc3Rlci1tb2RhbCB7XG4gICAgd2lkdGg6IDkwMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgI3JlZ2lzdGVyRm9ybSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuXG4gICAgLmZvcm0tY29udGFpbmVyIHtcbiAgICAgICAgJiAuaGVscC1ibG9jayB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1hbGVydC1kYW5nZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWJ1dHRvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIFdlIG5lZWQgdG8gcmVzdHJpY3QgdGhlIGhlaWdodCBvbiB0YWJsZXQgc28gdGhhdCB3ZSBjYW4gZm9yY2UgdGhlIG1vZGFsIHRvIHNjcm9sbCBhbmQgZml0IG9uIHRoZSBzY3JlZW4sIGJ1dCB3ZSBvbmx5IHdhbnQgdGhhdCBpbiBsYW5kc2NhcGUgKi9cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeShtb2JpbGUtbGFuZHNjYXBlKSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMzMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeShtb2JpbGUtcG9ydHJhaXQpIHtcbiAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KHRhYmxldC1sYW5kc2NhcGUpIHtcbiAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgfVxufVxuXG4uYmFja2dyb3VuZC1zYXZlLXBvcG92ZXItY29udGFpbmVyLFxuLmJhY2tncm91bmQtc2F2ZS1wb3BvdmVyLWNvbnRhaW5lcl9fYmx1ZXByaW50IHtcbiAgICAvLyBTaW5jZSB3ZSdyZSBkb2luZyB1c2luZyB0aGUgcG9wb3ZlciBjbGFzcyBpbiBhIHNsaWdodGx5IG9kZCB3YXkgd2UgbmVlZCB0byBmb3JjZSB0aGUgcG9zaXRpb24gdG8gbmV2ZXIgbGlzdGVuIHRvIHRoYXQgY2xhc3NcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHRvcDogdW5zZXQgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmLm14dC1wb3BvdmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICB9XG5cbiAgICAubXh0LW1vZGFsLWFycm93LW91dGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2F2aW5nLXByb2dyZXNzIHtcbiAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcblxuICAgICAgICAucHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM5LCAyMzksIDI0NCwgMSk7XG5cbiAgICAgICAgICAgICNiYWNrZ3JvdW5kLXNhdmUtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzRmYzFkZiAtMTElLCAjNGZjMWRmIDcyJSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNhdmluZy1jb21wbGV0ZSB7XG4gICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LXJpZ2h0LWdyYWRpZW50KTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgLnNhdmUtZmFpbHVyZSB7XG4gICAgICAgIHdpZHRoOiAzMzBweDtcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcblxuICAgICAgICAubXh0LWN0YS1idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC1kYXJrLWRyb3Atc2hhZG93KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5lcnJvci1pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5iYWNrZ3JvdW5kLXNhdmUtcG9wb3Zlci1jb250YWluZXJfX2JsdWVwcmludCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMTVweDtcbiAgICBtYXJnaW46IC04MHB4IDAgMCAyMHB4O1xufVxuKiB+IC5iYWNrZ3JvdW5kLXNhdmUtcG9wb3Zlci1jb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4iLCJAaW1wb3J0IFwiLi9teHQtYnJlYWtwb2ludHMuc2Nzc1wiO1xuXG4ubXh0LWZvcm0taW5wdXQtZXJyb3IgLmhlbHAtYmxvY2ssXG4ubXh0LWZvcm0taW5wdXQtZXJyb3IgbGFiZWwge1xuICBjb2xvcjogI2E5NDQ0Mjtcbn1cblxuLm14dC1mb3JtLWlucHV0LWVycm9yIGlucHV0LFxuLm14dC1mb3JtLWlucHV0LWVycm9yIHRleHRhcmVhIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2E5NDQ0Mjtcbn1cblxuLmhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ubXh0LWZvcm0tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgbWluLWhlaWdodDogMDtcblxuICAubXh0LWZvcm0tY29udGVudHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMzBweCAyMHB4IDMwcHg7XG4gICAgZmxleDogMTtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KHNtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5teHQtZmxleC1mb3JtLXJvdyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLm14dC1mb3JtLWlucHV0LWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbjogMTBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeShzbSkge1xuICAgICAgICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZm9ybS1jb250cm9sIHtcbiAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWxnKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWRyb3Bkb3duLWNvbnRhaW5lciB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgLm14dC1kcm9wZG93biB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTsgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIGRyb3Bkb3duIGJveCBnb3ZlIG92ZXJ0b3Agb2YgdGhlIHRoaW5ncyBiZWxvdyBpdCBpbiB0aGUgZm9ybVxuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeShzbSkge1xuICAgICAgICAgICAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LWRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG5cbiAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGcpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udHJvbC1lcnJvciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBjb2xvcjogI2FhNDQ0MjtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmludmFsaWQge1xuICAgICAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYWE0NDQyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5teHQtZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAwIDJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4ICNhYTQ0NDI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNvbnRyb2wtZXJyb3Ige1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1mb3JtLWJ1dHRvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgIH1cblxuICAgICAgLm14dC1jdGEtYnV0dG9uIHsgICAgICAgIFxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICYubG9hZGluZzpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tbG9hZGluZy1pbWFnZS11cmwpO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5teHQtZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NzE0MztcbiAgICBib3JkZXI6IHZhcigtLW14dC1mb3JtLWNvbnRyb2wtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tbXh0LWZvcm0tY29udHJvbC1ib3gtc2hhZG93KTtcbiAgICBoZWlnaHQ6IHZhcigtLW14dC1mb3JtLWNvbnRyb2wtaGVpZ2h0KTtcbn1cbi5teHQtZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5teHQge1xuICAgIGZvbnQtc3ludGhlc2lzOiBub25lO1xufVxuXG5Aa2V5ZnJhbWVzIG14dC1mYWRlSW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbXh0LWZhZGVPdXQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG5cbi8qYW5pbWF0aW9ucyovXG5Aa2V5ZnJhbWVzIG14dC1wb3Age1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9XG4gICAgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4ubXh0LWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMjVzO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5teHQtYW5pbWF0ZWQtcGF1c2Uge1xuICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XG59XG5cbi5teHQtYW5pbWF0ZS1wb3Age1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICBhbmltYXRpb24tbmFtZTogbXh0LXBvcDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xufVxuXG4ubXh0LWFuaW1hdGUtc2hyaW5rIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuXG4ubXh0LWZhZGVPdXQge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBteHQtZmFkZU91dDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm14dC1mYWRlSW4ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBteHQtZmFkZUluO1xufVxuXG4ubXh0LWZ1bGwtbW9kYWwtc2NyZWVuIHtcbiAgICBsZWZ0OiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5teHQtY2hlY2tib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIGlucHV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG5cbiAgICAgICAgJjpjaGVja2VkICsgLm14dC1jaGVja2JveC1jaGVja21hcmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtY2hlY2tib3gtY2hlY2tlZC1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LWNoZWNrYm94LWNoZWNrbWFyayB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vYXNzZXRzL2ltZy9jaGVja21hcmtTcHJpdGUuc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICBib3JkZXI6IHZhcigtLW14dC1jaGVja2JveC1ib3JkZXIpO1xuICAgIH1cbn1cblxuLyoqXG4gICAgKiBNeHQgc3dpdGNoIHNob3VsZCBiZSBpbiBmb3JtYXRcbiAgICAqIDxkaXYgY2xhc3M9XCJteHQtc3dpdGNoLWNvbnRhaW5lclwiPlxuICAgICAgICA8cCBjbGFzcz0nbXh0LXN3aXRjaC1sYWJlbCc+T2ZmPC9wPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJteHQtc3dpdGNoXCI+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgY2hlY2tlZD5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXh0LXNsaWRlclwiPjwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPHAgY2xhc3M9J214dC1zd2l0Y2gtbGFiZWwnPk9uPC9wPlxuICAgIDwvZGl2PlxuICAgICovXG5cbi5teHQtc3dpdGNoLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLm14dC1zd2l0Y2gtY29udGFpbmVyLm14dC1zd2l0Y2gtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ubXh0LXN3aXRjaC1sYWJlbCB7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgcGFkZGluZzogMHB4IDVweDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tbXh0LWZvbnQtY29sb3IpO1xufVxuXG4ubXh0LXN3aXRjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG59XG5cbi5teHQtc3dpdGNoIGlucHV0IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubXh0LXN3aXRjaCBpbnB1dDpjaGVja2VkICsgLm14dC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQ6ICM0Y2Q5NjQ7XG59XG4ubXh0LXN3aXRjaC1jb250YWluZXIubXh0LXN3aXRjaC1kaXNhYmxlZCAubXh0LXN3aXRjaCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubXh0LXN3aXRjaCAubXh0LXNsaWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTJlMjtcbiAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC40cztcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4ubXh0LXN3aXRjaCAubXh0LXNsaWRlcjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgcmlnaHQ6IDM4cHg7XG4gICAgYm90dG9tOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjRzO1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4ubXh0LXN3aXRjaCBpbnB1dDpjaGVja2VkICsgLm14dC1zbGlkZXI6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzNnB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDM2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzNnB4KTtcbn1cblxuJHN3aXRjaFRyYWNrSGVpZ2h0OiAyMHB4O1xuJHN3aXRjaFRyYWNrV2lkdGg6IDQwcHg7XG4kc3dpdGNoVHJhY2tQYWRkaW5nOiAycHg7XG4kc3dpdGNoVGh1bWJTaXplOiAkc3dpdGNoVHJhY2tIZWlnaHQgLSAkc3dpdGNoVHJhY2tQYWRkaW5nICogMjtcblxuLy8gb3ZlcnJpZGUgc3dpdGNoIHN0eWxpbmcgdG8gYmUgc21hbGxlciB0aGFuIHRoZSBkZWZhdWx0IHN0eWxlc1xuLm14dC1zd2l0Y2gtY29udGFpbmVyLm14dC1zd2l0Y2gtY29udGFpbmVyLXNtYWxsLXRvZ2dsZSB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAubXh0LXN3aXRjaCB7XG4gICAgICAgIHdpZHRoOiAkc3dpdGNoVHJhY2tXaWR0aDtcbiAgICAgICAgaGVpZ2h0OiAkc3dpdGNoVHJhY2tIZWlnaHQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuXG4gICAgICAgIGlucHV0OmNoZWNrZWQge1xuICAgICAgICAgICAgKyAubXh0LXNsaWRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdG9nZ2xlLWJsdWUpO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHN3aXRjaFRyYWNrV2lkdGggLSAkc3dpdGNoVHJhY2tIZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzd2l0Y2hUcmFja1dpZHRoIC0gJHN3aXRjaFRyYWNrSGVpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzd2l0Y2hUcmFja1dpZHRoIC0gJHN3aXRjaFRyYWNrSGVpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXNsaWRlciB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoVGh1bWJTaXplO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkc3dpdGNoVGh1bWJTaXplO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJHN3aXRjaFRodW1iU2l6ZTtcbiAgICAgICAgICAgICAgICBpbnNldDogJHN3aXRjaFRyYWNrUGFkZGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1mb250LWhlYWRlci1sZyB7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtaGVhZGVyLWxnKTtcbn1cbi5teHQtZm9udC1oZWFkZXIge1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWhlYWRlcik7XG59XG4ubXh0LWZvbnQtc3ViaGVhZGVyIHtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1zdWJoZWFkZXIpO1xufVxuLm14dC1mb250LWJvZHktbGcge1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGcpO1xufVxuLm14dC1mb250LWJvZHktbGctYm9sZCB7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZy1ib2xkKTtcbn1cbi5teHQtZm9udC1ib2R5IHtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbn1cbi5teHQtZm9udC1ib2R5LWJvbGQge1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG59XG4ubXh0LWZvbnQtYm9keS1zbSB7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1zbSk7XG59XG5cbi5teHQtaG92ZXItb3Zlci1pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYubXh0LWhvdmVyLW92ZXItaW1hZ2UtbWFudWFsLXRyaWdnZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbn1cblxuLm14dC1ib3VuY2UtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAycHg7XG59XG5cbi5teHQtYm91bmNlLWNvbnRhaW5lcjpob3ZlciAubXh0LWJvdW5jZSB7XG4gICAgdG9wOiAtMnB4O1xufVxuLm14dC1ib3VuY2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIHRvcCBlYXNlO1xuICAgIHRvcDogMHB4O1xufVxuXG4ubXh0LWZyYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLyoqIGNhbm5vdCB1c2Ugc3lzdGVtIGZvbnQsIG5vdCBuZWFybHkgZW5vdWdoIHNwYWNlIHRvIHN0YWNrKi9cbiAgICBmb250LXNpemU6IDdweDtcbiAgICBwYWRkaW5nOiAwIDAuMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm14dC1mcmFjdGlvbjpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNjY2O1xuICAgIGNvbnRlbnQ6IGF0dHIodG9wKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gICAgcGFkZGluZzogMCAwLjJlbTtcbn1cbi5teHQtZnJhY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoYm90dG9tKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gICAgcGFkZGluZzogMCAwLjJlbTtcbn1cblxuLm14dC1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm14dC12aXNpYmlsaXR5LWhpZGRlbiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXh0LXJvdGF0ZS0xODAge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi8qIHJlbmRlcmVyIFdlYkdMIENhbnZhcyAqL1xuLm14dC1jYW52YXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjdXJzb3I6IGluaGVyaXQ7XG59XG5cbi5teHQtc3Itb25seSB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbn1cbiIsIiNteHQtc3BsYXNoc2NyZWVuLWxvZ2luLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4jZGVzY29wZS1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgZm9ybSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxufVxuXG4jbXh0LXNwbGFzaHNjcmVlbi1sZWdhY3ktc2lnbi1pbiB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHdpZHRoOiAzMDBweDtcbn1cbiIsIi5teHQtc3BpbnMtbG9hZGluZy1wcm9ncmVzcy1iYWNrZ3JvdW5kLnVwZGF0ZS1sb2FkaW5nIHtcbiAgICB6LWluZGV4OiAxMDAxMDA7XG59XG4iLCI6cm9vdCB7XG4gICAgLS1teHQtbG9hZGluZy1jb250YWluZXItcGFkZGluZzogMTVweCAyNXB4O1xuICAgIC0tbXh0LWxvYWRpbmctYmFyLWJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG4gICAgLS1teHQtbG9hZGluZy1iYXItYmFja2dyb3VuZC1jb2xvci1kYXJrOiAjYTVhNWE1O1xuICAgIC0tbXh0LWxvYWRpbmctYmFyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LXJpZ2h0LWdyYWRpZW50KTtcbiAgICAtLW14dC1sb2FkaW5nLWJhci1oZWlnaHQ6IDEwcHg7XG4gICAgLS1teHQtbG9hZGluZy1ib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIC0tbXh0LWxvYWRpbmctY29udGFpbmVyLWJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG4gICAgLS1teHQtbG9hZGluZy1jb250YWluZXItYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbXh0LWxvYWRpbmctY29udGFpbmVyLWJhY2tncm91bmQpO1xuICAgIC0tbXh0LWxvYWRpbmctYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAtLW14dC1sb2FkaW5nLWJhY2tncm91bmQtY29sb3ItZGltOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICAgIC0tbXh0LWxvYWRpbmctYmFja2dyb3VuZC1jb2xvci1icmlnaHQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuQGtleWZyYW1lcyBhbmltYXRlLWluZGV0ZXJtaW5hdGUge1xuICAgIGZyb20ge1xuICAgICAgICBsZWZ0OiAtMjUlO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIGxlZnQ6IDc1JTtcbiAgICB9XG59XG5cbi5teHQtc3BpbnMtbG9hZGluZy1wcm9ncmVzcy1iYWNrZ3JvdW5kIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAzO1xuICAgICYud2l0aC1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWxvYWRpbmctYmFja2dyb3VuZC1jb2xvcik7XG5cbiAgICAgICAgJi5kaW0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWxvYWRpbmctYmFja2dyb3VuZC1jb2xvci1kaW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5icmlnaHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWxvYWRpbmctYmFja2dyb3VuZC1jb2xvci1icmlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1zcGlucy1sb2FkaW5nLXByb2dyZXNzLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbXh0LWxvYWRpbmctY29udGFpbmVyLXBhZGRpbmcpO1xuICAgICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgICAgd2lkdGg6IDQyMHB4O1xuXG4gICAgICAgIC5teHQtcHJvZ3Jlc3MtaGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWhlYWRlcik7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXByb2dyZXNzLW1lc3NhZ2Uge1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZyk7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXByb2dyZXNzLWhlYWRlcixcbiAgICAgICAgLm14dC1wcm9ncmVzcy1tZXNzYWdlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtZm9udC1jb2xvcik7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXNwaW5zLWxvYWRpbmctcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1teHQtbG9hZGluZy1iYXItaGVpZ2h0KTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1sb2FkaW5nLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgICAgICAubXh0LXByb2dyZXNzLWJhY2tncm91bmQsXG4gICAgICAgICAgICAubXh0LXByb2dyZXNzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtbG9hZGluZy1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm14dC1wcm9ncmVzcy1iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtbG9hZGluZy1iYXItYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5teHQtcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtbG9hZGluZy1iYXItY29sb3IpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaW5kZXRlcm1pbmF0ZSB7XG4gICAgICAgICAgICAgICAgLm14dC1wcm9ncmVzcyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRlLWluZGV0ZXJtaW5hdGU7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYud2l0aC1iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1sb2FkaW5nLWNvbnRhaW5lci1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIGJvcmRlcjogdmFyKC0tbXh0LWxvYWRpbmctY29udGFpbmVyLWJvcmRlcik7XG5cbiAgICAgICAgICAgIC5teHQtcHJvZ3Jlc3MtYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LWxvYWRpbmctYmFyLWJhY2tncm91bmQtY29sb3ItZGFyayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubXh0LW5vdGlmaWNhdGlvbi1iYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMTFweCA1cHggMTFweCAyNXB4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbmZvLWJhY2tncm91bmQpO1xuICAgIGJvcmRlcjogdmFyKC0taW5mby1ib3JkZXIpO1xuXG4gICAgJi5teHQtbm90aWZpY2F0aW9uLWJhci1pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW5mby1iYWNrZ3JvdW5kKTtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1pbmZvLWJvcmRlcik7XG4gICAgfVxuICAgICYubXh0LW5vdGlmaWNhdGlvbi1iYXItd2FybmluZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdhcm5pbmctYmFja2dyb3VuZCk7XG4gICAgICAgIGJvcmRlcjogdmFyKC0td2FybmluZy1ib3JkZXIpO1xuICAgIH1cbiAgICAmLm14dC1ub3RpZmljYXRpb24tYmFyLWVycm9yIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZXJyb3ItYmFja2dyb3VuZCk7XG4gICAgICAgIGJvcmRlcjogdmFyKC0tZXJyb3ItYm9yZGVyKTtcbiAgICB9XG4gICAgJi5teHQtbm90aWZpY2F0aW9uLWJhci1zdWNjZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VjY2Vzcy1iYWNrZ3JvdW5kKTtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1zdWNjZXNzLWJvcmRlcik7XG4gICAgfVxuXG4gICAgLm5vdGlmaWNhdGlvbi10eXBlLWljb24ge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG4gICAgLm14dC1idG4ubXh0LWJ0bi1pY29uLW9ubHkge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgIH1cblxuICAgIC5ub3RpZmljYXRpb24tZG9udC1zaG93LWFnYWluIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjIsIDExNywgMTM0LCAxKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgIC0taW5mby1iYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAtLWluZm8tYm9yZGVyOiBub25lO1xuICAgIC0td2FybmluZy1iYWNrZ3JvdW5kOiAjZjllZGRjO1xuICAgIC0td2FybmluZy1ib3JkZXI6IDFweCBzb2xpZCNERkE1NEY7XG4gICAgLS1lcnJvci1iYWNrZ3JvdW5kOiAjZjJkNWQ4O1xuICAgIC0tZXJyb3ItYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbXh0LWVycm9yLWNvbG9yKTtcbiAgICAtLXN1Y2Nlc3MtYmFja2dyb3VuZDogI2Q2ZWFkYztcbiAgICAtLXN1Y2Nlc3MtYm9yZGVyOiAxcHggc29saWQgIzMyOTc0ZTtcbn1cbiIsIi5teHQtcHJvZHVjdC1hdmFpbGFiaWxpdHkge1xuICAgICYtaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi1wb3BvdmVyIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG59IiwiLm14dC1wb3BvdmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTA2MDtcbiAgICBtYXgtd2lkdGg6IDIzMHB4O1xuICAgIG1pbi13aWR0aDogNTBweDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogdmFyKC0tbXh0LXRvb2xiYXItZm9udC1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC1kYXJrLWRyb3Atc2hhZG93KTtcblxuICAgIC8qIFRvIGFsbG93IGZvciBnZXRCb3VuZGluZ0NsaWVudFJlY3QgYmVmb3JlIGRpc3BsYXkgKi9cbiAgICAmLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmLmxlZnQsXG4gICAgJi5yaWdodCB7XG4gICAgICAgICYuYm90dG9tIHtcbiAgICAgICAgICAgIC5teHQtbW9kYWwtYXJyb3ctb3V0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogY2FsYygxMDAlIC0gNTVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxlZnQsXG4gICAgJi5yaWdodCB7XG4gICAgICAgICYudG9wIHtcbiAgICAgICAgICAgIC5teHQtbW9kYWwtYXJyb3ctb3V0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubXh0LXRpcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LXJpZ2h0LWdyYWRpZW50KTtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1ib2xkKTtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgLm14dC1tb2RhbC1hcnJvdy1pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LXJpZ2h0LWdyYWRpZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtbWVudS1sZWZ0LWFycm93IHtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LW1lbnUtcmlnaHQtYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG5cbiAgICAgICAgICAgIC5teHQtbW9kYWwtYXJyb3ctaW5uZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtbWVudS10b3AtYXJyb3cge1xuICAgICAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGVmdCxcbiAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubXh0LWhvdHNwb3QtbW9kYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDVweDtcbiAgICBsZWZ0OiA1cHg7XG4gICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICBtYXgtaGVpZ2h0OiAyNSU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGdyZXk7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiA1cHg7XG5cbiAgICAubXh0LWhvdHNwb3QtbW9kYWwtaGVhZGVyIHtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGctYm9sZCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICB9XG4gICAgLm14dC1ob3RzcG90LW1vZGFsLXRleHQge1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgfVxuICAgIC5teHQtaG90c3BvdC1tb2RhbC1saW5rIHtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10b2dnbGUtYmx1ZSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxufSIsIkBjaGFyc2V0ICdVVEYtOCc7XG46cm9vdCB7XG4gICAgLyoqIENvbmZpZ3VyYWJsZSBjb2xvcnMgKi9cbiAgICAtLW14dC1jb3JuZXItcm91bmRuZXNzOiA2cHg7XG4gICAgLyogbXVzdCBiZSByZ2IsIG5vdCBoZXgsIGJ1dCB3aXRob3V0IHRoZSBwYXJlbnRoZXNlcyBzbyB3ZSBjYW4gYXBwbHkgYW4gb3BhY2l0eSB3aXRoaW4gaXRcbiAgICAgICBmb3IgZXhhbXBsZSwgMjU1LDI1NSwyNTUgTk9UIHJnYigyNTUsMjU1LDI1NSkqL1xuICAgIC0tbXh0LWNsaWVudC1wcmltYXJ5LXJnYjogMCwgMCwgMDtcblxuICAgIC8qIG11c3QgYmUgcmdiLCBub3QgaGV4LCBidXQgd2l0aG91dCB0aGUgcGFyZW50aGVzZXMgc28gd2UgY2FuIGFwcGx5IGFuIG9wYWNpdHkgd2l0aGluIGl0XG4gICAgICAgZm9yIGV4YW1wbGUsIDI1NSwyNTUsMjU1IE5PVCByZ2IoMjU1LDI1NSwyNTUpKi9cbiAgICAtLW14dC1jbGllbnQtc2Vjb25kYXJ5LXJnYjogMCwgMCwgMDtcblxuICAgIC8qIG11c3QgYmUgcmdiLCBub3QgaGV4LCBidXQgd2l0aG91dCB0aGUgcGFyZW50aGVzZXMgc28gd2UgY2FuIGFwcGx5IGFuIG9wYWNpdHkgd2l0aGluIGl0XG4gICAgICAgZm9yIGV4YW1wbGUsIDI1NSwyNTUsMjU1IE5PVCByZ2IoMjU1LDI1NSwyNTUpKi9cbiAgICAtLW14dC1jbGllbnQtZHJvcC1zaGFkb3ctcmdiOiAwLCAwLCAwO1xuXG4gICAgLS1teHQtY2xpZW50LWJsdWVwcmludC1hY3RpdmUtdG9vbGJhci1idXR0b246IHJnYig3OSwgMTkzLCAyMjMpO1xuXG4gICAgLS1teHQtY3RhLWJ1dHRvbi1kcm9wLXNoYWRvdzogMCAxcHggMCAwIHZhcigtLW14dC1jbGllbnQtZHJvcC1zaGFkb3cpLCAwIDAgMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIC0tbXh0LWN0YS1idXR0b24tYm9yZGVyLXRoaWNrbmVzczogMHB4O1xuICAgIC0tbXh0LWN0YS1idXR0b24tYm9yZGVyLWNvbG9yOiAjYzFjMWMxO1xuICAgIC0tbXh0LWN0YS1idXR0b24tZm9udC1jb2xvcjogI2ZmZmZmZjtcblxuICAgIC0tbXh0LW5vbi1jdGEtYnV0dG9uLWRyb3Atc2hhZG93OiB2YXIoLS1teHQtZGFyay1kcm9wLXNoYWRvdyk7XG4gICAgLS1teHQtbm9uLWN0YS1idXR0b24tYm9yZGVyLXRoaWNrbmVzczogMHB4O1xuICAgIC0tbXh0LW5vbi1jdGEtYnV0dG9uLWJvcmRlci1jb2xvcjogI2MxYzFjMTtcbiAgICAtLW14dC1ub24tY3RhLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIC0tbXh0LW5vbi1jdGEtYnV0dG9uLWZvbnQtY29sb3I6ICMyMjI4MzI7XG5cbiAgICAtLW14dC10b29sYmVsdC1idG4tZHJvcC1zaGFkb3c6IHZhcigtLW14dC1kYXJrLWRyb3Atc2hhZG93KTtcbiAgICAtLW14dC10b29sYmVsdC1idG4tYm9yZGVyLXRoaWNrbmVzczogMHB4O1xuICAgIC0tbXh0LXRvb2xiZWx0LWJ0bi1ib3JkZXItY29sb3I6ICNjMWMxYzE7XG4gICAgLS1teHQtdG9vbGJlbHQtYnRuLWJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgLS1teHQtdG9vbGJlbHQtYnRuLWZvbnQtY29sb3I6ICMyMjI4MzI7XG5cbiAgICAtLW14dC1uYXYtY29udHJvbC1kcm9wLXNoYWRvdzogdmFyKC0tbXh0LWRhcmstZHJvcC1zaGFkb3cpO1xuICAgIC0tbXh0LW5hdi1jb250cm9sLWJvcmRlci10aGlja25lc3M6IDBweDtcbiAgICAtLW14dC1uYXYtY29udHJvbC1ib3JkZXItY29sb3I6ICNjMWMxYzE7XG4gICAgLS1teHQtbmF2LWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAtLW14dC1uYXYtY29udHJvbC1mb250LWNvbG9yOiAjMjIyODMyO1xuICAgIC0tbXh0LW5hdi1jb250cm9sLXByaW1hcnktYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1yaWdodC1ncmFkaWVudCk7XG4gICAgLS1teHQtbmF2LWNvbnRyb2wtcHJpbWFyeS1mb250LWNvbG9yOiB2YXIoLS1teHQtY3RhLWJ1dHRvbi1mb250LWNvbG9yKTtcblxuICAgIC0tbXh0LWFjdGlvbi1tZW51LWRyb3Atc2hhZG93OiB2YXIoLS1teHQtZGFyay1kcm9wLXNoYWRvdyk7XG4gICAgLS1teHQtYWN0aW9uLW1lbnUtYm9yZGVyLXRoaWNrbmVzczogMHB4O1xuICAgIC0tbXh0LWFjdGlvbi1tZW51LWJvcmRlci1jb2xvcjogI2MxYzFjMTtcbiAgICAtLW14dC1hY3Rpb24tbWVudS1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIC0tbXh0LWFjdGlvbi1tZW51LWZvbnQtY29sb3I6ICMyMjI4MzI7XG5cbiAgICAtLW14dC10b29sdGlwLWRyb3Atc2hhZG93OiB2YXIoLS1teHQtZGFyay1kcm9wLXNoYWRvdyk7XG4gICAgLS1teHQtdG9vbHRpcC1ib3JkZXItdGhpY2tuZXNzOiAwcHg7XG4gICAgLS1teHQtdG9vbHRpcC1ib3JkZXItY29sb3I6ICNjMWMxYzE7XG4gICAgLS1teHQtdG9vbHRpcC1mb250LWNvbG9yOiAjMjIyODMyO1xuXG4gICAgLS1teHQtdG9vbGJhci1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIC0tbXh0LXRvb2xiYXItYnV0dG9uLWNvbG9yOiAjZjVmNWY1O1xuICAgIC0tbXh0LXRvb2xiYXItZm9udC1jb2xvcjogIzIyMjgzMjtcbiAgICAtLW14dC10b29sYmFyLWRpdmlkZXItY29sb3I6ICNkOGQ4ZDg7XG4gICAgLS1teHQtdG9vbGJhci1jdGEtYnV0dG9uLWNvbG9yOiAjNWM1YzVjO1xuICAgIC0tbXh0LXRvb2xiYXItY3RhLWZvbnQtY29sb3I6ICNmZmZmZmY7XG4gICAgLS1teHQtdG9vbGJhci1jdGEtZGl2aWRlci1jb2xvcjogIzRjNGM0YztcblxuICAgIC0tbXh0LWRpbWVuc2lvbi1waXAtYm9yZGVyLWNvbG9yOiAjNGZjMWRmO1xuXG4gICAgLS1teHQtZXJyb3ItY29sb3I6ICNiZTJjM2I7XG5cbiAgICAvKiogZm9ybXMgKi9cbiAgICAtLW14dC1mb3JtLWNvbnRyb2wtYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgLS1teHQtZm9ybS1jb250cm9sLWJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLS1teHQtZm9ybS1jb250cm9sLWJvcmRlci1jb2xvcjogIzNkM2QzZDtcbiAgICAtLW14dC1mb3JtLWNvbnRyb2wtYm9yZGVyOiB2YXIoLS1teHQtZm9ybS1jb250cm9sLWJvcmRlci13aWR0aCkgdmFyKC0tbXh0LWZvcm0tY29udHJvbC1ib3JkZXItc3R5bGUpIHZhcigtLW14dC1mb3JtLWNvbnRyb2wtYm9yZGVyLWNvbG9yKTtcbiAgICAtLW14dC1mb3JtLWNvbnRyb2wtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgIC0tbXh0LWZvcm0tY29udHJvbC1oZWlnaHQ6IDUwcHg7XG5cbiAgICAvKiogY2hlY2tib3ggKi9cbiAgICAtLW14dC1jaGVja2JveC1ib3JkZXItd2lkdGg6IDNweDtcbiAgICAtLW14dC1jaGVja2JveC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIC0tbXh0LWNoZWNrYm94LWJvcmRlci1jb2xvcjogIzllOWU5ZTtcbiAgICAtLW14dC1jaGVja2JveC1ib3JkZXI6IHZhcigtLW14dC1jaGVja2JveC1ib3JkZXItd2lkdGgpIHZhcigtLW14dC1jaGVja2JveC1ib3JkZXItc3R5bGUpIHZhcigtLW14dC1jaGVja2JveC1ib3JkZXItY29sb3IpO1xuICAgIC0tbXh0LWNoZWNrYm94LWNoZWNrZWQtY29sb3I6ICM5MGQ0MjU7XG5cbiAgICAvKiogZm9udHMgKi9cbiAgICAtLW14dC1mb250OiBNdWxpc2g7XG4gICAgLS1teHQtZm9udC1oZWFkZXItbGc6IDgwMCAzMHB4IHZhcigtLW14dC1mb250KTtcbiAgICAtLW14dC1mb250LWhlYWRlcjogODAwIDIycHggdmFyKC0tbXh0LWZvbnQpO1xuICAgIC0tbXh0LWZvbnQtc3ViaGVhZGVyOiA3MDAgMTVweCB2YXIoLS1teHQtZm9udCk7XG5cbiAgICAtLW14dC1mb250LWJvZHktbGc6IDUwMCAxNXB4IHZhcigtLW14dC1mb250KTtcbiAgICAtLW14dC1mb250LWJvZHktbGctYm9sZDogNzAwIDE1cHggdmFyKC0tbXh0LWZvbnQpO1xuICAgIC0tbXh0LWZvbnQtYm9keTogNTAwIDEzcHggdmFyKC0tbXh0LWZvbnQpO1xuICAgIC0tbXh0LWZvbnQtYm9keS1ib2xkOiA3MDAgMTNweCB2YXIoLS1teHQtZm9udCk7XG4gICAgLS1teHQtZm9udC1ib2R5LXNtOiA1MDAgMTFweCB2YXIoLS1teHQtZm9udCk7XG4gICAgLS1teHQtZm9udC1ib2R5LWV4LXNtOiA1MDAgMTBweCB2YXIoLS1teHQtZm9udCk7XG5cbiAgICAtLW14dC1sb2dpbi1yZWdpc3Rlci1oZXJvOiAndXJsKFwiXCIpJztcblxuICAgIC0tc3R5bGUtZ3JpZC1pbWFnZS1zaXplLXNtOiA2NHB4O1xuICAgIC0tc3R5bGUtZ3JpZC1pbWFnZS1zaXplLW1kOiA2NHB4O1xuICAgIC0tc3R5bGUtZ3JpZC1pbWFnZS1zaXplLWxnOiA3MHB4O1xuICAgIC0tc3R5bGUtZ3JpZC1pbWFnZS1zaXplLXNtLXdpZGU6IDEwMHB4O1xuICAgIC0tc3R5bGUtZ3JpZC1pbWFnZS1zaXplLW1kLXdpZGU6IDEyMHB4O1xuICAgIC0tc3R5bGUtZ3JpZC1pbWFnZS1zaXplLWxnLXdpZGU6IDE0MHB4O1xuXG4gICAgLyoqIE5vbiBjb25maWd1cmFibGUgY29sb3JzKiovXG4gICAgLS1teHQtZGFyay1kcm9wLXNoYWRvdzogMCAxcHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDAgMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIC0tbXh0LWNsaWVudC1wcmltYXJ5OiByZ2IodmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5LXJnYikpO1xuICAgIC0tbXh0LWNsaWVudC1kcm9wLXNoYWRvdzogcmdiKHZhcigtLW14dC1jbGllbnQtZHJvcC1zaGFkb3ctcmdiKSk7XG4gICAgLS1teHQtY2xpZW50LXNlY29uZGFyeTogcmdiKHZhcigtLW14dC1jbGllbnQtc2Vjb25kYXJ5LXJnYikpO1xuICAgIC0tbXh0LWJ1dHRvbi1kaXNhYmxlZC1mb250LWNvbG9yOiAjYTVhNWE1O1xuICAgIC0tbXh0LWZvbnQtY29sb3I6ICMyMjI4MzI7XG4gICAgLS1teHQtZm9udC1jb2xvci1kaXNhYmxlZDogI2JlYmViZTtcbiAgICAtLW14dC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcblxuICAgIC0tcHJpbWFyeS1yaWdodC1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpLCB2YXIoLS1teHQtY2xpZW50LXNlY29uZGFyeSkpO1xuICAgIC0tcHJpbWFyeS10b3AtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSksIHZhcigtLW14dC1jbGllbnQtc2Vjb25kYXJ5KSk7XG5cbiAgICAtLWZhbmN5LXJvdGF0ZS1vdmVybGF5LWNvbG9yOiAjMmFhY2UyO1xuICAgIC8qaW4gZWRnZSwgY2Fubm90IHVzZSBzcGFjZSBldmVubHksIG11c3QgdXNlIHNwYWNlIGFyb3VuZDsgaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9pc3N1ZXMvMTU5NDc2OTIvICovXG4gICAgLS1zcGFjZS1ldmVubHk6IHNwYWNlLWV2ZW5seTtcblxuICAgIC0tbXh0LWFjdGlvbi1tZW51LWl0ZW0td2lkdGg6IDcwcHg7XG4gICAgLS1teHQtdG9vbGJhci13aWR0aDogMTYwcHg7XG4gICAgLS1teHQtaW50ZXJzdGl0aWFsLXRvb2xiYXItd2lkdGg6IDE2MHB4O1xuXG4gICAgLS1ob3Zlci1ibHVlOiAjZWRmOWZjO1xuICAgIC0tdG9nZ2xlLWJsdWUtcmdiOiA3OSwgMTkzLCAyMjM7IC8qIzRmYzFkZiovXG4gICAgLS10b2dnbGUtYmx1ZTogcmdiKHZhcigtLXRvZ2dsZS1ibHVlLXJnYikpO1xuXG4gICAgLS10b2dnbGUtZ3JlZW4tcmdiOiA4OSwgMTkxLCA4OTtcbiAgICAtLXRvZ2dsZS1ncmVlbjogcmdiKHZhcigtLXRvZ2dsZS1ncmVlbi1yZ2IpKTtcblxuICAgIC0tbXh0LXByaW1hcnktbG9nby13aWR0aDogMzAwcHg7XG4gICAgLS1teHQtbmF2LWNvbnRyb2wtYnV0dG9uLXByaW1hcnktd2lkdGg6IDE0NXB4O1xuXG4gICAgLy8gTmF2aWdhdGlvbiBNZW51XG4gICAgLS1teHQtbmF2LW1lbnUtaGVpZ2h0OiA0NHB4O1xuXG4gICAgLS1teHQtZ3VpZGVkLWRlc2lnbi1mb250LWNvbG9yOiAjZmZmZmZmO1xuICAgIC0tbXh0LWd1aWRlZC1kZXNpZ24tYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xuXG4gICAgLS1teHQtZGVzaWduLW1vZGUtcGFuZWwtd2lkdGg6IDM0MHB4O1xuXG4gICAgLy8gS29uZyBzdHlsZXNcbiAgICAtLWtvbmctYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogcmdiKDAsIDAsIDApO1xuICAgIC0ta29uZy1iYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgLS1rb25nLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiByZ2IoMCwgMCwgMCk7XG4gICAgLS1rb25nLXRleHQtY29sb3ItaG92ZXI6IHJnYigyNTUsIDI1NSwgMjU1KTtcbn1cblxuLyogRWRnZSBvbmx5ICovXG5Ac3VwcG9ydHMgKC1tcy1hY2NlbGVyYXRvcjogdHJ1ZSkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1zcGFjZS1ldmVubHk6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG59XG4iLCJAaW1wb3J0ICcuLi8uLi9teHQtdWktdXRpbGl0eS9zY3NzL214dC1icmVha3BvaW50cy5zY3NzJztcblxuLyoqIFN0YW5kYXJkIGJ1dHRvbnMgKi9cbi5teHQtYnRuIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8qKiBNWFQtOTA3ODogdG8gZml4IGZsaWNrZXIgb24gZmlsdGVyOmJyaWdodG5lc3M6IGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzIzNjE5NTIwL2Nocm9tZS1mbGlja2VyaW5nLW9uLXdlYmtpdC1maWx0ZXItYmx1ci8yNDA2MjY3MCAqL1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBjb2xvcjogdmFyKC0tbXh0LWZvbnQtY29sb3IpO1xuXG4gICAgKjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgLy8gLm14dC10cmFuc2l0aW9uLWluIGNsYXNzIHByZWNlZWRzIGEgdHJhbnNpdGlvbiBjbGFzcyBiZWxvd1xuICAgICYubXh0LXRyYW5zaXRpb24taW4ge1xuICAgICAgICAvLyB0byBhbmltYXRlIC5teHQtdHJhbnNpdGlvbi1pbiByZW1vdmUgYW55IG9mIHRoZSBmb2xsb3dpbmcgY2xhc3Nlc1xuICAgICAgICAvKiAgRXhhbXBsZTogPGJ1dHRvbiBjbGFzcz1cIm14dC1idG4gbXh0LXRyYW5zaXRpb24taW4gbXh0LXRyYW5zaXRpb24taW4tPHR5cGU+XCI+XG4gICAgICAgICAqIFxuICAgICAgICAgKiAgUmVtb3ZlaW5nIGNsYXNzIC5teHQtdHJhbnNpdGlvbi1pbi08dHlwZT4gd2lsbCBjYXVzZSBidXR0b24gdG8gdHJhbnNpdGlvbiBpbiBiYXNlZCBvbiBkZWZhdWx0cyBzZXQgYWJvdmVcbiAgICAgICAgICovXG5cbiAgICAgICAgLy8gZGVmZWF1bHRzIGZvciAubXh0LXRyYW5zaXRpb25cbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAvLyAubXh0LXRyYW5zaXRpb24taW4gdHlwZXM6XG4gICAgICAgICYubXh0LXRyYW5zaXRpb24taW4tb3BhY2l0eSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LWJ0bi1sYWJlbCB7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb25CYXNlQnV0dG9uTGFiZWwge1xuICAgICAgICAmLm14dC1idG4tbGFiZWwge1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm14dC1ibHVlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRvZ2dsZS1ibHVlKTtcbiAgICB9XG5cbiAgICAmLm14dC1ncmVlbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10b2dnbGUtZ3JlZW4pO1xuICAgIH1cblxuICAgICYubXh0LWJ0bi10b2dnbGVkIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdG9nZ2xlLWJsdWUpO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB9XG5cbiAgICAmLm14dC1zcGxpdC1idXR0b24ge1xuICAgICAgICBtaW4td2lkdGg6IDBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICYubXh0LW5hdi1jb250cm9sLWJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tbXh0LW5hdi1tZW51LWhlaWdodCk7XG4gICAgfVxuXG4gICAgJi5teHQtYnRuLWljb24tb25seSB7XG4gICAgICAgICYubXh0LW5hdi1jb250cm9sLWJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tbXh0LW5hdi1tZW51LWhlaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWZ1bGwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmLm5hdmlnYXRpb25CYXNlQnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuXG4gICAgICAgICYubmF2aWdhdGlvblBhbmVsTGFiZWxUb2dnbGUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC10b29sYmFyLWZvbnQtY29sb3IpO1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgICAgICAgICBmbGV4OiAwIDAgdmFyKC0tbXh0LW5hdi1tZW51LWhlaWdodCk7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5teHQtYnRuLWRpc2FibGVkIHtcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubmF2aWdhdGlvbkJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC10b29sYmFyLWJ1dHRvbi1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdG9vbGJhci1mb250LWNvbG9yKTtcblxuICAgICAgICAmLm5hdmlnYXRpb25CdXR0b25NYWluIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC10b29sYmFyLWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5uYXZpZ2F0aW9uUXVpY2tMaW5rIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LXRvb2xiYXItY3RhLWJ1dHRvbi1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdG9vbGJhci1jdGEtZm9udC1jb2xvcik7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmLm14dC1ub24tY3RhLWJ1dHRvbi5teHQtYnRuLWRpc2FibGVkLFxuICAgICYubXh0LWN0YS1idXR0b24ubXh0LWJ0bi1kaXNhYmxlZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtYnV0dG9uLWRpc2FibGVkLWZvbnQtY29sb3IpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5teHQtdG9vbGJlbHQtaXRlbSxcbiAgICAmLm14dC1uYXYtY29udHJvbC1idXR0b24sXG4gICAgJi5teHQtYWN0aW9uLW1lbnUtaXRlbSB7XG4gICAgICAgICYubXh0LWJ0bi1kaXNhYmxlZCB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubXh0LXRvb2xiZWx0LWl0ZW0sXG4gICAgJi5teHQtbmF2LWNvbnRyb2wtYnV0dG9uIHtcbiAgICAgICAgJi5teHQtYnRuLWRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgICAgIGZpbHRlcjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeShsZykge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXh0LWJ0bi1tZCB7XG4gICAgd2lkdGg6IDE0MHB4O1xufVxuXG4ubXh0LWJ0bi1sZyB7XG4gICAgd2lkdGg6IDI0MHB4O1xufVxuXG4ubXh0LWJ0bi1pY29uLW9ubHkge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbn1cblxuLm14dC1idG4tbm8tYmcge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4ubXh0LWJ0bi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tdG9nZ2xlLWJsdWUpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGhlaWdodDogdW5zZXQ7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgbWFyZ2luOiAwLjVyZW0gMDtcbn1cblxuaW1nLm14dC1idG4taWNvbi1hYnNvbHV0ZS1sZWZ0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMjVweDtcbiAgICB3aWR0aDogMjVweDtcbn1cblxuLm14dC1jdGEtYnV0dG9uIHtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1teHQtY3RhLWJ1dHRvbi1kcm9wLXNoYWRvdyk7XG4gICAgY29sb3I6IHZhcigtLW14dC1jdGEtYnV0dG9uLWZvbnQtY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktcmlnaHQtZ3JhZGllbnQpO1xuICAgIGJvcmRlcjogdmFyKC0tbXh0LWN0YS1idXR0b24tYm9yZGVyLXRoaWNrbmVzcykgc29saWQgdmFyKC0tbXh0LWN0YS1idXR0b24tYm9yZGVyLWNvbG9yKTtcbn1cbi5teHQtbm9uLWN0YS1idXR0b24ge1xuICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC1ub24tY3RhLWJ1dHRvbi1kcm9wLXNoYWRvdyk7XG4gICAgY29sb3I6IHZhcigtLW14dC1ub24tY3RhLWJ1dHRvbi1mb250LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtbm9uLWN0YS1idXR0b24tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyOiB2YXIoLS1teHQtbm9uLWN0YS1idXR0b24tYm9yZGVyLXRoaWNrbmVzcykgc29saWQgdmFyKC0tbXh0LW5vbi1jdGEtYnV0dG9uLWJvcmRlci1jb2xvcik7XG59XG5cbi5teHQtc3BsaXQtYnV0dG9uIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgfVxufVxuXG4vKiogZGVmYXVsdHMgdG8gYm90dG9tIGFycm93ICovXG4ubXh0LW1vZGFsLWFycm93LW91dGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMjVweCk7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmLm14dC1tZW51LW5vLWFycm93IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvKiogdG9wICovXG4gICAgJi5teHQtbWVudS10b3AtYXJyb3cge1xuICAgICAgICB0b3A6IC0yNXB4O1xuXG4gICAgICAgIC5teHQtbW9kYWwtYXJyb3ctaW5uZXIge1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKiBsZWZ0ICovXG4gICAgJi5teHQtbWVudS1sZWZ0LWFycm93IHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICAgICAgICBsZWZ0OiAtMjVweDtcblxuICAgICAgICAubXh0LW1vZGFsLWFycm93LWlubmVyIHtcbiAgICAgICAgICAgIHRvcDogLTI1cHg7XG4gICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKiByaWdodCAqL1xuICAgICYubXh0LW1lbnUtcmlnaHQtYXJyb3cge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMjVweCk7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG5cbiAgICAgICAgLm14dC1tb2RhbC1hcnJvdy1pbm5lciB7XG4gICAgICAgICAgICB0b3A6IC0yNXB4O1xuICAgICAgICAgICAgbGVmdDogLTEwMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLm14dC1tb2RhbC1hcnJvdy1pbm5lciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW14dC1hY3Rpb24tbWVudS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1teHQtYWN0aW9uLW1lbnUtZHJvcC1zaGFkb3cpO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHRvcDogLTEwMHB4O1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi8qKiBUb29sYmVsdCovXG4ubXh0LXRvb2xiZWx0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC10b29sYmVsdC1idG4tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC10b29sYmVsdC1idG4tZHJvcC1zaGFkb3cpO1xuICAgIGNvbG9yOiB2YXIoLS1teHQtdG9vbGJlbHQtYnRuLWZvbnQtY29sb3IpO1xuICAgIGJvcmRlcjogdmFyKC0tbXh0LXRvb2xiZWx0LWJ0bi1ib3JkZXItdGhpY2tuZXNzKSBzb2xpZCB2YXIoLS1teHQtdG9vbGJlbHQtYnRuLWJvcmRlci1jb2xvcik7XG59XG5cbi8qKiBBY3Rpb24gTWVudSAqL1xuLm14dC1hY3Rpb24tbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtYWN0aW9uLW1lbnUtYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC1hY3Rpb24tbWVudS1kcm9wLXNoYWRvdyk7XG4gICAgY29sb3I6IHZhcigtLW14dC1hY3Rpb24tbWVudS1mb250LWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLW14dC1hY3Rpb24tbWVudS1ib3JkZXItdGhpY2tuZXNzKSBzb2xpZCB2YXIoLS1teHQtYWN0aW9uLW1lbnUtYm9yZGVyLWNvbG9yKTtcblxuICAgICYudW5kb2NrZWQge1xuICAgICAgICAubXh0LWFjdGlvbi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG5cbiAgICAgICAgICAgICYubXh0LWNvbGxhcHNlZC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xuICAgICAgICAgICAgICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5teHQtbWVudS1ib3R0b20tYXJyb3cge1xuICAgIC5hY3Rpb24tbWVudS1kcmFnIHtcbiAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIH1cbn1cbi5teHQtbWVudS1yaWdodC1hcnJvdyB7XG4gICAgLmFjdGlvbi1tZW51LWRyYWcge1xuICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTBweCA1cHg7XG4gICAgfVxufVxuLm14dC1tZW51LWxlZnQtYXJyb3cge1xuICAgIC5hY3Rpb24tbWVudS1kcmFnIHtcbiAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMHB4IDVweDtcbiAgICB9XG59XG4ubXh0LW1lbnUtdG9wLWFycm93IHtcbiAgICAuYWN0aW9uLW1lbnUtZHJhZyB7XG4gICAgICAgIGJvdHRvbTogLTVweDtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICB9XG59XG5cbi8qKiBTaGFyZWQgdG9vbGJlbHQgYW5kIGFjdGlvbiBtZW51ICovXG4ubXh0LXRvb2xiZWx0LFxuLm14dC1hY3Rpb24tbWVudSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyBXZSBoYXZlIHRvIHVzZSBpbXBvcnRhbnQgc28gdGhhdCBpdCB3aWxsIHByZXZlbnQgdGhlIHppbmRleCB0aGF0IGdldHMgc2V0IGJ5IHRoZSBJQ29tcG9uZW50IGNsYXNzIGZyb20gdGFraW5nIHByaW9yaXR5LCBjYXVzZSBpdCBzZXRzIGl0IGxvd2VyIHRoYW4gdGhlIHNpZGVwYW5lbFxuICAgIHotaW5kZXg6IDUwMDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAubXh0LXRvb2xiZWx0LWNvbnRhaW5lcixcbiAgICAubXh0LWFjdGlvbi1tZW51LWNvbnRhaW5lcixcbiAgICAubXh0LWFjdGlvbi1zdWItbWVudS1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDAgMTBweDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgICAgICYubXh0LWNvbGxhcHNlZC1sYWJlbCB7XG4gICAgICAgICAgICBnYXA6IDAgNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gd2hlbiBzdWItbWVudSBpcyB2aXNpYmxlLCBzd2FwIHRoZSBtZW51LWNvbnRhaW5lciBhbmQgc3ViLW1lbnUgcG9zaXRpb25zLFxuICAgIC8vIHNvIGFjdGlvbi1tZW51IHRha2VzIGZ1bGwgaGVpZ2h0IG9mIHN1Yi1tZW51IG9wdGlvbnMsIGFuZCBzdWItbWVudSBpc24ndCBjdXQgb2ZmLlxuICAgIC8vIChtYXliZSBub3QgdGhlIGJlc3QgZml4LCBidXQgcHJldmVudHMgdXMgZnJvbSBoYXZpbmcgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQpXG4gICAgJjpoYXMoLm14dC1hY3Rpb24tc3ViLW1lbnUubXh0LWFjdGlvbi1zdWItbWVudS12aXNpYmxlKSB7XG4gICAgICAgIC5teHQtYWN0aW9uLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYudW5kb2NrZWQge1xuICAgICAgICAgICAgLm14dC1hY3Rpb24tc3ViLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAubXh0LWFjdGlvbi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51Lm14dC1hY3Rpb24tc3ViLW1lbnUtdmlzaWJsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LWFjdGlvbi1zdWItbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UgMC40cztcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIG1pbi13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAmLm14dC1hY3Rpb24tc3ViLW1lbnUtdmlzaWJsZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICB9XG5cbiAgICAubXh0LWFjdGlvbi1tZW51LWJhY2stYnV0dG9uIHtcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIC8qKiBPdmVycmlkZSB0aGUgYnV0dG9uIHN0eWxlcyAqL1xuICAgIC5teHQtYnRuIHtcbiAgICAgICAgJi5teHQtdG9vbGJlbHQtaXRlbSxcbiAgICAgICAgJi5teHQtYWN0aW9uLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuXG4gICAgICAgICAgICAubXh0LWJ0bi1sYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5teHQtY29sbGFwc2VkLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTsgLy8gbWFrZSBpbWcgc2FtZSB3aWR0aCBjb250YWluZXIgYWJvdmVcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubXh0LWJ0bi1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMHB4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5teHQtYWN0aW9uLW1lbnUtaXRlbS1lbXB0eSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBTZXQgdGhlIHN0eWxlcyBmb3Igd2hlbiBkb2NrZWQgaW4gdmFyaW91cyBsb2NhdGlvbnMgKi9cbiAgICAmLmJvdHRvbS1jZW50ZXIge1xuICAgICAgICAubXh0LXRvb2xiZWx0LWNvbnRhaW5lcixcbiAgICAgICAgLm14dC1hY3Rpb24tbWVudS1jb250YWluZXIsXG4gICAgICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG4gICAgICAgICAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICAgICAgICAmLm14dC1jb2xsYXBzZWQtbGFiZWwge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LXRvb2xiZWx0LWl0ZW0sXG4gICAgICAgICAgICAubXh0LWFjdGlvbi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWFjdGlvbi1zdWItbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDJkMmQyO1xuXG4gICAgICAgICAgICAubXh0LWJ0bi5teHQtYWN0aW9uLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubXh0LWNvbGxhcHNlZC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgLm14dC1idG4ubXh0LWFjdGlvbi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubXh0LWFjdGlvbi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAubXh0LWJ0bi5teHQtYWN0aW9uLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubXh0LWNvbGxhcHNlZC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgLm14dC1idG4ubXh0LWFjdGlvbi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudG9wLXJpZ2h0LFxuICAgICYuYm90dG9tLXJpZ2h0IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAubXh0LXRvb2xiZWx0LWNvbnRhaW5lcixcbiAgICAgICAgLm14dC1hY3Rpb24tbWVudS1jb250YWluZXIsXG4gICAgICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICAgICAgLm14dC10b29sYmVsdC1pdGVtLFxuICAgICAgICAgICAgLm14dC1hY3Rpb24tbWVudS1pdGVtIHtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1hY3Rpb24tc3ViLW1lbnUge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2QyZDJkMjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnRvcC1yaWdodCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7XG5cbiAgICAgICAgLm14dC1hY3Rpb24tc3ViLW1lbnUge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5ib3R0b20tcmlnaHQge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgICAgICAubXh0LWFjdGlvbi1zdWItbWVudSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnVuZG9ja2VkIHtcbiAgICAgICAgLm14dC10b29sYmVsdC1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm14dC10b29sYmVsdC1jb250YWluZXIsXG4gICAgICAgIC5teHQtYWN0aW9uLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIC5teHQtdG9vbGJlbHQtaXRlbSxcbiAgICAgICAgICAgIC5teHQtYWN0aW9uLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51IHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI1cHgpO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtYWN0aW9uLXN1Yi1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkMmQyZDI7XG4gICAgICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmF2aWdhdGlvbkJ1dHRvbkNvbnRhaW5lckJveFNoYWRvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogdmFyKC0tbXh0LXRvb2xiYXItd2lkdGgpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiKDAgMCAwIC8gMjUlKTtcbiAgICB6LWluZGV4OiAxMDUwOyAvL2JlaGluZCBwb3BvdmVyc1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubmF2aWdhdGlvbkJ1dHRvbkNvbnRhaW5lci5oaWRkZW4gKyAubmF2aWdhdGlvbkJ1dHRvbkNvbnRhaW5lckJveFNoYWRvdyxcbi5uYXZpZ2F0aW9uQnV0dG9uQ29udGFpbmVyLm14dC1oaWRkZW4gKyAubmF2aWdhdGlvbkJ1dHRvbkNvbnRhaW5lckJveFNoYWRvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqIFRvb2xiYXIgKi9cbi5uYXZpZ2F0aW9uQnV0dG9uQ29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXg6IDAgMCB2YXIoLS1teHQtdG9vbGJhci13aWR0aCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAubmF2aWdhdGlvbkJhclNjcm9sbEJ1dHRvbkNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHotaW5kZXg6IDExMTE7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLm5hdmlnYXRpb25CYXJTY3JvbGxEb3duIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlNWU1ZTUgNDQlKTtcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgICAgICYubmF2aWdhdGlvbkJhclNjcm9sbFVwIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlNWU1ZTUgNDQlKTtcbiAgICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2aWdhdGlvbkJhclNjcm9sbEJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luOiA2cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubmF2aWdhdGlvbkJ1dHRvbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIHotaW5kZXg6IDEwMDE7IC8qMSBtb3JlIHRoYW4gbmF2aWdhdGlvbiBwYW5lbCovXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LXRvb2xiYXItYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuXG4gICAgLy9zY3JvbGwgc2hvdWxkIGJlIGFsbG93ZWQgYnV0IG5vdCBzaG93LCBiLmMgd2UgaGF2ZSB0aGUgYnV0dG9ucyBmb3Igc2Nyb2xsaW5nIGFuZCB0aGUgc2Nyb2xsIGJhciBvdmVybGFwcyB0ZXh0XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAqL1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uQmFzZUJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tbXh0LW5hdi1tZW51LWhlaWdodCk7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgICNuYXZpZ2F0aW9uUGFuZWxCdXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG5cbiAgICAgICAgLm5hdmlnYXRpb25CdXR0b25XcmFwcGVyIHtcbiAgICAgICAgICAgIC5uYXZpZ2F0aW9uQnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNuYXZpZ2F0aW9uUGFuZWxMYWJlbFRvZ2dsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgI25hdmlnYXRpb25RdWlja0xpbmtzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXG4gICAgICAgIC5uYXZpZ2F0aW9uQmFzZUJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdmlnYXRpb24tbGFiZWxzLWNvbGxhcHNlZCB7XG4gICAgLm5hdmlnYXRpb25CYXNlQnV0dG9uTGFiZWwge1xuICAgICAgICAmLm14dC1idG4tbGFiZWwge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25CdXR0b25XcmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICAubmF2aWdhdGlvbi1sYWJlbHMtY29sbGFwc2VkICYge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICYubmF2aWdhdGlvbkJ1dHRvblRvb2xiYXJUaXAge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmlnYXRpb24tbGFiZWxzLWNvbGxhcHNlZCAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm5hdmlnYXRpb25CdXR0b25Ub29sYmFySGVhZGVyIHtcbiAgICAgICAgLm5hdmlnYXRpb24tbGFiZWxzLWNvbGxhcHNlZCAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWJvbGQpO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtZm9udC1jb2xvcik7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25QYW5lbEJ1dHRvbnMge1xuICAgIGZsZXg6IDE7XG59XG5cbi5uYXZpZ2F0aW9uUXVpY2tMaW5rUHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tcHJpbWFyeS1yaWdodC1ncmFkaWVudCkgIWltcG9ydGFudDtcbn1cblxuLm5hdmlnYXRpb25CYXNlQnV0dG9uSW1nIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBmbGV4OiAwIDAgNTBweDtcbn1cblxuLm5hdmlnYXRpb25CYXNlQnV0dG9uTGFiZWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5uYXZpZ2F0aW9uQnV0dG9uRmxhZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDBweDtcbiAgICB0b3A6IDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDVweDtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5uYXZpZ2F0aW9uQnV0dG9uRmxhZ0N1cnJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi8qKiBOYXYgQ29udHJvbCAqL1xuLm14dC1uYXYtY29udHJvbC1idXR0b24tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tbXh0LW5hdi1jb250cm9sLWRyb3Atc2hhZG93KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG5cbiAgICAubXh0LWJ0biB7XG4gICAgICAgICYubXh0LW5hdi1jb250cm9sLWJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5teHQtbmF2LWNvbnRyb2wtYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgfVxuICAgICAgICAmLmZvcmNlLWZpcnN0IHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgfVxuICAgICAgICAmLmZvcmNlLWxhc3Qge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5teHQtbmF2LWNvbnRyb2wtYnV0dG9uIHtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1teHQtbmF2LWNvbnRyb2wtZHJvcC1zaGFkb3cpO1xuICAgIGNvbG9yOiB2YXIoLS1teHQtbmF2LWNvbnRyb2wtZm9udC1jb2xvcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LW5hdi1jb250cm9sLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGJvcmRlcjogdmFyKC0tbXh0LW5hdi1jb250cm9sLWJvcmRlci10aGlja25lc3MpIHNvbGlkIHZhcigtLW14dC1uYXYtY29udHJvbC1ib3JkZXItY29sb3IpO1xuXG4gICAgJi5teHQtbmF2LWRpc2FibGVkIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogI2U1ZTVlNTtcbiAgICAgICAgY29sb3I6IHZhcigtLW14dC1idXR0b24tZGlzYWJsZWQtZm9udC1jb2xvcik7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgJi5teHQtbmF2LWNvbnRyb2wtYnV0dG9uLXByaW1hcnkge1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LW5hdi1jb250cm9sLXByaW1hcnktZm9udC1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1uYXYtY29udHJvbC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHdpZHRoOiB2YXIoLS1teHQtbmF2LWNvbnRyb2wtYnV0dG9uLXByaW1hcnktd2lkdGgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi5teHQtbmF2LWRpc2FibGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7XG4gICAgICAgIH1cblxuICAgICAgICAmIC5teHQtYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTQ1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdmlnYXRpb25CdXR0b25CcmVhayB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLW14dC10b29sYmFyLWRpdmlkZXItY29sb3IpO1xufVxuXG4ubmF2aWdhdGlvblF1aWNrTGlua0JyZWFrIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tbXh0LXRvb2xiYXItY3RhLWRpdmlkZXItY29sb3IpO1xufVxuLm5hdmlnYXRpb25RdWlja0xpbmtCcmVhazpsYXN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2aWdhdGlvbkJhc2VCdXR0b25CcmVhayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ubXh0TWFpbk1lbnVCdXR0b25zIHtcbiAgICAubXh0LWJ0bi1kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDtcblxuICAgICAgICAqIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gcGhvbmUgbW9kZVxuYm9keS5teHQtcm9vbS1wbGFubmVyLXBob25lIHtcbiAgICAubXh0LWFjdGlvbi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCIkc3dpdGNoVHJhY2tIZWlnaHQ6IDE1cHg7XG4kc3dpdGNoVHJhY2tXaWR0aDogMzVweDtcbiRzd2l0Y2hUcmFja1BhZGRpbmc6IDJweDtcbiRzd2l0Y2hUaHVtYlNpemU6ICRzd2l0Y2hUcmFja0hlaWdodCAtICRzd2l0Y2hUcmFja1BhZGRpbmcgKiAyO1xuXG4vLyBvdmVycmlkZSBzd2l0Y2ggc3R5bGluZyB0byBiZSBzbWFsbGVyIHRoYW4gdGhlIGRlZmF1bHQgc3R5bGVzXG4ubXh0LXN3aXRjaC1jb250YWluZXIge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC5teHQtc3dpdGNoIHtcbiAgICAgICAgd2lkdGg6ICRzd2l0Y2hUcmFja1dpZHRoO1xuICAgICAgICBoZWlnaHQ6ICRzd2l0Y2hUcmFja0hlaWdodDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQ7XG5cbiAgICAgICAgaW5wdXQ6Y2hlY2tlZCB7XG4gICAgICAgICAgICArIC5teHQtc2xpZGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHN3aXRjaFRyYWNrV2lkdGggLSAkc3dpdGNoVHJhY2tIZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzd2l0Y2hUcmFja1dpZHRoIC0gJHN3aXRjaFRyYWNrSGVpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzd2l0Y2hUcmFja1dpZHRoIC0gJHN3aXRjaFRyYWNrSGVpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXNsaWRlciB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoVGh1bWJTaXplO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkc3dpdGNoVGh1bWJTaXplO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJHN3aXRjaFRodW1iU2l6ZTtcbiAgICAgICAgICAgICAgICBpbnNldDogJHN3aXRjaFRyYWNrUGFkZGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJy4vY29tcG9uZW50cy9zd2l0Y2guc2Nzcyc7XG5cbi5teHQtcG9wb3ZlciB7XG4gICAgJi5teHQtZG93bmxvYWQtb3B0aW9ucy1wb3BvdmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcblxuICAgICAgICAubXh0LXBvcG92ZXItY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW46IDhweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI0MHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuZG93bmxvYWQtcG9wb3Zlci10aXRsZSB7XG4gICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWJvbGQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmRvd25sb2FkLXBvcG92ZXItdGl0bGUtcnVsZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgNHB4IDRweCA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWRvd25sb2FkLWltYWdlLW9wdGlvbixcbiAgICAgICAgLm14dC1zd2l0Y2gtY29udGFpbmVyIC5teHQtc3dpdGNoLWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdW5zZXQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWRlZmF1bHQtdGV4dC1jb2xvcik7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1oZC1yZW5kZXItZm9vdG5vdGUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC1idXR0b24tZGlzYWJsZWQtZm9udC1jb2xvcik7XG4gICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZG93bmxvYWQtYm9tLW9wdGlvbiB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbXh0LXNwaW5zLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5teHQtZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS1teHQtYnV0dG9uLWRpc2FibGVkLWZvbnQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1NdWxpc2g6NTAwLDUwMGksNzAwLDcwMGksODAwLDgwMGkmZGlzcGxheT1zd2FwJyk7XG5AaW1wb3J0ICdAbXh0L214dC11aS11dGlsaXR5L3Njc3MvbXh0Y29tbW9uLnNjc3MnO1xuQGltcG9ydCAnLi9nbG9iYWwuc2Nzcyc7XG5cbjpyb290IHtcbiAgICAtLW14dC1idXR0b24taGVpZ2h0OiA0NHB4O1xuICAgIC0tbXh0LWJ1dHRvbnMtbWFyZ2luLXRvcDogMnB4O1xuICAgIC0tbXh0LWJ1dHRvbi1taW4td2lkdGg6IDMwMHB4O1xuICAgIC0tbXh0LWJveC1zaGFkb3c6IDAgMXB4IDFweCAwIHJnYigwIDAgMCAvIDIwJSksIDAgMCAycHggMXB4IHJnYigwIDAgMCAvIDUlKTtcbiAgICAtLW14dC1jbGllbnQtcHJpbWFyeTogIzRmNDBmZjtcbiAgICAtLW14dC1jbGllbnQtc2Vjb25kYXJ5OiAjNGY0MGZmO1xuICAgIC0tbXh0LWJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIC0tbXh0LWluc2V0LWJ1dHRvbi1zaXplOiAyNXB4O1xuICAgIC0tbXh0LWluc2V0LWJ1dHRvbi1wYWRkaW5nOiAxMHB4O1xuICAgIC0tbXh0LXdlYmFyLWJ1dHRvbi1vbmRlbWFuZC1iYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAtLW14dC13ZWJhci1idXR0b24tcmVhZHktYmFja2dyb3VuZDogdmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5KTtcbiAgICAtLW14dC10ZXh0LWNvbG9yOiAjMWMxYzFjO1xuICAgIC0tbXh0LXRleHQtY29sb3ItZGFyazogIzFjMWMxYztcbiAgICAtLW14dC10ZXh0LWNvbG9yLWludmVyc2U6ICNmZmZmZmY7XG59XG5cbi5teHQtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtYmFja2dyb3VuZC1jb2xvcik7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLW14dC1mb250KTtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3IpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5teHQtbW9kYWwtZGl2IHtcbiAgICAgICAgLyoqIG1vZGFscyBoYXZlIGEgd2hpdGUgYmFja2dyb3VuZCwgc28gYWx3YXlzIHVzZSBkYXJrIGNvbG9yLCBub3QgY2hhbmdlYWJsZSB0ZXh0IGNvbG9yKi9cbiAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuICAgIH1cbn1cblxuLm14dC1zcGlucy1jYW52YXMtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cblxuLm14dC1wb3BvdmVyOm5vdCgubXh0LWFib3V0LXBvcG92ZXIpIHtcbiAgICAubXh0LXBvcG92ZXItY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxufVxuXG4ubXh0LWludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm14dC1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQGtleWZyYW1lcyBteHQtZmFkZUluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG14dC1mYWRlT3V0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuQGtleWZyYW1lcyBteHQtc3BpbnMtbG9hZGluZy1zcGlubmVyIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pO1xuICAgIH1cbn1cblxuLm14dC1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjI1cztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4ubXh0LWZhZGVPdXQge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBteHQtZmFkZU91dDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm14dC1mYWRlSW4ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBteHQtZmFkZUluO1xufVxuIiwiQGltcG9ydCAnLi4vZ2xvYmFsLnNjc3MnO1xuXG4ubXh0LXNwaW4tYnV0dG9uLXJvdyB7XG4gICAgJi5teHQtYnV0dG9uLXJvdy1zbWFsbCB7XG4gICAgICAgIC0tbXh0LWJ1dHRvbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWJhY2tncm91bmQtY29sb3IpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3IpO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tbXh0LWJ1dHRvbnMtbWFyZ2luLXRvcCk7XG5cbiAgICBoZWlnaHQ6IHZhcigtLW14dC1idXR0b24taGVpZ2h0KTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1teHQtYm94LXNoYWRvdyk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teCBwYW4teTtcblxuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgLy8gUG9zaXRpb24gUmVsYXRpdmUgKyBPdmVyZmxvdyBpcyBoaWRpbmcgYW55IHBvcG92ZXJzIGZvciBidXR0b25zXG4gICAgLy8gVW5zZXR0aW5nIHBvc2l0aW9uIHRvIGdldCB0aGUgXCJpZ25vcmluZyBvdmVyZmxvd1wiIGVmZmVjdCBmb3IgdGhlIGJvdHRvbSBiYXJcbiAgICBwb3NpdGlvbjogdW5zZXQ7XG5cbiAgICBAc3VwcG9ydHMgKHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpIHtcbiAgICAgICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL2VudiN2YWx1ZXNcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeShzbSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLm14dC1idG46ZGlzYWJsZWQsXG4gICAgLm14dC1idG4ubXh0LWJ0bi1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIG9wYWNpdHk6IDIwJTtcbiAgICB9XG5cbiAgICBhLm14dC1idG4ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvcik7XG4gICAgfVxuICAgIGEubXh0LWJ0bjpsaW5rLFxuICAgIGEubXh0LWJ0bjp2aXNpdGVkLFxuICAgIGEubXh0LWJ0bjphY3RpdmUsXG4gICAgYS5teHQtYnRuOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yKTtcbiAgICB9XG5cbiAgICAubXh0LWJ1dHRvbi1yb3ctbGVmdCB7XG4gICAgICAgIC8qKiBpbmNsdWRlIHRoZSBwYWRkaW5nKi9cbiAgICAgICAgZmxleDogMCAxIGNhbGMoMzMuMzMzMyUgLSA1cHgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICAgIH1cblxuICAgIC5teHQtYnV0dG9uLXJvdy1jZW50ZXIge1xuICAgICAgICAvKiogZG9lc250IGdldCBwYWRkaW5nIGZyb20gZWl0aGVyIHNpZGUqL1xuICAgICAgICBmbGV4OiAwIDAgMzMuMzMzMyU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5teHQtYnV0dG9uLXJvdy1yaWdodCB7XG4gICAgICAgIC8qKiBpbmNsdWRlIHRoZSBwYWRkaW5nKi9cbiAgICAgICAgZmxleDogMCAxIGNhbGMoMzMuMzMzMyUgLSA1cHgpO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgLm14dC1idXR0b24tcm93LXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLm14dC1zcGluLWJ1dHRvbi1jb250cm9scyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgLm14dC1idG4ubXh0LWJ0bi1pY29uLW9ubHkge1xuICAgICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgICAgd2lkdGg6IHZhcigtLW14dC1idXR0b24taGVpZ2h0KTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1teHQtYnV0dG9uLWhlaWdodCk7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAbWl4aW4gbWVkaWEtcXVlcnkoJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgJGJyZWFrcG9pbnQgPT0gJ3NtJyB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubXh0LXdlYkFyLWNvbnRhaW5lciB7XG4gICAgLm14dC1idG4td2ViQXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtd2ViYXItYnV0dG9uLXJlYWR5LWJhY2tncm91bmQpO1xuXG4gICAgICAgICYubXh0LWJ0bi1kaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5teHQtYnRuLXdlYkFyLW9uRGVtYW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LXdlYmFyLWJ1dHRvbi1vbmRlbWFuZC1iYWNrZ3JvdW5kKTtcblxuICAgICAgICAmLm14dC1idG4tZGlzYWJsZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1teHQtYnV0dG9uLWhlaWdodCk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tbXh0LWJ1dHRvbi1oZWlnaHQpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyoqd2ViYXIqL1xuLm14dC1idG4td2ViQXItb25EZW1hbmQtTG9hZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiB2YXIoLS1teHQtYnV0dG9uLWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1teHQtYnV0dG9uLWhlaWdodCk7XG5cbiAgICAubXh0LWlubGluZS1zcGlubmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBteHQtc3BpbnMtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXh0LXBvcG92ZXIubXh0LWFyLW9uLWRlbWFuZC1wb3BvdmVyIHtcbiAgICAubXh0LXBvcG92ZXItY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICB3aWR0aDogMTMycHg7XG4gICAgfVxufVxuIiwiQGtleWZyYW1lcyBhbmltYXRlLXN0cmlwZXMge1xuICAgIDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNjBweCAwO1xuICAgIH1cbn1cblxuLm14dC13ZWJhci1kZXNrdG9wLW1vZGFsIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuXG4gICAgLy8gc28gc2NydW5jaGVkIG1vZGFsIGNsb3NlIGJ1dHRvbiBpcyBmdWxseSB2aXNpYmxlXG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gODVweCk7XG4gICAgLy8gc28gc2NydW5jaGVkIG1vZGFsIGNvbnRlbnQgY2FuIHNjcm9sbFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICYtY29udGVudCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAvLyBzbyBzY3J1bmNoZWQgbW9kYWwgY29udGVudCBjYW4gc2Nyb2xsXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib2R5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgICAgICAgLnF1ZXN0aW9uIHtcbiAgICAgICAgICAgICAgICAucXVlc3Rpb24tYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2VuZXJhdGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLm14dC1mb250LWhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLm14dC1hYm91dC1idXR0b24ge1xuICAgIHdpZHRoOiB2YXIoLS1teHQtaW5zZXQtYnV0dG9uLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tbXh0LWluc2V0LWJ1dHRvbi1zaXplKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgfVxufVxuXG4vLyBub3QgbmVzdGVkIHVuZGVyIC5teHQtc3BpbnMtY2FudmFzLWNvbnRhaW5lciwgaW4gY2FzZSBpdCBpcyByZXBhcmVudGVkXG4ubXh0LXBvcG92ZXIubXh0LWFib3V0LXBvcG92ZXIge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbn1cbiIsIi5teHQtY29uZmlndXJhdG9yLXZpZXdlci1ib3R0b20tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IHZhcigtLW14dC1pbnNldC1idXR0b24tcGFkZGluZyk7XG4gICAgcmlnaHQ6IHZhcigtLW14dC1pbnNldC1idXR0b24tcGFkZGluZyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIGdhcDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuIiwiQGltcG9ydCAnLi9teHQtYnJlYWtwb2ludHMuc2Nzcyc7XG5cbi5teHQtZGVtby11c2VyLWNvbnRyb2wtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgLm14dC1kZW1vLXVzZXItY29udHJvbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcbiAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuICAgIH1cblxuICAgIC5teHQtZGVtby11c2VyLWNvbnRyb2wtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDEuMnMgbGluZWFyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KG1vYmlsZS1wb3J0cmFpdCkge1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0ICdAbXh0L214dC11aS11dGlsaXR5L3Njc3MvbXh0Y29tbW9uLnNjc3MnO1xuXG4ubXh0LWRvd25sb2FkLWltYWdlLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogMHB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuXG4gICAgLm14dC1kb3dubG9hZC1pbWFnZS1vdmVybGF5LWJveCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC1ib3gtc2hhZG93KTtcbiAgICAgICAgbWFyZ2luOiA1JSAxMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAubXh0LWRvd25sb2FkLWltYWdlIHtcbiAgICAgICAgICAgIGhlaWdodDogOTAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWRvd25sb2FkLWltYWdlLWNsb3NlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLm14dC1zcGlucy1sb2FkaW5nLXByb2dyZXNzLWJhY2tncm91bmQge1xuICAgIHRvcDogMHB4O1xufVxuLm14dC1jYW52YXMtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvL2lmIHRoZXJlIGlzIGFuIGFib3V0IGJ1dHRvbiBpbiBtZSwgcHV0IGl0IGluIHRoZSBib3R0b20gbGVmdFxuICAgIC5teHQtYWJvdXQtYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IHZhcigtLW14dC1pbnNldC1idXR0b24tcGFkZGluZyk7XG4gICAgICAgIGxlZnQ6IHZhcigtLW14dC1pbnNldC1idXR0b24tcGFkZGluZyk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLm14dC1jYW52YXMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICAmLm14dC1jYW52YXMtY3Vyc29yLXBvaW50ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZGVwcmVjYXRlZCB0aGUgZmVhdHVyZSB0aGF0IHRoaXMgY3NzIGNvbnRyb2xzXG4gICAgLm14dC1wYW5uaW5nLWd1aWRhbmNlLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3R0b206IDc1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgIC5teHQtcGFubmluZy1ndWlkYW5jZSB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1teHQtYm94LXNoYWRvdyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG5cbiAgICAgICAgICAgIC5teHQtZ3VpZGFuY2UtZmxleCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5teHQtZGltZW5zaW9uLWxpbmUtbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLW14dC1ib3gtc2hhZG93KTtcbiAgICBwYWRkaW5nOiAzcHggNnB4O1xuXG4gICAgPiBzcGFuIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgfVxuXG4gICAgJi5lZGl0YWJsZSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC5teHQtZGltZW5zaW9uLWVkaXRhYmxlLWxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAubXh0LWRpbWVuc2lvbi1lZGl0YWJsZS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1teHQtY2xpZW50LXByaW1hcnktcmdiKSwgMC4xKTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnVwZGF0ZWQge1xuICAgICAgICAgICAgLm14dC1kaW1lbnNpb24tZWRpdGFibGUtbGFiZWwge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1kaW1lbnNpb24tZWRpdG9yLXBvcHBvdmVyIHtcbiAgICAubXh0LXBvcG92ZXItY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuXG4gICAgLm14dC1kaW1lbnNpb24tZWRpdG9yIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAycHg7XG4gICAgfVxuXG4gICAgLm14dC1kaW1lbnNpb24tZWRpdG9yLWhlYWRlciB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubXh0LWRpbWVuc2lvbi1lZGl0b3Itc2VjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgIGdhcDogNXB4O1xuXG4gICAgICAgICYuaW5wdXQtc2VjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAubXh0LWRpbWVuc2lvbi1lZGl0b3ItbGFiZWwge1xuICAgICAgICAgICAgICAgIGZsZXg6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm14dC1kaW1lbnNpb24tZWRpdG9yLWlucHV0LFxuICAgICAgICAgICAgLm14dC1kcm9wZG93bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGZsZXg6IDI7XG4gICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5teHQtZGltZW5zaW9uLWVkaXRvci1pbnB1dCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5teHQtZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1zbSk7XG5cbiAgICAgICAgICAgICAgICAubXh0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcblxuICAgICAgICAgICAgICAgICAgICAubXh0LWRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm14dC1kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm14dC1jdXN0b20tY2hlY2ttYXJrLFxuICAgICAgICAgICAgICAgIC5teHQtY3VzdG9tLWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm14dC1kcm9wZG93bi1vcHRpb24tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubXh0LWRyb3Bkb3duLWNoZXZyb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1idG4ge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG4iLCIubXh0LXNwaW5zLWxlZnQtY29ybmVyLWNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiBjYWxjKHZhcigtLW14dC1idXR0b24taGVpZ2h0KSArIDIwcHgpO1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHotaW5kZXg6IDE7XG59XG4uaGQtcmVuZGVyLXBvcG92ZXItY29udGFpbmVyIHtcbiAgICAvLyBTaW5jZSB3ZSdyZSBkb2luZyB1c2luZyB0aGUgcG9wb3ZlciBjbGFzcyBpbiBhIHNsaWdodGx5IG9kZCB3YXkgd2UgbmVlZCB0byBmb3JjZSB0aGUgcG9zaXRpb24gdG8gbmV2ZXIgbGlzdGVuIHRvIHRoYXQgY2xhc3NcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHRvcDogdW5zZXQgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmLm14dC1wb3BvdmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICB9XG5cbiAgICAubXh0LW1vZGFsLWFycm93LW91dGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZ2VuZXJhdGluZy1yZW5kZXIge1xuICAgICAgICBtaW4td2lkdGg6IDE3NXB4O1xuICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1ib2xkKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuXG4gICAgICAgIC5nZW5lcmF0aW9uLWFkZGl0aW9uYWwtdGV4dCB7XG4gICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM5LCAyMzksIDI0NCwgMSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG5cbiAgICAgICAgICAgICNoZC1yZW5kZXItbG9hZGluZy1iYXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5KSAtMTElLCB2YXIoLS1teHQtY2xpZW50LXNlY29uZGFyeSkgNzIlKTtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IGluZmluaXRlQmFyIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nZW5lcmF0aW9uLWNvbXBsZXRlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGdhcDogMTJweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1yaWdodC1ncmFkaWVudCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWludmVyc2UpO1xuXG4gICAgICAgIC5teHQtbm9uLWN0YS1idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2VuZXJhdGlvbi1mYWlsdXJlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICAgIGdhcDogMTBweDtcblxuICAgICAgICAuZXJyb3ItaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLm14dC1jdGEtYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIHRvcDogLTIwcHg7XG4gICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1KTtcbiAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1teHQtZGFyay1kcm9wLXNoYWRvdyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGluZmluaXRlQmFyIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDAlO1xuICAgIH1cbiAgICAxMCUge1xuICAgICAgICBsZWZ0OiAwJTtcbiAgICAgICAgcmlnaHQ6IDc1JTtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG4gICAgOTAlIHtcbiAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICByaWdodDogMCU7XG4gICAgICAgIHdpZHRoOiAwJTtcbiAgICB9XG59XG4iLCIubXh0LXByZXNldC12aWV3cy1wb3BvdmVyLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC5teHQtcHJlc2V0LXZpZXdzLXBvcG92ZXItaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDAgMTBweDtcblxuICAgICAgICBociB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1teHQtYWN0aW9uLW1lbnUtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIC8vIGZpeCBzaXplIGluIGZsZXggY29udGFpbmVyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtcHJlc2V0LXZpZXdzLW9wdGlvbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxufVxuXG4vLyBvdmVycmlkZXMgZm9yIGNvbXBhY3QgbGF5b3V0XG4ubXh0LWNvbXBhY3QtbGF5b3V0IHtcbiAgICAubXh0LXByZXNldC12aWV3cy1wb3BvdmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAvLyBBbGxvdyBmb3IgcmlnaHQgc2lkZSBib3ggc2hhZG93XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KTtcblxuICAgICAgICAubXh0LXByZXNldC12aWV3cy1wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgXG4gICAgICAgICAgICAubXh0LXByZXNldC12aWV3cy1wb3BvdmVyLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAubXh0LXByZXNldC12aWV3cy1vcHRpb24ge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgIC8vIGVtdWxhdGUgLm14dC1idG4taWNvbi1vbmx5XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICBcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LW1lbnUtYm90dG9tLWFycm93IHtcbiAgICAgICAgICAgIC8vIEFsbG93IGZvciByaWdodCBzaWRlIGJveCBzaGFkb3dcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5teHQtZHJvcGRvd24tb3B0aW9uLWltZyB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbn1cblxuLm14dC1kcm9wZG93bi1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDVweCA1cHg7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cbn1cblxuLm14dC1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC1jb3JuZXItcm91bmRuZXNzKTtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBtaW4td2lkdGg6IDE3MHB4O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAvLyBmaXhlcyB6LWluZGV4IGZpZ2h0aW5nIHdpdGggbXh0LWdyaWRcbiAgICB6LWluZGV4OiAxO1xufVxuXG4ubXh0LWRyb3Bkb3duLW5vLWNoZWNrYm94IHtcbiAgICBtaW4td2lkdGg6IDEwMHB4O1xufVxuXG4ubXh0LWRyb3Bkb3duLW9wdGlvbnMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5teHQtZHJvcGRvd246aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi5teHQtZHJvcGRvd24tb3B0aW9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5teHQtZHJvcGRvd24tb3B0aW9uLW5vLWNoZWNrYm94IHA6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1zZWxlY3RlZCk7XG59XG5cbi5teHQtZHJvcGRvd24tb3B0aW9uLW5vLWNoZWNrYm94IHAge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm14dC1kcm9wZG93bi1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm14dC1kcm9wZG93bi1oZWFkZXIgaDUge1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgY29sb3I6IHZhcigtLW14dC1mb250LWNvbG9yKTtcbiAgICBtYXJnaW46IDBweDtcbn1cblxuLm14dC1kcm9wZG93bi1oZWFkZXItY3VycmVudCB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1zbSk7XG4gICAgcGFkZGluZzogMC4zcmVtIDA7XG59XG5cbi5teHQtZHJvcGRvd24taGVhZGVyLWltYWdlIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5teHQtZHJvcGRvd24taGVhZGVyIC5teHQtZHJvcGRvd24tY2hldnJvbi5teHQtZHJvcGRvd24tcm90YXRlLWNoZXZyb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xufVxuXG4ubXh0LWRyb3Bkb3duLWhlYWRlciAubXh0LWRyb3Bkb3duLWNoZXZyb24ge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGFsbCBlYXNlO1xufVxuXG4vKiBDcmVhdGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xuLm14dC1jdXN0b20tY2hlY2tib3gtY29udGFpbmVyIC5teHQtY3VzdG9tLWNoZWNrbWFyazphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFNob3cgdGhlIGNoZWNrbWFyayB3aGVuIGNoZWNrZWQgKi9cbi5teHQtY3VzdG9tLWNoZWNrYm94LWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLm14dC1jdXN0b20tY2hlY2ttYXJrOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5teHQtY3VzdG9tLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qIFN0eWxlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yICovXG4ubXh0LWN1c3RvbS1jaGVja2JveC1jb250YWluZXIgLm14dC1jdXN0b20tY2hlY2ttYXJrOmFmdGVyIHtcbiAgICBsZWZ0OiA0cHg7XG4gICAgdG9wOiAwcHg7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYm9yZGVyOiBzb2xpZCAjM2FhOGJjO1xuICAgIGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi8qIGhpZGUgZGVmYXVsdCBjaGVja2JveCovXG4ubXh0LWN1c3RvbS1jaGVja2JveCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubXh0LWN1c3RvbS1jaGVja21hcmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjZDdkN2Q3O1xufVxuXG5pbnB1dDpjaGVja2VkIH4gLm14dC1jdXN0b20tY2hlY2ttYXJrIHtcbiAgICBib3JkZXI6IHNvbGlkIDNweCAjM2FhOGJjO1xufVxuXG4ubXh0LWRyb3Bkb3duLW9wdGlvbi1xdWFudGl0eSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWJvbGQpO1xufVxuXG4ubXh0LWRyb3Bkb3duLW9wdGlvbi5teHQtZHJvcGRvd24tb3B0aW9uLWRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tbXh0LWZvbnQtY29sb3ItZGlzYWJsZWQpO1xufVxuXG4ubXh0LWRyb3Bkb3duLW9wdGlvbi5teHQtZHJvcGRvd24tb3B0aW9uLWRpc2FibGVkIC5teHQtY3VzdG9tLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbiIsIi8vIHN0eWxlcyB0aGF0IGFyZSBzcGVjaWZpYyB0byB0b2FzdGVyXG4ubXh0LXRvYXN0ZXIge1xuICAgICRtYWluLWJvcmRlcjogMXB4O1xuICAgICRjb250ZW50LXBhZGRpbmc6IDEwcHg7XG4gICAgJGNsb3NlLXNpemU6IDQwcHg7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDA7IC8vIHRvIGJlIHNwaW5zIGNvbnRhaW5lclxuXG4gICAgJi1iYWNrZ3JvdW5kIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LW1vZGFsLWJhY2tncm91bmQtY29sb3IpO1xuICAgIH1cblxuICAgICYtbWFpbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAkY2xvc2Utc2l6ZSArICgkbWFpbi1ib3JkZXIgKiAyKTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1kYXJrKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgLm14dC10b2FzdGVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogJGNvbnRlbnQtcGFkZGluZztcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtdG9hc3Rlci1jbG9zZSB7XG4gICAgICAgICAgICB3aWR0aDogJGNsb3NlLXNpemU7XG4gICAgICAgICAgICBoZWlnaHQ6ICRjbG9zZS1zaXplO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMHB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU11bGlzaDo1MDAsNTAwaSw3MDAsNzAwaSw4MDAsODAwaSZkaXNwbGF5PXN3YXAnKTtcbkBpbXBvcnQgJ0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHQtYnJlYWtwb2ludHMuc2Nzcyc7XG5AaW1wb3J0ICdAbXh0L214dC11aS11dGlsaXR5L3Njc3MvbXh0dmFycy5zY3NzJztcbkBpbXBvcnQgJ0BteHQvbXh0LXVpLXV0aWxpdHkvc2Nzcy9teHRidG4uc2Nzcyc7XG5AaW1wb3J0ICdAbXh0L214dC11aS11dGlsaXR5L3Njc3MvbXh0Y29tbW9uLnNjc3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9teHQtcG9wb3Zlcic7XG5cblxuOnJvb3Qge1xuICAgIC0tbXh0LXZpZXdlci1jb250YWluZXItaGVpZ2h0OiA1MCU7XG4gICAgLS1teHQtdmlld2VyLWNvbnRhaW5lci1taW4td2lkdGg6IDM2MHB4O1xuICAgIC0tbXh0LXBpY2tlci1jb250YWluZXItaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS1teHQtdmlld2VyLWNvbnRhaW5lci1oZWlnaHQpKTtcbiAgICAtLW14dC1waWNrZXItd2lkdGg6IDQwMHB4O1xuICAgIC0tbXh0LWJhY2tncm91bmQtY29sb3ItZGFyazogcmdiKDAsIDAsIDApO1xuICAgIC0tbXh0LW1vZGFsLWJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAtLW14dC1ib3JkZXI6IDFweCBzb2xpZCAjM0QzRDNEO1xuICAgIC0tbXh0LWNvbmZpZ3VyYXRvci12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24tYmFja2dyb3VuZDogd2hpdGU7XG4gICAgLS1teHQtZmlsdGVyLWJhZGdlLWZvbnQtY29sb3I6IHZhcigtLW14dC1jdGEtYnV0dG9uLWZvbnQtY29sb3IpO1xuICAgIC0tbXh0LWZpbHRlci1iYWRnZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xufVxuXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5teHQtY29udGFpbmVyIHtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1mb250OiBNdWxpc2g7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcGxhY2Vob2xkZXItY29sb3I6ICNhYWFhYWE7XG4gICAgXG4gICAgLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubXh0LW1vZGFsLWJhY2tncm91bmQubXh0LWZ1bGwtbW9kYWwtc2NyZWVuIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LW1vZGFsLWJhY2tncm91bmQtY29sb3IpO1xuICAgIH1cblxuICAgIC5teHQtYmxvY2tlZC1vcHRpb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICByaWdodDogN3B4O1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1kYXJrKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3B4LCAtM3B4KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAqOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZS1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRvY3VtZW50LXRhYmJpbmcgKjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IGF1dG8gMnB4IEhpZ2hsaWdodDtcbiAgICAgICAgb3V0bGluZTogYXV0byA1cHggLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICAgIH1cblxuICAgICoge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgIC8qKiBzb21lIGN1c3RvbSBvcHRpb25zIGZvciB1bml0IGNvbmZpZyB0byByZXNvbHZlIHNvbWUgZGlmZmVyZW5jZXMgYmV0d2VuIGhvdyB3ZSB1c2UgaXQgaW4gdW5pdCBjb25maWcgdnMgcm9vbSBwbGFubmVyKi9cbiAgICAubXh0LWRyb3Bkb3duLW9wdGlvbi10ZXh0IHAge1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW8tdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtaGVhZGVyLWxnKTtcbiAgICAgICAgbWFyZ2luOiA1cHggMHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtaGVhZGVyKTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LXN1YmhlYWRlcik7XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1ib2xkKTtcblxuICAgICAgICAvKiogYW55IHRleHQgd2l0aGluIGEgYnV0dG9uLCBsaWtlIGEgc3BhbiwgZXRjICovXG4gICAgICAgICoge1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1ib2xkKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3Itcm9vdCB7XG4gICAgLyoqIFRha2UgdXAgdGhlIGVudGlyZSBzY3JlZW4gYW5kIGRvbnQgc2Nyb2xsLiBNb2RhbHMgd2lsbCBnZXQgcGFyZW50ZWQgdG8gdGhpcyAqL1xuICAgIGxlZnQ6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgICYubXh0LWxhbmRzY2FwZSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93O1xuICAgIH1cblxuICAgICYubXh0LWxhbmRzY2FwZS5teHQtbW9iaWxlIHtcbiAgICAgICAgLS1teHQtcGlja2VyLXdpZHRoOiA0NSU7XG4gICAgfVxuXG4gICAgJi5teHQtcG9ydHJhaXQubXh0LW1vYmlsZSB7XG4gICAgICAgIC5teHQtc3Bpbi1idXR0b24tcm93IHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIG1ha2Ugcm9vbSBmb3IgaU9TIGJvdHRvbSBIb21lIEJhclxuICAgICYubXh0LWRldmljZS1pb3Mge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBsb2FkaW5nLWJhciB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOTAlKTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICA3MSUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuXG4gICAgNzIlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICA3MyUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxufVxuXG4ubXh0LWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8qIE5lZWRlZCB0byBvdmVycmlkZSBtb3JlIHNwZWNpZmljIHNlbGVjdG9ycyAqL1xufVxuXG4ubXh0LW1vZGFsLWNvbnRhaW5lciB7XG4gICAgKjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogSGlnaGxpZ2h0IGF1dG8gMXB4O1xuICAgIH1cbn1cblxuLm14dC1mdWxsLW1vZGFsLXNjcmVlbiB7XG4gICAgJi5oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5zZWxlY3QubXh0LWZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1ibG9jazogMXB4O1xuICAgIHBhZGRpbmctaW5saW5lOiAycHg7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICBAZXh0ZW5kIC5teHQtZm9ybS1jb250cm9sO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogNXB4O1xuICAgICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICAgICAgQGV4dGVuZCAubXh0LWJ0bjtcbiAgICAgICAgQGV4dGVuZCAubXh0LW5vbi1jdGEtYnV0dG9uO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufSIsIlx0Lm14dC1kb3dubG9hZC1vcHRpb25zLXBvcG92ZXIge1xuXHRcdC5teHQtcG9wb3Zlci1jb250ZW50IHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdH1cblxuXG4ubXh0LXBvcnRyYWl0IHtcblx0Lm14dC1jb25maWd1cmF0b3Itcm9vdCB7XG5cdFx0Lm14dC1kb3dubG9hZC1vcHRpb25zLXBvcG92ZXIge1xuXHRcdFx0Ji50b3AgeyAvLyBoYWNrIHRvIGNoYW5nZSBtb2RhbCBwb3NpdGlvbiBzdHlsZSB0byBib3R0b20gYmVjYXVzZSB3ZSBjYW4ndCBzZXQgaXQgdmlhIG9wdGlvbnNcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDgwcHgpO1xuXG5cdFx0XHRcdC5teHQtbWVudS1ib3R0b20tYXJyb3cge1xuXHRcdFx0XHRcdHRvcDogLTI1cHg7XG5cblx0XHRcdFx0XHQubXh0LW1vZGFsLWFycm93LWlubmVyIHtcblx0XHRcdFx0XHRcdHRvcDogMTAwJTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5teHQtcG9wb3Zlcjpub3QoLm14dC1hYm91dC1wb3BvdmVyKSB7XG4gICAgLm14dC1wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLm14dC1zZWN0aW9uLXRvb2x0aXAtcG9wb3Zlci1oZWFkZXIge1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yKTtcbn1cblxuLm14dC1zZWN0aW9uLXRvb2x0aXAtcG9wb3Zlci1oZWxwIHtcbiAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWJvbGQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvcik7XG59XG5cbi5teHQtbGFuZHNjYXBlLm14dC1tb2JpbGUge1xuICAgIC5teHQtdW5hdmFpbGFibGUtbW9kYWwge1xuICAgICAgICAubXh0LW1vZGFsLWRpdiB7XG4gICAgICAgICAgICB3aWR0aDogNDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5teHQtdW5hdmFpbGFibGUtbW9kYWwge1xuICAgIC5teHQtbW9kYWwtZGl2IHtcbiAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuXG4gICAgLmNsb3NlQnV0dG9uIHtcbiAgICAgICAgdG9wOiAyM3B4O1xuICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICAgICAgICAuY2xvc2VJY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWhlYWRlcik7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI5cHg7XG4gICAgfVxuXG4gICAgJi1jb25maXJtIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZyk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1pbnZlcnNlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE2cHggMTJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuQGltcG9ydCAnY29sbGFwc2UnO1xuXG4vLyBjdXN0b20gc3R5bGVzIGZvciBwb3RlbnRpYWwgdG9hc3RlciBjb250ZW50c1xuXG4ubXh0LXRvYXN0ZXIge1xuICAgIGJvdHRvbTogMDtcblxuICAgICYtY29udGVudCB7XG5cbiAgICAgICAgI214dC1zaGFyZS1tb2RhbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLm14dC1zaGFyZS1tb2RhbC1idXR0b24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtbW9kYWwtZGl2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVuc2V0O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogdW5zZXQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogdW5zZXQ7XG5cbiAgICAgICAgICAgIC5jbG9zZUJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDUubXh0LWRyb3Bkb3duLXByb3h5LWhlYWRlciB7XG4gICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWJvbGQpO1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWRyb3Bkb3duLW9wdGlvbnMge1xuICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgICAvLyBvdmVycmlkZSBpbmxpbmUgc3R5bGVzXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi5teHQtZmlsdGVyLWNvbGxhcHNlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cblx0LmNvbGxhcHNlLWxhYmVsIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRwYWRkaW5nOiAxNXB4IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblxuXHRcdC5jb2xsYXBzZS1uYW1lIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvcik7XG5cdFx0fVxuXHR9XG5cblx0LmNvbGxhcHNlLWJ0biB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdHJpZ2h0OiAwcHg7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR3aWR0aDogMjBweDtcblx0XHRoZWlnaHQ6IDIwcHg7XG5cblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgXHRcdFx0XHRib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIGJsYWNrO1xuXHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0cmlnaHQ6IDVweDtcblx0XHRcdHdpZHRoOiAwO1xuICBcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIFx0XHRcdGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIFx0XHRcdGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyLXRvcDogNHB4IHNvbGlkIGJsYWNrO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cbn0iLCIjbXh0LWhlbHAtbWUtZGVjaWRlLXBvcG92ZXItY29udGVudCB7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtaGVhZGVyKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDk0MHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgIC5teHQtaGVscC1tZS1kZWNpZGUtaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgLm14dC1oZWxwLW1lLWRlY2lkZS1oZWFkZXItbGFiZWwtZ3JvdXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1oZWxwLW1lLWRlY2lkZS1oZWFkZXItbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1oZWxwLW1lLWRlY2lkZS10aHVtYnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgJi5maXhlZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC5teHQtaGVscC1tZS1kZWNpZGUtdGh1bWIge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTk1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWhlbHAtbWUtZGVjaWRlLXRodW1iIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTk1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtcHJvcGVydGllcyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5teHQtaW1hZ2Utd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDE3NXB4O1xuXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIC8qKiBpbiBhIGZsZXggY29udGFpbmVyLCBkZWZhdWx0IGRvZXNuJ3QgYWxsb3cgaXRlbSB0byBiZSBzbWFsbGVyIHRoYW4gdGhlIGNvbnRlbnQgKi9cbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqIGNvbWJvIHN3YXRjaGVzIG5lZWQgdG8gYmUgZnVsbCB3aWR0aCovXG4gICAgICAgICAgICAgICAgICAgICYubXh0LWNvbWJvLXN3YXRjaCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1nLFxuICAgICAgICAgICAgICAgICAgICAgICAgLm14dC1jb2xvci1pbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgJiArIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubXh0LWNvbG9yLWltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLm14dC1jb2xvci1pbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLm14dEJ1dHRvbkVtdWxhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZy1ib2xkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtaW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgLyoqIGluIGEgZmxleCBjb250YWluZXIsIG5lZWRzIGhlaWdodCBzcGVjaWZpZWQgYXMgcGFydCBvZiBmbGV4Ki9cbiAgICAgICAgZmxleDogMCAwIDE0MHB4O1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LXByaWNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtY29ybmVyLXJvdW5kbmVzcyk7XG4gICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1kYXJrKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICYucHJvZHVjdC1pbmZvLS1zZWxlY3RlZCB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItaW52ZXJzZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtYmFja2dyb3VuZC1jb2xvci1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cblxuICAgIC5hcHBseS1idXR0b24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItaW52ZXJzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1kZXRhaWwge1xuICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICB9XG59XG5cblxuXG4ubXh0LXBvcnRyYWl0IHtcbiAgICAjbXh0LWhlbHAtbWUtZGVjaWRlLXBvcG92ZXItY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgLm14dC1oZWxwLW1lLWRlY2lkZS10aHVtYnMge1xuICAgICAgICAgICAgLm14dC1oZWxwLW1lLWRlY2lkZS10aHVtYiB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxODBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIubXh0LXRvYXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LW1vZGFsLWJhY2tncm91bmQtY29sb3IpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLW91dDtcbiAgICB6LWluZGV4OiA0MDAwO1xuXG4gICAgI214dC1oZWxwLW1lLWRlY2lkZS1wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICYtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgYm90dG9tOiAtMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuNXMgZWFzZS1vdXQ7XG4gICAgfVxuXG4gICAgJi0tb3BlbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgLm14dC10b2FzdC1jb250ZW50IHtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtY2xvc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuLm14dC1sYW5kc2NhcGUubXh0LW1vYmlsZSB7XG4gICAgLm14dC10b2FzdCB7XG4gICAgICAgIC5teHQtdG9hc3QtY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDk1JVxuICAgICAgICB9XG4gICAgfVxufSIsIiRkZWZhdWx0Qm94U2hhZG93OiAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMiksXG4gICAgMCAwIDJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcblxuLm14dC1zZWFyY2gtZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAuZGVzaWduUHJvY2Vzc1NlYXJjaERpdiB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgfVxufVxuXG4ubXh0LWZpbHRlci1ncmlkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAmLmZ1bGxzY3JlZW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICB6LWluZGV4OiA1MDA7XG4gICAgfVxuXG4gICAgLm14dC1maWx0ZXItaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgIGZsZXg6IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAubXh0LWJhY2stYnV0dG9uIHtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZmlsdGVyLWhlYWRlci10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWhlYWRlcik7XG4gICAgICAgICAgICBtYXJnaW46IDJweCAwO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtZmlsdGVyLWNvbnRlbnQge1xuICAgICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgIC5teHQtZmlsdGVyLWZvb3RlciB7XG4gICAgICAgIGZsZXg6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogNXB4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuXG4gICAgLm14dC1kcm9wZG93bi1jb250YWluZXIge1xuICAgICAgICAubXh0LWZpbHRlci1jbGVhci1idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1maWx0ZXItY2xlYXItYnRuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuZGVzaWduUHJvY2Vzc0ZpbHRlcnMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuXG4gICAgICAgIC5teHQtZmlsdGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAmW2RhdGEtaXMtY29sbGFwc2VkPSdmYWxzZSddIHtcbiAgICAgICAgICAgICAgICAubXh0LWZpbHRlci1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICAgIC5jb2xsYXBzZS1idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcblxuICAgICAgICAgICAgLm14dC1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogJGRlZmF1bHRCb3hTaGFkb3c7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICAvL3dpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAvLyBkZWZhdWx0IENIRUNLQk9YIG9wdGlvbnNcbiAgICAgICAgICAgICAgICAubXh0LWRyb3Bkb3duLW9wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogODUlO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAzcHggM3B4IDEwcHggIzAwMDAwMDY0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIHRoaW4gI2M0YzRjNDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDFweCAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQ1VTVE9NIG9wdGlvbnNcbiAgICAgICAgICAgICAgICAvLyBUQUcgb3B0aW9uc1xuICAgICAgICAgICAgICAgIC5teHQtZHJvcGRvd24tb3B0aW9ucy5teHQtY3VzdG9tLWRyb3Bkb3duLW9wdGlvbnMsXG4gICAgICAgICAgICAgICAgLm14dC1kcm9wZG93bi1vcHRpb25zLm14dC10YWctZHJvcGRvd24tb3B0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBET1Qgb3B0aW9uc1xuICAgICAgICAgICAgICAgIC5teHQtZHJvcGRvd24tb3B0aW9ucy5teHQtZG90LWRyb3Bkb3duLW9wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgdGhpbiAjY2JjYmNiO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBkZWZhdWx0IENIRUNLQk9YIG9wdGlvbnNcbi5teHQtZmlsdGVyLWdyaWQgLmRlc2lnblByb2Nlc3NGaWx0ZXJzIC5teHQtZHJvcGRvd24tY29udGFpbmVyIC5teHQtZHJvcGRvd24sXG4ubXh0LXRvYXN0ZXIgLm14dC10b2FzdGVyLWNvbnRlbnQge1xuXG4gICAgLyogYS5rLmEgZGVmYXVsdCBjaGVja2JveCAqL1xuICAgIC5teHQtZHJvcGRvd24tb3B0aW9ucyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1kYXJrKTtcblxuICAgICAgICAubXh0LWRyb3Bkb3duLW9wdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ1VTVE9NIG9wdGlvbnNcbi5teHQtZmlsdGVyLWdyaWQgLmRlc2lnblByb2Nlc3NGaWx0ZXJzIC5teHQtZHJvcGRvd24tY29udGFpbmVyLm14dC1jdXN0b20tZHJvcGRvd24gLm14dC1kcm9wZG93bixcbi5teHQtdG9hc3RlciAubXh0LXRvYXN0ZXItY29udGVudCB7XG4gICAgLm14dC1kcm9wZG93bi1vcHRpb25zLm14dC1jdXN0b20tZHJvcGRvd24tb3B0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAubXh0LW9wdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB0aGluICNjYmNiY2I7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDVweCAzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG5cbiAgICAgICAgICAgICYubXh0LW9wdGlvbi1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1pbnZlcnNlKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtYnV0dG9uLWRpc2FibGVkLWZvbnQtY29sb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1vcHRpb24ubXh0LXNlbGVjdGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvci1pbnZlcnNlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW14dC1iYWNrZ3JvdW5kLWNvbG9yLWRhcmspO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBUQUcgb3B0aW9uc1xuLm14dC1maWx0ZXItZ3JpZCAuZGVzaWduUHJvY2Vzc0ZpbHRlcnMgLm14dC1kcm9wZG93bi1jb250YWluZXIubXh0LXRhZy1kcm9wZG93biAubXh0LWRyb3Bkb3duLFxuLm14dC10b2FzdGVyIC5teHQtdG9hc3Rlci1jb250ZW50IHtcbiAgICAubXh0LWRyb3Bkb3duLW9wdGlvbnMubXh0LXRhZy1kcm9wZG93bi1vcHRpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIC5teHQtb3B0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIHRoaW4gI2NiY2JjYjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDNweDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcblxuICAgICAgICAgICAgJi5teHQtb3B0aW9uLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWludmVyc2UpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW14dC1idXR0b24tZGlzYWJsZWQtZm9udC1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LW9wdGlvbi5teHQtc2VsZWN0ZWQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC10ZXh0LWNvbG9yLWludmVyc2UpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LWJhY2tncm91bmQtY29sb3ItZGFyayk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERPVCBvcHRpb25zXG4ubXh0LWZpbHRlci1ncmlkIC5kZXNpZ25Qcm9jZXNzRmlsdGVycyAubXh0LWRyb3Bkb3duLWNvbnRhaW5lci5teHQtZG90LWRyb3Bkb3duIC5teHQtZHJvcGRvd24sXG4ubXh0LXRvYXN0ZXIgLm14dC10b2FzdGVyLWNvbnRlbnQge1xuICAgIC5teHQtZHJvcGRvd24tb3B0aW9ucy5teHQtZG90LWRyb3Bkb3duLW9wdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwJSA1MCU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAubXh0LW9wdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDJweDtcblxuICAgICAgICAgICAgLm14dC1zZWxlY3RvciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHg7XG5cbiAgICAgICAgICAgICAgICAubXh0LWRvdCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgdGhpbiAjZTNlM2UzO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm14dC1vcHRpb24tZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtb3B0aW9uLm14dC1zZWxlY3RlZCB7XG4gICAgICAgICAgICAubXh0LXNlbGVjdG9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IHRoaW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG4vKiBTdHlsZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAqL1xuLm14dC1jdXN0b20tY2hlY2tib3gtY29udGFpbmVyIC5teHQtY3VzdG9tLWNoZWNrbWFyazphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xufVxuXG5pbnB1dDpjaGVja2VkIH4gLm14dC1jdXN0b20tY2hlY2ttYXJrIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG59XG5cbi5teHQtZHJvcGRvd24tb3B0aW9uLm14dC1vcHRpb24tZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG9wYWNpdHk6IDAuNTtcbn0iLCIkZGVmYXVsdEJveFNoYWRvdzogMCAxcHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDAgMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuXG46cm9vdCB7XG4gICAgLS1teHQtcGxhY2Vob2xkZXItYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgICAtLW14dC1wcmljZS1iYWNrZ3JvdW5kLS1jb2xvcjogI2VlZTtcbn1cblxuLm14dC1sYW5kc2NhcGUubXh0LW1vYmlsZSB7XG4gICAgLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyB7XG4gICAgICAgIC8qKiBvbiBjZXJ0YWluIHBob25lcyBvbiBsYW5kc2NhcGUsIHRoZSB0b3AgMTAgcGl4ZWxzIGFyZSByZXNlcnZlZCBmb3IgZHJhZ2dpbmcgZG93biBhbmQgY2xpY2sgZXZlbnRzIGRvbnQgcmVnaXN0ZXIqL1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMHB4IHZhcigtLW14dC1waWNrZXItaG9yaXpvbnRhbC1wYWRkaW5nKTtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgIC5vcHRpb25zLXNjcm9sbCB7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxcHggMDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cblxuICAgIC5teHQtYmFjay1idXR0b24ge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGctYm9sZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LXF1ZXN0aW9uLW1hcmsge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgLmRlc2lnblByb2Nlc3NTZWFyY2hEaXYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgLmRlc2lnblByb2Nlc3NTZWFyY2hJY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgICAgXG4gICAgICAgICAgICBsZWZ0OiA4cHg7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNpZ25Qcm9jZXNzU2VhcmNoIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0Qm94U2hhZG93O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LWNvcm5lci1yb3VuZG5lc3MpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBnYXA6IDVweDtcblxuICAgICAgICAmLmdyaWQtY29udGVudC0tZ3JpZC1sYXlvdXQge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTAsIDFmcik7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LWJsb2NrZWQtdGV4dC1vcHRpb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAubXh0LWJsb2NrZWQtaWNvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtY29udGVudCA+IC5teHQtZmlsdGVyLWdyb3VwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmljb24tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktaXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIC5sYWJlbGVkLWltYWdlLW9wdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAubXh0LWltYWdlLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1vcHRpb24ge1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogODRweDtcblxuICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtaW5mbyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoN3B4LCA3cHgpO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOHB4LCAtOHB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWluZm8tLW5hbWUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtaW5mby0tcHJpY2Uge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhZy1jb250ZW50IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAubGFiZWxlZC10YWctb3B0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pbmZvLS1uYW1lIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWluZm8tLXByaWNlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LW9wdGlvbi10cmFkaXRpb25hbCB7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wcm9kdWN0LXByaWNpbmcge1xuICAgICAgICAgICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICAgICAgJi0tbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWxnLWJvbGQpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLS1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudC1wYWdpbmF0aW9uIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZy1ib2xkKTtcbiAgICAgICAgaGVpZ2h0OiA1M3B4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAgICAgLnBhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnBhZ2luYXRpb24tYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBhZ2luYXRpb24tYnRuOmRpc2FibGVkIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgLnBhZ2luYXRpb24taW1nIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LWZpbHRlcnNvcnQtaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgIC5teHQtZmlsdGVyLWdyb3VwIHtcbiAgICAgICAgLmdyaWQtY29udGVudCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q4ZDhkODtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1zb3J0LWJ0bi1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC5teHQtc29ydC1idG4ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAubXh0LXNvcnQtcG9wb3ZlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0xM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiKDIzNSwgMjM1LCAyMzUpO1xuXG4gICAgICAgICAgICAubXh0LXBvcG92ZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5teHQtbW9kYWwtYXJyb3ctb3V0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgJi5maWx0ZXItZ3JvdXAtZ3JpZC1jb250ZW50IHtcblxuICAgICAgICAgICAgLm14dC1maWx0ZXItZ3JvdXAtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZGQ7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5teHQtZmlsdGVyLWdyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5teHQtZmlsdGVyLWdyb3VwLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LWhpZGVzaG93ZmlsdGVycy1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1maWx0ZXItYmFkZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAzcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LWZpbHRlci1iYWRnZS1mb250LWNvbG9yKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW14dC1maWx0ZXItYmFkZ2UtYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi1jb250ZW50IC5wcm9kdWN0LW9wdGlvbi5wcm9kdWN0LW9wdGlvbi10cmFkaXRpb25hbCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1vcHRpb24tdHJhZGl0aW9uYWwsXG4gICAgLnByb2R1Y3Qtb3B0aW9uLWdyaWQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLXNpbXBsZS10ZXh0IHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgLy8gZXhwYW5kIHRoZSB3aWR0aCwgc28gbGVuZ3RoeSB0ZXh0IHdpbGwgZml0IGJldHRlclxuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDdweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDMzLjMzJSAtIDdweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaW1wbGUtdGV4dC1vcHRpb24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQ6IHVuc2V0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLXRydW5jYXRlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLS1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1teHQtcHJpY2UtYmFja2dyb3VuZC0tY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjplbXB0eSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAuc2ltcGxlLXRleHQtb3B0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItaW52ZXJzZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1kZXRhaWxzLXBvcG92ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG5cbiAgICAgICAgLm14dC1wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LW9wdGlvbi1idG4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAqIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXh0LXRvYXN0ZXIubXh0LXNvcnQtdG9hc3RlciB7XG4gICAgLm14dC10b2FzdGVyLW1haW4gLm14dC10b2FzdGVyLWNsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbn1cblxuLm14dC1kZXNrdG9wIHtcbiAgICAubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgfVxufVxuXG4ubXh0LWhlbHAtbWUtZGVjaWRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgLm14dC1oZWxwLW1lLWRlY2lkZS1zcGFuIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1ib2xkKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxufVxuXG4ubXh0LXNvcnQtYnRuIC5teHQtc29ydC1wb3BvdmVyLFxuLm14dC10b2FzdGVyIC5teHQtdG9hc3Rlci1jb250ZW50IHtcbiAgICAubXh0LXNvcnQtb3B0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmLnNlbGVjdGlvbi1hY3RpdmUge1xuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAubXh0LXNvcnQtb3B0aW9ucy1idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRvZ2dsZS1ibHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtc29ydC1vcHRpb25zLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAubXh0LXNvcnQtb3B0aW9ucy1idG4ge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5teHQtY29uZmlndXJhdG9yLW9wdGlvbnMgLnByb2R1Y3QtZGV0YWlscy1wb3BvdmVyLFxuLm14dC10b2FzdGVyIC5teHQtdG9hc3Rlci1jb250ZW50IHtcbiAgICAubXh0LXByb2R1Y3QtZGV0YWlscy1wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgICAucHJvZHVjdC10b29sdGlwLWhlYWRlciB7XG4gICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWJvbGQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LXRvb2x0aXAtYm9keSB7XG4gICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5teHQtY29uZmlndXJhdG9yLWJyb3dzZXIsIC5teHQtY29uZmlndXJhdG9yLW9wdGlvbnMsIC5teHQtY29uZmlndXJhdG9yLXN0ZXBzIHtcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgfVxuXG4gICAgLm14dC1pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLnByb2R1Y3QtaW1hZ2UubXh0LWNvbWJvLXN3YXRjaCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAucHJvZHVjdC1pbWFnZTIge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubXh0LWNvbWJvLXN3YXRjaCB7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgIH1cbn1cblxuIiwiXG46cm9vdCB7XG4gICAgLS1teHQtcGxhY2Vob2xkZXItYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgICAtLW14dC1wcmljZS1iYWNrZ3JvdW5kLS1jb2xvcjogI2VlZTtcbn1cblxuLm14dC1tb2JpbGUubXh0LXBvcnRyYWl0IHtcbiAgICAubXh0LWNvbmZpZ3VyYXRvci1icm93c2VyLFxuICAgIC5teHQtY29uZmlndXJhdG9yLXN0ZXBzIHtcbiAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICAuc3RlcFR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3ItYnJvd3NlciB7XG4gICAgLy8gVG8gbWF0Y2ggdGhlIGdhcCBpbiBzdGVwIHNlY3Rpb25zXG4gICAgbWFyZ2luLWJvdHRvbTogNnB4O1xufVxuLm14dC1jb25maWd1cmF0b3ItYnJvd3Nlcixcbi5teHQtY29uZmlndXJhdG9yLXN0ZXBzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAuc2VjdGlvbiAuaGVhZGVyLCAuc2VjdGlvbi5zZWN0aW9uLS1pdGVtU3VtbWFyeSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggdmFyKC0tbXh0LXBpY2tlci1ob3Jpem9udGFsLXBhZGRpbmcpO1xuICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICBcbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZy1ib2xkKTtcblxuICAgICAgICAgICAgLmN1cnJlbnQtdGV4dCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgfVxuXG4gICAgLnNlY3Rpb24ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IHZhcigtLW14dC1ib3JkZXIpO1xuICAgICAgICB9XG4gICAgICAgIGJvcmRlci1ib3R0b206IHZhcigtLW14dC1ib3JkZXIpO1xuXG4gICAgICAgIC5zZWN0aW9uVG9vbHRpcCB7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnfkBteHQvbXh0LXVpLXV0aWxpdHkvYXNzZXRzL2ljb25zL0RhcmsvTWlzYy9JY29ucy1NaXNjLUhlbHAuc3ZnJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2FkaW5nLWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG5cbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbXh0LXBsYWNlaG9sZGVyLWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAxNXB4O1xuXG4gICAgICAgICAgICAubXh0LWltYWdlLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDYwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGctYm9sZCk7XG5cbiAgICAgICAgICAgICAgICAuc3RlcE51bWJlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zdGVwVHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcblxuICAgICAgICAgICAgICAgICAgICAuc2VjdGlvblRvb2x0aXAtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmxvYWRpbmctdGl0bGUtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubG9hZGluZy1zdWJ0aXRsZS1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZy1ib2xkKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2luZ2xlLW9wdGlvbiB7XG5cbiAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3B0aW9ucy1zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfSBcbiAgICBcbiAgICAmLm14dC1tdWx0aS1zdGVwIHtcbiAgICAgICAgLnNlY3Rpb24geyBcbiAgICAgICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAub3B0aW9ucy1zZWN0aW9uLm9wZW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5vcHRpb25zLXN0aWNreSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5vcHRpb25zLXNjcm9sbCB7XG4gICAgICAgICAgICBzY3JvbGxiYXItZ3V0dGVyOiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZmlsdGVyLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5teHQtZmlsdGVyLWdyaWQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxufVxuXG4ubXh0LWRlc2t0b3Age1xuICAgIC5teHQtY29uZmlndXJhdG9yLWJyb3dzZXIsXG4gICAgLm14dC1jb25maWd1cmF0b3Itc3RlcHMge1xuICAgICAgICBnYXA6IDZweDtcblxuICAgICAgICAuc2VjdGlvbiAuaGVhZGVyLCAuc2VjdGlvbi5zZWN0aW9uLS1pdGVtU3VtbWFyeSB7XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtaGVhZGVyKTtcbiAgICAgICAgICAgICAgICAuY3VycmVudC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1teHQtYm9yZGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1kZXNrdG9wLm14dC1sYW5kc2NhcGUge1xuICAgIC5zZWN0aW9uIC5oZWFkZXIsIC5zZWN0aW9uLnNlY3Rpb24tLWl0ZW1TdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIH1cbn0iLCIuc2VjdGlvbi0taXRlbVN1bW1hcnkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHR3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxMHB4IHZhcigtLW14dC1waWNrZXItaG9yaXpvbnRhbC1wYWRkaW5nKTtcblx0Ym9yZGVyLXRvcDogdmFyKC0tbXh0LWJvcmRlcik7XG5cdG1hcmdpbjogMzBweCAwIWltcG9ydGFudDtcblx0ZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XG5cdCYgKyAuc2VjdGlvbiB7XG5cdFx0Ym9yZGVyLXRvcDogdmFyKC0tbXh0LWJvcmRlcik7XG5cdH1cblxuXHQuaXRlbS1sYWJlbCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5pdGVtLW1lc3NhZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuICBcdFx0Ym9yZGVyOiBzb2xpZCAxcHggI2ViZWJlYjtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdHBhZGRpbmctbGVmdDogNDBweDtcblxuXHRcdC5pdGVtLW1lc3NhZ2UtaWNvbiB7XG5cdFx0XHRoZWlnaHQ6IDQ0cHg7XG5cdFx0XHR3aWR0aDogNDRweDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuXHRcdFx0PiBpbWcge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaXRlbS1tZXNzYWdlLWxhYmVsIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdH1cblx0fVxufSIsIi5jb25maWd1cmF0b3Itc3RlcC1ncm91cCB7XG4gICAgJi1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3ItZGFyayk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMzUsIDIzNSwgMjM1KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgZm9udDogODAwIDIycHggdmFyKC0tbXh0LWZvbnQpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tbXh0LWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDI3cHggMjBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIC5jb25maWd1cmF0b3Itc3RlcC1ncm91cC1oZWFkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiKDIzNSwgMjM1LCAyMzUpO1xuICAgIH1cblxuICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICAuY29uZmlndXJhdG9yLXN0ZXAtZ3JvdXAtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjM1LCAyMzUsIDIzNSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMCAycHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIH1cblxuICAgICAgICAuY29uZmlndXJhdG9yLXN0ZXAtZ3JvdXAtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXh0LWNvbmZpZ3VyYXRvci1icm93c2VyLFxuLm14dC1jb25maWd1cmF0b3Itc3RlcHMge1xuICAgIC5jb25maWd1cmF0b3Itc3RlcC1ncm91cCAuc2VjdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufSIsIi5teHQtY29uZmlnLXBpY2tlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDVweDtcbiAgICB0b3A6IDQ1cHg7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB6LWluZGV4OiAyMDAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuXG4gICAgLm14dC1jb25maWctcGlja2VyLXRvZ2dsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubXh0LWNvbmZpZy1waWNrZXItc2Nyb2xsYWJsZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMwOHB4O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC1jb25maWctcGlja2VyLWNzc3ZhcnMge1xuICAgICAgIFxuXG4gICAgICAgIC5teHQtY29uZmlnLXBpY2tlci12YXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubXh0LWNvbmZpZy1waWNrZXItZGlzYWJsZWQge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cblxuICAgIC5teHQtY29uZmlnLWl0ZW0ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn0iLCIjbXh0LXNoYXJlLW1vZGFsIHtcblx0cGFkZGluZzogMjBweDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1mbG93OiBjb2x1bW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuXG4jbXh0LXNoYXJlLW1vZGFsIC5teHQtc2hhcmUtbW9kYWwtaGVhZGVyLFxuLm14dC10b2FzdGVyIC5teHQtc2hhcmUtbW9kYWwtaGVhZGVyIHtcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGctYm9sZCk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1teHQtY3RhLWJ1dHRvbi1ib3JkZXItY29sb3IpO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG5cdC5teHQtc2hhcmUtbW9kYWwtYnV0dG9uIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdC5teHQtc2hhcmUtbW9kYWwtaGVhZGVyLWxhYmVsIHtcblx0XHRmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWxnLWJvbGQpO1xuXHR9XG59XG5cbiNteHQtc2hhcmUtbW9kYWwgaW1nLm14dC1zaGFyZS1xcixcbi5teHQtdG9hc3RlciBpbWcubXh0LXNoYXJlLXFyIHtcblx0aGVpZ2h0OiAyMjBweDtcblx0d2lkdGg6IDIyMHB4O1xuXHRpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcbn1cblxuLm14dC1wb3J0cmFpdCB7XG5cdC5teHQtc2hhcmUtbW9kYWwtYmFja2dyb3VuZCB7XG5cdFx0dG9wOiA4MHB4O1xuXG5cdFx0I214dC1zaGFyZS1tb2RhbCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0fVxuXHR9XG59IiwiLm14dC1jb25maWd1cmF0b3ItY3RhcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDFweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIwKSwgMHB4IDBweCAycHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG5cbiAgICAubXh0LWJ0bi5teHQtYnRuLWRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgLm14dC1idG4ge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLW14dC1idXR0b24taGVpZ2h0KTtcbiAgICB9XG4gICAgLm14dC1idG4taWNvbi1vbmx5IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLW14dC1idXR0b24taGVpZ2h0KTtcbiAgICB9XG5cbiAgICAubXh0LWN0YS1idXR0b24ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbn1cbi5teHQtbGFuZHNjYXBlLm14dC1kZXNrdG9wIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAge1xuICAgIC5teHQtY29uZmlndXJhdG9yLWN0YXMge1xuICAgICAgICBwYWRkaW5nOiAwcHggMHB4O1xuICAgICAgICBvcmRlcjogLTFcbiAgICB9XG59IiwiLm14dC1jb25maWd1cmF0b3ItaGVhZGVyICB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWJhY2tncm91bmQtY29sb3IpO1xuICAgIC5oZWFkZXItbGFiZWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LXN1YmhlYWRlcik7XG4gICAgfVxufVxuLm14dC1kZXNrdG9wIHtcbiAgICAubXh0LWNvbmZpZ3VyYXRvci1oZWFkZXIgIHtcbiAgICAgICAgLmhlYWRlci1sYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtaGVhZGVyLWxnKTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubXh0LWNvbmZpZ3VyYXRvci1oZWFkZXItc2t1ICAge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBtaW4taGVpZ2h0OiAxN3B4O1xuXG4gICAgLmhlYWRlci1sYWJlbCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxufVxuLm14dC1sYW5kc2NhcGUge1xuICAgIC5teHQtY29uZmlndXJhdG9yLWhlYWRlci1za3UgICB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIycHg7XG4gICAgfVxufVxuLm14dC1kZXNrdG9wIHtcbiAgICAubXh0LWNvbmZpZ3VyYXRvci1oZWFkZXItc2t1ICAge1xuICAgICAgICAuaGVhZGVyLWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGcpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5teHQtbW9kYWwtY29udGFpbmVyLm14dC1jb250YWluZXIge1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgPiAqIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB9XG59IiwiLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSB7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1teHQtcGlja2VyLWhvcml6b250YWwtcGFkZGluZyk7XG59XG5cblxuLm14dC1wb3J0cmFpdCB7XG4gICAgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG59IiwiLy9pZiBpbSBpbiBteSBkZWZhdWx0IHJvb3QgcGFyZW50LCBzdHlsZSBpbiBhIHBhcnRpY3VsYXIgd2F5LCBvdGhlcndpc2UganVzdCBmaWxsIG15IHBhcmVudCBzbyB0aGF0IHRoZSBpbXBsZW1lbnRvciBoYXMgdG90YWwgY29udHJvbFxuLm14dC1wb3J0cmFpdCB7XG4gICAgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIHtcbiAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICAgIGZsZXg6IDAgMCB2YXIoLS1teHQtcGlja2VyLWNvbnRhaW5lci1oZWlnaHQpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLW14dC1waWNrZXItY29udGFpbmVyLWhlaWdodCk7XG4gICAgfVxufVxuLm14dC1sYW5kc2NhcGUge1xuICAgIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciB7XG4gICAgICAgIGZsZXg6IDAgMCB2YXIoLS1teHQtcGlja2VyLXdpZHRoKTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1teHQtdmlld2VyLWNvbnRhaW5lci1taW4td2lkdGgpKTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogdmFyKC0tbXh0LXBpY2tlci13aWR0aCk7XG4gICAgfVxuICAgICYubXh0LWRlc2t0b3Age1xuICAgICAgICAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIge1xuICAgICAgICAgICAgLS1teHQtcGlja2VyLWhvcml6b250YWwtcGFkZGluZzogMTBweDtcbiAgICBcbiAgICAgICAgICAgIC8vZm9yIGRlc2t0b3AgbGFuZHNjYXBlIGV2ZXJ5dGhpbmcgaGFzIHRoZSBzYW1lIGhvcml6b250YWwgcGFkZGluZ1xuICAgICAgICAgICAgPiAqOm5vdCgubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IHZhcigtLW14dC1waWNrZXItaG9yaXpvbnRhbC1wYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3ItcGlja2VyIHtcbiAgICAtLW14dC1waWNrZXItaG9yaXpvbnRhbC1wYWRkaW5nOiAyMHB4O1xuICAgIGZsZXg6IDAgMCB2YXIoLS1teHQtcGlja2VyLWNvbnRhaW5lci1oZWlnaHQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LWJhY2tncm91bmQtY29sb3IpO1xuXG4gICAgLy9mb3Igbm9uIGRlc2t0b3AgbGFuZHNjYXBlLi4uIG9ubHkgaGVhZGVyIGxhYmVscyBoYXZlIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgICAubXh0LWhlYWRlci1sYWJlbC1jb21wb25lbnQge1xuICAgICAgICBwYWRkaW5nOiAwcHggdmFyKC0tbXh0LXBpY2tlci1ob3Jpem9udGFsLXBhZGRpbmcpO1xuICAgIH1cbn1cbiIsIi5teHQtY29uZmlndXJhdG9yLXRvdGFsLXByaWNpbmcgIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgIC5oZWFkZXItbGFiZWwge1xuICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWxnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLW14dC1jbGllbnQtc2Vjb25kYXJ5KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbn1cbi5teHQtZGVza3RvcCB7XG4gICAgLm14dC1jb25maWd1cmF0b3ItdG90YWwtcHJpY2luZyAge1xuICAgICAgICAuaGVhZGVyLWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWhlYWRlcik7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5teHQtY29uZmlndXJhdG9yLXN1YmhlYWRlciAge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAuaGVhZGVyLWxhYmVsIHtcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG59XG4ubXh0LWRlc2t0b3Age1xuICAgIC5teHQtY29uZmlndXJhdG9yLXN1YmhlYWRlciAge1xuICAgICAgICAuaGVhZGVyLWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktbGcpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5teHQtcG9ydHJhaXQge1xuICAgIC5teHQtY29uZmlndXJhdG9yLXZpZXdlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICBmbGV4OiAxIDAgdmFyKC0tbXh0LXZpZXdlci1jb250YWluZXItaGVpZ2h0KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tbXh0LWJvcmRlcik7XG4gICAgfVxufVxuLm14dC1sYW5kc2NhcGUge1xuICAgIC5teHQtY29uZmlndXJhdG9yLXZpZXdlciB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IHZhcigtLW14dC12aWV3ZXItY29udGFpbmVyLW1pbi13aWR0aCk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAmLm14dC1zcGlucy1mdWxsc2NyZWVuIHtcbiAgICAgICAgICAgIC8qKiBtYWtlIHN1cmUgdGhpcyBpcyBtb3JlIGltcG9ydGFudCB0aGFuIHRoZSBub24gbGFuZHNjYXBlIG14dC1zcGlucy1mdWxsc2NyZWVuKi9cbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubXh0LWNvbmZpZ3VyYXRvci12aWV3ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAubXh0LWFib3V0LWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiB2YXIoLS1teHQtaW5zZXQtYnV0dG9uLXBhZGRpbmcpO1xuICAgICAgICBsZWZ0OiB2YXIoLS1teHQtaW5zZXQtYnV0dG9uLXBhZGRpbmcpO1xuICAgIH1cblxuICAgIC5teHQtc3BpbnMtY2FudmFzLWNvbnRhaW5lciB7XG4gICAgICAgIC5teHQtbW9kYWwtYmFja2dyb3VuZC5teHQtZnVsbC1tb2RhbC1zY3JlZW46aGFzKC5teHQtd2ViYXItZGVza3RvcC1tb2RhbCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4iLCIubXh0LWNvbmZpZ3VyYXRvci12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24ubXh0LWJ0biB7XG4gICAgd2lkdGg6IHZhcigtLW14dC1idXR0b24taGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLW14dC1idXR0b24taGVpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtY29uZmlndXJhdG9yLXZpcnR1YWwtYXNzaXN0YW50LWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG59IiwiLm14dC1jb25maWd1cmF0b3ItdmlydHVhbC1hc3Npc3RhbnQtY2hhdCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlIG9wYWNpdHk7XG59XG5cbi5teHQtdmlydHVhbC1hc3Npc3RhbnQtb3BlbiB7XG4gICAgLm14dC1jb25maWd1cmF0b3ItdmlydHVhbC1hc3Npc3RhbnQtY2hhdCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBhZGRpbmc6IDI4cHggMTZweCAxNnB4IDE2cHg7XG4gICAgfVxuICAgIFxuXG4gICAgJi5teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnaW5nIHtcblxuICAgICAgICAubXh0LXZhLXByb21wdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufSIsIjpyb290IHtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1mb250OiBWZXJkYW5hO1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtaGVhZGVyLWNvbG9yOiAjYmQzYTJlO1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWhlYWRlci1zaXplOiAxNXB4O1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWhlYWRlci13ZWlnaHQ6IDcwMDtcblxuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXN1YmhlYWRlci1jb2xvcjogYmxhY2s7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtc3ViaGVhZGVyLXNpemU6IDExcHg7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtc3ViaGVhZGVyLXdlaWdodDogNzAwO1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcHJvbXB0LWNvbG9yOiBibGFjaztcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1wcm9tcHQtc2l6ZTogMTFweDtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1wcm9tcHQtd2VpZ2h0OiA3MDA7XG5cbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1jb3B5cmlnaHQtY29sb3I6ICNkMmQyZDI7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtY29weXJpZ2h0LXNpemU6IDExcHg7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtY29weXJpZ2h0LXdlaWdodDogNDAwO1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLWNvbG9yOiB3aGl0ZTtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24tYmFja2dyb3VuZDogYmxhY2s7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLWRpc2FibGVkLWNvbG9yOiB3aGl0ZTtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogI2QyZDJkMjtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24tYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWJ1dHRvbi1oZWlnaHQpO1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWJ1dHRvbi1oZWlnaHQ6IDMzcHg7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLXdpZHRoOiAxMDAlO1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWJ1dHRvbi1tYXgtd2lkdGg6IDMwMHB4O1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnZS1uYW1lLXNpemU6IDExcHg7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnZS1uYW1lLXdlaWdodDogNTAwO1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnZS10ZXh0LXNpemU6IDExcHg7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnZS10ZXh0LXdlaWdodDogNTAwO1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtdXNlci10ZXh0LWNvbG9yOiBibGFjaztcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1haS10ZXh0LWNvbG9yOiBibGFjaztcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC11c2VyLXRleHQtYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1haS10ZXh0LWJhY2tncm91bmQ6ICNkMGQwZDA7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcmljaC1jb250ZW50LWJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcmljaC1jb250ZW50LXRpdGxlLWNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtaGVhZGVyLWNvbG9yKTtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1yaWNoLWNvbnRlbnQtdGl0bGUtc2l6ZTogMTFweDtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1yaWNoLWNvbnRlbnQtdGl0bGUtd2VpZ2h0OiA3MDA7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcmljaC1jb250ZW50LXN1YnRpdGxlLWNvbG9yOiAjNjY2NjY2O1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXJpY2gtY29udGVudC1zdWJ0aXRsZS1zaXplOiAxMXB4O1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXJpY2gtY29udGVudC1zdWJ0aXRsZS13ZWlnaHQ6IDQwMDtcblxuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXVzZXItbmFtZS1jb2xvcjogI2E1YTVhNTtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1haS1uYW1lLWNvbG9yOiAjYTVhNWE1O1xuXG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtaW5wdXQtY29sb3I6IGJsYWNrO1xuICAgIC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWlucHV0LXNpemU6IDExcHg7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcGxhY2Vob2xkZXItY29sb3I6ICNkMmQyZDI7XG4gICAgLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtaW5wdXQtYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgICAtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1ib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4ubXh0LXZpcnR1YWwtYXNzaXN0YW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtZm9udCk7XG5cbiAgICAubXh0LXZhLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7XG5cbiAgICAgICAgLm14dC12YS1oZWFkZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1oZWFkZXItY29sb3IpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtaGVhZGVyLXNpemUpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1oZWFkZXItd2VpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgICAubXh0LXZhLXN1YmhlYWRlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXN1YmhlYWRlci1jb2xvcik7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1zdWJoZWFkZXItc2l6ZSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXN1YmhlYWRlci13ZWlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC12YS1wcm9tcHQge1xuICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXByb21wdC1jb2xvcik7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXByb21wdC1zaXplKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1wcm9tcHQtd2VpZ2h0KTtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LXZhLWRpdmlkZXIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoODksIDkwLCA5MiwgMC4yKTtcbiAgICB9XG5cbiAgICAubXh0LXZhLWlucHV0LWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtaW5wdXQtYmFja2dyb3VuZCk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWlucHV0LWNvbG9yKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDdweCAxM3B4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWlucHV0LXNpemUpO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1mb250KTtcblxuICAgICAgICAgICAgJltyb3dzPVwiMVwiXSwgJltyb3dzPVwiMlwiXSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcGxhY2Vob2xkZXItY29sb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm14dC12YS1pbnB1dC1zZW5kIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgd2lkdGg6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24td2lkdGgpO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLW1heC13aWR0aCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24taGVpZ2h0KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLWNvbG9yKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1idXR0b24tYmFja2dyb3VuZCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYnV0dG9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtdmEtY2hhdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICAgICAubXh0LXZhLW1lc3NhZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm14dC12YS11c2VyLW1lc3NhZ2Uge1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5teHQtdmEtYWktbWVzc2FnZSB7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5teHQtdmEtbWVzc2FnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1tZXNzYWdlLW5hbWUtc2l6ZSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1tZXNzYWdlLW5hbWUtd2VpZ2h0KTtcbiAgICAgICAgICAgICAgICAmLm14dC12YS11c2VyLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC11c2VyLW5hbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLm14dC12YS1haS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC11c2VyLW5hbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5teHQtdmEtbWVzc2FnZS1idWJibGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweCAxMnB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnZS10ZXh0LXNpemUpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtbWVzc2FnZS10ZXh0LXdlaWdodCk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICYubXh0LXZhLXVzZXItYnViYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWJvcmRlci1yYWRpdXMpIDBweCB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYm9yZGVyLXJhZGl1cykgdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtdXNlci10ZXh0LWJhY2tncm91bmQpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXVzZXItdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYubXh0LXZhLWFpLWJ1YmJsZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYm9yZGVyLXJhZGl1cykgdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWJvcmRlci1yYWRpdXMpIHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWFpLXRleHQtYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtYWktdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5teHQtdmEtYnViYmxlLXJpY2gtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1yaWNoLWNvbnRlbnQtYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtcmljaC1jb250ZW50LXRpdGxlLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAxcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDBweCAycHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAgICAgLm14dC12YS1yaWNoLWNvbnRlbnQtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubXh0LXZhLXJpY2gtY29udGVudC10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW14dC12aXJ0dWFsLWFzc2lzdGFudC1yaWNoLWNvbnRlbnQtdGl0bGUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKG14dC12aXJ0dWFsLWFzc2lzdGFudC1yaWNoLWNvbnRlbnQtdGl0bGUtc2l6ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcihteHQtdmlydHVhbC1hc3Npc3RhbnQtcmljaC1jb250ZW50LXRpdGxlLXdlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAubXh0LXZhLXJpY2gtY29udGVudC1zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LXJpY2gtY29udGVudC1zdWJ0aXRsZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIobXh0LXZpcnR1YWwtYXNzaXN0YW50LXJpY2gtY29udGVudC1zdWJ0aXRsZS1zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKG14dC12aXJ0dWFsLWFzc2lzdGFudC1yaWNoLWNvbnRlbnQtc3VidGl0bGUtd2VpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5teHQtdmEtbGluay1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubXh0LXZhLWFpLWVycm9yIHtcbiAgICAgICAgICAgICAgICAubXh0LXZhLW1lc3NhZ2UtYnViYmxlLm14dC12YS1haS1idWJibGUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2I1MDAwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LXZhLWNvcHlyaWdodCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtY29weXJpZ2h0LWNvbG9yKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1teHQtdmlydHVhbC1hc3Npc3RhbnQtY29weXJpZ2h0LXNpemUpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tbXh0LXZpcnR1YWwtYXNzaXN0YW50LWNvcHlyaWdodC13ZWlnaHQpO1xuXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxufVxuXG4ubXh0LWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLm14dC1jb25maWd1cmF0b3ItdmlydHVhbC1hc3Npc3RhbnQtaW4tdmlld2VyIHtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2UgYWxsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYubXh0LWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5teHQtY29uZmlndXJhdG9yLXZpcnR1YWwtYXNzaXN0YW50LWNoYXQge1xuICAgICAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tbXh0LWJ1dHRvbi1oZWlnaHQpIC0gNXB4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDAgMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyAgICBcbiAgICB9XG5cbiAgICAmLm14dC12aXJ0dWFsLWFzc2lzdGFudC1vcGVuIHtcbiAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICYubXh0LXZpcnR1YWwtYXNzaXN0YW50LW1lc3NhZ2luZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuXG4gICAgICAgICAgICAubXh0LXZhLXByb21wdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcblxuICAgIC5teHQtY29uZmlndXJhdG9yLXZpcnR1YWwtYXNzaXN0YW50LWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgfVxufVxuIiwiLm14dC1jb25maWd1cmF0b3ItdmlydHVhbC1hc3Npc3RhbnQtbW9iaWxlLXRvYXN0Lm14dC1jb250YWluZXIge1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZSBhbGw7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgbWluLWhlaWdodDogMHB4O1xuXG4gICAgJi5teHQtdmlydHVhbC1hc3Npc3RhbnQtb3BlbiB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tbXh0LXBpY2tlci1jb250YWluZXItaGVpZ2h0KTtcbiAgICAgICAgLyoqIG1pbiBpcyBub3QgYWx3YXlzIHN1cHBvcnRlZCwgc28ga2VlcCBhIGxvd2VyIHZhbHVlIGFzIGEgZmFsbGJhY2ssIGJ1dCBpZiB0aGVyZXMgYSBtaW4sIHVzZSBhcyBtdWNoIGFzIHdlIGNhbiovXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiBtaW4oMzAwcHgsIDEwMCUpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5teHQtY29uZmlndXJhdG9yLXZpcnR1YWwtYXNzaXN0YW50LWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICB9XG59IiwiLm14dC1ncmlkLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG59XG5cbi5teHQtZ3JpZC1jb250YWluZXItcGFnaW5nIHtcbiAgICAvKiAgICBoZWlnaHQ6IDEwMCU7Ki9cbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xufVxuXG4ubXh0LWdyaWQtY29udGFpbmVyLXJpZ2lkLm14dC1ncmlkLWNvbnRhaW5lci1wYWdpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm14dC1ncmlkLWNvbnRhaW5lci1wYWdpbmcgLm14dC1ncmlkIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLm14dC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubXh0LWdyaWQtcGFnaW5hdGlvbiB7XG4gICAgZmxleDogMCAwIDM2cHg7XG4gICAgaGVpZ2h0OiAzNnB4OyAvKnNvbWV3aGF0IGR1cGxpY2F0aXZlIG9mIGZsZXggaGVpZ2h0LCBidXQgbmVlZGVkIGZvciBzdHVmZiBpbnNpZGUgKi9cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb250YWluZXI6IHBhZ2luYXRpb24taW5mby1jb250YWluZXIgLyBpbmxpbmUtc2l6ZTtcblxuICAgIC5teHQtZ3JpZC1wYWdpbmF0aW9uLXRleHQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxufVxuXG5AY29udGFpbmVyIHBhZ2luYXRpb24taW5mby1jb250YWluZXIgKG1heC13aWR0aDogMjUwcHgpIHtcbiAgICAubXh0LWdyaWQtcGFnaW5hdGlvbiAubXh0LWdyaWQtcGFnaW5hdGlvbi10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubXh0LWdyaWQtcGFnaW5hdGlvbi10ZXh0Lm14dC1ncmlkLXBhZ2luYXRpb24tcGFnZS1jb3VudCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG59XG5cbnAubXh0LWdyaWQtcGFnaW5hdGlvbi10ZXh0Lm14dC1ncmlkLXBhZ2luYXRpb24tcGFnZS1jb3VudCB7XG4gICAgZmxleC1ncm93OiAxO1xufVxuXG5wLm14dC1ncmlkLXBhZ2luYXRpb24tdGV4dCB7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHktYm9sZCk7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG59XG5cbmltZy5teHQtZ3JpZC1wYWdpbmF0aW9uLWFycm93Lm14dC1ncmlkLXBhZ2luYXRpb24tYXJyb3ctZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMztcbn1cblxuLm14dC1ncmlkLXBhZ2luYXRpb24tYXJyb3c6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5teHQtZ3JpZC1wYWdpbmF0aW9uLWFycm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3BhY2l0eTogMC42O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC43NXMgZWFzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAycHggc29saWQgZ3JleTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNSUpO1xuICAgIG1hcmdpbjogMHB4IDVweDtcbn1cblxuLm14dC1ncmlkLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5teHQtZ3JpZC1pdGVtLWNoZWNrbWFyayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbGVmdDogM3B4O1xuICAgIHRvcDogM3B4O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubXh0LWdyaWQtaXRlbS5teHQtZ3JpZC1pdGVtLWhvdmVyLWdyb3cge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcblxuICAgIC8qIGZvciBpdGVtcyB0byBsb29rIGdvb2Qgd2hlbiB0aGV5IGdyb3csIHRoZXkgcmVxdWlyZSBzb21lIHdoaXRlIHBhZGRpbmcgYXJvdW5kIHRoZSBlZGdlcyovXG4gICAgcGFkZGluZzogNXB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4ubXh0LWdyaWQtaXRlbS5teHQtZ3JpZC1pdGVtLWhvdmVyLWdyb3c6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB6LWluZGV4OiAxOyAvKmVuc3VyZXMgaXQgc2hvd3Mgb3ZlciB0aGUgaXRlbSBuZXh0IHRvIGl0IGluIHRoZSBncmlkKi9cbn1cblxuLm14dC1ncmlkLWl0ZW0tdGV4dC1kaXYge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDVweCAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSAzMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpLCBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUgNzAlKSAwIDEwMCUsXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCg1MCUgMCwgZmFydGhlc3Qtc2lkZSwgcmdiYSgwLCAwLCAwLCAwLjIpLCByZ2JhKDAsIDAsIDAsIDApKSwgcmFkaWFsLWdyYWRpZW50KDUwJSAxMDAlLCBmYXJ0aGVzdC1zaWRlLCByZ2JhKDAsIDAsIDAsIDAuMiksIHJnYmEoMCwgMCwgMCwgMCkpIDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgMzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSwgbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHdoaXRlIDcwJSkgMCAxMDAlLFxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSBhdCA1MCUgMCwgcmdiYSgwLCAwLCAwLCAwLjIpLCByZ2JhKDAsIDAsIDAsIDApKSwgcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUgYXQgNTAlIDEwMCUsIHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwKSkgMCAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDE1cHgsIDEwMCUgMTVweCwgMTAwJSA1cHgsIDEwMCUgNXB4O1xuXG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBsb2NhbCwgbG9jYWwsIHNjcm9sbCwgc2Nyb2xsO1xuXG4gICAgLm14dC1ncmlkLWl0ZW0tdGV4dCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICB9XG59XG5cbi5teHQtZ3JpZC1pdGVtLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKiBUaGlzIGlzIHVzZWQgdG8gaGFuZGxlIHR3byBpbWFnZXMgaW4gdGhlIHNhbWUgZ3JpZCBjZWxsIGEuay5hLiBzcGxpdCBpbWFnZXMqL1xuLm14dC1jb21iby1zd2F0Y2gge1xuICAgIGhlaWdodDogNTAlO1xuICAgIC8qKiBpZiBwcm9kdWN0LWltYWdlIGlzIHNwbGl0LCBhc3N1bWUgdGhhdCBpdCBpcyBqdXN0IGNvbG9ycyB0aGF0IHdlIGNhbiBcImNvdmVyXCIgYW5kIHpvb20gaW4gb24gdGhlbSovXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgbGVmdDtcbn1cblxuLm14dC1ncmlkLWl0ZW0tYmctaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4OiAxO1xuICAgIC8qIGFsbG93cyBzaHJpbmtpbmcgaWYgbmVjZXNzYXJ5Ki9cbiAgICBtaW4td2lkdGg6IDBweDtcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG59XG5cbi5teHQtZ3JpZC1pdGVtLWJnLWltZy1uby10ZXh0IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIHRoaXMgY2xhc3MgaXMgc2hhcmVkIGJldHdlZW4gY29udGVudCBhcyBiYWNrZ3JvdW5kIGFuZCB0aGUgYWN0dWFsIGltYWdlIGl0ZW07XG4gdXNlZCBtb3N0bHkgc28gdGhhdCBvdGhlciBjbGFzc2VzIGNhbiBmaW5kIHRoZSBpdGVtIHRoYXQgcmVwcmVzZW50cyB0aGUgXCJpbWFnZVwiIGluIHRoZSBncmlkLCBzbyBrZWVwIGEgbWluaW11bSBvZiBDU1MgaW4gaGVyZSovXG4ubXh0LWdyaWQtaXRlbS1pbWcge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubXh0LWdyaWQtaXRlbS1yZ2JhIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjY2FjYWNhO1xufVxuXG4vKiBzZXBhcmF0ZSBjbGFzcyBmb3IgaG92ZXIsIGIvYyBvbmx5IGNlcnRhaW4gaXRlbXMgaG92ZXI7IG90aGVycyBoYXZlIGEgaG92ZXJCb3ggb24gdGhlbSovXG4ubXh0LWdyaWQtaXRlbS1ob3ZlciB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4ubXh0LWdyaWQtaXRlbS1ob3Zlcjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCA2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5teHQtZ3JpZC1pdGVtLXBvcG92ZXIge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKipcbiAqIFB1dHMgaW50ZXJpb3IgYm9yZGVycyBiYXNlZCBvbiB0aGVyZSBiZWluZyAyIGNvbHVtbnNcbiAqIEZpcnN0IHB1dCBib3JkZXJzIGV2ZXJ5IG90aGVyIHRvIGZvcm0gdGhlIG1pZGRsZSBib3JkZXJcbiAqL1xuLm14dC1ncmlkIC5teHQtZ3JpZC1pbnRlcmlvci1ib3JkZXJzLTI6bnRoLWNoaWxkKDJuKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjZDFkMWQxO1xufVxuXG4vKipcbiAqIFRoZW4gcHV0IGJvdHRvbSBib3JkZXJzIG9uIGV2ZXJ5dGhpbmcgYnV0IHRoZSBsYXN0XG4gKi9cbi5teHQtZ3JpZCAubXh0LWdyaWQtaW50ZXJpb3ItYm9yZGVycy0yOm50aC1sYXN0LWNoaWxkKG4gKyAzKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkMWQxZDE7XG59XG5cbi5teHQtZ3JpZC1pdGVtLWRpc2FibGVkLWJhY2tncm91bmQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgdG9wOiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjE2LCAyMTYsIDIxNiwgMC41KTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5teHQtZ3JpZC1pdGVtLWRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm14dC1ncmlkLWl0ZW0tZGlzYWJsZWQgLm14dC1ncmlkLWl0ZW0tZGlzYWJsZWQtYmFja2dyb3VuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5teHQtZ3JpZC1pdGVtLWRpc2FibGVkLm14dC1ncmlkLWl0ZW0taG92ZXI6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5teHQtYmxvY2tlZC1vcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICB0b3A6IDA7XG59XG5cbi5teHQtdW5hdmFpbGFibGUtbW9kYWwge1xuICAgIC5teHQtbW9kYWwtZGl2IHtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgIH1cbiAgICAuY2xvc2VCdXR0b24ge1xuICAgICAgICB0b3A6IDIzcHg7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuXG4gICAgICAgIC5jbG9zZUljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLW14dC1mb250LWJvZHkpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1oZWFkZXIpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyOXB4O1xuICAgIH1cbiAgICAmLWNvbmZpcm0ge1xuICAgICAgICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta29uZy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1rb25nLXRleHQtY29sb3ItaG92ZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTZweCAxMnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICB9XG59XG5cbi5teHQtdW5hdmFpbGFibGUtbW9kYWwtY29uZmlybSB7XG4gICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0ta29uZy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gICAgY29sb3I6IHZhcigtLWtvbmctdGV4dC1jb2xvci1ob3Zlcik7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIHBhZGRpbmc6IDEwcHggMTZweCAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG59XG4iLCIubXh0LW1vYmlsZXtcbiAgICAub3JkZXItc3dhdGNoLW1vZGFsLm14dC1tb2RhbC1kaXZ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuXG4gICAgICAgIC5vcmRlci1zd2F0Y2gtcm9vdHtcbiAgICAgICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvc2VCdXR0b257XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuem9uZS1he1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNsb3NlQnV0dG9uLCAuY2xvc2VJY29ue1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnRuSG92ZXJCYWNrZ3JvdW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm9yZGVyLXN3YXRjaC1oZWFkZXJ7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgICAgICAgICAgbWluLWhlaWdodDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtaGVhZGVyLXRpdGxle1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtc3ViaGVhZGVye1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3JkZXItc3dhdGNoLWZvb3RlcntcbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtY2FydHtcbiAgICAgICAgICAgICAgICAuc3dhdGNoLWNvdW50e1xuICAgICAgICAgICAgICAgICAgICAuc3dhdGNoLWNvdW50LXRleHR7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtYnRuLnN1Ym1pdHtcbiAgICAgICAgICAgICAgICAgICAgLnN1Ym1pdC10ZXh0e1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1tb2JpbGU6bm90KC5teHQtbGFuZHNjYXBlKXtcbiAgICAub3JkZXItc3dhdGNoLW1vZGFsLm14dC1tb2RhbC1kaXZ7XG4gICAgICAgIC5vcmRlci1zd2F0Y2gtY29udGFpbmVye1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICBcbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtY29udGVudHtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDEwcHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5teHQtdG9hc3RlcntcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC56b25lLWF7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogZml0LWNvbnRlbnQ7XG4gICAgXG4gICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1kaXNwbGF5LXdyYXBwZXIsIC5vcmRlci1zd2F0Y2gtY2hvc2VuLXdyYXBwZXJ7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLnpvbmUtYntcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgICBcbiAgICAgICAgICAgICAgICAub3JkZXItc3dhdGNoLXN0ZXBze1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAub3JkZXItc3dhdGNoLWZvb3RlcntcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIyMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAkZGVmYXVsdEJvcmRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1jaG9zZW57XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5kaXNwbGF5LXRleHQtY29udGFpbmVye1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtZGlzcGxheS13cmFwcGVye1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDgwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzMlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogJGRlZmF1bHRCb3JkZXI7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAub3JkZXItc3dhdGNoLWRpc3BsYXl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kaXNwbGF5LWltZy1jb250YWluZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kaXNwbGF5LXRleHQtY29udGFpbmVye1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1jYXJ0e1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDBweCA1cHggMHB4O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLnN3YXRjaC1jb3VudHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1idG4uc3VibWl0e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDoxIDEgODAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4ubXh0LW1vYmlsZS5teHQtbGFuZHNjYXBle1xuICAgIC5vcmRlci1zd2F0Y2gtbW9kYWwubXh0LW1vZGFsLWRpdntcbiAgICAgICAgLm9yZGVyLXN3YXRjaC1jb250ZW50e1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgIFxuICAgICAgICAgICAgLnpvbmUtYiwgLnpvbmUtYntcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLnpvbmUtYXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgXG4gICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1kaXNwbGF5LXdyYXBwZXJ7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDYwcHg7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtZGlzcGxheXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAkZGVmYXVsdEJvcmRlcjtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kaXNwbGF5LWltZy1jb250YWluZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGlzcGxheS10ZXh0LWNvbnRhaW5lcntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtY2hvc2VuLXdyYXBwZXJ7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiJGRlZmF1bHRCb3hTaGFkb3c6IDAgMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAwIDJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiRkZWZhdWx0Qm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcblxuJGRlZmF1bHRCb3JkZXJSYWRpdXM6IDNweDtcbiRidG5Ib3ZlckJhY2tncm91bmQ6ICNjY2NjY2M7XG4kb3JkZXJCdG5Db2xvcjogIzI0MjQyNDtcblxuQGltcG9ydCAnLi9tb2JpbGUuc2Nzcyc7XG5cbi5vcmRlci1zd2F0Y2gtcm9vdHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLm9yZGVyLXN3YXRjaC1jb250YWluZXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgLnpvbmUtYSwgLnpvbmUtYntcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5vcmRlci1zd2F0Y2gtY29udGVudHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBcbiAgICAgICAgLnpvbmUtYXtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDQ1JTtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZ2FwOjEwcHg7XG5cbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtZGlzcGxheS13cmFwcGVyIC5kaXNwbGF5LWltZy1jb250YWluZXIgLmRpc3BsYXktaW1nLXdyYXBwZXIgaW1ne1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC56b25lLWJ7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTUlO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtc3RlcHN7XG4gICAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1zdGVwe1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHRCb3JkZXJSYWRpdXM7XG5cbiAgICAgICAgICAgICAgICAgICAgZGl2Lm14dC1maWx0ZXItZ3JpZHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgZGl2Lm14dC1maWx0ZXItZ3JpZCA+IGRpdi5kZXNpZ25Qcm9jZXNzRmlsdGVyc3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAub3JkZXItc3dhdGNoLXN0ZXAtb3B0aW9uc3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5teHQtZ3JpZHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtZGlzYWJsZWR7XG4gICAgICAgIGNvbG9yOiNjY2NjY2M7XG4gICAgfVxuXG4gICAgLmF0Yy1kaXNhYmxlZHtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICBjb2xvcjojY2NjY2NjO1xuICAgIH1cblxuICAgIC5teHQtZHJvcGRvd24tY29udGFpbmVyLm14dC1jdXN0b20tZHJvcGRvd257XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5vcmRlci1zd2F0Y2gtc3RlcCAuZGVzaWduUHJvY2Vzc1NlYXJjaERpdntcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5kZXNpZ25Qcm9jZXNzU2VhcmNoSWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogIGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNpZ25Qcm9jZXNzU2VhcmNoIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0Qm94U2hhZG93O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHRCb3JkZXJSYWRpdXM7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3JkZXItc3dhdGNoLXN0ZXAgLmZpbHRlci1tZW51e1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgLmZpbHRlci1tZW51LXRvZ2dsZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnRuSG92ZXJCYWNrZ3JvdW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9yZGVyLXN3YXRjaC1idG4sIC5vcmRlci1zd2F0Y2gtY2hvc2VuLWl0ZW0tZGVsZXRle1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJ0bkhvdmVyQmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1zd2F0Y2gtYnRue1xuICAgICAgICAmOm5vdCguc3VibWl0KXtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuXG4gICAgLm9yZGVyLXN3YXRjaC1zdGVwIC5vcmRlci1zd2F0Y2gtc3RlcC1vcHRpb25ze1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5teHQtZ3JpZHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZ3JpZCA+IC5teHQtZ3JpZC1pdGVtLmRpc2FibGVke1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgIGRpdiwgaW1ne1xuICAgICAgICAgICAgICAgIGN1cnNvcjpub3QtYWxsb3dlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtZ3JpZCA+IC5teHQtZ3JpZC1pdGVte1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmbGV4OiB1bnNldDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgbWluLXdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEyJTtcblxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHRCb3JkZXJSYWRpdXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAmLnNlbGVjdGVke1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCB2YXIoLS1teHQtY2xpZW50LXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LWdyaWQtaXRlbS1jb250ZW50e1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHRCb3JkZXJSYWRpdXM7XG5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LWdyaWQtaXRlbS1pbWd7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LWdyaWQtaXRlbS10ZXh0LWRpdntcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1ncmlkLXBhZ2luYXRpb257XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyMjVweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1zd2F0Y2gtaGVhZGVye1xuICAgICAgICBib3JkZXItYm90dG9tOiAkZGVmYXVsdEJvcmRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAub3JkZXItc3dhdGNoLXN0ZXB7XG4gICAgICAgIC5vcmRlci1zd2F0Y2gtc2VjdGlvbi1oZWFkZXJ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm9yZGVyLXN3YXRjaC1zZWN0aW9uLWhlYWRlciwgLm9yZGVyLXN3YXRjaC1zZWN0aW9uLWJvZHl7XG4gICAgICAgICAgICBib3JkZXI6ICRkZWZhdWx0Qm9yZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9yZGVyLXN3YXRjaC1zZWN0aW9uLWhlYWRlcntcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRkZWZhdWx0Qm9yZGVyUmFkaXVzO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRkZWZhdWx0Qm9yZGVyUmFkaXVzO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmRlci1zd2F0Y2gtc2VjdGlvbi1ib2R5e1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRkZWZhdWx0Qm9yZGVyUmFkaXVzO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRkZWZhdWx0Qm9yZGVyUmFkaXVzO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3JkZXItc3dhdGNoLWZvb3RlcntcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgIGdhcDogNDBweDtcbiAgICAgICAgZmxleC1iYXNpczogNjVweDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLm9yZGVyLXN3YXRjaC1jYXJ0e1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLnN3YXRjaC1jb3VudHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMDtcbiAgICBcbiAgICAgICAgICAgICAgICAuc3dhdGNoLWNvdW50LXRleHR7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgIC5zd2F0Y2gtY291bnQtc3VidGV4dHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtYnRuLnN1Ym1pdHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSA4MCU7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JkZXJCdG5Db2xvcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdEJvcmRlclJhZGl1cztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDQ1cHg7XG4gICAgXG4gICAgICAgICAgICAgICAgLnN1Ym1pdC10ZXh0e1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuXG4gICAgLm9yZGVyLXN3YXRjaC1jaG9zZW4td3JhcHBlcntcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMSAxIDYwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICAgICAub3JkZXItc3dhdGNoLWNob3NlbntcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDVweDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICBcbiAgICBcbiAgICAgICAgICAgIC5vcmRlci1zd2F0Y2gtY2hvc2VuLWl0ZW17XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAkZGVmYXVsdEJvcmRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIFxuICAgICAgICAgICAgICAgIGhlaWdodDogMjAlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNDBweDtcbiAgICBcbiAgICAgICAgICAgICAgICAub3JkZXItc3dhdGNoLWNob3Nlbi1pdGVtLWRlbGV0ZXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1jaG9zZW4taXRlbS10ZXh0e1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgLm9yZGVyLXN3YXRjaC1jaG9zZW4taXRlbS1pbWd7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1zd2F0Y2gtZGlzcGxheXtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWF4LWhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmLmJvcmRlcmVke1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkZGVmYXVsdEJvcmRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNwbGF5LWltZy1jb250YWluZXJ7XG4gICAgICAgICAgICBmbGV4OjE7XG5cbiAgICAgICAgICAgIC5kaXNwbGF5LWltZy13cmFwcGVye1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdEJvcmRlclJhZGl1cztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGlzcGxheS10ZXh0LWNvbnRhaW5lcntcbiAgICAgICAgICAgIGZsZXg6IDAgMSA2NSU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZzogMHB4IDVweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgICAgICAgICAgLmRpc3BsYXktc2t1Om5vdCg6ZW1wdHkpOjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyMnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc3BsYXUtaW1ne1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4ub3JkZXItc3dhdGNoLW1vZGFse1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgd2lkdGg6IDkwdnc7XG4gICAgaGVpZ2h0OiA5MHZoO1xuXG4gICAgLm14dC1kZWZhdWx0LW1vZGFsLWhlYWRlci1jb250YWluZXJ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm14dC1hbGVydC1jb250ZW50e1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuXG4gICAgICAgIC5teHQtYWxlcnQtdGV4dHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgYnV0dG9uLm14dC1hZGQtdG8td2lzaGxpc3QtcmVnaXN0cnkge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMCBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB3aWR0aDogYXV0bztcblxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3IgO1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDRweDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuIiwiLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtb3JkZXItYS1zd2F0Y2gtY29udGFpbmVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiKDIwNCwgMjA0LCAyMDQpO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDE2cHg7XG4gICAgcGFkZGluZzogMTVweCB2YXIoLS1teHQtcGlja2VyLWhvcml6b250YWwtcGFkZGluZykgMjhweDtcblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IFxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBidXR0b24ubXh0LW9yZGVyLWEtc3dhdGNoIHtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3ItcGlja2VyIGJ1dHRvbi5teHQtb3JkZXItYS1zd2F0Y2gge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMDQsIDIwNCwgMjA0KTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgY29sb3I6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGdhcDogMTVweDtcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgcGFkZGluZzogMTNweCAyNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgIH1cbn1cbiIsIlxuLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXRvdGFsLXByaWNpbmcubXh0LWNvbmZpZ3VyYXRvci1wcm9tby1wcmljaW5nIHtcbiAgICAuaGVhZGVyLWxhYmVsIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgIG1hcmdpbjogMTNweCAwIDhweDtcblxuICAgICAgICAubXh0LXRvdGFsLm14dC1wcm9tby1wcmljZSB7XG4gICAgICAgICAgICBjb2xvcjogI0JFMjE0MztcbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtdG90YWwge1xuXG4gICAgICAgICAgICAubXh0LWN1cnJlbmN5LXRleHQsIC5teHQtcHJpY2UtZnJhY3Rpb24tdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LXByaWNlLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm14dC1ub24tcHJvbW8tcHJpY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXRvdGFsLCAubXh0LW5vbi1wcm9tby1wcmljZSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4ubXh0LWJhbm5lci1zbGlwY292ZXItb25seSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFlODE5OTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyOiBub25lO1xufVxuIiwiLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtcG9ydHJhaXQge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIHtcbiAgICAgICAgLm14dC10b2FzdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubXh0LXRvYXN0ZXItbWFpbiB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1wb3J0cmFpdCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LXRvYXN0ZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LXRvYXN0ZXItbWFpbiB7XG4gICAgYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gIH1cbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdDtcbiAgc3JjOiB1cmwoXCIuLi9hc3NldHMvRm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LVZhcmlhYmxlRm9udF93Z2h0LnR0ZlwiKTtcbn1cbi5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDE1cHg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgb3JkZXI6IDA7XG4gIHBhZGRpbmc6IDI1cHggdmFyKC0tbXh0LXBpY2tlci1ob3Jpem9udGFsLXBhZGRpbmcpO1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1zaGlwcGluZy1pbmZvLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtc2hpcHBpbmctaW5mbyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1zaGlwcGluZy1pbmZvIHAsIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1zaGlwcGluZy1pbmZvIHAge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLWNhcnQtcXR5LCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLWNhcnQtcXR5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy10b3A6IDM1cHg7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eSAubXh0LXF0eS1jb250cm9sLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLWNhcnQtcXR5IC5teHQtcXR5LWNvbnRyb2wge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMDQsIDIwNCwgMjA0KTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBpbnB1dCwgLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBidXR0b24sIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBpbnB1dCwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eSAubXh0LXF0eS1jb250cm9sIGJ1dHRvbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBpbnB1dDpkaXNhYmxlZCwgLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBidXR0b246ZGlzYWJsZWQsIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBpbnB1dDpkaXNhYmxlZCwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eSAubXh0LXF0eS1jb250cm9sIGJ1dHRvbjpkaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eSAubXh0LXF0eS1jb250cm9sIGJ1dHRvbiwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eSAubXh0LXF0eS1jb250cm9sIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDAgbm9uZTtcbiAgY29sb3I6IHJnYigxMjQsIDEyNCwgMTI0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCwgVmVyZGFuYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBidXR0b25bZGF0YS1hY3Rpb249ZGVjcmVhc2VdLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLWNhcnQtcXR5IC5teHQtcXR5LWNvbnRyb2wgYnV0dG9uW2RhdGEtYWN0aW9uPWRlY3JlYXNlXSB7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tY2FydC1xdHkgLm14dC1xdHktY29udHJvbCBpbnB1dCwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eSAubXh0LXF0eS1jb250cm9sIGlucHV0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RFREVERTtcbiAgYm9yZGVyLWJvdHRvbTogMCBub25lO1xuICBib3JkZXItdG9wOiAwIG5vbmU7XG4gIHBhZGRpbmc6IDlweCAwO1xuICB3aWR0aDogNjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1jb25maWd1cmF0b3ItY3RhLWF0YywgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci1jdGEtYXRjIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAtIDY1cHgpO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci1jdGEtYXRjIGltZywgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci1jdGEtYXRjIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci1jdGEtYXRjID4gc3BhbiwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci1jdGEtYXRjID4gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtY29uZmlndXJhdG9yLWN0YS1hdGM6ZGlzYWJsZWQsIC5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtY29uZmlndXJhdG9yLWN0YS1hdGMubXh0LWJ0bi1kaXNhYmxlZCwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci1jdGEtYXRjOmRpc2FibGVkLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtY29uZmlndXJhdG9yLWN0YS1hdGMubXh0LWJ0bi1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyBidXR0b24ubXh0LWFkZC10by1yZWdpc3RyeSwgLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgYnV0dG9uLm14dC1hZGQtdG8td2lzaGxpc3QsIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgYnV0dG9uLm14dC1hZGQtdG8tcmVnaXN0cnksIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgYnV0dG9uLm14dC1hZGQtdG8td2lzaGxpc3Qge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6IHJnYig1MSwgNTEsIDUxKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWdyb3c6IDE7XG4gIGdhcDogMTBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyBidXR0b24ubXh0LWFkZC10by1yZWdpc3RyeSBpbWcsIC5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIGJ1dHRvbi5teHQtYWRkLXRvLXdpc2hsaXN0IGltZywgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyBidXR0b24ubXh0LWFkZC10by1yZWdpc3RyeSBpbWcsIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgYnV0dG9uLm14dC1hZGQtdG8td2lzaGxpc3QgaW1nIHtcbiAgaGVpZ2h0OiAxM3B4O1xuICB3aWR0aDogMTNweDtcbn1cbi5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIGJ1dHRvbi5teHQtYWRkLXRvLXJlZ2lzdHJ5ID4gc3BhbiwgLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgYnV0dG9uLm14dC1hZGQtdG8td2lzaGxpc3QgPiBzcGFuLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIGJ1dHRvbi5teHQtYWRkLXRvLXJlZ2lzdHJ5ID4gc3BhbiwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyBidXR0b24ubXh0LWFkZC10by13aXNobGlzdCA+IHNwYW4ge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyBidXR0b246ZGlzYWJsZWQsIC5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIGlucHV0OmRpc2FibGVkLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIGJ1dHRvbjpkaXNhYmxlZCwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyBpbnB1dDpkaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWFkZC10by1jYXJ0LXF0eTpkaXNhYmxlZCwgLm14dC1jb25maWd1cmF0b3Itcm9vdC5teHQtY29udGFpbmVyIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlIC5teHQtY29uZmlndXJhdG9yLWN0YXMgLm14dC1hZGQtdG8tcmVnaXN0cnk6ZGlzYWJsZWQsIC5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLXdpc2hsaXN0OmRpc2FibGVkLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLWNhcnQtcXR5OmRpc2FibGVkLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLXJlZ2lzdHJ5OmRpc2FibGVkLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtYWRkLXRvLXdpc2hsaXN0OmRpc2FibGVkIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nLCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtY29uZmlndXJhdG9yLXRvdGFsLXByaWNpbmcge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjE4cHg7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nIC5teHQtYmFubmVyLXNsaXBjb3Zlci1vbmx5LCAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtY29uZmlndXJhdG9yLXRvdGFsLXByaWNpbmcgLm14dC1iYW5uZXItc2xpcGNvdmVyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtN3B4O1xuICBib3R0b206IDQwcHg7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nOm5vdCgubXh0LWNvbmZpZ3VyYXRvci1wcm9tby1wcmljaW5nKSAubXh0LWJhbm5lci1zbGlwY292ZXItb25seSwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nOm5vdCgubXh0LWNvbmZpZ3VyYXRvci1wcm9tby1wcmljaW5nKSAubXh0LWJhbm5lci1zbGlwY292ZXItb25seSB7XG4gIGJvdHRvbTogNTBweDtcbn1cbi5teHQtY29uZmlndXJhdG9yLXJvb3QubXh0LWNvbnRhaW5lciAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1jdGFzIC5teHQtY29uZmlndXJhdG9yLXRvdGFsLXByaWNpbmcgLm14dC10b3RhbCwgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nIC5teHQtdG90YWwge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIC5teHQtZmlsdGVyc29ydC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3JkZXItdG9wOiAycHggc29saWQgcmdiKDIzNSwgMjM1LCAyMzUpO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyAubXh0LWZpbHRlcnNvcnQtaGVhZGVyIC5jb2xsYXBzZS1jbGVhci1idG4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjNjY2O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyAubXh0LWZpbHRlcnNvcnQtaGVhZGVyIC5jb2xsYXBzZS1jbGVhci1idG4uZHJvcGRvd24tY2xlYXItYnRuIHtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyAubXh0LWhpZGVzaG93ZmlsdGVycy1idXR0b24gLm14dC1oaWRlc2hvd2ZpbHRlcnMtaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJ+QG14dC9teHQtdWktdXRpbGl0eS9hc3NldHMvaWNvbnMvRGFyay9NaXNjL0ljb25zLU1pc2MtRmlsdGVyLnN2Z1wiKTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIC5kZXNpZ25Qcm9jZXNzU2VhcmNoRGl2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4ubXh0LWZpbHRlci1ncmlkIC5kZXNpZ25Qcm9jZXNzRmlsdGVycyB7XG4gIHBhZGRpbmc6IDEwcHggNXB4O1xufVxuXG4ubXh0LWZpbHRlci1ncmlkOm5vdCguZnVsbHNjcmVlbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm14dC1maWx0ZXItZ3JpZDpub3QoLmZ1bGxzY3JlZW4pLm14dC1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubXh0LWRyb3Bkb3duLWhlYWRlciBoNSB7XG4gIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvcik7XG59XG5cbi5teHQtY29uZmlndXJhdG9yLXBpY2tlciA+ICo6bm90KC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUsIC5teHQtdG9hc3Rlcikge1xuICBwYWRkaW5nOiAxNXB4IHZhcigtLW14dC1waWNrZXItaG9yaXpvbnRhbC1wYWRkaW5nKSAyOHB4O1xufVxuXG4ubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlID4gKiB7XG4gIHBhZGRpbmc6IDE1cHggMCAyOHB4O1xufVxuXG4ubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgPiAqOm5vdCgubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlLCAubXh0LXRvYXN0ZXIpLCAubXh0LWNvbmZpZ3VyYXRvci1zY3JvbGxhYmxlID4gKiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2IoMjA0LCAyMDQsIDIwNCk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLm14dC1jb25maWd1cmF0b3ItcGlja2VyLCAubXh0LXBvcnRyYWl0IC5teHQtY29uZmlndXJhdG9yLXBpY2tlciB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3ItdG90YWwtcHJpY2luZyB7XG4gIHBhZGRpbmctdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3ItdG90YWwtcHJpY2luZyAuaGVhZGVyLWxhYmVsIC5teHQtdG90YWwge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbi5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nIC5oZWFkZXItbGFiZWwgLm14dC10b3RhbCAubXh0LXRvdGFsLXRleHQge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIgLm14dC1jb25maWd1cmF0b3ItdG90YWwtcHJpY2luZyAuaGVhZGVyLWxhYmVsIC5teHQtdG90YWwgLm14dC1wcmljZS10ZXh0IHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbn1cbi5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nIC5oZWFkZXItbGFiZWwgLm14dC10b3RhbCAubXh0LWN1cnJlbmN5LXRleHQsIC5teHQtY29uZmlndXJhdG9yLXBpY2tlciAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nIC5oZWFkZXItbGFiZWwgLm14dC10b3RhbCAubXh0LXByaWNlLWZyYWN0aW9uLXRleHQge1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiAwLjg7XG59XG5cbi5teHQtY29uZmlndXJhdG9yLWJyb3dzZXIgPiAuc2VjdGlvbixcbi5teHQtY29uZmlndXJhdG9yLXN0ZXBzID4gLnNlY3Rpb24ge1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuLm14dC1jb25maWd1cmF0b3ItYnJvd3NlciA+IC5zZWN0aW9uIC5oZWFkZXIsXG4ubXh0LWNvbmZpZ3VyYXRvci1zdGVwcyA+IC5zZWN0aW9uIC5oZWFkZXIge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHJvdy1nYXA6IDEwcHg7XG59XG5cbi5teHQtZGVza3RvcCAubXh0LWNvbmZpZ3VyYXRvci1icm93c2VyID4gLnNlY3Rpb24gLmhlYWRlcixcbi5teHQtZGVza3RvcCAubXh0LWNvbmZpZ3VyYXRvci1zdGVwcyA+IC5zZWN0aW9uIC5oZWFkZXIge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5teHQtbW9iaWxlIC5teHQtY29uZmlndXJhdG9yLWJyb3dzZXIgPiAuc2VjdGlvbixcbi5teHQtbW9iaWxlIC5teHQtY29uZmlndXJhdG9yLXN0ZXBzID4gLnNlY3Rpb24ge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgPiAqIHtcbiAgcGFkZGluZzogMTVweCAwIDlweDtcbn1cblxuLm14dC1jb25maWd1cmF0b3ItYnJvd3NlciAuZmFicmljLXN3YXRjaC10ZXh0LFxuLm14dC1jb25maWd1cmF0b3Itc3RlcHMgLmZhYnJpYy1zd2F0Y2gtdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiB2YXIoLS1teHQtZm9udC1ib2R5LWxnKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG51bC5wcmV2aWV3LXN3YXRjaC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG51bC5wcmV2aWV3LXN3YXRjaC1jb250YWluZXIgbGkge1xuICAtLXN3YXRjaC1oZWlnaHQtd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogdmFyKC0tc3dhdGNoLWhlaWdodC13aWR0aCk7XG4gIHdpZHRoOiB2YXIoLS1zd2F0Y2gtaGVpZ2h0LXdpZHRoKTtcbiAgbWFyZ2luOiAwcHggOHB4IDAgMDtcbn1cbnVsLnByZXZpZXctc3dhdGNoLWNvbnRhaW5lciBpbWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyAubXh0LWJhY2stYnV0dG9uIHtcbiAgcGFkZGluZzogMTRweCAwIDAgNXB4O1xufVxuXG4ubXh0LXBvcnRyYWl0IC5teHQtY29uZmlndXJhdG9yLW9wdGlvbnMgLmljb24tY29udGVudCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIC5vcHRpb25zLXNjcm9sbCAubXh0LWZpbHRlcnNvcnQtaGVhZGVyIC5teHQtaGlkZXNob3dmaWx0ZXJzLWJ1dHRvbiAubXh0LWhpZGVzaG93ZmlsdGVycy1pbWFnZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9maWx0ZXIuc3ZnXCIpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNTAlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyAub3B0aW9ucy1zY3JvbGwgLm14dC1maWx0ZXJzb3J0LWhlYWRlciAuY29sbGFwc2UtY2xlYXItYnRuIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL3RyYXNoLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbn1cbi5teHQtY29uZmlndXJhdG9yLW9wdGlvbnMgLm9wdGlvbnMtc2Nyb2xsIC5teHQtZmlsdGVyc29ydC1oZWFkZXIgLmNvbGxhcHNlLWNsZWFyLWJ0biBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIC5vcHRpb25zLXNjcm9sbCAubXh0LWZpbHRlcnNvcnQtaGVhZGVyIC5jb2xsYXBzZS1jbGVhci1idG4gLmNsZWFyLWNvdW50IHtcbiAgbWFyZ2luLWxlZnQ6IDNweDtcbn1cblxuLmRlc2lnblByb2Nlc3NTZWFyY2hEaXYgLmRlc2lnblByb2Nlc3NTZWFyY2gge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4uZGVzaWduUHJvY2Vzc1NlYXJjaERpdiAuZGVzaWduUHJvY2Vzc1NlYXJjaEljb24ge1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICB0b3A6IDE4cHggIWltcG9ydGFudDtcbn1cblxuQHN1cHBvcnRzIChwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSB7XG4gIC5teHQtc3Bpbi1idXR0b24tcm93Lm14dC1jb250YWluZXIge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGModmFyKC0tbXh0LWJ1dHRvbi1oZWlnaHQpICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3ItcGlja2VyID4gKjpub3QoLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSkubXh0LWNvbmZpZ3VyYXRvci1zdGVwcyxcbi5teHQtY29uZmlndXJhdG9yLXBpY2tlciA+ICo6bm90KC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUpLm14dC1jb25maWd1cmF0b3ItYnJvd3Nlcixcbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgPiAubXh0LWNvbmZpZ3VyYXRvci1zdGVwcyxcbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgPiAubXh0LWNvbmZpZ3VyYXRvci1icm93c2VyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLm14dC1jb25maWd1cmF0b3ItYnJvd3NlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyB7XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59IiwiQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gICAgc3JjOiB1cmwoJy4uL2Fzc2V0cy9Gb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtVmFyaWFibGVGb250X3dnaHQudHRmJyk7XG59XG4iLCIubXh0LWNvbmZpZ3VyYXRvci1yb290Lm14dC1jb250YWluZXIgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcywgLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgLm14dC1jb25maWd1cmF0b3ItY3RhcyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDE1cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDI1cHggdmFyKC0tbXh0LXBpY2tlci1ob3Jpem9udGFsLXBhZGRpbmcpO1xuXG4gICAgLm14dC1zaGlwcGluZy1pbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtYWRkLXRvLWNhcnQtcXR5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG5cbiAgICAgICAgLm14dC1xdHktY29udHJvbCB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiKDIwNCwgMjA0LCAyMDQpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgICAgaW5wdXQsIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiKDEyNCwgMTI0LCAxMjQpO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogTW9udHNlcnJhdCwgVmVyZGFuYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgJltkYXRhLWFjdGlvbj1cImRlY3JlYXNlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RFREVERTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMCBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweFxuICAgICAgICAgICAgfVxuICAgICAgICB9IFxuICAgIH1cblxuICAgIC5teHQtY29uZmlndXJhdG9yLWN0YS1hdGMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC0gNjVweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQsJi5teHQtYnRuLWRpc2FibGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW14dC1jbGllbnQtcHJpbWFyeSk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBidXR0b24ubXh0LWFkZC10by1yZWdpc3RyeSwgYnV0dG9uLm14dC1hZGQtdG8td2lzaGxpc3Qge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgY29sb3I6IHJnYig1MSwgNTEsIDUxKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBidXR0b24sIGlucHV0IHtcbiAgICAgICAgJjpkaXNhYmxlZCAge1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5teHQtYWRkLXRvLWNhcnQtcXR5LCAubXh0LWFkZC10by1yZWdpc3RyeSwgLm14dC1hZGQtdG8td2lzaGxpc3Qge1xuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXh0LWNvbmZpZ3VyYXRvci10b3RhbC1wcmljaW5nIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDIxOHB4O1xuXG4gICAgICAgIC5teHQtYmFubmVyLXNsaXBjb3Zlci1vbmx5IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAtN3B4O1xuICAgICAgICAgICAgYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLm14dC1jb25maWd1cmF0b3ItcHJvbW8tcHJpY2luZykge1xuICAgICAgICAgICAgLm14dC1iYW5uZXItc2xpcGNvdmVyLW9ubHkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5teHQtdG90YWwge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFBMQVRGT1JNIEhBQ0s6IE92ZXJyaWRlIGZvciBpbmxpbmUgZmlsdGVycyAobm90IGZ1bGxzY3JlZW4gb3ZlcmxheSlcbi5teHQtY29uZmlndXJhdG9yLW9wdGlvbnMge1xuICAgIC8vIEZpeCB2ZXJ0aWNhbCBzdGFja2luZyAtIHdlIGRvbid0IHVzZSBteHQtc2VhcmNoLWZpbHRlciBjb250YWluZXJcbiAgICAubXh0LWZpbHRlcnNvcnQtaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYigyMzUsIDIzNSwgMjM1KTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAvLyBDbGVhciBGaWx0ZXJzIGJ1dHRvblxuICAgICAgICAuY29sbGFwc2UtY2xlYXItYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAmLmRyb3Bkb3duLWNsZWFyLWJ0biB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGljb24gdG8gSGlkZS9TaG93IEZpbHRlcnMgYnV0dG9uXG4gICAgLm14dC1oaWRlc2hvd2ZpbHRlcnMtYnV0dG9uIHtcbiAgICAgICAgLm14dC1oaWRlc2hvd2ZpbHRlcnMtaW1hZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCd+QG14dC9teHQtdWktdXRpbGl0eS9hc3NldHMvaWNvbnMvRGFyay9NaXNjL0ljb25zLU1pc2MtRmlsdGVyLnN2ZycpO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIHNlYXJjaCBib3ggZGlzcGxheXMgYXMgYmxvY2sgd2l0aCBwcm9wZXIgc3BhY2luZ1xuICAgIC5kZXNpZ25Qcm9jZXNzU2VhcmNoRGl2IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbn1cblxuLm14dC1maWx0ZXItZ3JpZCAuZGVzaWduUHJvY2Vzc0ZpbHRlcnMge1xuICAgIHBhZGRpbmc6IDEwcHggNXB4O1xufVxuXG4vLyBQTEFURk9STSBIQUNLOiBFbnN1cmUgaW5saW5lIGZpbHRlciBncmlkIHdvcmtzIHByb3Blcmx5IChub3QgZnVsbHNjcmVlbilcbi5teHQtZmlsdGVyLWdyaWQ6bm90KC5mdWxsc2NyZWVuKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJi5teHQtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59IiwiLm14dC1kcm9wZG93bi1oZWFkZXIgaDUge1xuICAgIGNvbG9yOiB2YXIoLS1teHQtdGV4dC1jb2xvcik7XG59XG4iLCIkcGlja2VyLWNoaWxkLXNlbGVjdG9yOiBcIi5teHQtY29uZmlndXJhdG9yLXBpY2tlciA+ICo6bm90KC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUsIC5teHQtdG9hc3RlcilcIjtcbiRzY3JvbGxhYmxlLWNoaWxkLXNlbGVjdG9yOiBcIi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgPiAqXCI7XG5cbiN7JHBpY2tlci1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgIHBhZGRpbmc6IDE1cHggdmFyKC0tbXh0LXBpY2tlci1ob3Jpem9udGFsLXBhZGRpbmcpIDI4cHg7XG59XG5cbiN7JHNjcm9sbGFibGUtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMjhweDtcbn1cblxuI3skcGlja2VyLWNoaWxkLXNlbGVjdG9yfSwgI3skc2Nyb2xsYWJsZS1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2IoMjA0LCAyMDQsIDIwNCk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAubXh0LWNvbmZpZ3VyYXRvci1waWNrZXIge1xuICAgICAgICAmLCAubXh0LXBvcnRyYWl0ICYge1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cbn1cblxuIiwiLm14dC1jb25maWd1cmF0b3ItcGlja2VyIC5teHQtY29uZmlndXJhdG9yLXRvdGFsLXByaWNpbmdcbntcbiAgICBwYWRkaW5nLXRvcDogMTVweCAhaW1wb3J0YW50O1xuICAgIC5oZWFkZXItbGFiZWwge1xuICAgICAgICAubXh0LXRvdGFsIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5teHQtdG90YWwtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubXh0LXByaWNlLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm14dC1jdXJyZW5jeS10ZXh0LCAubXh0LXByaWNlLWZyYWN0aW9uLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC44O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gU3VwcG9ydCBib3RoIGNvbmZpZ3VyYXRvciBicm93c2VyIGFuZCBzdGVwc1xuLm14dC1jb25maWd1cmF0b3ItYnJvd3Nlcixcbi5teHQtY29uZmlndXJhdG9yLXN0ZXBzIHtcbiAgICA+IC5zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcblxuICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIHJvdy1nYXA6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERlc2t0b3A6IGJvcmRlciBpcyBvbiAuaGVhZGVyLCBzbyBhcHBseSBib3JkZXItcmFkaXVzIHRoZXJlXG4ubXh0LWRlc2t0b3Age1xuICAgIC5teHQtY29uZmlndXJhdG9yLWJyb3dzZXIsXG4gICAgLm14dC1jb25maWd1cmF0b3Itc3RlcHMge1xuICAgICAgICA+IC5zZWN0aW9uIC5oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNb2JpbGU6IGJvcmRlciBpcyBvbiAuc2VjdGlvbiwgc28gYXBwbHkgYm9yZGVyLXJhZGl1cyB0aGVyZVxuLm14dC1tb2JpbGUge1xuICAgIC5teHQtY29uZmlndXJhdG9yLWJyb3dzZXIsXG4gICAgLm14dC1jb25maWd1cmF0b3Itc3RlcHMge1xuICAgICAgICA+IC5zZWN0aW9uIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSA+ICoge1xuICAgIHBhZGRpbmc6IDE1cHggMCA5cHg7XG59XG5cbi8vIFN1cHBvcnQgZmFicmljIHN3YXRjaCB0ZXh0IGluIGJvdGggY29uZmlndXJhdG9yIGJyb3dzZXIgYW5kIHN0ZXBzXG4ubXh0LWNvbmZpZ3VyYXRvci1icm93c2VyLFxuLm14dC1jb25maWd1cmF0b3Itc3RlcHMge1xuICAgIC5mYWJyaWMtc3dhdGNoLXRleHQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udDogdmFyKC0tbXh0LWZvbnQtYm9keS1sZyk7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbnVsLnByZXZpZXctc3dhdGNoLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGxpIHtcbiAgICAgICAgLS1zd2F0Y2gtaGVpZ2h0LXdpZHRoOiA0NXB4O1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXN3YXRjaC1oZWlnaHQtd2lkdGgpO1xuICAgICAgICB3aWR0aDogdmFyKC0tc3dhdGNoLWhlaWdodC13aWR0aCk7XG4gICAgICAgIG1hcmdpbjogMHB4IDhweCAwIDA7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIH1cbn1cblxuLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG59XG4ubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIC5teHQtYmFjay1idXR0b24ge1xuICAgIHBhZGRpbmc6IDE0cHggMCAwIDVweDtcbn1cbi5teHQtcG9ydHJhaXQgLm14dC1jb25maWd1cmF0b3Itb3B0aW9ucyAuaWNvbi1jb250ZW50IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiIsIi5teHQtY29uZmlndXJhdG9yLW9wdGlvbnN7XG4gICAgLm9wdGlvbnMtc2Nyb2xsIHtcbiAgICAgICAgLm14dC1maWx0ZXJzb3J0LWhlYWRlciB7XG4gICAgICAgICAgICAubXh0LWhpZGVzaG93ZmlsdGVycy1idXR0b24ge1xuICAgICAgICAgICAgICAgIC5teHQtaGlkZXNob3dmaWx0ZXJzLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9hc3NldHMvZmlsdGVyLnN2ZycpICFpbXBvcnRhbnQ7IFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2xsYXBzZS1jbGVhci1idG4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vYXNzZXRzL3RyYXNoLnN2ZycpIDsgXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMnB4IDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNsZWFyLWNvdW50IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgfVxuICAgICAgICBcbn1cblxuLmRlc2lnblByb2Nlc3NTZWFyY2hEaXYge1xuICAgIC5kZXNpZ25Qcm9jZXNzU2VhcmNoIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cbiAgICBcbiAgICAuZGVzaWduUHJvY2Vzc1NlYXJjaEljb24ge1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICB0b3A6IDE4cHggIWltcG9ydGFudFxuICAgIH1cbn0iLCIvLyBQTEFURk9STSBIQUNLIEZpeCBmb3Igc2FmZS1hcmVhLWluc2V0LWJvdHRvbSBwdXNoaW5nIGJ1dHRvbnMgdG8gdGhlIHRvcCBvZiB0aGVpciBjb250YWluZXJcbi8vIFNlbmRpbmcgdG8gcGxhdGZvcm0gZm9yIGZ1dHVyZSByZWxlYXNlIFxuLy8gaHR0cHM6Ly8zZC1jbG91ZC5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9PSC0yNTUwOVxuLm14dC1zcGluLWJ1dHRvbi1yb3cubXh0LWNvbnRhaW5lciB7XG4gICAgQHN1cHBvcnRzIChwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSB7XG4gICAgICAgIC8vIFVzZSBtaW4taGVpZ2h0IGluc3RlYWQgb2YgaGVpZ2h0IHRvIGFsbG93IGNvbnRhaW5lciB0byBleHBhbmQgZm9yIHNhZmUgYXJlYVxuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKHZhcigtLW14dC1idXR0b24taGVpZ2h0KSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG4iLCIvLyBSZW1vdmUgYm9yZGVyLXRvcCBmcm9tIHN0ZXBzIGFuZCBjb25maWd1cmF0b3IgYnJvd3NlclxuLm14dC1jb25maWd1cmF0b3ItcGlja2VyID4gKjpub3QoLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSkubXh0LWNvbmZpZ3VyYXRvci1zdGVwcyxcbi5teHQtY29uZmlndXJhdG9yLXBpY2tlciA+ICo6bm90KC5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUpLm14dC1jb25maWd1cmF0b3ItYnJvd3Nlcixcbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgPiAubXh0LWNvbmZpZ3VyYXRvci1zdGVwcyxcbi5teHQtY29uZmlndXJhdG9yLXNjcm9sbGFibGUgPiAubXh0LWNvbmZpZ3VyYXRvci1icm93c2VyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLm14dC1jb25maWd1cmF0b3ItYnJvd3NlcjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm14dC1jb25maWd1cmF0b3Itc2Nyb2xsYWJsZSAubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4iLCIubXh0LWNvbmZpZ3VyYXRvci1vcHRpb25zIC5teHQtaGlkZXNob3dmaWx0ZXJzLWJ1dHRvbiBzcGFuLCBcbi5teHQtY29uZmlndXJhdG9yLW9wdGlvbnMgLm14dC1maWx0ZXJzb3J0LWhlYWRlciAuY29sbGFwc2UtY2xlYXItYnRuIHtcbiAgICBjb2xvcjogdmFyKC0tbXh0LXRleHQtY29sb3IpO1xufVxuIiwiLm14dC1zdW1tYXJ5LWxpc3Qge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtYXgtY29udGVudCAxZnI7IC8qIEFkanVzdCBjb2x1bW4gd2lkdGhzLCBmaXJzdCBjb2x1bW4gaXMgYXMgd2lkZSBhcyBuZWVkZWQgKi9cbiAgICBnYXA6IDEwcHggMjBweDsgLyogQWRqdXN0IHRoZSBzcGFjZSBiZXR3ZWVuIGNvbHVtbnMgYW5kIHJvd3MgKi9cbiAgICBtYXgtd2lkdGg6IDYwMHB4OyAvKiBZb3UgY2FuIGFkanVzdCB0aGlzIGJhc2VkIG9uIHlvdXIgbGF5b3V0ICovXG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5teHQtc3VtbWFyeS1saXN0LXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgLyogTWFrZSBzdXJlIHRoZSB0ZXh0IHdyYXBzIGlmIGl0J3MgdG9vIGxvbmcgKi9cbn1cblxuLm14dC1zdW1tYXJ5LWxpc3QtZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbjogMDsgLyogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGZvciBkZCAqL1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xufSIsIlxuLm14dC1jb25maWd1cmF0b3ItcGlja2VyIGJ1dHRvbi5teHQtcmVzZXQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tbXh0LWNsaWVudC1wcmltYXJ5KTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBnYXA6IDEwcHg7XG4gICAgbWFyZ2luOiA1cHg7XG4gICAgcGFkZGluZzogMHB4IDI0cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuXG59Il0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==*/