/* The yiq lightness value that determines when the lightness of color changes from "dark" to "light". Acceptable values are between 0 and 255. */
/* Customize the light and dark text colors for use in our YIQ color contrast function. */
.quick-cart-popup {
  font-family: var(--font-family-base), sans-serif;
  display: none;
  position: absolute;
  z-index: 9999;
  max-width: 400px;
  width: 100%;
  background: var(--ui-block-bg);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--box-shadow-lg); }
  .quick-cart-popup .quick-cart-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--ui-block-padding-base-v) var(--ui-block-padding-base);
    color: var(--text-heading-color);
    font-size: var(--font-size-h6);
    line-height: var(--line-height-h6);
    font-weight: var(--font-weight-light);
    border-bottom: 1px solid var(--gray-lighter-4);
    max-height: 56px; }
    .quick-cart-popup .quick-cart-header .quick-loader {
      display: none; }
    @media (max-width: 479.98px) {
      .quick-cart-popup .quick-cart-header {
        padding: var(--spacing-2x) var(--spacing-2x);
        padding-right: var(--ui-block-padding-base); } }
  .quick-cart-popup .quick-cart-body {
    color: var(--text-body-color);
    padding: var(--ui-block-padding-base-v) var(--ui-block-padding-base);
    max-height: 400px;
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--gray-lighter-3) transparent;
    scrollbar-gutter: stable;
    padding-right: calc(var(--ui-block-padding-sm) - 2px); }

@-moz-document url-prefix() {
  .quick-cart-popup .quick-cart-body {
    padding-right: var(--ui-block-padding-base); } }
    .quick-cart-popup .quick-cart-body::-webkit-scrollbar-button {
      display: none; }
    @media (max-width: 479.98px) {
      .quick-cart-popup .quick-cart-body {
        padding: var(--ui-block-padding-sm) var(--ui-block-padding-sm); }
      @-moz-document url-prefix() {
        .quick-cart-popup .quick-cart-body {
          padding-right: var(--ui-block-padding-base); } } }
    .quick-cart-popup .quick-cart-body.at-bottom + .quick-cart-footer:before {
      opacity: 0;
      visibility: hidden; }
  .quick-cart-popup .quick-cart-no-data, .quick-cart-popup .quick-cart-loader {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    .quick-cart-popup .quick-cart-no-data-icon, .quick-cart-popup .quick-cart-loader-icon {
      margin-bottom: 12px; }
      .quick-cart-popup .quick-cart-no-data-icon > svg, .quick-cart-popup .quick-cart-loader-icon > svg {
        height: 48px;
        width: 48px; }
    .quick-cart-popup .quick-cart-no-data-title, .quick-cart-popup .quick-cart-loader-title {
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg);
      font-weight: var(--font-weight-medium);
      color: var(--text-heading-color);
      margin-bottom: var(--spacing-1x); }
    .quick-cart-popup .quick-cart-no-data-subtitle, .quick-cart-popup .quick-cart-loader-subtitle {
      font-size: var(--font-size-base);
      line-height: var(--line-height-base);
      font-weight: var(--font-weight-normal);
      white-space: wrap;
      text-align: center; }
  .quick-cart-popup .quick-cart-no-data {
    height: 144px;
    max-height: 144px; }
  .quick-cart-popup .quick-cart-loader {
    height: 260px;
    max-height: 260px; }
  .quick-cart-popup .quick-cart-loader-animation {
    display: flex;
    height: var(--loader-bars-height);
    text-align: center;
    font-size: 10px;
    border: none !important;
    animation: none !important; }
    .quick-cart-popup .quick-cart-loader-animation > div {
      background: var(--loader-bg);
      height: 100%;
      width: var(--loader-bars-width);
      animation: quick-stretchdelay 1.2s infinite ease-in-out;
      border-radius: var(--border-radius-sm); }
    .quick-cart-popup .quick-cart-loader-animation > * + * {
      margin-left: var(--loader-bars-width); }
    .quick-cart-popup .quick-cart-loader-animation-light > div {
      background: var(--loader-light-bg); }
    .quick-cart-popup .quick-cart-loader-animation .rect2 {
      animation-delay: -1.1s; }
    .quick-cart-popup .quick-cart-loader-animation .rect3 {
      animation-delay: -1.0s; }
    .quick-cart-popup .quick-cart-loader-animation .rect4 {
      animation-delay: -0.9s; }
    .quick-cart-popup .quick-cart-loader-animation .rect5 {
      animation-delay: -0.8s; }

@-webkit-keyframes quick-stretchdelay {
  0%, 40%, 100% {
    -webkit-transform: scaleY(0.4); }
  20% {
    -webkit-transform: scaleY(1); } }

@keyframes quick-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4); }
  20% {
    transform: scaleY(1); } }
  .quick-cart-popup .quick-cart-product-title {
    color: var(--text-heading-color); }
  .quick-cart-popup .quick-cart-footer {
    position: relative;
    padding: 0 var(--ui-block-padding-base) var(--ui-block-padding-base-v) var(--ui-block-padding-base); }
    .quick-cart-popup .quick-cart-footer:not(.quick-cart-footer-no-data) {
      border-top: 1px solid var(--ui-block-divider-color); }
    @media (max-width: 479.98px) {
      .quick-cart-popup .quick-cart-footer {
        padding: 0 var(--ui-block-padding-sm) var(--ui-block-padding-sm); } }
    .quick-cart-popup .quick-cart-footer:not(.quick-cart-footer-no-data):before {
      content: '';
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, var(--ui-block-bg) 100%);
      position: absolute;
      left: 0;
      right: 12px;
      bottom: calc(100% + 1px);
      height: 60px; }
    .quick-cart-popup .quick-cart-footer .btn-checkout {
      gap: var(--spacing-1x); }
  .quick-cart-popup:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: transparent;
    pointer-events: none; }
  .quick-cart-popup.loading #clearCartBtn {
    display: none; }
  .quick-cart-popup.loading .quick-loader {
    display: flex; }
  .quick-cart-popup.loading .quick-number-container {
    pointer-events: none; }
  .quick-cart-popup .summary-list.summary-list-configoptions {
    margin-top: 0px !important; }

.quick-cart-savings {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  color: var(--label-savings-color); }
  .quick-cart-savings-line {
    color: var(--label-savings-color);
    text-decoration: line-through; }

.quick-cart-label-save {
  margin-bottom: 0; }

.quick-cart-tooltip-remove {
  pointer-events: none; }

.quick-cart-item {
  display: flex;
  align-items: center; }
  .quick-cart-item:not(:last-child) {
    margin-bottom: 12px; }
    @media (max-width: 479.98px) {
      .quick-cart-item:not(:last-child) {
        border-bottom: 1px solid var(--ui-block-divider-color);
        padding-bottom: 12px; } }
  .quick-cart-item-collapse {
    display: flex;
    flex-direction: column;
    align-items: flex-start; }
    .quick-cart-item-collapse .summary-list {
      margin-top: 6px; }
  .quick-cart-item-collapse-top {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center; }
    .quick-cart-item-collapse-top.hoverable {
      overflow: hidden; }
      .quick-cart-item-collapse-top.hoverable .quick-cart-item-price {
        transform: translateX(1000px);
        transition: opacity 0.3s ease;
        opacity: 0;
        width: 0;
        white-space: nowrap; }
        .quick-cart-item-collapse-top.hoverable .quick-cart-item-price * {
          width: 0;
          display: inline-flex; }
      .quick-cart-item-collapse-top.hoverable:hover .quick-cart-item-price {
        transform: translateX(0);
        opacity: 1;
        width: min-content; }
        .quick-cart-item-collapse-top.hoverable:hover .quick-cart-item-price * {
          width: min-content; }
  @media (max-width: 479.98px) {
    .quick-cart-item-main-addon {
      flex-direction: column; } }
  .quick-cart-item-top {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center; }
    .quick-cart-item-top.hoverable {
      overflow: hidden; }
      .quick-cart-item-top.hoverable .quick-cart-item-price {
        transform: translateX(1000px);
        transition: opacity 0.3s ease;
        opacity: 0;
        width: 0;
        white-space: nowrap; }
        .quick-cart-item-top.hoverable .quick-cart-item-price * {
          width: 0;
          display: inline-flex; }
      .quick-cart-item-top.hoverable:hover .quick-cart-item-price {
        transform: translateX(0);
        opacity: 1;
        width: min-content; }
        .quick-cart-item-top.hoverable:hover .quick-cart-item-price * {
          width: min-content; }
  .quick-cart-item-collapse-body {
    width: 100%; }
    .quick-cart-item-collapse-body .well {
      margin-top: var(--ui-block-padding-sm-v); }
      .quick-cart-item-collapse-body .well.well-sm {
        padding: var(--ui-block-padding-sm-v) var(--ui-block-padding-sm); }
    .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable {
      overflow: hidden; }
      .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .item-value {
        transform: translateX(100%);
        transition: opacity 0.3s ease;
        opacity: 0;
        width: 0;
        white-space: nowrap; }
        .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .item-value *:not(.item-value-free) {
          width: 0;
          display: inline-block;
          transition: color 0.3s ease; }
      .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .item-name {
        transition: color 0.3s ease; }
      .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .list-item:hover .item-value {
        transform: translateX(0);
        opacity: 1;
        width: min-content; }
        .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .list-item:hover .item-value * {
          color: var(--text-primary-color);
          width: min-content; }
      .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .list-item:hover .item-name {
        color: var(--text-primary-color); }
        .quick-cart-item-collapse-body .summary-list.summary-list-configoptions.hoverable .list-item:hover .item-name .item-optionname {
          color: var(--text-primary-color); }
  .quick-cart-item-left {
    overflow: hidden;
    margin-right: 4px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%; }
    .quick-cart-item-left-box {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      max-width: 100%;
      width: 100%; }
      @media (min-width: 480px) {
        .quick-cart-item-left-box.counter .quick-cart-item-name {
          max-width: calc(100% - 64px); }
        .quick-cart-item-left-box.counter.collapse-trigger .quick-cart-item-name {
          max-width: calc(100% - 64px - 40px); } }
      .quick-cart-item-left-box.collapse-trigger .quick-cart-item-name {
        max-width: calc(100% - 40px); }
      .quick-cart-item-left-box .quick-cart-item-name > span {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        min-width: 50px;
        white-space: nowrap; }
    .quick-cart-item-left:has(.quick-cart-item-collapse-info:not(.collapsed)) + .quick-cart-item-right .quick-cart-item-price {
      transform: translateX(0);
      opacity: 1;
      width: min-content; }
      .quick-cart-item-left:has(.quick-cart-item-collapse-info:not(.collapsed)) + .quick-cart-item-right .quick-cart-item-price * {
        width: min-content; }
  .quick-cart-item-right {
    display: flex;
    align-items: center;
    margin-left: auto; }
    @media (max-width: 479.98px) {
      .quick-cart-item-right {
        flex-direction: column; } }
  .quick-cart-item-graphic {
    display: flex;
    align-items: center;
    margin-right: 12px;
    width: 32px;
    min-width: 32px; }
    .quick-cart-item-graphic:not(.quick-cart-item-graphic-media) {
      height: 32px;
      min-height: 32px; }
    .quick-cart-item-graphic-font-icon {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 32px;
      color: var(--brand-primary);
      background: var(--brand-primary-lighter-3);
      border-radius: var(--border-radius-sm); }
      .quick-cart-item-graphic-font-icon > i.ls,
      .quick-cart-item-graphic-font-icon > i.lm {
        font-size: var(--ui-nav-link-icon-size-sm); }
    .quick-cart-item-graphic-icon {
      padding: 3px; }
      .quick-cart-item-graphic-icon > svg {
        width: 32px;
        height: 32px; }
  .quick-cart-item-collapse-info {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: var(--dropdown-collapse-bg);
    border-radius: var(--border-radius-xs);
    color: var(--text-body-color);
    font-size: var(--font-size-xxs);
    line-height: var(--line-height-xxs);
    font-weight: var(--font-weight-base);
    margin: 0 4px;
    height: 20px;
    padding: 0 4px;
    transition: var(--transition-base);
    cursor: pointer; }
    .quick-cart-item-collapse-info:hover {
      background: var(--dropdown-divider-bg); }
    .quick-cart-item-collapse-info svg {
      transition: var(--transition-base); }
      .quick-cart-item-collapse-info svg path {
        fill: var(--text-body-color);
        transition: var(--transition-base); }
    .quick-cart-item-collapse-info + .quick-number-container.quick-number-container-desktop > input {
      margin-left: 2px; }
  .quick-cart-item-name {
    display: inline-block;
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs);
    font-weight: var(--font-weight-medium);
    color: var(--text-heading-color);
    transition: color var(--transition-base);
    max-width: 100%; }
    .quick-cart-item-name .quick-cart-item-collapse-info[data-toggle="collapse"]:not(.collapsed) {
      background: var(--brand-primary-lighter-4);
      color: var(--text-primary-color); }
      .quick-cart-item-name .quick-cart-item-collapse-info[data-toggle="collapse"]:not(.collapsed) svg path {
        fill: var(--text-primary-color); }
      .quick-cart-item-name .quick-cart-item-collapse-info[data-toggle="collapse"]:not(.collapsed) .ls {
        color: var(--text-primary-color); }
    .quick-cart-item-name .quick-cart-item-collapse-info .ls:not(.quick-number-arrow-icon) {
      color: var(--text-lighter-color);
      margin-left: 4px;
      transition: color var(--transition-base); }
  .quick-cart-item-domain {
    font-size: var(--font-size-xxs);
    line-height: var(--line-height-xxs);
    font-weight: var(--font-weight-base);
    color: var(--text-lighter-color);
    margin-top: 3px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 50px;
    white-space: nowrap;
    width: 100%; }
  .quick-cart-item-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    transition: var(--transition-base); }
    .quick-cart-item-price .total {
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm);
      color: var(--text-heading-color);
      white-space: nowrap; }
    .quick-cart-item-price .setup-fee {
      font-size: var(--font-size-xxs);
      line-height: var(--line-height-xxs);
      color: var(--text-faded-color); }
    .quick-cart-item-price.quick-cart-item-price-mobile {
      display: none !important; }
    @media (max-width: 479.98px) {
      .quick-cart-item-price.quick-cart-item-price-desktop {
        display: none !important; }
      .quick-cart-item-price.quick-cart-item-price-mobile {
        display: flex !important;
        visibility: visible;
        opacity: 1; } }
  .quick-cart-item-mobile-elements {
    display: none !important;
    align-items: center;
    justify-content: space-between;
    width: 100%; }
    @media (max-width: 479.98px) {
      .quick-cart-item-mobile-elements {
        display: flex !important; } }
  .quick-cart-item.has-graphic .quick-cart-item-mobile-elements {
    padding-left: 42px; }
  .quick-cart-item-actions {
    display: flex;
    align-items: center;
    margin-left: var(--spacing-1x); }
  .quick-cart-item-btn-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: none;
    background-color: transparent; }
    .quick-cart-item-btn-icon svg path {
      transition: var(--transition-base); }
    .quick-cart-item-btn-icon:hover svg path {
      fill: var(--brand-primary); }
    .quick-cart-item-btn-icon.remove {
      margin-right: -10px; }
      .quick-cart-item-btn-icon.remove:hover svg path {
        fill: var(--brand-danger); }
  .quick-cart-item-addon {
    display: flex;
    justify-content: space-between;
    color: var(--text-body-color);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-xs);
    transition: color var(--transition-base); }
    .quick-cart-item-addon:not(:last-child) {
      margin-bottom: 2px; }
    .quick-cart-item-addon:not(.show-included-cost) .quick-cart-item-addon-price {
      opacity: 0;
      visibility: hidden; }
    .quick-cart-item-addon:not(.show-included-cost):not(.quick-cart-item-addon-renewal) {
      cursor: pointer; }
      .quick-cart-item-addon:not(.show-included-cost):not(.quick-cart-item-addon-renewal):hover {
        color: var(--text-primary-color); }
        .quick-cart-item-addon:not(.show-included-cost):not(.quick-cart-item-addon-renewal):hover .quick-cart-item-addon-name > span {
          color: var(--text-primary-color); }
        .quick-cart-item-addon:not(.show-included-cost):not(.quick-cart-item-addon-renewal):hover .quick-cart-item-addon-price {
          opacity: 1;
          visibility: visible; }
    .quick-cart-item-addon-name {
      display: flex;
      align-items: center; }
      .quick-cart-item-addon-name > span {
        transition: color var(--transition-base);
        color: var(--text-lighter-color); }
    .quick-cart-item-addon-price {
      display: flex;
      align-items: center;
      transition: var(--transition-base); }
  .quick-cart-item .well {
    margin-bottom: 0;
    box-shadow: none; }
  @media (max-width: 479.98px) {
    .quick-cart-item {
      display: flex;
      flex-direction: column;
      align-items: flex-start; } }

.quick-cart-footer-section, .quick-cart-footer-taxes {
  position: relative;
  display: flex;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  padding: 12px 0; }
  .quick-cart-footer-section + .quick-cart-footer-section:before, .quick-cart-footer-taxes + .quick-cart-footer-section:before {
    content: "";
    width: 100%;
    height: 1px;
    background: var(--ui-block-divider-color);
    position: absolute;
    top: 0; }

.quick-cart-footer-taxes {
  flex-direction: column; }
  .quick-cart-footer-taxes .tax-item {
    display: flex;
    justify-content: space-between;
    align-items: center; }

.quick-cart-footer-section + .btn {
  margin-top: var(--spacing-2x); }

.quick-cart-footer-section-promocode {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-1x);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  font-weight: var(--font-weight-medium);
  color: var(--label-savings-color);
  gap: var(--spacing-2x); }
  .quick-cart-footer-section-promocode .promocode-left {
    display: flex;
    align-items: center;
    overflow: hidden;
    flex-wrap: wrap; }
    .quick-cart-footer-section-promocode .promocode-left > div {
      display: flex;
      align-items: center;
      gap: var(--spacing-1x);
      overflow: hidden; }
    .quick-cart-footer-section-promocode .promocode-left svg {
      min-width: 14px;
      width: 14px;
      height: 14px; }
  .quick-cart-footer-section-promocode .promocode-discount {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%; }
  .quick-cart-footer-section-promocode .promocode-expire {
    padding-left: calc(14px + var(--spacing-1x)); }

.quick-cart-footer-section-taxes {
  flex-direction: column; }
  .quick-cart-footer-section-taxes .tax-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%; }
    .quick-cart-footer-section-taxes .tax-item:not(:last-child) {
      padding-bottom: calc(var(--spacing-1x) * 0.5); }

.quick-cart-footer-section-period {
  align-items: center;
  flex-direction: column; }
  .quick-cart-footer-section-period .period-item {
    display: flex;
    justify-content: space-between;
    width: 100%; }

.quick-cart-footer-section-total {
  padding-bottom: 0;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-2x); }
  .quick-cart-footer-section-total .total-right {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
    max-width: calc(100% - 92px); }
  .quick-cart-footer-section-total .total-price {
    font-weight: var(--font-weight-medium);
    margin-bottom: 0;
    word-break: break-word;
    white-space: break-spaces; }
  .quick-cart-footer-section-total .total-left {
    display: flex;
    align-items: center; }
    .quick-cart-footer-section-total .total-left span {
      min-width: 92px;
      white-space: break-spaces; }

.quick-loader {
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--gray-icons);
  animation: loaderRotate 2.4s linear infinite;
  height: 30px;
  width: 30px;
  margin-right: -10px; }
  .quick-loader > i {
    font-size: 18px; }

.quick-number-container {
  position: relative; }
  .quick-number-container .quick-number {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 20px;
    width: auto;
    min-width: 20px;
    padding: 0 3px;
    font-size: var(--font-size-xxs);
    line-height: var(--line-height-xxs);
    color: var(--gray-darker);
    background-color: var(--body-bg);
    border: 1px solid var(--gray-lighter-3);
    border-radius: var(--border-radius-xs); }
    .quick-number-container .quick-number.quick-number-cart {
      width: unset;
      padding: 0 3px; }
    .quick-number-container .quick-number.quick-number-input {
      padding-left: 6px;
      padding-right: 16px;
      width: 42px;
      margin-left: 8px;
      -moz-appearance: textfield; }
      .quick-number-container .quick-number.quick-number-input::-webkit-inner-spin-button, .quick-number-container .quick-number.quick-number-input::-webkit-outer-spin-button {
        -webkit-appearance: none;
        opacity: 0 !important; }
      .quick-number-container .quick-number.quick-number-input:active, .quick-number-container .quick-number.quick-number-input:focus-visible, .quick-number-container .quick-number.quick-number-input:focus {
        border: 1px solid var(--gray-lighter-3) !important;
        border-color: var(--gray-lighter-3) !important; }
  .quick-number-container .quick-number-arrows {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 18px;
    border-left: 1px solid var(--gray-lighter-3); }
  .quick-number-container .quick-number-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 9px;
    width: 100%;
    cursor: pointer;
    margin: 0; }
    .quick-number-container .quick-number-arrow > svg {
      width: 7px;
      height: 7px;
      transition: var(--transition-base); }
      .quick-number-container .quick-number-arrow > svg path {
        fill: var(--gray-lighter-2); }
    .quick-number-container .quick-number-arrow:hover > svg path {
      fill: var(--gray-lighter); }
    .quick-number-container .quick-number-arrow.down {
      height: 10px; }
  .quick-number-container.quick-number-container-mobile {
    margin-left: 8px; }
    .quick-number-container.quick-number-container-mobile .quick-number-input {
      width: 80px;
      height: 22px;
      padding-left: 22px;
      padding-right: 22px;
      margin-left: 0;
      margin-right: 0;
      text-align: center; }
    .quick-number-container.quick-number-container-mobile .quick-number-arrow-mobile {
      position: absolute;
      top: 0;
      bottom: 0;
      width: 22px;
      height: 22px; }
      .quick-number-container.quick-number-container-mobile .quick-number-arrow-mobile .quick-number-arrow-icon {
        transform: rotate(90deg); }
      .quick-number-container.quick-number-container-mobile .quick-number-arrow-mobile.left {
        left: 0;
        border-right: 1px solid var(--gray-lighter-3); }
      .quick-number-container.quick-number-container-mobile .quick-number-arrow-mobile.right {
        right: 0;
        border-left: 1px solid var(--gray-lighter-3); }
  @media (max-width: 479.98px) {
    .quick-number-container.quick-number-container-desktop {
      display: none !important; } }

.modal.quick-cart-modal .modal-footer {
  display: flex;
  align-items: center;
  width: 100%; }

.checkbox.checkbox-quickcart {
  display: flex;
  align-items: center;
  margin: 0 0 0 auto; }
  .checkbox.checkbox-quickcart .checkbox-styled {
    top: -1px;
    position: relative;
    display: flex;
    height: var(--icheck-size);
    width: var(--icheck-size);
    min-width: var(--icheck-size);
    min-height: var(--icheck-size);
    background: var(--icheck-bg);
    border: var(--icheck-border);
    border-radius: var(--icheck-border-radius);
    transition: var(--transition-base);
    cursor: pointer;
    margin-right: 12px; }
    .checkbox.checkbox-quickcart .checkbox-styled:before {
      position: absolute;
      display: flex;
      justify-content: center;
      align-items: center;
      content: "\e911";
      background-image: url("templates/twenty-one/css/blue.png") no-repeat;
      height: calc(var(--icheck-size) - var(--icheck-border-width) * 2);
      width: calc(var(--icheck-size) - var(--icheck-border-width) * 2);
      color: var(--icheck-active-icon-color);
      font-size: var(--ui-icon-size-small);
      font-family: var(--font-family-icons-small);
      line-height: 1; }
    .checkbox.checkbox-quickcart .checkbox-styled > input {
      opacity: 0;
      visibility: hidden; }
    .checkbox.checkbox-quickcart .checkbox-styled.checked {
      border-color: var(--icheck-active-border-color);
      background: var(--icheck-active-bg); }
      .checkbox.checkbox-quickcart .checkbox-styled.checked:before {
        opacity: 1;
        transform: scale(1); }

body:not(.lagom) .quick-cart-popup {
  z-index: 1000; }

.toast--right-top {
  position: absolute;
  top: 60px;
  right: 0; }

@media (max-width: 479.98px) {
  .quick-cart-popup {
    width: 100%;
    max-width: 100%; } }

.lagom-futuristic .quick-cart-popup {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }

@keyframes loaderRotate {
  to {
    transform: rotate(360deg); } }

html[dir="rtl"] .quick-cart-popup .quick-cart-body {
  padding-right: var(--ui-block-padding-base);
  padding-left: calc(var(--ui-block-padding-sm) - 2px); }

html[dir="rtl"] .quick-cart-item-right {
  margin-right: 0;
  margin-right: auto; }

html[dir="rtl"] .quick-cart-item-collapse-info + .quick-number-container.quick-number-container-desktop > input {
  margin-left: 0;
  margin-right: 2px; }

html[dir="rtl"] .quick-cart-item-btn-icon.remove {
  margin-right: 0;
  margin-left: -6px; }

html[dir="rtl"] .quick-cart-item-btn-icon#clearCartBtn {
  margin-left: -10px; }

html[dir="rtl"] .quick-cart-item-actions {
  margin-right: var(--spacing-1x);
  margin-left: 0; }

html[dir="rtl"] .quick-cart-item-graphic {
  margin-right: 0;
  margin-left: 12px; }

html[dir="rtl"] .quick-number-container .quick-number.quick-number-input {
  margin-right: 8px;
  margin-left: 0;
  padding-right: 6px;
  padding-left: 16px; }

html[dir="rtl"] .quick-number-container .quick-number-arrows {
  right: unset;
  left: 0;
  border-left: none;
  border-right: 1px solid var(--gray-lighter-3); }

html[dir="rtl"] .quick-cart-footer-section-total .total-right {
  margin-left: 0;
  margin-right: var(--spacing-1x); }

html[dir="rtl"] .quick-cart-footer-section-total .total-price {
  margin-left: 0;
  margin-right: var(--spacing-1x); }

html[dir="rtl"] .quick-loader {
  margin-left: -10px;
  margin-right: 0; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9sYWdvbS1hc3NldHMvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Njc3MvcXVpY2stY2FydC5zY3NzIiwid2VicGFjazovLy8uL2xhZ29tLWFzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFGQTtBQUdBO0FDbkRBO0VBQ0ksZ0RBQWdEO0VBQ2hELGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsOEJBQThCO0VBQzlCLHNDQUFzQztFQUN0QyxnQ0FBZ0M7RUFUcEM7SUFZWSxhQUFhO0lBQ2IsOEJBQThCO0lBQzlCLG1CQUFtQjtJQUNuQixvRUFBb0U7SUFDcEUsZ0NBQWdDO0lBQ2hDLDhCQUE4QjtJQUM5QixrQ0FBa0M7SUFDbEMscUNBQXFDO0lBQ3JDLDhDQUE4QztJQUM5QyxnQkFBZ0I7SUFyQjVCO01BdUJnQixhQUFhO0lDYXpCO01EcENKO1FBMEJnQiw0Q0FBNEM7UUFDNUMsMkNBQTJDLElBRWxEO0VBN0JUO0lBK0JZLDZCQUE2QjtJQUM3QixvRUFBb0U7SUFDcEUsaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCxxQkFBcUI7SUFDckIsa0RBQWtEO0lBQ2xELHdCQUF3QjtJQUV4QixxREFBcUQ7O0FBQ3JEO0VBeENaO0lBeUNnQiwyQ0FBMkMsSUFvQmxEO0lBN0RUO01BNENnQixhQUFhO0lDUnpCO01EcENKO1FBK0NnQiw4REFBOEQ7TUFFOUQ7UUFqRGhCO1VBa0RvQiwyQ0FBMkMsSUFXdEQ7SUE3RFQ7TUF3RHdCLFVBQVU7TUFDVixrQkFBa0I7RUF6RDFDO0lBZ0VZLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLG1CQUFtQjtJQW5FL0I7TUFxRWdCLG1CQUFtQjtNQXJFbkM7UUF1RW9CLFlBQVk7UUFDWixXQUFXO0lBeEUvQjtN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QTdDaEM7RUFnRGMsWUFBWTtFQUNaLE9BQU87RUFDUCxpQkFBaUI7RUFDakIsNkNBQTZDOztBQW5EM0Q7RUEyRHNCLGNBQWM7RUFDZCwrQkFBK0I7O0FBNURyRDtFQStEc0IsY0FBYztFQUNkLCtCQUErQjs7QUFoRXJEO0VBdUVNLGtCQUFrQjtFQUNsQixlQUFlIiwiZmlsZSI6ImFkZG9ucy9MYWdvbU9yZGVyRm9ybS9hcHAvVUkvQ2xpZW50L1RlbXBsYXRlcy9hc3NldHMvY3NzL3F1aWNrLWNhcnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiJGlzcnRsOiBmYWxzZSAhZGVmYXVsdDtcclxuJHN0eWxlOiAnZGVmYXVsdCcgIWRlZmF1bHQ7IC8vIGRlZmF1bHQsIGRlcHRoLCBtb2Rlcm4sIGZ1dHVyaXN0aWMsIGludGVncmF0aW9uXHJcblxyXG4kYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZTtcclxuXHJcbi8vPT0gQ29sb3JzXHJcbkBmdW5jdGlvbiB2KCR2YXIsICRmYWxsYmFjazogbnVsbCkge1xyXG5cdEBpZigkZmFsbGJhY2spIHtcclxuXHRcdEByZXR1cm4gdmFyKC0tI3skdmFyfSwgI3skZmFsbGJhY2t9KTtcclxuXHR9IEBlbHNlIHtcclxuXHRcdEByZXR1cm4gdmFyKC0tI3skdmFyfSk7IFxyXG5cdH1cclxufVxyXG5cclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XHJcbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSA7XHJcblxyXG5cclxuJGdyaWQtYnJlYWtwb2ludHM6IChcclxuICB4czogMHB4LCBcclxuICBzbTogNDgwcHgsXHJcbiAgbWQ6IDc2OHB4LFxyXG4gIGxnOiA5OTJweCxcclxuICB4bDogMTMyMHB4LFxyXG4pICFkZWZhdWx0O1xyXG5cclxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXHJcbiAgc206IDU0MHB4LFxyXG4gIG1kOiAxMDAlLFxyXG4gIGxnOiAxMDAlLFxyXG4gIHhsOiAxMjg4cHhcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XHJcblxyXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcclxuXHJcbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cclxuJHNpemVzOiAoKSAhZGVmYXVsdDtcclxuJHNpemVzOiBtYXAtbWVyZ2UoXHJcbiAgKFxyXG4gICAgMjU6IDI1JSxcclxuICAgIDUwOiA1MCUsXHJcbiAgICA3NTogNzUlLFxyXG4gICAgMTAwOiAxMDAlLFxyXG4gICAgYXV0bzogYXV0b1xyXG4gICksXHJcbiAgJHNpemVzXHJcbik7XHJcblxyXG4vLyBTcGFjaW5nXHJcbi8vXHJcbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2VcclxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxyXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxyXG5cclxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcclxuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xyXG4kc3BhY2VyczogbWFwLW1lcmdlKFxyXG4gIChcclxuICAgIDA6IDAsXHJcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXHJcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcclxuICAgIDM6ICRzcGFjZXIsXHJcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXHJcbiAgICA1OiAoJHNwYWNlciAqIDMpXHJcbiAgKSxcclxuICAkc3BhY2Vyc1xyXG4pO1xyXG5cclxuLy8gTmVlZGVkIGZvciByZWQoKSwgZ3JlZW4oKSwgYmx1ZSgpIGZ1bmN0aW9ucyBpbiBib290cnN0cmFwL19mdW5jdGlvbnMuc2NzcyAnY29sb3IteWlxJyBmdW5jdGlvblxyXG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICMzNkMwNTUgIWRlZmF1bHQ7XHJcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgI2Q5MjYzMiAhZGVmYXVsdDtcclxuXHJcbi8qIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LiAqL1xyXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgICAgICAgICAgICAgICAgICAgIDE1MDtcclxuXHJcbi8qIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLiAqL1xyXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMyMTI1Mjk7XHJcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuXHJcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcclxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcclxuICAoXHJcbiAgICBcInZhbGlkXCI6IChcclxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcclxuICAgICAgXCJpY29uXCI6IHZhcigtLWZvcm0tZmVlZGJhY2staWNvbi12YWxpZClcclxuICAgICksXHJcbiAgICBcImludmFsaWRcIjogKFxyXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXHJcbiAgICAgIFwiaWNvblwiOiB2YXIoLS1mb3JtLWZlZWRiYWNrLWljb24taW52YWxpZClcclxuICAgICksXHJcbiAgKSxcclxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xyXG4pO1xyXG5cclxuLy89PSBHcmlkIHN5c3RlbVxyXG5cclxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyO1xyXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMjRweCAhZGVmYXVsdDtcclxuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgIDYgIWRlZmF1bHQ7XHJcbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICA5OTJweDtcclxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSk7XHJcblxyXG4vLyBVdGlsaXRpZXNcclxuXHJcbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcclxuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xyXG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcclxuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0OyIsIi8vIEBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvOjEwMCwzMDAsNDAwLDUwMCw3MDAsOTAwJnN1YnNldD1sYXRpbi1leHQnKTtcclxuXHJcbkBpbXBvcnQgJy4uLy4uL2xhZ29tLWFzc2V0cy9zY3NzL3ZhcmlhYmxlcy5zY3NzJztcclxuLy8gQGltcG9ydCAnLi4vLi4vbGFnb20tYXNzZXRzL3Njc3MvaWNvbnMvaWNvbnMuc2Nzcyc7XHJcbkBpbXBvcnQgJy4uLy4uL2xhZ29tLWFzc2V0cy9zY3NzL2hlbHBlcnMvZnVuY3Rpb25zLnNjc3MnO1xyXG4vLyBAaW1wb3J0ICcuLi8uLi9sYWdvbS1hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9idXR0b25zLnNjc3MnO1xyXG4vLyBAaW1wb3J0ICcuLi8uLi9sYWdvbS1hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy5zY3NzJztcclxuXHJcblxyXG4vLyBAaW1wb3J0ICcuLi8uLi9sYWdvbS1hc3NldHMvc2Nzcy9lbGVtZW50cy9idXR0b24uc2Nzcyc7XHJcblxyXG4vLyAuYXBwLW5hdntcclxuLy8gICAgICYuYXBwLW5hdntcclxuLy8gICAgICAgICAmLXByaW1hcnksXHJcbi8vICAgICAgICAgJi1zZWNvbmRhcnl7XHJcbi8vICAgICAgICAgICAgIC5xdWljay1jYXJ0LXBvcHVwe1xyXG4vLyAgICAgICAgICAgICAgICAgLnF1aWNrLWNhcnQtZm9vdGVye1xyXG4vLyAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4vLyAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgICAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgICAgfVxyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgICAvLyBUT0RPOiBkYXJrIHN0eWxlc1xyXG4vLyAgICAgICAgICYtcHJpbWFyeXtcclxuLy8gICAgICAgICAgICAgLnF1aWNrLWNhcnQtcG9wdXB7XHJcbi8vICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1wcmltYXJ5LWdyYWRpZW50LXYpO1xyXG4vLyAgICAgICAgICAgICB9XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgICYtc2Vjb25kYXJ5e1xyXG4vLyAgICAgICAgICAgICAucXVpY2stY2FydC1wb3B1cHtcclxuLy8gICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC12KTtcclxuLy8gICAgICAgICAgICAgfVxyXG4vLyAgICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gfVxyXG5cclxuLnF1aWNrLWNhcnQtcG9wdXB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSksIHNhbnMtc2VyaWY7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuICAgIG1heC13aWR0aDogNDAwcHg7IFxyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGcpO1xyXG4gICAgLnF1aWNrLWNhcnR7XHJcbiAgICAgICAgJi1oZWFkZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgICAgIC5xdWljay1sb2FkZXJ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ib2R5e1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xyXG4gICAgICAgICAgICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKSB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgc2Nyb2xsYmFyLWd1dHRlcjogc3RhYmxlO1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgLSAycHgpO1xyXG4gICAgICAgICAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XHJcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIC0gNnB4KTtcclxuICAgICAgICAgICAgICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmF0LWJvdHRvbXtcclxuICAgICAgICAgICAgICAgICsgLnF1aWNrLWNhcnQtZm9vdGVye1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbm8tZGF0YSxcclxuICAgICAgICAmLWxvYWRlcntcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICYtaWNvbntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtc3VidGl0bGV7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xyXG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1uby1kYXRhe1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE0NHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNDRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sb2FkZXJ7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjYwcHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxvYWRlci1hbmltYXRpb257XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtaGVpZ2h0KTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxvYWRlci1iZyk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tbG9hZGVyLWJhcnMtd2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBxdWljay1zdHJldGNoZGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gKiArICoge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWxvYWRlci1iYXJzLXdpZHRoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWxpZ2h0IHtcclxuICAgICAgICAgICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxvYWRlci1saWdodC1iZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJlY3QyIHtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJlY3QzIHtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJlY3Q0IHtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJlY3Q1IHtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIHF1aWNrLXN0cmV0Y2hkZWxheSB7XHJcbiAgICAgICAgICAgICAgICAwJSwgNDAlLCAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwLjQpIH0gIFxyXG4gICAgICAgICAgICAgICAgMjAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxLjApIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAa2V5ZnJhbWVzIHF1aWNrLXN0cmV0Y2hkZWxheSB7XHJcbiAgICAgICAgICAgICAgICAwJSwgNDAlLCAxMDAlIHsgXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XHJcbiAgICAgICAgICAgICAgICB9ICAyMCUgeyBcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMS4wKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByb2R1Y3R7XHJcbiAgICAgICAgICAgICYtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWRvbWFpbntcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1wcmljZXtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1hY3Rpb25ze1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWZvb3RlcntcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgICY6bm90KC5xdWljay1jYXJ0LWZvb3Rlci1uby1kYXRhKXtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm5vdCgucXVpY2stY2FydC1mb290ZXItbm8tZGF0YSl7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwgMCwgMCwgMCkgMCUsIHZhcigtLXVpLWJsb2NrLWJnKSAxMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDFweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4OyAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bi1jaGVja291dHtcclxuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLmJ0bi1sZ3tcclxuICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIGJ1dHRvbi1zaXplKHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSwgdmFyKC0tdWktcGFkZGluZy1sZy1oKSwgdmFyKC0tYnRuLWxnLWZvbnQtc2l6ZSksIHZhcigtLWJ0bi1sZy1saW5lLWhlaWdodCksIHZhcigtLWJ0bi1sZy1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG4gICAgJi5sb2FkaW5ne1xyXG4gICAgICAgICNjbGVhckNhcnRCdG57XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5xdWljay1sb2FkZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5xdWljay1udW1iZXItY29udGFpbmVye1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3VtbWFyeS1saXN0LnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwcHghaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucXVpY2stY2FydHtcclxuICAgICYtc2F2aW5nc3tcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7XHJcbiAgICAgICAgJi1saW5le1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGFiZWwtc2F2ZXtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi1zZXR1cC1mZWV7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAmLXRvb2x0aXAtcmVtb3Zle1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucXVpY2stY2FydC1pdGVte1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29sbGFwc2V7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIC5zdW1tYXJ5LWxpc3R7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWNvbGxhcHNlLXRvcHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgJi5ob3ZlcmFibGV7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIC5xdWljay1jYXJ0LWl0ZW17XHJcbiAgICAgICAgICAgICAgICAmLXByaWNle1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICAqe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAucXVpY2stY2FydC1pdGVtLXByaWNle1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBtaW4tY29udGVudDtcclxuICAgICAgICAgICAgICAgICAgICAqe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1tYWluLWFkZG9ue1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi10b3B7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAvL0BpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgICYuaG92ZXJhYmxle1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAucXVpY2stY2FydC1pdGVte1xyXG4gICAgICAgICAgICAgICAgJi1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwMHB4KTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgKntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgLnF1aWNrLWNhcnQtaXRlbS1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgKntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IG1pbi1jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29sbGFwc2UtYm9keXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAud2VsbHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbS12KTtcclxuICAgICAgICAgICAgJi53ZWxsLXNte1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbS12KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc3VtbWFyeS1saXN0LnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25ze1xyXG4gICAgICAgICAgICAmLmhvdmVyYWJsZXtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgIC5pdGVtLXZhbHVle1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICo6bm90KC5pdGVtLXZhbHVlLWZyZWUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgIC5pdGVtLW5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgIC5saXN0LWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAuaXRlbS12YWx1ZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICp7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBtaW4tY29udGVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuaXRlbS1uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tb3B0aW9ubmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxlZnR7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IC8vIFRFU1RcclxuICAgICAgICAmLWJveHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyAvLyBURVNUXHJcbiAgICAgICAgICAgICYuY291bnRlcntcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pe1xyXG4gICAgICAgICAgICAgICAgICAgIC5xdWljay1jYXJ0LWl0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2NHB4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5jb2xsYXBzZS10cmlnZ2Vye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAucXVpY2stY2FydC1pdGVtLW5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDY0cHggLSA0MHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5jb2xsYXBzZS10cmlnZ2Vye1xyXG4gICAgICAgICAgICAgICAgLnF1aWNrLWNhcnQtaXRlbS1uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnF1aWNrLWNhcnQtaXRlbS1uYW1lID4gc3BhbntcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgXHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhhcygucXVpY2stY2FydC1pdGVtLWNvbGxhcHNlLWluZm86bm90KC5jb2xsYXBzZWQpKXtcclxuICAgICAgICAgICAgKyAucXVpY2stY2FydC1pdGVtLXJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgLnF1aWNrLWNhcnQtaXRlbS1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgKntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IG1pbi1jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtcmlnaHR7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ncmFwaGlje1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAzMnB4O1xyXG4gICAgICAgICY6bm90KC5xdWljay1jYXJ0LWl0ZW0tZ3JhcGhpYy1tZWRpYSl7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1mb250LWljb257XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgICAgICAgICAgPiBpLmxzLFxyXG4gICAgICAgICAgICA+IGkubG17XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pY29ue1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzcHg7XHJcbiAgICAgICAgICAgID5zdmd7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29sbGFwc2UtaW5mb3tcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWNvbGxhcHNlLWJnKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14eHMpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICBtYXJnaW46IDAgNHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDRweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWRpdmlkZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgKyAucXVpY2stbnVtYmVyLWNvbnRhaW5lci5xdWljay1udW1iZXItY29udGFpbmVyLWRlc2t0b3B7XHJcbiAgICAgICAgICAgID4gaW5wdXR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1uYW1le1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAvLyBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAvLyAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XHJcbiAgICAgICAgLy8gLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIC8vIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyBcclxuICAgICAgICAvLyBtaW4td2lkdGg6IDUwcHg7XHJcbiAgICAgICAgLy8gd2hpdGUtc3BhY2U6IG5vd3JhcDsgXHJcblxyXG4gICAgICAgIC5xdWljay1jYXJ0LWl0ZW0tY29sbGFwc2UtaW5mb3tcclxuICAgICAgICAgICAgJltkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCJde1xyXG4gICAgICAgICAgICAgICAgJjpub3QoLmNvbGxhcHNlZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmxze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxzOm5vdCgucXVpY2stbnVtYmVyLWFycm93LWljb24pe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZG9tYWlue1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcclxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyBcclxuICAgICAgICBtaW4td2lkdGg6IDUwcHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmLXByaWNle1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAudG90YWx7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZXR1cC1mZWV7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14eHMpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYucXVpY2stY2FydC1pdGVtLXByaWNle1xyXG4gICAgICAgICAgICAmLW1vYmlsZXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgICAgICYucXVpY2stY2FydC1pdGVtLXByaWNle1xyXG4gICAgICAgICAgICAgICAgJi1kZXNrdG9we1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1tb2JpbGV7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1tb2JpbGUtZWxlbWVudHN7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLy8gZmxleDogMCAwIDEwMCU7XHJcbiAgICAgICAgLy8gYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgIGRpc3BsYXk6IGZsZXghaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuaGFzLWdyYXBoaWN7XHJcbiAgICAgICAgLnF1aWNrLWNhcnQtaXRlbS1tb2JpbGUtZWxlbWVudHN7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXNhdmluZ3N7fVxyXG4gICAgJi1hY3Rpb25ze1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAmLWJ0bi1pY29ue1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWJyYW5kLXByaW1hcnkpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9ICBcclxuICAgICAgICAmLnJlbW92ZXtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgICAgLy8gJiNjbGVhckNhcnRCdG57XHJcbiAgICAgICAgICAgIC8vICAgICBtYXJnaW4tcmlnaHQ6IC0xNHB4O1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tYnJhbmQtZGFuZ2VyKVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtYWRkb257XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpub3QoLnNob3ctaW5jbHVkZWQtY29zdCl7XHJcbiAgICAgICAgICAgIC5xdWljay1jYXJ0LWl0ZW0tYWRkb257XHJcbiAgICAgICAgICAgICAgICAmLXByaWNle1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bm90KC5xdWljay1jYXJ0LWl0ZW0tYWRkb24tcmVuZXdhbCl7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIC5xdWljay1jYXJ0LWl0ZW0tYWRkb24tbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLnF1aWNrLWNhcnQtaXRlbS1hZGRvbi1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1uYW1le1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICA+IHNwYW57XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1wcmljZXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAud2VsbHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydFxyXG4gICAgfVxyXG59XHJcblxyXG4ucXVpY2stY2FydC1mb290ZXJ7XHJcbiAgICAmLXNlY3Rpb24sXHJcbiAgICAmLXRheGVze1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHggMDtcclxuICAgICAgICAmICsucXVpY2stY2FydC1mb290ZXItc2VjdGlvbntcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXRheGVze1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgLnRheC1pdGVte1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zZWN0aW9ue1xyXG4gICAgICAgICsgLmJ0bntcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcHJvbW9jb2Rle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcclxuICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgLnByb21vY29kZXtcclxuICAgICAgICAgICAgICAgICYtbGVmdHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgPmRpdntcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1kaXNjb3VudHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtZXhwaXJle1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygxNHB4ICsgdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGF4ZXN7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIC50YXgtaXRlbXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc3BhY2luZy0xeCkgKiAwLjUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcGVyaW9ke1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAucGVyaW9kLWl0ZW17XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10b3RhbHsgXHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIC50b3RhbHtcclxuICAgICAgICAgICAgICAgICYtcmlnaHR7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gOTJweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLWRpc2NvdW50e1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtbGVmdHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA5MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucXVpY2stbG9hZGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgIGFuaW1hdGlvbjogbG9hZGVyUm90YXRlIDIuNHMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgPiBpe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxufVxyXG4ucXVpY2stbnVtYmVyLWNvbnRhaW5lcntcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5xdWljay1udW1iZXJ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBtaW4td2lkdGg6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAzcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1kYXJrZXIpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvZHktYmcpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICAmLnF1aWNrLW51bWJlci1jYXJ0e1xyXG4gICAgICAgICAgICB3aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnF1aWNrLW51bWJlci1pbnB1dHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgICAmOmZvY3Vze1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTMpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIHZhcigtLWdyYXktbGlnaHRlci0zKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucXVpY2stbnVtYmVyLWFycm93c3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogMThweDtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgIH1cclxuICAgIC5xdWljay1udW1iZXItYXJyb3d7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogOXB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogN3B4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tZ3JheS1saWdodGVyLTIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1ncmF5LWxpZ2h0ZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZG93bntcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYucXVpY2stbnVtYmVyLWNvbnRhaW5lcntcclxuICAgICAgICAmLW1vYmlsZXtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgICAgLnF1aWNrLW51bWJlcntcclxuICAgICAgICAgICAgICAgICYtaW5wdXR7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjJweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLWFycm93e1xyXG4gICAgICAgICAgICAgICAgICAgICYtbW9iaWxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAucXVpY2stbnVtYmVyLWFycm93LWljb257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5sZWZ0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgJi5xdWljay1udW1iZXItY29udGFpbmVye1xyXG4gICAgICAgICAgICAmLWRlc2t0b3B7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1vZGFsLnF1aWNrLWNhcnQtbW9kYWx7XHJcbiAgICAubW9kYWx7XHJcbiAgICAgICAgJi1mb290ZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICA+LmNoZWNrYm94LXF1aWNrY2FydHtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNoZWNrYm94e1xyXG4gICAgJi5jaGVja2JveC1xdWlja2NhcnR7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcclxuICAgICAgICAuY2hlY2tib3gtc3R5bGVke1xyXG4gICAgICAgICAgICB0b3A6IC0xcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY2hlY2stc2l6ZSk7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY2hlY2stc2l6ZSk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNoZWNrLXNpemUpO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY2hlY2stc2l6ZSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljaGVjay1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogdmFyKC0taWNoZWNrLWJvcmRlcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljaGVjay1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTExXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ3RlbXBsYXRlcy90d2VudHktb25lL2Nzcy9ibHVlLnBuZycpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1pY2hlY2stc2l6ZSkgLSB2YXIoLS1pY2hlY2stYm9yZGVyLXdpZHRoKSAqIDIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGModmFyKC0taWNoZWNrLXNpemUpIC0gdmFyKC0taWNoZWNrLWJvcmRlci13aWR0aCkgKiAyKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY2hlY2stYWN0aXZlLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID5pbnB1dHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5jaGVja2Vke1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pY2hlY2stYWN0aXZlLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY2hlY2stYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICBcclxufVxyXG5cclxuYm9keTpub3QoLmxhZ29tKXtcclxuICAgIC5xdWljay1jYXJ0LXBvcHVwe1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICB9XHJcbn1cclxuLnRvYXN0LS1yaWdodC10b3B7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDYwcHg7XHJcbiAgICByaWdodDogMDtcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgIC5xdWljay1jYXJ0LXBvcHVwe1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAvLyBtYXJnaW46IDAgMTZweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGFnb20tZnV0dXJpc3RpY3tcclxuICAgIC5xdWljay1jYXJ0LXBvcHVwe1xyXG4gICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBrZXlmcmFtZXMgbG9hZGVyUm90YXRlIHtcclxuICAgIHRvIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGh0bWxbZGlyPVwicnRsXCJde1xyXG4gICAgLnF1aWNrLWNhcnQtcG9wdXB7XHJcbiAgICAgICAgLnF1aWNrLWNhcnQtYm9keXtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIC0gMnB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucXVpY2stY2FydC1pdGVte1xyXG4gICAgICAgICYtcmlnaHR7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNvbGxhcHNlLWluZm97XHJcbiAgICAgICAgICAgICsgLnF1aWNrLW51bWJlci1jb250YWluZXIucXVpY2stbnVtYmVyLWNvbnRhaW5lci1kZXNrdG9we1xyXG4gICAgICAgICAgICAgICAgPiBpbnB1dHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJ0bi1pY29ue1xyXG4gICAgICAgICAgICAmLnJlbW92ZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYjY2xlYXJDYXJ0QnRue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYWN0aW9uc3tcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZ3JhcGhpY3tcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5xdWljay1udW1iZXItY29udGFpbmVye1xyXG4gICAgICAgIC5xdWljay1udW1iZXJ7XHJcbiAgICAgICAgICAgICYucXVpY2stbnVtYmVyLWlucHV0e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWFycm93c3tcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0ucXVpY2stY2FydC1mb290ZXJ7XHJcbiAgICAgICAgJi1zZWN0aW9ue1xyXG4gICAgICAgICAgICAmLXRvdGFse1xyXG4gICAgICAgICAgICAgICAgLnRvdGFse1xyXG4gICAgICAgICAgICAgICAgICAgICYtcmlnaHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLXByaWNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucXVpY2stbG9hZGVye1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn0iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxyXG4vL1xyXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XHJcbi8vXHJcbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcclxuLy9cclxuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxyXG5cclxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXHJcbi8vICAgIG1kXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgbWRcclxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcclxuLy8gICAgbWRcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcclxuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcclxuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcclxufVxyXG5cclxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgNTc2cHhcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcclxuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XHJcbn1cclxuXHJcbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXHJcbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XHJcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXHJcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcclxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxyXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgNzY3Ljk4cHhcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XHJcbn1cclxuXHJcbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXHJcbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxyXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcclxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgXCItc21cIlxyXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XHJcbn1cclxuXHJcbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cclxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuICBAaWYgJG1pbiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cclxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gIEBpZiAkbWF4IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcclxuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XHJcblxyXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXHJcbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXHJcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuXHJcbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdLCJzb3VyY2VSb290IjoiIn0=*/