:root {
  --theme-color: #0163d2; }

.theme-color2 {
  --theme-color: #e22454; }

.theme-color3 {
  --theme-color: #7520dd; }

.theme-color4 {
  --theme-color: #e87316; }

.theme-color5 {
  --theme-color: #df4246; }

.theme-color6 {
  --theme-color: #51983c; }

.text-color {
  color: #6d6d6d; }

/**=====================
    common mixins css start
==========================**/
/*======= position css starts  ======= */
/*======= position css ends  ======= */
/*======= display flex css starts  ======= */
/*======= display flex css ends  ======= */
/*======= Font-color css starts  ======= */
.font-default {
  color: #232323 !important; }

.font-dark {
  color: rgba(35, 35, 35, 0.65) !important; }

.font-light {
  color: #7e7e7e !important; }

.font-dark-30 {
  color: #232323 !important; }

/*======= Font-color css end  ======= */
/*======= buttons css starts  ======= */
.btn-solid-dark {
  color: #fff;
  background-color: unset;
  border: 1px solid #232323; }
  .btn-solid-dark::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #232323;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .btn-solid-dark:hover {
    color: #232323; }
    .btn-solid-dark:hover::before {
      opacity: 0;
      -webkit-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }

.btn-solid-light {
  color: #fff;
  background-color: unset;
  border: 1px solid #fefefe;
  color: #fff; }
  .btn-solid-light::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #fefefe;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .btn-solid-light:hover {
    color: #232323; }
    .btn-solid-light:hover::before {
      opacity: 0;
      -webkit-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }
  .btn-solid-light:hover, .btn-solid-light:focus, .btn-solid-light:active, .btn-solid-light.active {
    color: #000; }

.btn-solid-default {
  color: #fff;
  background-color: unset;
  border: 1px solid var(--theme-color); }
  .btn-solid-default::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: var(--theme-color);
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .btn-solid-default:hover {
    color: #232323; }
    .btn-solid-default:hover::before {
      opacity: 0;
      -webkit-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }

/*======= buttons css end  ======= */
/*======= align css starts  ======= */
/*======= align css ends  ======= */
/*======= breakpoint css ends  ======= */
/**=====================
    breakpoint mixins css start
==========================**/
@-webkit-keyframes rounded {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }
@keyframes rounded {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes run-shoes {
  0% {
    -webkit-transform: rotate(0deg) translate(0, 0);
            transform: rotate(0deg) translate(0, 0); }
  50% {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
    -webkit-transform-origin: left;
            transform-origin: left; }
  75% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    -webkit-transform-origin: right;
            transform-origin: right; }
  100% {
    -webkit-transform: rotate(0deg) translate(0, 0);
            transform: rotate(0deg) translate(0, 0); } }

@keyframes run-shoes {
  0% {
    -webkit-transform: rotate(0deg) translate(0, 0);
            transform: rotate(0deg) translate(0, 0); }
  50% {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
    -webkit-transform-origin: left;
            transform-origin: left; }
  75% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    -webkit-transform-origin: right;
            transform-origin: right; }
  100% {
    -webkit-transform: rotate(0deg) translate(0, 0);
            transform: rotate(0deg) translate(0, 0); } }

@-webkit-keyframes ripple {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3);
            box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3); }
  100% {
    -webkit-box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3);
            box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3); } }

@keyframes ripple {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3);
            box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3); }
  100% {
    -webkit-box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3);
            box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3); } }

@-webkit-keyframes ripple-1 {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3);
            box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3); }
  100% {
    -webkit-box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0);
            box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0); } }

@keyframes ripple-1 {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3);
            box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3); }
  100% {
    -webkit-box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0);
            box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0); } }

@-webkit-keyframes ripple-2 {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3);
            box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3); }
  100% {
    -webkit-box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0); } }

@keyframes ripple-2 {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3);
            box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3); }
  100% {
    -webkit-box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0);
            box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0); } }

@-webkit-keyframes rotate-flower {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform-origin: bottom;
            transform-origin: bottom; }
  25% {
    -webkit-transform: rotate(8deg);
            transform: rotate(8deg); }
  50% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  75% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg); }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); } }

@keyframes rotate-flower {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform-origin: bottom;
            transform-origin: bottom; }
  25% {
    -webkit-transform: rotate(8deg);
            transform: rotate(8deg); }
  50% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  75% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg); }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); } }

@-webkit-keyframes back {
  0% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); }
  70% {
    -webkit-transform: translateX(-13px);
            transform: translateX(-13px); }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); } }

@keyframes back {
  0% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); }
  70% {
    -webkit-transform: translateX(-13px);
            transform: translateX(-13px); }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px); } }

@-webkit-keyframes regMask {
  0% {
    -webkit-transform: translate(0px, 0px) scale(0);
            transform: translate(0px, 0px) scale(0); }
  50% {
    -webkit-transform: translate(100px, 100px) scale(0.5);
            transform: translate(100px, 100px) scale(0.5); }
  100% {
    -webkit-transform: translate(0px, 0px) scale(1);
            transform: translate(0px, 0px) scale(1); } }

@keyframes regMask {
  0% {
    -webkit-transform: translate(0px, 0px) scale(0);
            transform: translate(0px, 0px) scale(0); }
  50% {
    -webkit-transform: translate(100px, 100px) scale(0.5);
            transform: translate(100px, 100px) scale(0.5); }
  100% {
    -webkit-transform: translate(0px, 0px) scale(1);
            transform: translate(0px, 0px) scale(1); } }

@-webkit-keyframes regMaskR {
  0% {
    -webkit-transform: translate(0px, 0px) scale(1);
            transform: translate(0px, 0px) scale(1); }
  50% {
    -webkit-transform: translate(150px, -150px) scale(0.5);
            transform: translate(150px, -150px) scale(0.5); }
  100% {
    -webkit-transform: translate(0px, 0px) scale(0);
            transform: translate(0px, 0px) scale(0); } }

@keyframes regMaskR {
  0% {
    -webkit-transform: translate(0px, 0px) scale(1);
            transform: translate(0px, 0px) scale(1); }
  50% {
    -webkit-transform: translate(150px, -150px) scale(0.5);
            transform: translate(150px, -150px) scale(0.5); }
  100% {
    -webkit-transform: translate(0px, 0px) scale(0);
            transform: translate(0px, 0px) scale(0); } }

@-webkit-keyframes regTag {
  0% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
            transform: translate(0px, 0px) rotate(0deg); }
  25% {
    -webkit-transform: translate(4px, 25px) rotate(11.25deg);
            transform: translate(4px, 25px) rotate(11.25deg); }
  50% {
    -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
            transform: translate(-88px, 40px) rotate(22.5deg); }
  100% {
    -webkit-transform: translate(-96px, 8px) rotate(45deg);
            transform: translate(-96px, 8px) rotate(45deg); } }

@keyframes regTag {
  0% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
            transform: translate(0px, 0px) rotate(0deg); }
  25% {
    -webkit-transform: translate(4px, 25px) rotate(11.25deg);
            transform: translate(4px, 25px) rotate(11.25deg); }
  50% {
    -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
            transform: translate(-88px, 40px) rotate(22.5deg); }
  100% {
    -webkit-transform: translate(-96px, 8px) rotate(45deg);
            transform: translate(-96px, 8px) rotate(45deg); } }

@-webkit-keyframes regTag2 {
  0% {
    width: 140px;
    height: 140px;
    line-height: 140px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45); }
  100% {
    width: 70px;
    height: 70px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
    line-height: 68px; } }

@keyframes regTag2 {
  0% {
    width: 140px;
    height: 140px;
    line-height: 140px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45); }
  100% {
    width: 70px;
    height: 70px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
    line-height: 68px; } }

@-webkit-keyframes regTagR {
  0% {
    -webkit-transform: translate(-96px, 8px) rotate(45deg);
            transform: translate(-96px, 8px) rotate(45deg); }
  25% {
    -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
            transform: translate(-88px, 40px) rotate(22.5deg); }
  50% {
    -webkit-transform: translate(4px, 25px) rotate(11.25deg);
            transform: translate(4px, 25px) rotate(11.25deg); }
  100% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
            transform: translate(0px, 0px) rotate(0deg); } }

@keyframes regTagR {
  0% {
    -webkit-transform: translate(-96px, 8px) rotate(45deg);
            transform: translate(-96px, 8px) rotate(45deg); }
  25% {
    -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
            transform: translate(-88px, 40px) rotate(22.5deg); }
  50% {
    -webkit-transform: translate(4px, 25px) rotate(11.25deg);
            transform: translate(4px, 25px) rotate(11.25deg); }
  100% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
            transform: translate(0px, 0px) rotate(0deg); } }

@-webkit-keyframes regTag2R {
  0% {
    width: 70px;
    height: 70px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
    line-height: 68px; }
  100% {
    width: 140px;
    height: 140px;
    line-height: 140px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45); } }

@keyframes regTag2R {
  0% {
    width: 70px;
    height: 70px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
    line-height: 68px; }
  100% {
    width: 140px;
    height: 140px;
    line-height: 140px;
    -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
            box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45); } }

@-webkit-keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); } }

@keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); } }

@-webkit-keyframes fade {
  0% {
    opacity: 0;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    opacity: 0.5;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    opacity: 1;
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes fade {
  0% {
    opacity: 0;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    opacity: 0.5;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    opacity: 1;
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes buttons-shake {
  10%,
  90% {
    -webkit-transform: translate3d(-1px, 0, 0);
            transform: translate3d(-1px, 0, 0); }
  20%,
  80% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0); }
  30%,
  50%,
  70% {
    -webkit-transform: translate3d(-2px, 0, 0);
            transform: translate3d(-2px, 0, 0); }
  40%,
  60% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0); } }

@keyframes buttons-shake {
  10%,
  90% {
    -webkit-transform: translate3d(-1px, 0, 0);
            transform: translate3d(-1px, 0, 0); }
  20%,
  80% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0); }
  30%,
  50%,
  70% {
    -webkit-transform: translate3d(-2px, 0, 0);
            transform: translate3d(-2px, 0, 0); }
  40%,
  60% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0); } }

@-webkit-keyframes ring {
  0% {
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0); }
  1% {
    -webkit-transform: rotateZ(15deg);
            transform: rotateZ(15deg); }
  3% {
    -webkit-transform: rotateZ(-14deg);
            transform: rotateZ(-14deg); }
  5% {
    -webkit-transform: rotateZ(17deg);
            transform: rotateZ(17deg); }
  7% {
    -webkit-transform: rotateZ(-16deg);
            transform: rotateZ(-16deg); }
  9% {
    -webkit-transform: rotateZ(15deg);
            transform: rotateZ(15deg); }
  11% {
    -webkit-transform: rotateZ(-14deg);
            transform: rotateZ(-14deg); }
  13% {
    -webkit-transform: rotateZ(13deg);
            transform: rotateZ(13deg); }
  15% {
    -webkit-transform: rotateZ(-12deg);
            transform: rotateZ(-12deg); }
  17% {
    -webkit-transform: rotateZ(12deg);
            transform: rotateZ(12deg); }
  19% {
    -webkit-transform: rotateZ(-10deg);
            transform: rotateZ(-10deg); }
  21% {
    -webkit-transform: rotateZ(9deg);
            transform: rotateZ(9deg); }
  23% {
    -webkit-transform: rotateZ(-8deg);
            transform: rotateZ(-8deg); }
  25% {
    -webkit-transform: rotateZ(7deg);
            transform: rotateZ(7deg); }
  27% {
    -webkit-transform: rotateZ(-5deg);
            transform: rotateZ(-5deg); }
  29% {
    -webkit-transform: rotateZ(5deg);
            transform: rotateZ(5deg); }
  31% {
    -webkit-transform: rotateZ(-4deg);
            transform: rotateZ(-4deg); }
  33% {
    -webkit-transform: rotateZ(3deg);
            transform: rotateZ(3deg); }
  35% {
    -webkit-transform: rotateZ(-2deg);
            transform: rotateZ(-2deg); }
  37% {
    -webkit-transform: rotateZ(1deg);
            transform: rotateZ(1deg); }
  39% {
    -webkit-transform: rotateZ(-1deg);
            transform: rotateZ(-1deg); }
  41% {
    -webkit-transform: rotateZ(1deg);
            transform: rotateZ(1deg); }
  43% {
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0); }
  100% {
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0); } }

@keyframes ring {
  0% {
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0); }
  1% {
    -webkit-transform: rotateZ(15deg);
            transform: rotateZ(15deg); }
  3% {
    -webkit-transform: rotateZ(-14deg);
            transform: rotateZ(-14deg); }
  5% {
    -webkit-transform: rotateZ(17deg);
            transform: rotateZ(17deg); }
  7% {
    -webkit-transform: rotateZ(-16deg);
            transform: rotateZ(-16deg); }
  9% {
    -webkit-transform: rotateZ(15deg);
            transform: rotateZ(15deg); }
  11% {
    -webkit-transform: rotateZ(-14deg);
            transform: rotateZ(-14deg); }
  13% {
    -webkit-transform: rotateZ(13deg);
            transform: rotateZ(13deg); }
  15% {
    -webkit-transform: rotateZ(-12deg);
            transform: rotateZ(-12deg); }
  17% {
    -webkit-transform: rotateZ(12deg);
            transform: rotateZ(12deg); }
  19% {
    -webkit-transform: rotateZ(-10deg);
            transform: rotateZ(-10deg); }
  21% {
    -webkit-transform: rotateZ(9deg);
            transform: rotateZ(9deg); }
  23% {
    -webkit-transform: rotateZ(-8deg);
            transform: rotateZ(-8deg); }
  25% {
    -webkit-transform: rotateZ(7deg);
            transform: rotateZ(7deg); }
  27% {
    -webkit-transform: rotateZ(-5deg);
            transform: rotateZ(-5deg); }
  29% {
    -webkit-transform: rotateZ(5deg);
            transform: rotateZ(5deg); }
  31% {
    -webkit-transform: rotateZ(-4deg);
            transform: rotateZ(-4deg); }
  33% {
    -webkit-transform: rotateZ(3deg);
            transform: rotateZ(3deg); }
  35% {
    -webkit-transform: rotateZ(-2deg);
            transform: rotateZ(-2deg); }
  37% {
    -webkit-transform: rotateZ(1deg);
            transform: rotateZ(1deg); }
  39% {
    -webkit-transform: rotateZ(-1deg);
            transform: rotateZ(-1deg); }
  41% {
    -webkit-transform: rotateZ(1deg);
            transform: rotateZ(1deg); }
  43% {
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0); }
  100% {
    -webkit-transform: rotateZ(0);
            transform: rotateZ(0); } }

@-webkit-keyframes animateContainer {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset; }
  25% {
    opacity: 1;
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
    -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset; }
  43.75% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
    -webkit-box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset; }
  62.5% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset; }
  81.25% {
    -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset; }
  100% {
    opacity: 1;
    -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset; } }

@keyframes animateContainer {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset; }
  25% {
    opacity: 1;
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
    -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset; }
  43.75% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
    -webkit-box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset; }
  62.5% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset; }
  81.25% {
    -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset; }
  100% {
    opacity: 1;
    -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
            box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset; } }

@-webkit-keyframes animateCheck {
  from {
    stroke-dashoffset: 80; }
  to {
    stroke-dashoffset: 0; } }

@keyframes animateCheck {
  from {
    stroke-dashoffset: 80; }
  to {
    stroke-dashoffset: 0; } }

@-webkit-keyframes animateShadow {
  0% {
    opacity: 0;
    width: 100%;
    height: 15%; }
  25% {
    opacity: 0.25; }
  43.75% {
    width: 40%;
    height: 7%;
    opacity: 0.35; }
  100% {
    width: 85%;
    height: 15%;
    opacity: 0.25; } }

@keyframes animateShadow {
  0% {
    opacity: 0;
    width: 100%;
    height: 15%; }
  25% {
    opacity: 0.25; }
  43.75% {
    width: 40%;
    height: 7%;
    opacity: 0.35; }
  100% {
    width: 85%;
    height: 15%;
    opacity: 0.25; } }

@-webkit-keyframes mover {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-7px);
            transform: translateY(-7px); } }

@keyframes mover {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-7px);
            transform: translateY(-7px); } }

@-webkit-keyframes floating {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  to {
    -webkit-transform: translateY(-187%);
            transform: translateY(-187%); } }

@keyframes floating {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  to {
    -webkit-transform: translateY(-187%);
            transform: translateY(-187%); } }

@-webkit-keyframes fadeIn {
  to {
    opacity: 1; } }

@keyframes fadeIn {
  to {
    opacity: 1; } }

@-webkit-keyframes moveDown {
  from {
    -webkit-transform: translate(0, -100%);
            transform: translate(0, -100%); }
  to {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); } }

@keyframes moveDown {
  from {
    -webkit-transform: translate(0, -100%);
            transform: translate(0, -100%); }
  to {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); } }

@-webkit-keyframes pendulum {
  20% {
    -webkit-transform: rotate(60deg);
            transform: rotate(60deg); }
  40% {
    -webkit-transform: rotate(-40deg);
            transform: rotate(-40deg); }
  60% {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg); }
  80% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg); } }

@keyframes pendulum {
  20% {
    -webkit-transform: rotate(60deg);
            transform: rotate(60deg); }
  40% {
    -webkit-transform: rotate(-40deg);
            transform: rotate(-40deg); }
  60% {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg); }
  80% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg); } }

@-webkit-keyframes catHi {
  0%,
  100% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8); }
  10%,
  60% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes catHi {
  0%,
  100% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8); }
  10%,
  60% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@-webkit-keyframes catShadow {
  0%,
  100% {
    -webkit-transform: translate(40px, -35px) scale(0.3);
            transform: translate(40px, -35px) scale(0.3); }
  10%,
  60% {
    opacity: 1;
    -webkit-transform: translate(-5px, 10px) scale(0.5);
            transform: translate(-5px, 10px) scale(0.5); }
  60% {
    opacity: 0; } }

@keyframes catShadow {
  0%,
  100% {
    -webkit-transform: translate(40px, -35px) scale(0.3);
            transform: translate(40px, -35px) scale(0.3); }
  10%,
  60% {
    opacity: 1;
    -webkit-transform: translate(-5px, 10px) scale(0.5);
            transform: translate(-5px, 10px) scale(0.5); }
  60% {
    opacity: 0; } }

@-webkit-keyframes moveBox {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, -150px) rotate(20deg);
            transform: translate(0, -150px) rotate(20deg); }
  15% {
    opacity: 1;
    -webkit-transform: translate(0, 100px) rotate(-15deg);
            transform: translate(0, 100px) rotate(-15deg); }
  25% {
    -webkit-transform: translate(0, 250px) rotate(10deg);
            transform: translate(0, 250px) rotate(10deg); }
  30% {
    -webkit-transform: translate(0, 350px) rotate(-5deg);
            transform: translate(0, 350px) rotate(-5deg); }
  35% {
    opacity: 1;
    -webkit-transform: translate(0, 570px) rotate(0deg);
            transform: translate(0, 570px) rotate(0deg); }
  45%,
  100% {
    opacity: 0;
    -webkit-transform: translate(0, 570px);
            transform: translate(0, 570px); } }

@keyframes moveBox {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, -150px) rotate(20deg);
            transform: translate(0, -150px) rotate(20deg); }
  15% {
    opacity: 1;
    -webkit-transform: translate(0, 100px) rotate(-15deg);
            transform: translate(0, 100px) rotate(-15deg); }
  25% {
    -webkit-transform: translate(0, 250px) rotate(10deg);
            transform: translate(0, 250px) rotate(10deg); }
  30% {
    -webkit-transform: translate(0, 350px) rotate(-5deg);
            transform: translate(0, 350px) rotate(-5deg); }
  35% {
    opacity: 1;
    -webkit-transform: translate(0, 570px) rotate(0deg);
            transform: translate(0, 570px) rotate(0deg); }
  45%,
  100% {
    opacity: 0;
    -webkit-transform: translate(0, 570px);
            transform: translate(0, 570px); } }

@-webkit-keyframes parachute {
  0% {
    -webkit-transform: translate(0, -150px) rotate(20deg) scale(0.8);
            transform: translate(0, -150px) rotate(20deg) scale(0.8);
    opacity: 0; }
  15% {
    -webkit-transform: translate(0, 100px) rotate(-15deg) scale(1);
            transform: translate(0, 100px) rotate(-15deg) scale(1);
    opacity: 1; }
  25% {
    -webkit-transform: translate(0, 250px) rotate(10deg);
            transform: translate(0, 250px) rotate(10deg); }
  30% {
    -webkit-transform: translate(0, 350px) rotate(-5deg);
            transform: translate(0, 350px) rotate(-5deg); }
  33% {
    -webkit-transform: translate(0, 460px) rotate(0deg) scale(0.9);
            transform: translate(0, 460px) rotate(0deg) scale(0.9);
    opacity: 1; }
  45%,
  100% {
    -webkit-transform: translate(0, 480px);
            transform: translate(0, 480px);
    opacity: 0; } }

@keyframes parachute {
  0% {
    -webkit-transform: translate(0, -150px) rotate(20deg) scale(0.8);
            transform: translate(0, -150px) rotate(20deg) scale(0.8);
    opacity: 0; }
  15% {
    -webkit-transform: translate(0, 100px) rotate(-15deg) scale(1);
            transform: translate(0, 100px) rotate(-15deg) scale(1);
    opacity: 1; }
  25% {
    -webkit-transform: translate(0, 250px) rotate(10deg);
            transform: translate(0, 250px) rotate(10deg); }
  30% {
    -webkit-transform: translate(0, 350px) rotate(-5deg);
            transform: translate(0, 350px) rotate(-5deg); }
  33% {
    -webkit-transform: translate(0, 460px) rotate(0deg) scale(0.9);
            transform: translate(0, 460px) rotate(0deg) scale(0.9);
    opacity: 1; }
  45%,
  100% {
    -webkit-transform: translate(0, 480px);
            transform: translate(0, 480px);
    opacity: 0; } }

@-webkit-keyframes fadeInOut {
  5%,
  12% {
    opacity: 1; }
  20% {
    opacity: 0; } }

@keyframes fadeInOut {
  5%,
  12% {
    opacity: 1; }
  20% {
    opacity: 0; } }

@-webkit-keyframes clouds {
  from {
    -webkit-transform: translate(-150%, 0);
            transform: translate(-150%, 0); }
  to {
    -webkit-transform: translate(150%, 0);
            transform: translate(150%, 0); } }

@keyframes clouds {
  from {
    -webkit-transform: translate(-150%, 0);
            transform: translate(-150%, 0); }
  to {
    -webkit-transform: translate(150%, 0);
            transform: translate(150%, 0); } }

@-webkit-keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  50% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

/**=====================
     reset css start
==========================**/
section,
.section-t-space {
  padding-top: 80px; }
  @media (max-width: 1460px) {
    section,
    .section-t-space {
      padding-top: 70px; } }
  @media (max-width: 1199px) {
    section,
    .section-t-space {
      padding-top: 60px; } }
  @media (max-width: 991px) {
    section,
    .section-t-space {
      padding-top: 50px; } }
  @media (max-width: 767px) {
    section,
    .section-t-space {
      padding-top: 40px; } }
  @media (max-width: 575px) {
    section,
    .section-t-space {
      padding-top: 30px; } }

.section-b-space {
  padding-bottom: 80px; }
  @media (max-width: 1460px) {
    .section-b-space {
      padding-bottom: 70px; } }
  @media (max-width: 1199px) {
    .section-b-space {
      padding-bottom: 60px; } }
  @media (max-width: 991px) {
    .section-b-space {
      padding-bottom: 50px; } }
  @media (max-width: 767px) {
    .section-b-space {
      padding-bottom: 40px; } }
  @media (max-width: 575px) {
    .section-b-space {
      padding-bottom: 30px; } }

.media .media-body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.rating li i.orange {
  color: #facc21; }

.g-18 {
  margin: -18px; }
  .g-18 > div {
    padding: 18px; }

.custom-gy-5 {
  margin-top: calc(-16px + (-20 - -16) * ((100vw - 320px) / (1920 - 320)));
  margin-bottom: calc(-16px + (-20 - -16) * ((100vw - 320px) / (1920 - 320))); }
  .custom-gy-5 > div {
    margin-top: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320))); }

.light-gray-bg {
  background-color: #eff2f7; }

@media (min-width: 1200px) {
  .custom-col {
    width: calc(33.33333% + 4.16%); } }

/**=====================
     typography css start
==========================**/
body {
  font-family: Rubik, sans-serif;
  position: relative;
  font-size: 14px;
  color: #232323;
  margin: 0;
  background-color: #fff; }
  body .bg-overlay {
    height: 100vh;
    width: 100vw;
    background-color: rgba(0, 0, 0, 0.2);
    position: fixed;
    z-index: 3;
    top: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.5s;
    transition: 0.5s; }
    body .bg-overlay.show {
      visibility: visible;
      opacity: 1; }

ul {
  padding-left: 0;
  margin-bottom: 0; }

li {
  display: inline-block;
  font-size: 14px; }

p {
  font-size: 14px;
  line-height: 18px; }

a {
  color: var(--theme-color);
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
  text-decoration: none; }
  a:hover {
    text-decoration: none;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease; }
  a:focus {
    outline: none; }

button:focus {
  outline: none; }

.btn-close:focus {
  -webkit-box-shadow: none;
          box-shadow: none; }

:focus {
  outline: none; }

.form-control {
  background-color: #fff; }
  .form-control:focus {
    -webkit-box-shadow: none;
            box-shadow: none; }

h1 {
  font-size: calc(40px + (70 - 40) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 600;
  line-height: 1.1;
  text-transform: capitalize;
  margin: 0; }

h2 {
  font-size: calc(22px + (28 - 22) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 600;
  line-height: 1;
  text-transform: capitalize;
  margin: 0; }

h3 {
  font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 500;
  line-height: 1.2;
  margin: 0; }

h4 {
  font-size: calc(17px + (18 - 17) * ((100vw - 320px) / (1920 - 320)));
  line-height: 1.2;
  margin: 0;
  font-weight: 400; }

h5 {
  font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
  line-height: 1.2;
  margin: 0;
  font-weight: 400; }

h6 {
  font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320)));
  line-height: 1.2;
  margin: 0;
  font-weight: 400; }

span {
  display: inline-block; }

.theme-color {
  color: var(--theme-color) !important; }

.theme-bg-color {
  background-color: var(--theme-color); }

/**=====================
     buttons css start
==========================**/
.btn {
  position: relative;
  padding: calc(8px + (14 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 600;
  z-index: 1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  border-radius: 0;
  font-weight: bold;
  font-size: calc(12px + (13 - 12) * ((100vw - 320px) / (1920 - 320)));
  text-transform: capitalize;
  white-space: nowrap; }
  .btn-submit {
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    background-color: var(--theme-color);
    color: #fff; }
    .btn-submit:hover {
      background-color: var(--theme-color);
      color: #fff; }
  .btn-size {
    font-size: 12px; }
  .btn:focus {
    -webkit-box-shadow: none;
            box-shadow: none; }
  .btn-spacing {
    padding: calc(5px + (14 - 5) * ((100vw - 320px) / (1920 - 320))) calc(8px + (30 - 8) * ((100vw - 320px) / (1920 - 320))); }

.btn-sm {
  padding: 8px 16px;
  font-weight: 400; }

.default-white {
  background-color: #fff;
  border-radius: 0; }

.default-light {
  color: #f8f8f8;
  position: relative;
  border: 1px solid transparent;
  padding: calc(6px + (14 - 6) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
  font-weight: 800; }
  .default-light::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--theme-color);
    opacity: 0.15; }

.default-light1 {
  color: var(--theme-color);
  position: relative;
  background-color: unset;
  border: 1px solid transparent; }
  .default-light1::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-color: var(--theme-color);
    opacity: 0.11;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .default-light1::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: -1;
    border: 1px solid var(--theme-color);
    opacity: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .default-light1:hover {
    color: var(--theme-color); }
    .default-light1:hover::before {
      opacity: 0;
      -webkit-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }
    .default-light1:hover::after {
      opacity: 0.11; }

.default-light-theme {
  color: var(--theme-color);
  padding: calc(6px + (14 - 6) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .default-light-theme:hover {
    color: var(--theme-color); }

.default-theme {
  background-color: var(--theme-color);
  color: #fff; }
  .default-theme:hover {
    color: #fff; }

.default-theme-2 {
  padding: 12px 25px;
  font-size: 15px;
  text-transform: capitalize;
  font-weight: 400; }

.default-theme-1 {
  background-color: rgba(240, 247, 240, 0.6);
  -webkit-transform: scale(100%);
          transform: scale(100%);
  border: 1px solid var(--theme-color); }
  .default-theme-1:hover {
    background-color: var(--theme-color);
    color: #fff;
    -webkit-transform: scale(100%);
            transform: scale(100%); }

.default::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background-color: var(--theme-color);
  opacity: 0.11;
  -webkit-transition: all 0.5s;
  transition: all 0.5s; }

.default::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
  border: 1px solid var(--theme-color);
  opacity: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s; }

.default:hover {
  color: var(--theme-color); }
  .default:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5); }
  .default:hover::after {
    opacity: 0.11; }

.btn-light-white {
  padding: 6px 20px;
  color: #fff;
  background-color: unset;
  border: 1px solid rgba(255, 255, 255, 0.1); }
  .btn-light-white i {
    font-size: 12px; }
  .btn-light-white::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: rgba(255, 255, 255, 0.1);
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .btn-light-white:hover {
    color: #fff; }
    .btn-light-white:hover::before {
      opacity: 0;
      -webkit-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }

.btn-white {
  padding: 6px 20px;
  color: #232323;
  background-color: unset;
  border: 1px solid #fff; }
  .btn-white i {
    font-size: 12px; }
  .btn-white::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #fff;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .btn-white:hover {
    color: #fff; }
    .btn-white:hover::before {
      opacity: 0;
      -webkit-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }

.btn-full {
  width: 100%;
  border-radius: 5px; }

/**=====================
     alert css start
==========================**/
.alert-info .btn-close {
  font-size: 10px; }

.progress-bar-info {
  background-color: #0c5460; }

[data-notify="progressbar"] {
  margin-bottom: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px; }

/**=====================
    label css start
==========================**/
.label {
  font-size: 12px;
  padding: 6px 10px;
  text-transform: uppercase;
  color: #fff;
  display: inline-block;
  font-weight: 500; }
  @media (max-width: 575px) {
    .label {
      padding: 4px 6px;
      font-size: 10px; } }
  .label-block {
    position: absolute;
    padding: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    top: 0;
    width: 100%;
    z-index: 1; }
  .label-dark {
    background-color: #000; }
  .label-black {
    background-color: #000; }
    [dir="rtl"] .label-black {
      float: right; }
  .label-theme {
    background-color: var(--theme-color); }

/**=====================
     tab css start
==========================**/
.tab-wrap .nav-tabs {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 2px solid #f0f3f8; }
  @media (max-width: 991px) {
    .tab-wrap .nav-tabs {
      display: -webkit-box;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -ms-flex-wrap: inherit;
          flex-wrap: inherit;
      overflow-x: scroll;
      overflow-y: hidden;
      white-space: nowrap; } }
  .tab-wrap .nav-tabs .nav-link {
    font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1;
    color: #7e7e7e;
    font-weight: 500;
    padding: 0 20px 20px;
    background: transparent;
    border: none;
    border-bottom: 4px solid transparent; }
    @media (max-width: 991px) {
      .tab-wrap .nav-tabs .nav-link {
        padding: 0 10px 15px; } }
    .tab-wrap .nav-tabs .nav-link:hover, .tab-wrap .nav-tabs .nav-link:active, .tab-wrap .nav-tabs .nav-link:focus {
      border: none; }
    .tab-wrap .nav-tabs .nav-link.active, .tab-wrap .nav-tabs .nav-link:active {
      border-bottom: 4px solid var(--theme-color);
      color: #212529; }

.tab-wrap .tab-content {
  margin-top: 30px; }

/**=====================
     dropdown css start
==========================**/
.onhover-div {
  top: 70px;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  z-index: 8;
  background-color: #fff;
  -webkit-transition: all linear 0.3s;
  transition: all linear 0.3s;
  min-width: 280px;
  -webkit-box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
          box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07); }
  .onhover-div li {
    font-size: 14px; }
    .onhover-div li a svg {
      color: #232323; }
  .onhover-div::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #fff;
    top: -7px;
    right: 10px;
    z-index: 2; }
    [dir="rtl"] .onhover-div::before {
      right: unset;
      left: 10px; }

.onhover-dropdown {
  position: relative;
  cursor: pointer; }
  .onhover-dropdown:hover .onhover-div {
    top: 50px;
    opacity: 1;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    visibility: visible; }
    @media (max-width: 767px) {
      .onhover-dropdown:hover .onhover-div {
        width: 320px; } }
  .onhover-dropdown.cart-dropdown button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .onhover-dropdown.cart-dropdown button .feather {
      width: 23px !important;
      margin-right: 10px;
      height: 22px; }
      [dir="rtl"] .onhover-dropdown.cart-dropdown button .feather {
        margin-right: unset;
        margin-left: 10px; }
      @media (max-width: 360px) {
        .onhover-dropdown.cart-dropdown button .feather {
          margin-right: 0; }
          [dir="rtl"] .onhover-dropdown.cart-dropdown button .feather {
            margin-right: unset;
            margin-left: 0; } }
    .onhover-dropdown.cart-dropdown button span {
      font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320))); }

/**=====================
     timer css start
==========================**/
.timer ul {
  padding: 20px;
  background-color: rgba(35, 35, 35, 0.8);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly; }
  [dir="rtl"] .timer ul {
    padding: 20px; }
  @media (max-width: 1366px) {
    .timer ul {
      padding: 15px; } }
  @media (max-width: 480px) {
    .timer ul {
      padding: 10px; } }
  .timer ul li {
    position: relative; }
    .timer ul li span {
      display: block;
      margin-bottom: 3px; }
    @media (max-width: 480px) {
      .timer ul li {
        font-size: 12px; } }
    @media (max-width: 480px) {
      .timer ul li h5 {
        font-size: 13px; } }
    .timer ul li + li {
      margin-left: 30px; }
      .timer ul li + li::before {
        content: "";
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        left: -17px;
        border-left: 1px solid rgba(126, 126, 126, 0.4);
        height: 50%; }
        [dir="rtl"] .timer ul li + li::before {
          right: -17px;
          left: unset !important;
          border-right: 1px solid rgba(126, 126, 126, 0.4);
          border-left: unset; }
        @media (max-width: 1366px) {
          .timer ul li + li::before {
            left: -12px; }
            [dir="rtl"] .timer ul li + li::before {
              right: -12px; } }
        @media (max-width: 480px) {
          .timer ul li + li::before {
            left: -5px; }
            [dir="rtl"] .timer ul li + li::before {
              right: -5px; } }
      [dir="rtl"] .timer ul li + li {
        margin-right: 30px;
        margin-left: unset !important; }
      @media (max-width: 1366px) {
        .timer ul li + li {
          margin-left: 20px; }
          [dir="rtl"] .timer ul li + li {
            margin-right: 20px; } }
      @media (max-width: 480px) {
        .timer ul li + li {
          margin-left: 6px; }
          [dir="rtl"] .timer ul li + li {
            margin-right: 6px; } }

.timer-style-2 ul {
  margin: calc(-5px + (-15 - -5) * ((100vw - 320px) / (1920 - 320)));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .timer-style-2 ul li {
    margin: calc(5px + (15 - 5) * ((100vw - 320px) / (1920 - 320)));
    background-color: #fff;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-right: 0;
    color: #212529; }
    .timer-style-2 ul li h2 {
      font-size: calc(18px + (28 - 18) * ((100vw - 320px) / (1920 - 320))); }
    .timer-style-2 ul li span {
      display: block;
      margin-bottom: 3px; }
    @media (max-width: 480px) {
      .timer-style-2 ul li {
        font-size: 12px; } }
    @media (max-width: 480px) {
      .timer-style-2 ul li h5 {
        font-size: 13px; } }

.timer-style-3 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: rgba(232, 115, 22, 0.8);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  width: 80%; }
  .timer-style-3 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    text-align: center;
    color: #fff;
    width: 100%; }
    .timer-style-3 ul li {
      margin: calc(5px + (5 - 5) * ((100vw - 320px) / (1920 - 320))) calc(5px + (5 - 5) * ((100vw - 320px) / (1920 - 320))) calc(5px + (5 - 5) * ((100vw - 320px) / (1920 - 320))) 0;
      padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
      width: 25%; }
      .timer-style-3 ul li + li {
        position: relative; }
        .timer-style-3 ul li + li::after {
          content: "";
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          width: 1px;
          height: 50%;
          background-color: rgba(255, 255, 255, 0.5);
          left: 0%; }
      .timer-style-3 ul li:nth-child(4) {
        margin-right: 0; }
      .timer-style-3 ul li h2 {
        font-size: calc(18px + (28 - 18) * ((100vw - 320px) / (1920 - 320))); }
      .timer-style-3 ul li span {
        display: block;
        margin-bottom: 3px; }
      @media (max-width: 480px) {
        .timer-style-3 ul li {
          font-size: 12px; } }
      @media (max-width: 480px) {
        .timer-style-3 ul li h5 {
          font-size: 13px; } }

/**=====================
     Tap to top css start
==========================**/
.tap-to-top {
  background-color: var(--theme-color);
  position: fixed;
  bottom: 15px;
  right: -60px;
  border-radius: 5px;
  overflow: hidden;
  width: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
  height: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
  -webkit-box-shadow: 0 3px 8px rgba(33, 37, 41, 0.35);
          box-shadow: 0 3px 8px rgba(33, 37, 41, 0.35);
  z-index: 3;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  cursor: pointer;
  opacity: 0; }
  [dir="rtl"] .tap-to-top {
    right: unset;
    left: -60px; }
  .tap-to-top::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 0;
    background: #212529;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: -1;
    -webkit-transition: 0.5s;
    transition: 0.5s; }
  .tap-to-top:hover::before {
    height: 100%; }
  @media (max-width: 575px) {
    .tap-to-top {
      bottom: 75px; } }
  .tap-to-top.show {
    right: 15px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    opacity: 1; }
    [dir="rtl"] .tap-to-top.show {
      right: unset;
      left: 15px; }
  .tap-to-top a {
    color: #fff;
    width: calc(35px + (40 - 35) * ((100vw - 320px) / (1920 - 320)));
    height: calc(35px + (40 - 35) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
    z-index: 3; }
    @media (max-width: 575px) {
      .tap-to-top a {
        bottom: 75px; } }

/**=====================
    Modal css Start
==========================**/
.newletter-modal .modal-dialog .modal-content {
  border: none;
  border-radius: 0;
  background-color: #fff; }
  .newletter-modal .modal-dialog .modal-content .modal-header {
    border: none;
    padding: 0;
    background-color: #fff; }
    .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
      width: 54px;
      height: 54px;
      top: -50px;
      right: -50px;
      line-height: 54px;
      position: absolute;
      text-decoration: none;
      text-align: center;
      color: #fff;
      background: 0 0;
      border: none;
      cursor: pointer;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear;
      opacity: 1; }
      @media (max-width: 575px) {
        .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
          right: -14px; }
          [dir="rtl"] .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
            right: unset;
            left: -14px; } }
      [dir="rtl"] .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
        right: unset;
        left: -50px; }
      .newletter-modal .modal-dialog .modal-content .modal-header .btn-close:before {
        content: "\f00d";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 22px; }
  .newletter-modal .modal-dialog .modal-content .modal-body {
    padding: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
    position: relative;
    overflow: hidden;
    z-index: 1; }
    .newletter-modal .modal-dialog .modal-content .modal-body img {
      position: absolute;
      top: -15px;
      right: -25px;
      width: 140px;
      -webkit-transform: rotate(20deg);
              transform: rotate(20deg);
      -webkit-filter: grayscale(1);
              filter: grayscale(1);
      opacity: 0.5;
      -webkit-box-shadow: 0 7px 11px rgba(33, 37, 41, 0.5);
              box-shadow: 0 7px 11px rgba(33, 37, 41, 0.5);
      z-index: -1; }
      [dir="rtl"] .newletter-modal .modal-dialog .modal-content .modal-body img {
        right: unset;
        left: -25px;
        -webkit-transform: rotate(-20deg);
                transform: rotate(-20deg); }
    .newletter-modal .modal-dialog .modal-content .modal-body .modal-title h2 {
      color: #212529;
      font-weight: 500;
      margin-bottom: 16px; }
    .newletter-modal .modal-dialog .modal-content .modal-body .modal-title ul {
      list-style-type: disc;
      -webkit-padding-start: 15px;
              padding-inline-start: 15px; }
      .newletter-modal .modal-dialog .modal-content .modal-body .modal-title ul li {
        display: list-item;
        color: #7e7e7e;
        line-height: 1.7; }
        .newletter-modal .modal-dialog .modal-content .modal-body .modal-title ul li::marker {
          color: #212529; }

.video-play-modal .modal-dialog .modal-content {
  background-color: transparent;
  border: none; }
  .video-play-modal .modal-dialog .modal-content .modal-body {
    padding: 0; }
    .video-play-modal .modal-dialog .modal-content .modal-body iframe {
      width: 100%;
      height: 550px; }

.comparemodal-body .table {
  margin-bottom: 0;
  border: 1px solid #ced4da; }
  .comparemodal-body .table.table-striped-1 tbody tr:nth-of-type(odd) {
    background-color: transparent; }
  .comparemodal-body .table.table-striped-1 tbody tr:nth-of-type(even) {
    background-color: #eff2f7; }
  .comparemodal-body .table a {
    color: #212529; }
  .comparemodal-body .table tr.table-product-details {
    border-bottom: 1px solid transparent; }
  .comparemodal-body .table tr.table-cart-button td {
    border-top: 1px solid transparent; }
  .comparemodal-body .table tr.table-cart-button a.btn {
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    padding: 6px 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: var(--theme-color);
    border-radius: 5px; }
    .comparemodal-body .table tr.table-cart-button a.btn:hover {
      color: #fff; }
  .comparemodal-body .table tr td {
    border-left: 1px solid #ced4da;
    padding: 14px;
    min-width: 230px;
    width: 0;
    color: #212529; }
    .comparemodal-body .table tr td:first-child {
      min-width: 270px;
      font-weight: 500;
      text-transform: uppercase; }
  .comparemodal-body .table ul.list-detail {
    padding-left: 22px; }
    .comparemodal-body .table ul.list-detail li {
      font-size: 14px;
      color: #777777;
      display: list-item;
      list-style-type: square; }

.comparemodal-body .product-box .btn-close {
  right: 0;
  top: 0;
  z-index: 1; }

.comparemodal-body .product-box .product-image {
  text-align: center; }
  .comparemodal-body .product-box .product-image img {
    width: 100%;
    height: 100%; }

.modal-header {
  border: none;
  padding: 0; }
  .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1; }
    @media (max-width: 575px) {
      .modal-header .btn-close {
        right: -14px; }
        [dir="rtl"] .modal-header .btn-close {
          right: unset;
          left: -14px; } }
    [dir="rtl"] .modal-header .btn-close {
      right: unset;
      left: -50px; }
    .modal-header .btn-close:before {
      content: "\f00d";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 22px; }

.shipping-modal .modal-dialog .modal-content .modal-body {
  padding: calc(15px + (40 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .shipping-modal .modal-dialog .modal-content .modal-body .modal-title h6 {
    color: #191919;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 6px; }
  .shipping-modal .modal-dialog .modal-content .modal-body .modal-title ul {
    list-style-type: disc;
    -webkit-padding-start: 15px;
            padding-inline-start: 15px; }
    .shipping-modal .modal-dialog .modal-content .modal-body .modal-title ul li {
      display: list-item;
      color: #7e7e7e;
      line-height: 1.7; }
      .shipping-modal .modal-dialog .modal-content .modal-body .modal-title ul li::marker {
        color: #212529; }

.cart-modal .modal-dialog .modal-content .modal-header {
  border: none;
  padding: 0; }
  .cart-modal .modal-dialog .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1; }
    @media (max-width: 575px) {
      .cart-modal .modal-dialog .modal-content .modal-header .btn-close {
        right: -14px; }
        [dir="rtl"] .cart-modal .modal-dialog .modal-content .modal-header .btn-close {
          right: unset;
          left: -14px; } }
    .cart-modal .modal-dialog .modal-content .modal-header .btn-close:before {
      content: "\f00d";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 22px; }

.cart-modal .modal-dialog .modal-content .modal-body {
  padding: calc(15px + (40 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .cart-modal .modal-dialog .modal-content .modal-body .modal-messages {
    text-align: center;
    color: #008000;
    margin-bottom: 10px;
    background: #d1e7dd;
    padding: 12px;
    width: 100%;
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 575px) {
      .cart-modal .modal-dialog .modal-content .modal-body .modal-messages {
        display: block; } }
    .cart-modal .modal-dialog .modal-content .modal-body .modal-messages .fa-check {
      font-size: 14px;
      margin-right: 10px;
      width: 25px;
      height: 25px;
      background: #008000;
      border-radius: 50%;
      color: #fff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media (max-width: 575px) {
        .cart-modal .modal-dialog .modal-content .modal-body .modal-messages .fa-check {
          margin: 0 auto 12px; } }
  .cart-modal .modal-dialog .modal-content .modal-body .modal-product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 575px) {
      .cart-modal .modal-dialog .modal-content .modal-body .modal-product {
        display: block;
        border-bottom: 1px solid #ddd;
        padding-bottom: 30px; } }
    @media (max-width: 575px) {
      .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img {
        text-align: center;
        margin-bottom: calc(10px + (18 - 10) * ((100vw - 320px) / (1920 - 320))); } }
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-details {
      margin-left: 10px; }
      @media (max-width: 575px) {
        .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-details {
          text-align: center;
          margin-left: 0; } }
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product h5 {
      margin: 5px 0; }
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
      width: 100%;
      max-width: 220px;
      height: auto;
      margin: 10px 0; }
      @media (max-width: 575px) {
        .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
          max-width: 60%; } }
      @media (max-width: 480px) {
        .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
          max-width: 75%; } }
      @media (max-width: 360px) {
        .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
          max-width: 100%; } }
  .cart-modal .modal-dialog .modal-content .modal-body .product-total h5 {
    font-weight: 400; }
    .cart-modal .modal-dialog .modal-content .modal-body .product-total h5 span {
      font-weight: 500; }
  .cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button {
    margin: -8px; }
    @media (max-width: 360px) {
      .cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    .cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button .conti-button {
      border: 1px solid var(--theme-color);
      background: #fff;
      color: var(--theme-color);
      margin: calc(3px + (8 - 3) * ((100vw - 320px) / (1920 - 320)));
      padding: calc(6px + (12 - 6) * ((100vw - 320px) / (1920 - 320))) calc(10px + (25 - 10) * ((100vw - 320px) / (1920 - 320)));
      font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320))); }
      .cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button .conti-button:hover {
        background-color: var(--theme-color);
        color: #fff; }

.modal-size .modal-dialog .modal-content .modal-header {
  padding: 0; }
  .modal-size .modal-dialog .modal-content .modal-header button {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1; }
    .modal-size .modal-dialog .modal-content .modal-header button .fa-times {
      font-size: 22px; }
    @media (max-width: 480px) {
      .modal-size .modal-dialog .modal-content .modal-header button {
        display: none; } }

.quick-view-modal .btn-close {
  width: 54px;
  height: 54px;
  top: -50px;
  right: -50px;
  line-height: 54px;
  position: absolute;
  text-decoration: none;
  text-align: center;
  color: #fff;
  background: 0 0;
  border: none;
  cursor: pointer;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  opacity: 1; }
  @media (max-width: 575px) {
    .quick-view-modal .btn-close {
      right: -14px; }
      [dir="rtl"] .quick-view-modal .btn-close {
        right: unset;
        left: -14px; } }
  .quick-view-modal .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px; }

.quick-view-modal .modal-body {
  padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }

.quick-view-modal .quick-view-image {
  position: relative; }
  .quick-view-modal .quick-view-image img {
    width: 100%; }
    @media (max-width: 991px) {
      .quick-view-modal .quick-view-image img {
        max-height: 400px;
        -o-object-fit: cover;
           object-fit: cover; } }
  .quick-view-modal .quick-view-image .quick-nav {
    position: absolute;
    bottom: 20px;
    left: 20px; }
    .quick-view-modal .quick-view-image .quick-nav .slick-slide > div img {
      margin: 0;
      border: 1px solid #ced4da;
      width: 40px;
      height: 40px;
      -o-object-fit: cover;
         object-fit: cover; }
    .quick-view-modal .quick-view-image .quick-nav .slick-slide.slick-current > div img {
      border: 1px solid var(--theme-color); }

.quick-view-modal .product-right.veg-product-right h2 {
  font-size: 26px; }

.quick-view-modal .product-right.veg-product-right .product-details {
  margin-top: 10px; }

.quick-view-modal .product-right.veg-product-right .product-btns a {
  font-size: 14px; }

.quick-view-modal .product-right.veg-product-right .price {
  display: block; }
  .quick-view-modal .product-right.veg-product-right .price li {
    width: 100%; }
    .quick-view-modal .product-right.veg-product-right .price li .custome-form-check {
      width: 100%;
      padding: 15px 8px 15px 30px;
      border-radius: 4px;
      border: 1px solid #d0d0d0;
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out;
      -webkit-box-shadow: 0 4px 10px rgba(33, 37, 41, 0.1);
              box-shadow: 0 4px 10px rgba(33, 37, 41, 0.1);
      background: #f7f7f7; }

.quick-view-modal .product-right.veg-product-right .veg-details {
  margin-top: 30px;
  padding: 20px 0;
  border-top: 1px dashed #ced4da; }
  .quick-view-modal .product-right.veg-product-right .veg-details p {
    line-height: 1.7; }
  @media (max-width: 991px) {
    .quick-view-modal .product-right.veg-product-right .veg-details {
      margin-top: 20px; } }
  @media (max-width: 575px) {
    .quick-view-modal .product-right.veg-product-right .veg-details {
      margin-top: 15px;
      padding: 15px 0; } }

.quick-view-modal .product-right h2 {
  font-weight: 500; }

.quick-view-modal .product-right h6 {
  font-weight: 400; }

.quick-view-modal .product-right h4 {
  margin-bottom: 10px;
  text-transform: capitalize; }

.quick-view-modal .product-right .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .quick-view-modal .product-right .price h3 {
    padding-right: 20px; }
    [dir="rtl"] .quick-view-modal .product-right .price h3 {
      padding-right: unset;
      padding-left: 20px; }

.quick-view-modal .product-right .color-types {
  margin-top: 20px;
  padding: 20px 0;
  border-top: 1px dashed #ced4da; }
  .quick-view-modal .product-right .color-types.veg-details p {
    line-height: 1.7; }
  @media (max-width: 991px) {
    .quick-view-modal .product-right .color-types {
      margin-top: 20px; } }
  @media (max-width: 575px) {
    .quick-view-modal .product-right .color-types {
      margin-top: 15px;
      padding: 15px 0; } }

.quick-view-modal .product-right .size-detail {
  padding: 20px 0;
  border-top: 1px dashed #ced4da; }
  @media (max-width: 575px) {
    .quick-view-modal .product-right .size-detail {
      padding: 15px 0; } }
  .quick-view-modal .product-right .size-detail ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .quick-view-modal .product-right .size-detail ul li {
      width: 30px;
      height: 30px;
      text-align: center;
      border: 1px solid #ced4da;
      cursor: pointer;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .quick-view-modal .product-right .size-detail ul li.selected {
        -webkit-box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2);
                box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2); }
      .quick-view-modal .product-right .size-detail ul li + li {
        margin-left: 10px; }

.quick-view-modal .product-right .product-details {
  padding: 20px 0;
  border-top: 1px dashed #ced4da;
  border-bottom: 1px dashed #ced4da; }
  @media (max-width: 575px) {
    .quick-view-modal .product-right .product-details {
      padding: 15px 0; } }
  .quick-view-modal .product-right .product-details ul li {
    display: block; }
    .quick-view-modal .product-right .product-details ul li + li {
      margin-top: 5px; }
    .quick-view-modal .product-right .product-details ul li span {
      min-width: 150px; }

.quick-view-modal .product-right .product-btns {
  margin-top: 20px; }
  @media (max-width: 575px) {
    .quick-view-modal .product-right .product-btns {
      margin-top: 15px; } }

.reset-email-modal .modal-content {
  border: none; }
  .reset-email-modal .modal-content .modal-header {
    border-bottom: none;
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    padding-bottom: 0; }
    .reset-email-modal .modal-content .modal-header .btn-close {
      width: 54px;
      height: 54px;
      top: -50px;
      right: -50px;
      line-height: 54px;
      position: absolute;
      text-decoration: none;
      text-align: center;
      color: #fff;
      background: 0 0;
      border: none;
      cursor: pointer;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear;
      opacity: 1; }
      @media (max-width: 575px) {
        .reset-email-modal .modal-content .modal-header .btn-close {
          right: -14px; }
          [dir="rtl"] .reset-email-modal .modal-content .modal-header .btn-close {
            right: unset;
            left: -14px; } }
      .reset-email-modal .modal-content .modal-header .btn-close:before {
        content: "\f00d";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 22px; }
  .reset-email-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .reset-email-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none; }
    .reset-email-modal .modal-content .modal-footer button {
      margin: 0; }
      .reset-email-modal .modal-content .modal-footer button.modal-close-button {
        color: #fff;
        margin-right: 10px; }
        [dir="rtl"] .reset-email-modal .modal-content .modal-footer button.modal-close-button {
          margin-right: 0;
          margin-left: 10px; }

.delete-account-modal .modal-content {
  border: none; }
  .delete-account-modal .modal-content .modal-header {
    padding: 0;
    border: none; }
    .delete-account-modal .modal-content .modal-header .btn-close {
      width: 54px;
      height: 54px;
      top: -50px;
      right: -50px;
      line-height: 54px;
      position: absolute;
      text-decoration: none;
      text-align: center;
      color: #fff;
      background: 0 0;
      border: none;
      cursor: pointer;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear;
      opacity: 1; }
      @media (max-width: 575px) {
        .delete-account-modal .modal-content .modal-header .btn-close {
          right: -14px; }
          [dir="rtl"] .delete-account-modal .modal-content .modal-header .btn-close {
            right: unset;
            left: -14px; } }
      .delete-account-modal .modal-content .modal-header .btn-close:before {
        content: "\f00d";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 22px; }
  .delete-account-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .delete-account-modal .modal-content .modal-body h4 {
      font-weight: 500; }
  .delete-account-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    .delete-account-modal .modal-content .modal-footer button {
      margin: 0; }
      .delete-account-modal .modal-content .modal-footer button.modal-close-button {
        color: #fff;
        margin-right: 10px; }
        [dir="rtl"] .delete-account-modal .modal-content .modal-footer button.modal-close-button {
          margin-right: 0;
          margin-left: 10px; }

.payment-modal .modal-content {
  border: none; }
  .payment-modal .modal-content .modal-header {
    padding: 0;
    border: none; }
    .payment-modal .modal-content .modal-header .btn-close {
      width: 54px;
      height: 54px;
      top: -50px;
      right: -50px;
      line-height: 54px;
      position: absolute;
      text-decoration: none;
      text-align: center;
      color: #fff;
      background: 0 0;
      border: none;
      cursor: pointer;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear;
      opacity: 1; }
      @media (max-width: 575px) {
        .payment-modal .modal-content .modal-header .btn-close {
          right: -14px; }
          [dir="rtl"] .payment-modal .modal-content .modal-header .btn-close {
            right: unset;
            left: -14px; } }
      .payment-modal .modal-content .modal-header .btn-close:before {
        content: "\f00d";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 22px; }
  .payment-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .payment-modal .modal-content .modal-body h4 {
      font-weight: 500; }
  .payment-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    .payment-modal .modal-content .modal-footer button {
      margin: 0; }
      .payment-modal .modal-content .modal-footer button.modal-close-button {
        color: #fff;
        margin-right: 10px; }
        [dir="rtl"] .payment-modal .modal-content .modal-footer button.modal-close-button {
          margin-right: 0;
          margin-left: 10px; }

.add-address-modal .modal-content {
  border: none; }
  .add-address-modal .modal-content .modal-header {
    padding: 0;
    border: none; }
    .add-address-modal .modal-content .modal-header .btn-close {
      width: 54px;
      height: 54px;
      top: -50px;
      right: -50px;
      line-height: 54px;
      position: absolute;
      text-decoration: none;
      text-align: center;
      color: #fff;
      background: 0 0;
      border: none;
      cursor: pointer;
      -webkit-transition: all 0.2s linear;
      transition: all 0.2s linear;
      opacity: 1; }
      @media (max-width: 575px) {
        .add-address-modal .modal-content .modal-header .btn-close {
          right: -14px; }
          [dir="rtl"] .add-address-modal .modal-content .modal-header .btn-close {
            right: unset;
            left: -14px; } }
      .add-address-modal .modal-content .modal-header .btn-close:before {
        content: "\f00d";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 22px; }
  .add-address-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .add-address-modal .modal-content .modal-body h4 {
      font-weight: 500; }
  .add-address-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    .add-address-modal .modal-content .modal-footer button {
      margin: 0; }
      .add-address-modal .modal-content .modal-footer button.modal-close-button {
        color: #fff;
        margin-right: 10px; }
        [dir="rtl"] .add-address-modal .modal-content .modal-footer button.modal-close-button {
          margin-right: 0;
          margin-left: 10px; }

/**=====================
     title css start
==========================**/
.title {
  margin-bottom: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))); }
  .title.title1 h2 {
    font-size: calc(22px + (35 - 22) * ((100vw - 320px) / (1920 - 320)));
    position: relative;
    display: inline-block;
    padding-bottom: 16px; }
    .title.title1 h2:before {
      content: "";
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      bottom: 1.5px;
      width: 100%;
      height: 1px;
      background-color: #ddd; }
    .title.title1 h2:after {
      content: "";
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      bottom: -1px;
      width: 30%;
      height: 4px;
      background-color: var(--theme-color);
      border-radius: 50px; }
  .title.title1 p {
    margin: 20px auto 0;
    color: #212529;
    letter-spacing: 1px;
    width: 50%;
    line-height: 1.5; }
  .title.title-effect h2::after {
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  .title.title-1 {
    margin-bottom: 0;
    padding: 0 15px; }
  .title h5 {
    margin-bottom: 10px;
    margin-top: -2px;
    color: #7e7e7e; }

.title-2 {
  color: #212529; }
  .title-2 h2 {
    margin-top: -2px; }
  .title-2 h3 {
    margin-top: -2px; }
  .title-2 h5 {
    margin-bottom: 0;
    margin-top: 10px;
    color: #7e7e7e; }

.title-3 {
  margin-bottom: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))); }
  .title-3.title-border {
    border-bottom: 1px solid #f0f3f8; }
  .title-3 h2 {
    margin-top: -2px; }
  .title-3 h5 {
    margin-bottom: 0;
    margin-top: 10px; }

.gradient-title {
  background-image: linear-gradient(100deg, #3d3d3d, var(--theme-color));
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  -webkit-background-clip: text;
  cursor: pointer; }
  .gradient-title-1 {
    background-image: linear-gradient(100deg, white, var(--theme-color)); }

/**=====================
     ratio css start
==========================**/
.ratio_30 .bg-size:before {
  padding-top: 30%;
  content: "";
  display: block; }

.ratio_35 .bg-size:before {
  padding-top: 35%;
  content: "";
  display: block; }

.ratio_40 .bg-size:before {
  padding-top: 40%;
  content: "";
  display: block; }

.ratio_45 .bg-size:before {
  padding-top: 45%;
  content: "";
  display: block; }

.ratio2_1 .bg-size:before {
  padding-top: 50%;
  content: "";
  display: block; }

.ratio_55 .bg-size:before {
  padding-top: 55%;
  content: "";
  display: block; }

.ratio_59 .bg-size:before {
  padding-top: 59%;
  content: "";
  display: block; }

.ratio2_3 .bg-size:before {
  padding-top: 60%;
  content: "";
  display: block; }

.ratio3_2 .bg-size:before {
  padding-top: 66.66%;
  content: "";
  display: block; }

.ratio_90 .bg-size:before {
  padding-top: 93%;
  content: "";
  display: block; }

.ratio_landscape .bg-size:before {
  padding-top: 75%;
  content: "";
  display: block; }

.ratio_veg .bg-size:before {
  padding-top: 113%;
  content: "";
  display: block; }

.ratio_square .bg-size:before {
  padding-top: 100%;
  content: "";
  display: block; }

.ratio_asos .bg-size:before {
  padding-top: 127.7777778%;
  content: "";
  display: block; }

.ratio_small .bg-size:before {
  padding-top: 118%;
  content: "";
  display: block; }

.ratio_medium .bg-size:before {
  padding-top: 138%;
  content: "";
  display: block; }

.ratio_portrait .bg-size:before {
  padding-top: 150%;
  content: "";
  display: block; }

.ratio2_2 .bg-size:before {
  padding-top: 154.777778%;
  content: "";
  display: block; }

.ratio_2 .bg-size:before {
  padding-top: 163%;
  content: "";
  display: block; }

.ratio1_2 .bg-size:before {
  padding-top: 200%;
  content: "";
  display: block; }

/**=====================
     form css start
  ==========================**/
.form-control {
  font-size: 14px;
  padding: calc(8px + (14 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .form-control.subscribe-input {
    border: none;
    border-radius: 0; }
  [dir="rtl"] .form-control {
    text-align: right; }
  .form-control:focus {
    background-color: #eff2f7;
    border-color: #ced4da;
    -webkit-box-shadow: none;
            box-shadow: none;
    color: #212529; }

.form-select {
  font-size: 14px; }
  .form-select:focus {
    background-color: #c7c7c5;
    border-color: #ced4da;
    -webkit-box-shadow: none;
            box-shadow: none;
    color: #212529; }

.input-group .btn {
  z-index: 1; }

.checkbox_animated {
  cursor: pointer;
  position: relative;
  margin-right: 16px; }
  [dir="rtl"] .checkbox_animated {
    margin-right: 10px;
    margin-left: 16px; }
  .checkbox_animated:before {
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    -webkit-transform: rotate(-45deg) scale(0, 0);
            transform: rotate(-45deg) scale(0, 0);
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    z-index: 1;
    width: 12px;
    height: 6px;
    border: 2px solid var(--theme-color);
    border-top-style: none;
    border-right-style: none; }
  .checkbox_animated:after {
    content: "";
    position: absolute;
    top: -2px;
    left: 0;
    width: 21px;
    height: 21px;
    background: #fff;
    border: 2px solid #ddd;
    cursor: pointer; }
  .checkbox_animated:checked:before {
    -webkit-transform: rotate(-45deg) scale(1, 1);
            transform: rotate(-45deg) scale(1, 1); }

/**=====================
     slider css start
==========================**/
.slick-initialized .slick-arrow {
  z-index: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s; }
  .slick-initialized .slick-arrow:before {
    -webkit-transition: 0.5s;
    transition: 0.5s; }
  .slick-initialized .slick-arrow:hover {
    -webkit-transition: 0.5s;
    transition: 0.5s; }
    .slick-initialized .slick-arrow:hover:before {
      -webkit-transition: 0.5s;
      transition: 0.5s; }

.spacing-slider.slick-slider {
  margin: 0 -12px; }
  .spacing-slider.slick-slider .slick-list {
    margin: 0 -12px; }
    @media (max-width: 575px) {
      .spacing-slider.slick-slider .slick-list {
        margin: 0 -6px; } }
    .spacing-slider.slick-slider .slick-list .slick-slide > div {
      margin: 0 12px; }
      @media (max-width: 575px) {
        .spacing-slider.slick-slider .slick-list .slick-slide > div {
          margin: 0 6px; } }
  .spacing-slider.slick-slider.slick-dotted {
    margin-bottom: 0; }

.slick-slider .slick-list {
  margin: 0 -12px; }
  @media (max-width: 575px) {
    .slick-slider .slick-list {
      margin: 0 -6px; } }
  .slick-slider .slick-list .slick-slide > div {
    margin: 0 12px; }
    @media (max-width: 575px) {
      .slick-slider .slick-list .slick-slide > div {
        margin: 0 6px; } }

.slick-slider.slick-dotted {
  margin-bottom: 0; }

.slide-6 .slick-list {
  margin: 0; }

.classic-arrow .custom-arrow {
  position: absolute;
  bottom: 50px;
  z-index: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer; }
  @media (max-width: 991px) {
    .classic-arrow .custom-arrow {
      bottom: 90px; } }
  @media (max-width: 575px) {
    .classic-arrow .custom-arrow {
      bottom: 10px; } }
  .classic-arrow .custom-arrow:hover {
    color: var(--theme-color);
    -webkit-transition: 0.5s;
    transition: 0.5s; }
  .classic-arrow .custom-arrow i {
    font-size: 12px;
    vertical-align: 1px; }
    @media (max-width: 575px) {
      .classic-arrow .custom-arrow i {
        margin: 0 !important;
        padding: 8px;
        background-color: #fff; }
        .classic-arrow .custom-arrow i:hover {
          background-color: var(--theme-color);
          color: #fff; } }
  .classic-arrow .custom-arrow.prev {
    right: 20%; }
    [dir="rtl"] .classic-arrow .custom-arrow.prev i {
      margin-right: 16px !important;
      margin-left: 0 !important; }
    [dir="rtl"] .classic-arrow .custom-arrow.prev {
      right: unset;
      left: 7%; }
    @media (max-width: 991px) {
      .classic-arrow .custom-arrow.prev {
        right: unset;
        left: 5%; }
        [dir="rtl"] .classic-arrow .custom-arrow.prev {
          left: unset;
          right: 5%; } }
    @media (max-width: 575px) {
      .classic-arrow .custom-arrow.prev {
        right: 53% !important;
        left: unset !important;
        bottom: 20px; }
        [dir="rtl"] .classic-arrow .custom-arrow.prev {
          left: 10%;
          right: unset; } }
    @media (max-width: 360px) {
      .classic-arrow .custom-arrow.prev {
        right: 12%;
        left: unset; }
        [dir="rtl"] .classic-arrow .custom-arrow.prev {
          left: 12%;
          right: unset; } }
  .classic-arrow .custom-arrow.next {
    right: 13%; }
    [dir="rtl"] .classic-arrow .custom-arrow.next i {
      margin-left: 16px !important;
      margin-right: 0 !important; }
    [dir="rtl"] .classic-arrow .custom-arrow.next {
      right: unset;
      left: 13%; }
    @media (max-width: 1199px) {
      .classic-arrow .custom-arrow.next {
        right: 11%; }
        [dir="rtl"] .classic-arrow .custom-arrow.next {
          right: unset;
          left: 15%; } }
    @media (max-width: 991px) {
      .classic-arrow .custom-arrow.next {
        right: unset;
        left: 16%; }
        [dir="rtl"] .classic-arrow .custom-arrow.next {
          left: unset;
          right: 16%; } }
    @media (max-width: 767px) {
      .classic-arrow .custom-arrow.next {
        left: 20%; }
        [dir="rtl"] .classic-arrow .custom-arrow.next {
          left: unset;
          right: 20%; } }
    @media (max-width: 575px) {
      .classic-arrow .custom-arrow.next {
        left: unset;
        right: 3%; }
        [dir="rtl"] .classic-arrow .custom-arrow.next {
          left: 3%;
          right: unset; } }
    .classic-arrow .custom-arrow.next::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      border-left: 2px solid rgba(0, 0, 0, 0.1);
      left: -28px;
      top: 0; }
      [dir="rtl"] .classic-arrow .custom-arrow.next::before {
        right: 18px;
        left: unset; }
      @media (max-width: 1660px) {
        .classic-arrow .custom-arrow.next::before {
          display: none; } }
  .classic-arrow .custom-arrow span {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 16px; }
    @media (max-width: 767px) {
      .classic-arrow .custom-arrow span {
        font-size: 14px; } }
    @media (max-width: 575px) {
      .classic-arrow .custom-arrow span {
        display: none; } }

.classic-arrow-1 .custom-arrow {
  position: absolute;
  bottom: 50px;
  z-index: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer; }
  .classic-arrow-1 .custom-arrow:hover {
    color: var(--theme-color);
    -webkit-transition: 0.5s;
    transition: 0.5s; }
  .classic-arrow-1 .custom-arrow i {
    font-size: 12px;
    vertical-align: 1px; }
    @media (max-width: 575px) {
      .classic-arrow-1 .custom-arrow i {
        margin: 0 !important;
        padding: 8px;
        background-color: #fff; }
        .classic-arrow-1 .custom-arrow i:hover {
          background-color: var(--theme-color);
          color: #fff; } }
  .classic-arrow-1 .custom-arrow.prev {
    right: 20%; }
    [dir="rtl"] .classic-arrow-1 .custom-arrow.prev {
      right: unset !important;
      left: 6% !important; }
    @media (max-width: 575px) {
      [dir="rtl"] .classic-arrow-1 .custom-arrow.prev {
        left: unset !important;
        right: 51% !important; } }
    @media (max-width: 480px) {
      [dir="rtl"] .classic-arrow-1 .custom-arrow.prev {
        left: unset !important;
        right: 52% !important; } }
  .classic-arrow-1 .custom-arrow.next {
    right: 13%; }
    [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
      right: unset !important;
      left: 12% !important; }
    .classic-arrow-1 .custom-arrow.next::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      border-left: 2px solid rgba(0, 0, 0, 0.1);
      left: -28px;
      top: 0; }
      [dir="rtl"] .classic-arrow-1 .custom-arrow.next::before {
        right: -28px;
        left: unset;
        width: 8%; }
      @media (max-width: 1660px) {
        .classic-arrow-1 .custom-arrow.next::before {
          display: none; } }
    @media (max-width: 991px) {
      [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
        left: 16% !important; } }
    @media (max-width: 575px) {
      [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
        left: unset !important;
        right: 13% !important; } }
    @media (max-width: 480px) {
      [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
        left: unset !important;
        right: 44% !important; } }
  .classic-arrow-1 .custom-arrow span {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 16px; }
    @media (max-width: 767px) {
      .classic-arrow-1 .custom-arrow span {
        font-size: 14px; } }
    @media (max-width: 575px) {
      .classic-arrow-1 .custom-arrow span {
        display: none; } }

.light-arrow .slick-arrow,
.white-arrow .slick-arrow {
  border-radius: 100%;
  width: 40px;
  height: 40px; }
  @media (max-width: 991px) {
    .light-arrow .slick-arrow,
    .white-arrow .slick-arrow {
      width: 30px;
      height: 30px; } }
  .light-arrow .slick-arrow:before,
  .white-arrow .slick-arrow:before {
    font-size: 12px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900; }

.light-arrow .slick-prev,
.white-arrow .slick-prev {
  z-index: 1; }
  .light-arrow .slick-prev:before,
  .white-arrow .slick-prev:before {
    content: "\f053"; }

.light-arrow .slick-next:before,
.white-arrow .slick-next:before {
  content: "\f054"; }

.light-arrow .slick-arrow {
  background-color: #f0f3f8; }
  .light-arrow .slick-arrow:before {
    color: #232323; }
  .light-arrow .slick-arrow:hover {
    background-color: var(--theme-color); }
    .light-arrow .slick-arrow:hover:before {
      color: #fff; }

.bottom-space {
  margin-bottom: -4px; }

.white-arrow .slick-arrow {
  background-color: rgba(255, 255, 255, 0.2);
  width: 30px;
  height: 30px; }
  .white-arrow .slick-arrow:before {
    color: #fff; }
  .white-arrow .slick-arrow:hover, .white-arrow .slick-arrow:active, .white-arrow .slick-arrow:focus {
    background-color: #fff; }
    .white-arrow .slick-arrow:hover:before, .white-arrow .slick-arrow:active:before, .white-arrow .slick-arrow:focus:before {
      color: var(--theme-color); }

.category-slider .slick-prev {
  left: -120px; }

.category-slider .slick-next {
  right: unset;
  left: -80px; }

.brand-image img {
  margin: 0 auto; }

.dot-dark .slick-dots {
  bottom: unset;
  width: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  left: unset; }
  [dir="rtl"] .dot-dark .slick-dots {
    left: 0;
    right: unset; }
  .dot-dark .slick-dots li {
    width: auto;
    height: auto;
    display: block;
    margin: 5px; }
    .dot-dark .slick-dots li button {
      width: 10px;
      height: 10px;
      background: #232323;
      font-size: 10px;
      border-radius: 100%; }
      .dot-dark .slick-dots li button:before {
        display: none; }
    .dot-dark .slick-dots li.slick-active button {
      background-color: var(--theme-color); }

.image-show .slick-list {
  overflow: visible;
  height: auto !important; }

.image-show .slick-slide {
  float: none; }

[dir="rtl"] .poster-section-6 .image-show .slick-slide, [dir="rtl"]
.poster-section .image-show .slick-slide {
  float: none; }

.slick-lg-space .slick-list {
  margin: -5px -18px; }
  @media (max-width: 767px) {
    .slick-lg-space .slick-list {
      margin: -5px -10px; } }
  .slick-lg-space .slick-list .slick-slide > div {
    margin: 5px 18px; }
    @media (max-width: 767px) {
      .slick-lg-space .slick-list .slick-slide > div {
        margin: 5px 10px; } }

.black-slide .slick-list .slick-track .slick-slide > div {
  margin: 0 5px; }

.black-slide .slick-list .slick-track .slick-slide.slick-active .play-icon .fa-play {
  -webkit-filter: grayscale(100%) blur(1px);
          filter: grayscale(100%) blur(1px);
  opacity: 0.5; }

.black-slide .slick-list .slick-track .slick-slide.slick-active .play-icon:hover .fa-play {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
  opacity: 1; }

.black-slide .slick-list .slick-track .slick-slide.slick-active img {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }

.black-slide .slick-list .slick-track .slick-slide.slick-active:hover img {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
  opacity: 1; }

.black-slide .slick-list .slick-track .slick-slide img {
  -webkit-filter: grayscale(20%) blur(1px);
          filter: grayscale(20%) blur(1px);
  opacity: 0.8; }

.black-slide .slick-list .slick-track .slick-slide.slick-center img {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
  opacity: 1; }

.black-slide .slick-list .slick-track .slick-slide.slick-center .play-icon .fa-play {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
  opacity: 1; }

/**=====================
    Touchspin  CSS Start
==========================**/
.bootstrap-touchspin input.touchspin {
  padding: 0 12px; }

.bootstrap-touchspin .input-group .btn {
  padding: 0.5rem 1.75rem; }

.bootstrap-touchspin .input-group {
  font-family: Rubik, sans-serif; }
  .bootstrap-touchspin .input-group .btn {
    border-radius: 0 !important; }

.touchspin-vertical-tab {
  max-width: 60px;
  width: unset; }
  .touchspin-vertical-tab .touchspin-vertical {
    padding: 6px 12px; }
  .touchspin-vertical-tab .input-group .input-group-btn-vertical {
    position: relative;
    display: grid; }
    .touchspin-vertical-tab .input-group .input-group-btn-vertical .bootstrap-touchspin-down {
      margin-top: -2px; }
    .touchspin-vertical-tab .input-group .input-group-btn-vertical i {
      position: absolute;
      top: 4px;
      left: 7px;
      font-size: 10px;
      font-weight: 900; }
    .touchspin-vertical-tab .input-group .input-group-btn-vertical > .btn {
      display: block;
      float: none;
      width: 100%;
      max-width: 100%;
      padding: 9px;
      margin-left: -1px;
      position: relative;
      background: #fff;
      border-color: #ced4da; }

/**=====================
    Lazy Load css Start
==========================**/
.blur-up {
  -webkit-filter: blur(5px);
          filter: blur(5px);
  transition: filter 400ms, -webkit-filter 400ms; }
  .blur-up.lazyloaded {
    -webkit-filter: blur(0);
            filter: blur(0); }

/**=====================
     Breadcrumb css start
==========================**/
.breadcrumb-section {
  background-color: #eff2f7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  position: relative;
  z-index: 0; }
  .breadcrumb-section h3 {
    font-size: calc(20px + (26 - 20) * ((100vw - 320px) / (1920 - 320))); }
  .breadcrumb-section-1 {
    background-color: #e9e9e9; }
  .breadcrumb-section .breadcrumb-item.active {
    color: #7e7e7e; }
  .breadcrumb-section .breadcrumb {
    margin-bottom: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 10px; }
  .breadcrumb-section .circles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1; }
    .breadcrumb-section .circles li {
      position: absolute;
      display: block;
      list-style: none;
      width: 20px;
      height: 20px;
      background-color: var(--theme-color);
      -webkit-animation: animate 25s linear infinite;
              animation: animate 25s linear infinite;
      bottom: -150px;
      opacity: 0.2 !important; }
      .breadcrumb-section .circles li:nth-child(1) {
        left: 25%;
        width: 80px;
        height: 80px;
        -webkit-animation-delay: 0s;
                animation-delay: 0s; }
      .breadcrumb-section .circles li:nth-child(2) {
        left: 10%;
        width: 20px;
        height: 20px;
        -webkit-animation-delay: 2s;
                animation-delay: 2s;
        -webkit-animation-duration: 12s;
                animation-duration: 12s; }
      .breadcrumb-section .circles li:nth-child(3) {
        left: 70%;
        width: 20px;
        height: 20px;
        -webkit-animation-delay: 4s;
                animation-delay: 4s; }
      .breadcrumb-section .circles li:nth-child(4) {
        left: 40%;
        width: 60px;
        height: 60px;
        -webkit-animation-delay: 0s;
                animation-delay: 0s;
        -webkit-animation-duration: 18s;
                animation-duration: 18s; }
      .breadcrumb-section .circles li:nth-child(5) {
        left: 65%;
        width: 20px;
        height: 20px;
        -webkit-animation-delay: 0s;
                animation-delay: 0s; }
      .breadcrumb-section .circles li:nth-child(6) {
        left: 75%;
        width: 90px;
        height: 90px;
        -webkit-animation-delay: 3s;
                animation-delay: 3s; }
      .breadcrumb-section .circles li:nth-child(7) {
        left: 19%;
        width: 110px;
        height: 110px;
        -webkit-animation-delay: 7s;
                animation-delay: 7s; }
      .breadcrumb-section .circles li:nth-child(8) {
        left: 50%;
        width: 25px;
        height: 25px;
        -webkit-animation-delay: 15s;
                animation-delay: 15s;
        -webkit-animation-duration: 45s;
                animation-duration: 45s; }
      .breadcrumb-section .circles li:nth-child(9) {
        left: 20%;
        width: 15px;
        height: 15px;
        -webkit-animation-delay: 2s;
                animation-delay: 2s;
        -webkit-animation-duration: 35s;
                animation-duration: 35s; }
      .breadcrumb-section .circles li:nth-child(10) {
        left: 85%;
        width: 110px;
        height: 110px;
        -webkit-animation-delay: 0s;
                animation-delay: 0s;
        -webkit-animation-duration: 11s;
                animation-duration: 11s; }

@-webkit-keyframes animate {
  0% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
    opacity: 1;
    border-radius: 0; }
  100% {
    -webkit-transform: translateY(-1000px) rotate(720deg);
            transform: translateY(-1000px) rotate(720deg);
    opacity: 0;
    border-radius: 50%; } }

@keyframes animate {
  0% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
    opacity: 1;
    border-radius: 0; }
  100% {
    -webkit-transform: translateY(-1000px) rotate(720deg);
            transform: translateY(-1000px) rotate(720deg);
    opacity: 0;
    border-radius: 50%; } }

/**=====================
     header css start
==========================**/
.container-fluid-lg {
  padding: 0 112px; }
  @media (max-width: 1460px) {
    .container-fluid-lg {
      padding: 0 60px; } }
  @media (max-width: 1366px) {
    .container-fluid-lg {
      padding: 0 30px; } }
  @media (max-width: 1199px) {
    .container-fluid-lg {
      padding: 0 12px; } }

header .search-header {
  border-bottom: 1px solid #e5e5e5; }

header.nav-down.nav-up .navbar-searchbar {
  top: 0; }

header.nav-down.nav-up .main-menu {
  padding: 10px 0; }

header.nav-down .navbar-searchbar {
  position: fixed;
  top: -100px;
  left: 0;
  width: 100%;
  margin-top: 0;
  background-color: #fff;
  -webkit-box-shadow: 0px 4px 10px rgba(23, 32, 90, 0.15);
          box-shadow: 0px 4px 10px rgba(23, 32, 90, 0.15);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  z-index: 6; }

header .search-suggestion {
  height: 0px;
  max-height: 0;
  background-color: #fff;
  position: absolute;
  width: 100%;
  border-radius: 5px;
  top: 68px;
  overflow: auto;
  -webkit-transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
  transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
  z-index: 1; }
  @media (max-width: 767px) {
    header .search-suggestion {
      top: 56px; } }
  header .search-suggestion > ul {
    margin: -10px; }
    header .search-suggestion > ul > li {
      padding: 10px; }
  header .search-suggestion .product-cart {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    header .search-suggestion .product-cart img {
      height: 100px; }
    header .search-suggestion .product-cart .media-body {
      padding-left: 15px; }
      header .search-suggestion .product-cart .media-body a {
        color: #232323; }
      header .search-suggestion .product-cart .media-body .rating li i {
        font-size: 12px;
        color: #c3c3c3; }

header .main-menu {
  position: relative;
  padding: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 767px) {
    header .main-menu {
      padding: 10px 0; } }

header .onhover-div {
  right: 0; }
  [dir="rtl"] header .onhover-div {
    right: unset;
    left: 0; }

@media (max-width: 575px) {
  header .wislist-dropdown {
    display: none; } }

@media (max-width: 767px) {
  header .cart-dropdown:hover .onhover-div {
    opacity: 0;
    -webkit-transform: unset;
            transform: unset;
    visibility: hidden; } }

header .cart-dropdown .onhover-div::before {
  border-bottom: 7px solid #f0f3f8; }

@media (max-width: 767px) {
  header .cart-dropdown .onhover-div {
    position: fixed;
    top: 0 !important;
    height: 100vh;
    width: 290px;
    right: -290px;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    z-index: 4; } }

@media (max-width: 767px) {
  header .cart-dropdown.show .onhover-div {
    right: 0;
    -webkit-transition: 0.5s;
    transition: 0.5s; } }

header .cart-menu .cart-title {
  background-color: #f0f3f8;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  header .cart-menu .cart-title h6 {
    position: relative; }
    header .cart-menu .cart-title h6 .label {
      position: absolute;
      top: -4px;
      right: -9px;
      padding: 2px 6px; }
  [dir="rtl"] header .cart-menu .cart-title span i {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }

header .cart-menu .media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative; }
  header .cart-menu .media .btn-close {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 16px;
    background: none; }
  header .cart-menu .media img {
    width: 60px; }
  header .cart-menu .media .media-body {
    margin-left: 15px; }
    [dir="rtl"] header .cart-menu .media .media-body {
      margin-left: unset;
      margin-right: 15px; }
    header .cart-menu .media .media-body h6 {
      font-weight: 600; }
    header .cart-menu .media .media-body input {
      max-width: 60px;
      width: unset;
      height: auto;
      padding: 3px 8px;
      border-radius: 0; }
    header .cart-menu .media .media-body .qty-with-price {
      margin-top: 6px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }

header .cart-menu ul {
  padding-top: 10px; }
  header .cart-menu ul li {
    padding: 10px 20px;
    display: block; }
    @media (max-width: 767px) {
      header .cart-menu ul li:last-child {
        padding-bottom: 0; } }
  @media (max-width: 767px) {
    header .cart-menu ul {
      height: calc(100vh - 180px);
      overflow: auto;
      border-bottom: 1px solid #ced4da; } }

header .cart-btn {
  padding: 20px; }
  @media (max-width: 767px) {
    header .cart-btn {
      position: absolute;
      width: 100%;
      bottom: 0;
      left: 0;
      z-index: 1; } }
  header .cart-btn .cart-total {
    color: var(--theme-color);
    font-weight: 600;
    display: none; }
    @media (max-width: 767px) {
      header .cart-btn .cart-total {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-bottom: 20px; } }
  header .cart-btn .btn {
    padding: 8px 12px;
    font-size: 14px;
    width: 100%; }

header .wislist-empty {
  padding: 20px;
  text-align: center; }
  header .wislist-empty i {
    font-size: 40px;
    color: var(--theme-color);
    margin-bottom: 15px; }

header .search-full {
  background-color: #fff;
  position: absolute;
  right: 0;
  z-index: 1;
  height: 0;
  width: 0;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  header .search-full .input-group {
    border: 1px solid #f0f3f8; }
    header .search-full .input-group .input-group-text {
      background-color: transparent;
      border: none; }
      header .search-full .input-group .input-group-text.close-search {
        cursor: pointer; }
      header .search-full .input-group .input-group-text svg {
        height: 18px; }
    header .search-full .input-group input {
      border: none; }
  header .search-full.open {
    width: 100%;
    height: 100%;
    -webkit-animation: zoomIn 0.5s ease-in-out;
            animation: zoomIn 0.5s ease-in-out;
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  header .search-full.show .search-suggestion {
    padding: 10px;
    border: 1px solid #f0f3f8;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    max-height: 500px;
    -webkit-transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
    transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99); }

header .search-box1 {
  position: relative;
  width: 55%;
  right: 0;
  z-index: 1;
  height: 100%;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  header .search-box1 .form-control {
    border-radius: 0;
    background-color: #fff; }
  header .search-box1 .twitter-typeahead {
    width: calc(100% - 50px); }
  header .search-box1 .tt-menu {
    display: block;
    width: 100%;
    background-color: #fff;
    border: unset !important;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
            box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    max-height: 350px;
    overflow: auto;
    top: 55px !important;
    border-radius: 5px;
    padding: 8px 0; }
    header .search-box1 .tt-menu .tt-dataset-states {
      padding: 10px 20px; }
      header .search-box1 .tt-menu .tt-dataset-states .tt-selectable {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        margin-bottom: 10px; }
        header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .image-section {
          width: 100%;
          max-width: 100px;
          margin-right: 20px; }
          header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .image-section img {
            width: 100%; }
        header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .description-section {
          width: calc(100% - 20px); }
          header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .description-section h4 {
            margin-bottom: 5px; }
  @media (max-width: 1660px) {
    header .search-box1 {
      width: 48%; } }
  @media (max-width: 1366px) {
    header .search-box1 {
      width: 40%; } }
  @media (max-width: 1199px) {
    header .search-box1 {
      width: 30%; } }
  header .search-box1 .form-control:focus {
    border-color: #ced4da;
    background-color: #fff; }
  header .search-box1.open {
    width: 100%;
    height: 100%;
    -webkit-animation: zoomIn 0.5s ease-in-out;
            animation: zoomIn 0.5s ease-in-out;
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  header .search-box1.show .search-suggestion {
    top: 100%;
    padding: 10px;
    border: 1px solid #f0f3f8;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    max-height: 500px;
    -webkit-transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
    transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99); }
  header .search-box1 .input-group-text {
    color: #fff;
    border-radius: 0; }
    header .search-box1 .input-group-text .feather {
      color: #fff; }

header .profile-dropdown {
  min-width: 160px; }
  header .profile-dropdown ul {
    padding: 10px 0; }
    header .profile-dropdown ul li {
      display: block;
      padding: 5px 20px; }

.brand-logo .svg-icon {
  width: 25px;
  height: 25px;
  margin-right: 5px;
  -webkit-animation-name: spinner;
          animation-name: spinner;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-duration: 3s;
          animation-duration: 3s;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d; }
  [dir="rtl"] .brand-logo .svg-icon {
    margin-right: 0;
    margin-left: 5px; }
  .brand-logo .svg-icon .fill-color {
    fill: var(--theme-color); }

@-webkit-keyframes spinner {
  from {
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg); }
  to {
    -webkit-transform: rotateY(-360deg);
            transform: rotateY(-360deg); } }

@keyframes spinner {
  from {
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg); }
  to {
    -webkit-transform: rotateY(-360deg);
            transform: rotateY(-360deg); } }

.category-menu {
  position: relative; }
  .category-menu .category-dropdown {
    padding: 20px; }
    .category-menu .category-dropdown ul li {
      padding: 10px 0;
      display: block; }
      .category-menu .category-dropdown ul li a {
        color: #232323;
        text-transform: capitalize; }
        .category-menu .category-dropdown ul li a:hover, .category-menu .category-dropdown ul li a:focus, .category-menu .category-dropdown ul li a:active, .category-menu .category-dropdown ul li a.active {
          color: var(--theme-color); }

.close-btn {
  padding: 20px;
  font-size: 18px;
  color: #232323;
  font-weight: 500;
  text-transform: uppercase;
  border-bottom: 1px solid #ced4da;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .close-btn i {
    font-size: 14px; }

.mobile-menu {
  position: fixed;
  bottom: 0;
  padding: 10px;
  width: 100%;
  background-color: #fff;
  z-index: 3;
  -webkit-box-shadow: 0 2px 7px 3px rgba(168, 168, 168, 0.2);
          box-shadow: 0 2px 7px 3px rgba(168, 168, 168, 0.2); }
  [dir="rtl"] .mobile-menu {
    left: 0; }
  .mobile-menu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    [dir="rtl"] .mobile-menu ul {
      padding: 0; }
    .mobile-menu ul li {
      width: 100%;
      text-align: center; }
      .mobile-menu ul li a {
        display: block;
        color: rgba(35, 35, 35, 0.4); }
        @media (max-width: 360px) {
          .mobile-menu ul li a {
            font-size: 13px; } }
        .mobile-menu ul li a.active, .mobile-menu ul li a:hover {
          color: var(--theme-color); }
        .mobile-menu ul li a svg {
          display: block;
          margin: 0 auto;
          stroke-width: 1.5px; }
          @media (max-width: 360px) {
            .mobile-menu ul li a svg {
              height: 20px; } }
        .mobile-menu ul li a span {
          margin-top: 5px; }

@media (min-width: 1200px) {
  .category-menu {
    position: relative; }
    .category-menu .category-dropdown {
      top: 70px;
      opacity: 0;
      visibility: hidden;
      position: absolute;
      z-index: 8;
      background-color: #fff;
      -webkit-transition: all linear 0.3s;
      transition: all linear 0.3s;
      min-width: 250px;
      -webkit-box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
              box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07); }
      .category-menu .category-dropdown ul li.submenu > a {
        position: relative;
        display: block; }
        .category-menu .category-dropdown ul li.submenu > a::after {
          position: absolute;
          font-family: "Font Awesome 5 Free";
          content: "\f054";
          right: 0;
          font-weight: 600;
          top: 50%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          font-size: 11px; }
          [dir="rtl"] .category-menu .category-dropdown ul li.submenu > a::after {
            right: unset;
            left: 0;
            -webkit-transform: translateY(-50%) rotate(180deg);
                    transform: translateY(-50%) rotate(180deg); }
      .category-menu .category-dropdown ul li.submenu .category-mega-menu {
        position: absolute;
        padding: 20px;
        opacity: 0;
        visibility: hidden;
        margin-left: 15px;
        background-color: #fff;
        -webkit-transition: 0.5s;
        transition: 0.5s;
        left: 95%;
        -webkit-box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
                box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
        top: 0;
        height: 100%; }
        .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category {
          margin-bottom: 15px; }
        .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu ul li {
          padding: 5px 0; }
      .category-menu .category-dropdown ul li.submenu:hover .category-mega-menu {
        left: 100%;
        opacity: 1;
        visibility: visible;
        -webkit-transition: 0.5s;
        transition: 0.5s; }
        [dir="rtl"] .category-menu .category-dropdown ul li.submenu:hover .category-mega-menu {
          right: unset;
          left: 100%; }
    .category-menu:hover .category-dropdown {
      top: 50px;
      opacity: 1;
      -webkit-transform: translateY(0px);
              transform: translateY(0px);
      visibility: visible; } }

@media (min-width: 1200px) {
  .category-menu .category-dropdown ul li.submenu .category-mega-menu {
    min-width: 720px; } }

@media (min-width: 1366px) {
  .category-menu .category-dropdown ul li.submenu .category-mega-menu {
    min-width: 850px; } }

.category-menu .category-dropdown .title-category h6 {
  font-size: 14px; }

@media (max-width: 1199px) {
  header .category-dropdown {
    position: fixed;
    background-color: #fff;
    width: 300px;
    border-radius: 0;
    border: 1px solid #ced4da;
    top: 0;
    height: 100vh;
    left: -300px;
    z-index: 99;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    overflow: scroll;
    padding: 0 !important; }
    header .category-dropdown.open {
      left: 0; }
  .category-menu .category-dropdown ul li {
    position: relative;
    letter-spacing: 0.8px;
    line-height: 1; }
    .category-menu .category-dropdown ul li.submenu a .according-menu {
      right: 0; }
      [dir="rtl"] .category-menu .category-dropdown ul li.submenu a .according-menu {
        right: unset;
        left: 0; }
    .category-menu .category-dropdown ul li.submenu .category-mega-menu {
      padding: 0 15px; }
      .category-menu .category-dropdown ul li.submenu .category-mega-menu > li {
        padding-bottom: 0; }
      .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category {
        position: relative;
        padding: 6px 0; }
        .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category h6 {
          font-weight: 400; }
        .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category .according-menu {
          top: 8px;
          right: 0; }
      .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu ul {
        padding: 0 15px; }
        .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu ul li {
          padding: 6px 0; }
  .category-menu .category-dropdown > ul {
    padding: 20px 15px; }
    .category-menu .category-dropdown > ul > li > a {
      font-weight: 500;
      font-size: 14px;
      text-transform: uppercase; }
  .category-menu .category-banner {
    display: none; } }

.header-style-2.black-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1; }

.header-style-2 .main-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }
  @media (max-width: 1199px) {
    .header-style-2 .main-menu nav {
      margin-left: 15px; }
      [dir="rtl"] .header-style-2 .main-menu nav {
        margin-right: 15px !important;
        margin-left: unset; } }
  .header-style-2 .main-menu .menu-left {
    margin-right: calc(30px + (60 - 30) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .header-style-2 .main-menu .menu-left {
      margin-right: unset !important;
      margin-left: calc(30px + (60 - 30) * ((100vw - 320px) / (1920 - 320))); }
    @media (max-width: 1199px) {
      .header-style-2 .main-menu .menu-left {
        margin-right: 0; }
        [dir="rtl"] .header-style-2 .main-menu .menu-left {
          margin-left: 0; } }
  .header-style-2 .main-menu .menu-right {
    margin-left: auto; }
    [dir="rtl"] .header-style-2 .main-menu .menu-right {
      margin-left: unset;
      margin-right: auto; }
      @media (max-width: 1199px) {
        [dir="rtl"] .header-style-2 .main-menu .menu-right {
          margin-left: 30px; }
          [dir="rtl"] [dir="rtl"] .header-style-2 .main-menu .menu-right {
            margin-left: unset;
            margin-right: 30px; } }
      @media (max-width: 575px) {
        [dir="rtl"] .header-style-2 .main-menu .menu-right {
          margin-left: 0; }
          [dir="rtl"] [dir="rtl"] .header-style-2 .main-menu .menu-right {
            margin-left: unset;
            margin-right: 0; } }
      [dir="rtl"] .header-style-2 .main-menu .menu-right > ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li a {
          color: #232323; }
          [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li a:hover {
            color: var(--theme-color); }
        [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li svg {
          width: 20px;
          cursor: pointer; }
        [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li .btn {
          font-size: 14px; }
          [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li .btn svg {
            width: 24px; }
            @media (max-width: 360px) {
              [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li .btn svg {
                width: 18px; } }
        [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
          margin-left: 30px; }
          [dir="rtl"] [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
            margin-left: unset !important;
            margin-right: 30px; }
          @media (max-width: 991px) {
            [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
              margin-left: 20px; }
              [dir="rtl"] [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
                margin-right: 20px; } }
          @media (max-width: 575px) {
            [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
              margin-left: 10px; }
              [dir="rtl"] [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
                margin-right: 10px; } }
    .header-style-2 .main-menu .menu-right > ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .header-style-2 .main-menu .menu-right > ul > li a {
        color: #232323; }
        .header-style-2 .main-menu .menu-right > ul > li a:hover {
          color: var(--theme-color); }
      .header-style-2 .main-menu .menu-right > ul > li svg {
        width: 20px;
        cursor: pointer; }
      .header-style-2 .main-menu .menu-right > ul > li .btn {
        font-size: 14px; }
        .header-style-2 .main-menu .menu-right > ul > li .btn svg {
          width: 24px; }
          @media (max-width: 360px) {
            .header-style-2 .main-menu .menu-right > ul > li .btn svg {
              width: 18px; } }
      .header-style-2 .main-menu .menu-right > ul > li + li {
        margin-left: 30px; }
        [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
          margin-left: unset !important;
          margin-right: 30px; }
        @media (max-width: 991px) {
          .header-style-2 .main-menu .menu-right > ul > li + li {
            margin-left: 20px; }
            [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
              margin-right: 20px; } }
        @media (max-width: 575px) {
          .header-style-2 .main-menu .menu-right > ul > li + li {
            margin-left: 10px; }
            [dir="rtl"] .header-style-2 .main-menu .menu-right > ul > li + li {
              margin-right: 10px; } }
  .header-style-2 .main-menu .wislist-dropdown {
    margin-right: 8px; }
    [dir="rtl"] .header-style-2 .main-menu .wislist-dropdown {
      margin-right: unset;
      margin-left: 8px; }
  @media (max-width: 360px) {
    .header-style-2 .main-menu .cart-dropdown button span {
      display: none; } }
  @media (max-width: 360px) {
    .header-style-2 .main-menu .cart-dropdown button .pe-2 {
      padding: 0 !important; } }
  .header-style-2 .main-menu .cart-media .label {
    padding: 0;
    width: 18px;
    height: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 10px;
    text-align: center;
    position: absolute;
    right: -9px;
    top: -10px; }

/**=====================
     nav css start
==========================**/
header .main-navbar {
  text-align: center; }
  header .main-navbar .nav-menu {
    display: inline-block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    direction: ltr;
    text-align: left;
    vertical-align: middle; }
    [dir="rtl"] header .main-navbar .nav-menu {
      text-align: right; }
    header .main-navbar .nav-menu > li {
      position: relative;
      float: left;
      display: block; }
      [dir="rtl"] header .main-navbar .nav-menu > li {
        float: right; }
      header .main-navbar .nav-menu > li + li + li {
        margin-left: 30px; }
        [dir="rtl"] header .main-navbar .nav-menu > li + li + li {
          margin-left: unset;
          margin-right: 30px; }
        @media (max-width: 1199px) {
          header .main-navbar .nav-menu > li + li + li {
            margin-left: 0; }
            [dir="rtl"] header .main-navbar .nav-menu > li + li + li {
              margin-left: unset;
              margin-right: 0; } }
      header .main-navbar .nav-menu > li > a {
        display: block;
        color: #232323;
        font-size: 14px;
        font-weight: 500;
        text-decoration: none;
        text-transform: uppercase;
        padding: 0;
        position: relative;
        border-radius: 15px;
        letter-spacing: 0.8px; }
      header .main-navbar .nav-menu > li.active > a {
        background-color: rgba(35, 35, 35, 0.1); }
      header .main-navbar .nav-menu > li .nav-submenu {
        position: absolute;
        left: 0;
        z-index: 1;
        -webkit-box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
                box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
        padding: 15px 0;
        background: #fff;
        width: 300px !important; }
        [dir="rtl"] header .main-navbar .nav-menu > li .nav-submenu {
          left: unset;
          right: 0; }
        header .main-navbar .nav-menu > li .nav-submenu li {
          border: 0;
          float: none;
          position: relative;
          display: block;
          margin: 5px 0; }
          header .main-navbar .nav-menu > li .nav-submenu li a {
            border: 0 !important;
            background: transparent;
            color: #212529;
            border-radius: 0 !important;
            font-size: 14px;
            text-transform: capitalize;
            padding: 3px 25px 3px 40px;
            display: block;
            letter-spacing: 0.07em;
            line-height: 1.9;
            -webkit-transition: all 0.5s ease;
            transition: all 0.5s ease;
            position: relative; }
            [dir="rtl"] header .main-navbar .nav-menu > li .nav-submenu li a {
              padding: 3px 40px 3px 25px; }
            header .main-navbar .nav-menu > li .nav-submenu li a span {
              padding: 0px 10px;
              border-radius: 5px;
              font-size: 12px;
              color: var(--theme-color);
              margin-left: 10px;
              -webkit-box-shadow: 0 8px 15px -8px var(--badge-color);
                      box-shadow: 0 8px 15px -8px var(--badge-color);
              margin-left: 8px;
              position: relative; }
              header .main-navbar .nav-menu > li .nav-submenu li a span::before {
                content: "";
                position: absolute;
                width: 100%;
                height: 100%;
                top: 0;
                left: 0;
                background-color: var(--theme-color);
                opacity: 0.07; }
              header .main-navbar .nav-menu > li .nav-submenu li a span.tren-budge {
                color: #212529;
                background: #eff2f7; }
              header .main-navbar .nav-menu > li .nav-submenu li a span.top-budge {
                color: #eff2f7;
                background-color: #7e7e7e; }
            header .main-navbar .nav-menu > li .nav-submenu li a .label {
              font-size: 12px;
              color: #ff0000;
              position: absolute;
              padding: 0 0 0 3px; }
            header .main-navbar .nav-menu > li .nav-submenu li a.menu-title-level1:after, header .main-navbar .nav-menu > li .nav-submenu li a.submenu-title:after {
              opacity: 1; }
            header .main-navbar .nav-menu > li .nav-submenu li a.arrow-cls:after {
              opacity: 0.8; }
            header .main-navbar .nav-menu > li .nav-submenu li a:hover {
              margin-left: 3px;
              color: var(--theme-color) !important; }
          header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu {
            position: absolute;
            width: 200px;
            right: -200px;
            top: 0;
            background: #fff;
            border: none;
            padding: 15px 0 15px 0;
            -webkit-box-shadow: 0 0 1px 0 #ebebeb;
                    box-shadow: 0 0 1px 0 #ebebeb; }
      header .main-navbar .nav-menu > li .mega-menu-container {
        position: absolute;
        left: 0;
        z-index: 4;
        -webkit-box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
                box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
        padding: 30px;
        background: #fff;
        width: 100%;
        border-radius: 4px; }
        header .main-navbar .nav-menu > li .mega-menu-container.poster-bg-image {
          background-image: url(../images/voxo.png);
          background-position: center;
          background-repeat: no-repeat;
          background-size: cover;
          overflow: hidden; }
          @media (max-width: 1199px) {
            header .main-navbar .nav-menu > li .mega-menu-container.poster-bg-image {
              background-image: unset; } }
          header .main-navbar .nav-menu > li .mega-menu-container.poster-bg-image .floating-img {
            position: absolute;
            top: 0;
            right: 0;
            width: 30%;
            height: 60vh;
            animation: floating 110s linear infinite reverse;
            background-repeat: repeat-x !important; }
        header .main-navbar .nav-menu > li .mega-menu-container .mega-box {
          width: 16%; }
          @media (max-width: 1199px) {
            header .main-navbar .nav-menu > li .mega-menu-container .mega-box {
              width: 100%; } }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box a .label {
            font-size: 12px;
            color: #ff0000;
            position: absolute;
            padding: 0 0 0 3px; }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title h5 {
            font-weight: 500;
            text-transform: capitalize;
            font-size: 14px;
            margin-bottom: 14px; }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content {
            -webkit-box-shadow: none;
                    box-shadow: none;
            background-color: transparent;
            position: relative;
            display: block;
            padding: 0; }
            header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li {
              border: none;
              float: none;
              position: relative;
              display: block;
              margin: 5px 0; }
              header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a {
                border: 0 !important;
                background: transparent;
                color: #212529;
                border-radius: 0 !important;
                font-size: 14px;
                text-transform: capitalize;
                padding: 3px 0;
                display: block;
                letter-spacing: 0.07em;
                line-height: 1.9;
                position: relative; }
                @media (max-width: 1199px) {
                  header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a {
                    padding: 0;
                    letter-spacing: 0.03em; } }
                header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a span {
                  padding: 0px 10px;
                  border-radius: 5px;
                  font-size: 12px;
                  color: var(--theme-color);
                  background: rgba(226, 36, 84, 0.07);
                  -webkit-box-shadow: 0 8px 15px -8px var(--badge-color);
                          box-shadow: 0 8px 15px -8px var(--badge-color);
                  margin-left: 8px; }
                  header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a span.tren-budge {
                    color: #212529;
                    background: #eff2f7; }
                  header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a span.top-budge {
                    color: #eff2f7;
                    background-color: #7e7e7e; }
                header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a img {
                  width: 100%; }
                header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a:hover {
                  margin-left: 4px;
                  color: var(--theme-color) !important; }
                header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image {
                  width: 100%;
                  height: 250px;
                  overflow: hidden; }
                  header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image img {
                    -webkit-transition: all 0.3s ease;
                    transition: all 0.3s ease; }
                    @media (max-width: 1199px) {
                      header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image img {
                        -webkit-filter: blur(0);
                                filter: blur(0);
                        height: 180px; } }
                  header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image:hover {
                    margin-left: 0; }
                    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image:hover img {
                      -webkit-filter: blur(0);
                              filter: blur(0);
                      margin-left: 0; }
              header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li.highlight-link {
                position: relative; }
                header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li.highlight-link i {
                  color: var(--theme-color); }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section + .link-section {
            margin-top: 25px; }
      header .main-navbar .nav-menu > li.mega-menu {
        position: unset; }
        header .main-navbar .nav-menu > li.mega-menu.home-menu .mega-menu-container .mega-box .link-section ul {
          float: none;
          position: relative;
          display: block;
          margin: 5px 0;
          padding: 0;
          -webkit-box-shadow: none;
                  box-shadow: none; }
        header .main-navbar .nav-menu > li.mega-menu.home-menu ul li {
          width: 100%; }
          header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image {
            width: 100%;
            height: 100%;
            overflow: hidden;
            display: block;
            padding: 0; }
            @media (max-width: 1199px) {
              header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image {
                height: 180px; } }
            header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image img {
              width: 100%;
              -webkit-transition: all 0.3s ease;
              transition: all 0.3s ease; }
              @media (max-width: 1199px) {
                header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image img {
                  -webkit-filter: blur(0);
                          filter: blur(0); } }
            header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image:hover {
              margin-left: 0; }
              header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image:hover img {
                -webkit-filter: blur(0);
                        filter: blur(0);
                margin-left: 0; }
        header .main-navbar .nav-menu > li.mega-menu.home-menu .megamenu-image-title {
          cursor: pointer;
          padding: 10px;
          text-align: center; }
          @media (max-width: 1199px) {
            header .main-navbar .nav-menu > li.mega-menu.home-menu .megamenu-image-title {
              text-align: center;
              margin-bottom: 20px; } }

@media (min-width: 1200px) {
  .responsive-btn {
    display: none; }
  header .main-navbar .nav-menu > li .nav-submenu {
    width: 250px;
    opacity: 0;
    visibility: hidden;
    border-radius: 5px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    header .main-navbar .nav-menu > li .nav-submenu a .sub-arrow {
      position: absolute;
      right: 20px;
      top: 7px;
      color: rgba(0, 0, 0, 0.75);
      font-size: 10px;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
    header .main-navbar .nav-menu > li .nav-submenu li .level1 {
      display: none;
      border-radius: 4px; }
      header .main-navbar .nav-menu > li .nav-submenu li .level1 li .level2 {
        display: none;
        border-radius: 4px; }
        header .main-navbar .nav-menu > li .nav-submenu li .level1 li .level2 li .level3 {
          display: none; }
        header .main-navbar .nav-menu > li .nav-submenu li .level1 li .level2 li:hover .level3 {
          display: block; }
      header .main-navbar .nav-menu > li .nav-submenu li .level1 li:hover .level2 {
        display: block; }
    header .main-navbar .nav-menu > li .nav-submenu li:hover .level1 {
      display: block; }
    header .main-navbar .nav-menu > li .nav-submenu li a:hover .sub-arrow {
      right: 16px;
      color: #212529;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
  header .main-navbar .nav-menu > li.dropdown .menu-title {
    position: relative;
    padding-right: 18px; }
    header .main-navbar .nav-menu > li.dropdown .menu-title::after {
      position: absolute;
      content: "\f078";
      font-family: "Font Awesome 5 Free";
      right: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      font-weight: 600;
      font-size: 12px; }
  header .main-navbar .nav-menu > li .mega-menu-container {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  header .main-navbar .nav-menu > li:hover .nav-submenu {
    opacity: 1;
    z-index: 4;
    visibility: visible;
    margin-top: 28px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  header .main-navbar .nav-menu > li:hover .mega-menu-container {
    opacity: 1;
    visibility: visible;
    margin-top: 28px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  .toggle-nav {
    display: none; }
  .mobile-back {
    display: none !important; } }

@media (max-width: 1199px) {
  header .main-navbar .nav-menu {
    position: fixed;
    background-color: #fff;
    width: 300px;
    border-radius: 0;
    padding-bottom: 155px;
    top: 0;
    height: 100vh;
    right: -300px;
    z-index: 99;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    overflow-y: scroll;
    overflow-x: hidden; }
    header .main-navbar .nav-menu.opennav {
      right: 0; }
    header .main-navbar .nav-menu .back-btn {
      margin-bottom: 10px; }
      header .main-navbar .nav-menu .back-btn .mobile-back {
        cursor: pointer; }
        header .main-navbar .nav-menu .back-btn .mobile-back i {
          font-size: 14px;
          -webkit-transform: rotate(180deg);
                  transform: rotate(180deg); }
    header .main-navbar .nav-menu > li {
      display: block;
      float: none;
      width: 100%;
      padding: 0; }
      header .main-navbar .nav-menu > li:nth-child(n + 2) {
        border-bottom: 1px solid rgba(221, 221, 221, 0.5);
        margin-bottom: 10px;
        padding-bottom: 10px; }
      header .main-navbar .nav-menu > li a {
        padding: 10px 15px;
        position: relative; }
        header .main-navbar .nav-menu > li a .sub-arrow {
          right: 20px;
          position: absolute; }
          header .main-navbar .nav-menu > li a .sub-arrow:before {
            content: "+";
            font-family: inherit;
            position: relative; }
      header .main-navbar .nav-menu > li > ul li a .according-menu {
        top: 2px; }
      header .main-navbar .nav-menu > li > ul li ul li a .according-menu {
        top: 1px; }
      header .main-navbar .nav-menu > li .nav-submenu {
        width: 100%;
        padding: 0;
        position: relative;
        display: none;
        -webkit-box-shadow: none;
                box-shadow: none; }
        header .main-navbar .nav-menu > li .nav-submenu li a {
          position: relative; }
          header .main-navbar .nav-menu > li .nav-submenu li a:after {
            content: "";
            position: absolute;
            top: 50%;
            -webkit-transform: translateY(-50%);
                    transform: translateY(-50%);
            left: 20px;
            width: 3px;
            height: 3px;
            border-radius: 50%;
            background-color: #212529; }
            [dir="rtl"] header .main-navbar .nav-menu > li .nav-submenu li a:after {
              left: unset;
              right: 20px; }
          header .main-navbar .nav-menu > li .nav-submenu li a:hover::after {
            background-color: var(--theme-color); }
        header .main-navbar .nav-menu > li .nav-submenu.opensubmenu {
          display: block; }
        header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu {
          display: none;
          position: relative;
          right: 0;
          width: 100%;
          padding: 0;
          -webkit-box-shadow: none;
                  box-shadow: none; }
          header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu.submenu-content.level2 li a {
            padding: 0 60px; }
          header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu.submenu-content.level2 .level3 li a {
            padding: 0 70px; }
          header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu.opensubchild {
            display: block; }
          header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu li a {
            padding: 0 45px; }
      header .main-navbar .nav-menu > li .mega-menu-container {
        display: none;
        padding: 0;
        position: relative;
        -webkit-box-shadow: none;
                box-shadow: none; }
        header .main-navbar .nav-menu > li .mega-menu-container.opensubmenu {
          display: block; }
        header .main-navbar .nav-menu > li .mega-menu-container .mega-box {
          width: 100%;
          padding: 0; }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title {
            position: relative; }
            header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title h5 {
              margin-bottom: 0;
              font-weight: 400;
              line-height: 1.9;
              padding: 2px 25px; }
            header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title .according-menu {
              top: 7px; }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content {
            display: none; }
            header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content.opensubmegamenu {
              display: block;
              padding: 0 45px; }
            header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a {
              line-height: 1.9; }
              header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a:hover {
                margin-left: 0; }
                header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a:hover:after {
                  display: none; }
          header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section + .link-section {
            margin-top: 0; }
      header .main-navbar .nav-menu > li .nav-link.active {
        background-color: transparent;
        -webkit-box-shadow: none;
                box-shadow: none;
        color: #212529;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease; }
        header .main-navbar .nav-menu > li .nav-link.active:hover {
          color: var(--theme-color);
          -webkit-transition: all 0.5s ease;
          transition: all 0.5s ease; }
    header .main-navbar .nav-menu .mobile-poster {
      border-bottom: none !important;
      margin: 0 !important;
      position: fixed;
      bottom: 0;
      right: -410px;
      width: 300px;
      padding: 20px !important;
      background-color: #eff2f7;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      header .main-navbar .nav-menu .mobile-poster img {
        width: 50px; }
      header .main-navbar .nav-menu .mobile-poster .mobile-contain {
        margin-left: 15px; }
        header .main-navbar .nav-menu .mobile-poster .mobile-contain h5 {
          font-weight: 600;
          font-size: 15px; }
        header .main-navbar .nav-menu .mobile-poster .mobile-contain p {
          font-size: 13px;
          margin: 7px 0; }
  header .menu nav {
    margin-left: auto;
    margin-right: 30px; }
  .mega-box .link-section .demo ul li a span img {
    top: 30px;
    right: -60px; }
  .mega-box.col {
    -ms-flex-preferred-size: unset;
        flex-basis: unset; }
  .according-menu {
    position: absolute;
    right: 20px;
    top: 10px; }
    [dir="rtl"] .according-menu {
      right: unset;
      left: 20px; } }

/**=====================
     home section css start
==========================**/
.home-section {
  overflow: hidden; }
  .home-section .home-slider {
    width: 100%;
    height: 736px;
    position: relative; }
    [dir="rtl"] .home-section .home-slider {
      direction: rtl; }
    @media (max-width: 1199px) {
      .home-section .home-slider {
        height: 600px; } }
    @media (max-width: 991px) {
      .home-section .home-slider {
        background-position: left !important; }
        [dir="rtl"] .home-section .home-slider {
          background-position: right !important; } }
    @media (max-width: 575px) {
      .home-section .home-slider {
        height: 370px; } }
    @media (max-width: 360px) {
      .home-section .home-slider {
        height: 300px; } }
  .home-section .home-wrap {
    height: 100%; }
    .home-section .home-wrap h4 {
      font-size: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
      margin-top: -4px; }
      @media (max-width: 1199px) {
        .home-section .home-wrap h4 {
          font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1199 - 320))); } }
    .home-section .home-wrap h6 {
      color: #212529; }
    .home-section .home-wrap p {
      font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.5;
      color: #212529; }
      @media (max-width: 1660px) {
        .home-section .home-wrap p {
          max-width: 90%; } }
      @media (max-width: 1366px) {
        .home-section .home-wrap p {
          max-width: 80%; } }
      @media (max-width: 991px) {
        .home-section .home-wrap p {
          max-width: 89%; } }
    .home-section .home-wrap .discover-block {
      margin-top: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320))); }
      [dir="rtl"] .home-section .home-wrap .discover-block {
        text-align: right; }
      @media (max-width: 480px) {
        .home-section .home-wrap .discover-block {
          margin-top: 10px; } }
      .home-section .home-wrap .discover-block .d-flex {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
      .home-section .home-wrap .discover-block .play-icon {
        width: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
        height: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
        border-radius: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        color: #fff;
        font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
        position: relative;
        z-index: 1; }
        .home-section .home-wrap .discover-block .play-icon::before {
          content: "";
          position: absolute;
          width: calc(100% + 10px);
          height: calc(100% + 10px);
          background-color: var(--theme-color);
          border-radius: 100%;
          opacity: 0.1;
          left: -5px;
          top: -5px;
          z-index: -1; }
        .home-section .home-wrap .discover-block .play-icon i {
          margin-left: 3px; }
          [dir="rtl"] .home-section .home-wrap .discover-block .play-icon i {
            margin-right: 0;
            margin-left: unset; }
      .home-section .home-wrap .discover-block .discover-content {
        margin-left: 20px; }
        @media (max-width: 360px) {
          .home-section .home-wrap .discover-block .discover-content {
            margin-left: 18px; } }
        [dir="rtl"] .home-section .home-wrap .discover-block .discover-content {
          margin-right: 20px;
          margin-left: unset;
          text-align: right; }
          @media (max-width: 360px) {
            [dir="rtl"] .home-section .home-wrap .discover-block .discover-content {
              margin-right: 18px; } }
  .home-section .home-social {
    position: absolute; }
    .home-section .home-social ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .home-section .home-social ul li a {
        font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320))); }
      .home-section .home-social ul li img {
        margin-right: 5px; }
        .home-section .home-social ul li img [dir="rtl"] {
          margin-right: unset;
          margin-left: 5px; }
      .home-section .home-social ul li span {
        vertical-align: -2px;
        font-weight: 600;
        color: #212529; }

.home-style-2 {
  position: relative; }
  .home-style-2 .selection-wrap {
    margin: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))) 0; }
    .home-style-2 .selection-wrap li .dark-select {
      position: relative; }
      .home-style-2 .selection-wrap li .dark-select .form-select {
        border-radius: 0;
        border: 1px solid #1d1d1d;
        background: #1d1d1d;
        color: #fff;
        min-width: 75px;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none; }
      .home-style-2 .selection-wrap li .dark-select i {
        position: absolute;
        font-size: 11px;
        right: 15px;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%); }
        [dir="rtl"] .home-style-2 .selection-wrap li .dark-select i {
          right: unset;
          left: 15px; }
    .home-style-2 .selection-wrap li + li {
      margin-left: calc(10px + (15 - 10) * ((100vw - 320px) / (1920 - 320))); }
      [dir="rtl"] .home-style-2 .selection-wrap li + li {
        margin-left: unset !important;
        margin-right: calc(10px + (15 - 10) * ((100vw - 320px) / (1920 - 320))); }
      @media (max-width: 1660px) {
        .home-style-2 .selection-wrap li + li {
          margin-left: 10px; }
          [dir="rtl"] .home-style-2 .selection-wrap li + li {
            margin-right: 10px; } }
  .home-style-2 .add-btn {
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .home-style-2 .add-btn .btn {
      padding-top: 8px;
      padding-bottom: 8px; }
      .home-style-2 .add-btn .btn i {
        vertical-align: middle; }
    .home-style-2 .add-btn .btn-solid-default {
      padding: 8px 10px; }
      .home-style-2 .add-btn .btn-solid-default:hover {
        background-color: transparent;
        color: var(--theme-color); }
  .home-style-2 .share-icons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .home-style-2 .share-icons span {
      text-transform: capitalize; }
    .home-style-2 .share-icons ul {
      margin-left: 10px;
      background-color: #1d1d1d;
      padding: 0 10px; }
      [dir="rtl"] .home-style-2 .share-icons ul {
        margin-right: 10px !important; }
      .home-style-2 .share-icons ul li {
        padding: 10px; }
  .home-style-2 .home-left-wrapper {
    background-color: #232323;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    color: #fff;
    padding: 0 calc(20px + (80 - 20) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .home-style-2 .home-left-wrapper {
      direction: rtl; }
    @media (max-width: 1660px) {
      .home-style-2 .home-left-wrapper {
        padding: 0 calc(20px + (60 - 20) * ((100vw - 320px) / (1660 - 320))); } }
    @media (max-width: 1460px) {
      .home-style-2 .home-left-wrapper {
        padding: 0 calc(15px + (40 - 15) * ((100vw - 320px) / (1460 - 320))); } }
    .home-style-2 .home-left-wrapper h2 {
      font-size: calc(24px + (42 - 24) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.4;
      margin-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320))); }
    .home-style-2 .home-left-wrapper .rating {
      display: inline-block;
      padding-left: 15px; }
      [dir="rtl"] .home-style-2 .home-left-wrapper .rating {
        padding-left: unset;
        padding-right: 15px; }
      .home-style-2 .home-left-wrapper .rating.rating-star {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
    .home-style-2 .home-left-wrapper p {
      letter-spacing: 0.05em;
      font-size: 14px;
      line-height: 1.9;
      color: #ced4da;
      margin: 20px 0 30px; }
    .home-style-2 .home-left-wrapper h3 {
      font-size: calc(20px + (36 - 20) * ((100vw - 320px) / (1920 - 320))); }
      .home-style-2 .home-left-wrapper h3 span {
        font-size: calc(16px + (28 - 16) * ((100vw - 320px) / (1920 - 320))); }
  .home-style-2 .home-slider {
    height: 870px; }
    @media (max-width: 1660px) {
      .home-style-2 .home-slider {
        height: calc(400px + (750 - 400) * ((100vw - 320px) / (1660 - 320))); } }
    @media (max-width: 991px) {
      .home-style-2 .home-slider {
        height: calc(440px + (680 - 440) * ((100vw - 320px) / (991 - 320))); } }
    @media (max-width: 480px) {
      .home-style-2 .home-slider {
        height: calc(360px + (470 - 360) * ((100vw - 320px) / (480 - 320))); } }
  .home-style-2 .left-content .home-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    height: 100%;
    padding: 0 calc(20px + (80 - 20) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .home-style-2 .left-content .home-content {
      text-align: right;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
    @media (max-width: 1660px) {
      .home-style-2 .left-content .home-content {
        padding: 0 calc(20px + (60 - 20) * ((100vw - 320px) / (1660 - 320))); } }
    @media (max-width: 1460px) {
      .home-style-2 .left-content .home-content {
        padding: 0 calc(15px + (40 - 15) * ((100vw - 320px) / (1460 - 320))); } }
    .home-style-2 .left-content .home-content h6 {
      color: #212529; }
    .home-style-2 .left-content .home-content h3 {
      margin-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
      color: #212529; }
      @media (max-width: 480px) {
        .home-style-2 .left-content .home-content h3 {
          margin-bottom: 10px; } }
    .home-style-2 .left-content .home-content h1 {
      line-height: 1;
      margin-bottom: 20px;
      color: #212529; }
      @media (max-width: 575px) {
        .home-style-2 .left-content .home-content h1 {
          font-size: calc(30px + (40 - 30) * ((100vw - 320px) / (575 - 320))); } }
    .home-style-2 .left-content .home-content > div > h6 {
      letter-spacing: 8px;
      line-height: 25px;
      font-weight: 700; }
      @media (max-width: 1660px) {
        .home-style-2 .left-content .home-content > div > h6 {
          letter-spacing: 5px; } }
      @media (max-width: 480px) {
        .home-style-2 .left-content .home-content > div > h6 {
          font-size: 10px;
          letter-spacing: 2px;
          margin-bottom: 0 !important; } }
  @media (max-width: 1366px) {
    .home-style-2 .left-content {
      background-position: left !important; } }
  .home-style-2 .slick-2 .slick-list {
    margin: 0; }
    .home-style-2 .slick-2 .slick-list .slick-slide > div {
      margin: 0; }
  @media (max-width: 1660px) {
    .home-style-2 .home-wrap p {
      max-width: 100%; } }

/* =====================
    Slick SLider CSS Start 
 ========================== */
.box-arrow .slick-prev {
  left: calc(5px + (25 - 5) * ((100vw - 320px) / (1920 - 320)));
  z-index: 1; }
  @media (max-width: 767px) {
    .box-arrow .slick-prev {
      left: 10px; } }
  .box-arrow .slick-prev::before {
    content: "\f30a";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    left: 0;
    color: #212529;
    font-size: 40px; }

.box-arrow .slick-next {
  right: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
  z-index: 1; }
  .box-arrow .slick-next::before {
    content: "\f30b";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 0;
    color: #212529;
    font-size: 40px; }

.slick-dots li {
  width: 10px;
  height: 10px; }
  .slick-dots li.slick-active {
    background-color: var(--theme-color);
    border-radius: 50px; }
    .slick-dots li.slick-active button {
      background-color: transparent; }
  .slick-dots li button {
    background-color: #dedede;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    color: transparent; }
    .slick-dots li button::before {
      content: ""; }

.white-arrow .slick-prev {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: -70px;
  margin-top: -25px; }
  [dir="rtl"] .white-arrow .slick-prev {
    right: -80px;
    left: unset; }
  .white-arrow .slick-prev:active {
    color: var(--theme-color); }
  @media (max-width: 991px) {
    .white-arrow .slick-prev {
      left: unset;
      right: 90px;
      top: -80px;
      width: 40px;
      height: 40px;
      margin-top: 0; }
      [dir="rtl"] .white-arrow .slick-prev {
        right: unset;
        left: 30px; } }
  @media (max-width: 360px) {
    .white-arrow .slick-prev {
      top: -58px; } }
  .white-arrow .slick-prev::before {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    color: #000;
    font-weight: 900; }

.white-arrow .slick-next {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: -70px;
  margin-top: 20px; }
  [dir="rtl"] .white-arrow .slick-next {
    right: -80px;
    left: unset; }
  .white-arrow .slick-next:active {
    color: var(--theme-color); }
  @media (max-width: 991px) {
    .white-arrow .slick-next {
      left: unset;
      right: 30px;
      top: -80px;
      width: 40px;
      height: 40px;
      margin-top: 0; }
      [dir="rtl"] .white-arrow .slick-next {
        right: unset;
        left: 90px; } }
  @media (max-width: 360px) {
    .white-arrow .slick-next {
      top: -58px; } }
  .white-arrow .slick-next::before {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    color: #000;
    font-weight: 900; }

/**=====================
    service section css start
==========================**/
@media (max-width: 1460px) {
  .service-section {
    margin-bottom: -3px; } }

.service-section .service-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .service-section .service-wrap .service-icon svg {
    width: 55px;
    height: 55px;
    fill: var(--theme-color);
    stroke: var(--theme-color);
    margin-right: 20px; }
    [dir="rtl"] .service-section .service-wrap .service-icon svg {
      margin-right: 0;
      margin-left: 20px; }
    @media (max-width: 1460px) {
      .service-section .service-wrap .service-icon svg {
        width: 40px;
        height: 40px; } }
    @media (max-width: 767px) {
      .service-section .service-wrap .service-icon svg {
        width: 35px;
        height: 35px; } }
  .service-section .service-wrap .service-content h3 {
    margin-top: -3px; }
    @media (max-width: 1199px) {
      .service-section .service-wrap .service-content h3 {
        margin-bottom: 2px !important; } }
  .service-section .service-wrap .service-content span {
    display: block;
    margin-bottom: -3px;
    line-height: 1.6;
    letter-spacing: 0.05em; }

.service-section.about-page .service-wrap .service-icon svg {
  width: 45px;
  height: 45px; }

.service-style-2 .service-wrap {
  display: block;
  text-align: center;
  margin-bottom: -2px; }
  .service-style-2 .service-wrap .service-icon {
    margin-bottom: 20px; }

.service-style-2 .row > div {
  position: relative; }
  .service-style-2 .row > div + div::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 2px;
    height: 50px;
    background-color: #f0f3f8; }
  @media (max-width: 1199px) {
    .service-style-2 .row > div + div:nth-child(3):before {
      content: "";
      display: none; } }
  @media (max-width: 575px) {
    .service-style-2 .row > div + div:nth-child(even):before {
      content: "";
      display: none; } }

/**=====================
     banner css start
==========================**/
.timer-banner {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative; }

.collection-banner {
  position: relative;
  overflow: hidden;
  height: 100%; }
  @media (max-width: 991px) {
    .collection-banner .collection-contain {
      background-color: rgba(0, 0, 0, 0.7);
      padding: 15px 30px;
      border-radius: 4px;
      -webkit-backdrop-filter: blur(3px);
              backdrop-filter: blur(3px); }
      .collection-banner .collection-contain h6,
      .collection-banner .collection-contain h2,
      .collection-banner .collection-contain p {
        color: #fff !important; } }
  .collection-banner .theme-color {
    margin-top: -2px; }
  .collection-banner .contain-banner {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .collection-banner .contain-banner.contain-center {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .collection-banner .contain-banner .banner-content {
      padding: 45px 80px; }
      @media (max-width: 1460px) {
        .collection-banner .contain-banner .banner-content {
          padding: 30px 60px; } }
      @media (max-width: 1366px) {
        .collection-banner .contain-banner .banner-content {
          padding: 30px 40px; } }
      @media (max-width: 1199px) {
        .collection-banner .contain-banner .banner-content {
          padding: 20px 15px; } }
      @media (max-width: 991px) {
        .collection-banner .contain-banner .banner-content {
          padding: 40px; } }
      @media (max-width: 575px) {
        .collection-banner .contain-banner .banner-content {
          padding: 30px; } }
      @media (max-width: 360px) {
        .collection-banner .contain-banner .banner-content {
          padding: 20px; } }
      .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 40px; }
        @media (max-width: 1460px) {
          .collection-banner .contain-banner .banner-content.spacing-banner {
            padding: 30px; } }
        @media (max-width: 1366px) {
          .collection-banner .contain-banner .banner-content.spacing-banner {
            padding: 30px; } }
        @media (max-width: 1199px) {
          .collection-banner .contain-banner .banner-content.spacing-banner {
            padding: 20px; } }
        @media (max-width: 991px) {
          .collection-banner .contain-banner .banner-content.spacing-banner {
            padding: 40px; } }
        @media (max-width: 575px) {
          .collection-banner .contain-banner .banner-content.spacing-banner {
            padding: 30px; } }
        @media (max-width: 360px) {
          .collection-banner .contain-banner .banner-content.spacing-banner {
            padding: 20px; } }
      .collection-banner .contain-banner .banner-content.with-bg {
        background-color: rgba(35, 35, 35, 0.93);
        color: #fff; }
        .collection-banner .contain-banner .banner-content.with-bg h2 {
          margin-top: -2px; }
        .collection-banner .contain-banner .banner-content.with-bg h3 {
          margin-top: -3px; }
        .collection-banner .contain-banner .banner-content.with-bg span {
          display: block;
          margin-bottom: -5px; }
      .collection-banner .contain-banner .banner-content.with-big {
        background-color: rgba(35, 35, 35, 0.85);
        color: #fff; }
        .collection-banner .contain-banner .banner-content.with-big h2 {
          margin-top: -3px; }
      .collection-banner .contain-banner .banner-content span {
        font-size: 12px;
        font-weight: 500;
        letter-spacing: 5px; }
        @media (max-width: 1199px) {
          .collection-banner .contain-banner .banner-content span {
            letter-spacing: 3px; } }
      .collection-banner .contain-banner .banner-content.t-top h3 {
        margin-top: -4px; }
  .collection-banner .banner-img {
    height: 100%; }
  .collection-banner.p-center .contain-banner,
  .collection-banner.p-center .banner-text {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .collection-banner.p-right .contain-banner,
  .collection-banner.p-right .banner-text {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    [dir="rtl"] .collection-banner.p-right .contain-banner, [dir="rtl"]
    .collection-banner.p-right .banner-text {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .collection-banner.p-right .contain-banner h3,
    .collection-banner.p-right .banner-text h3 {
      margin-top: -9px; }
    .collection-banner.p-right .contain-banner .span-top,
    .collection-banner.p-right .banner-text .span-top {
      margin-top: -4px;
      display: block; }
  .collection-banner.p-right .banner-content {
    text-align: right; }
  .collection-banner.p-left .contain-banner,
  .collection-banner.p-left .banner-text {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    [dir="rtl"] .collection-banner.p-left .contain-banner, [dir="rtl"]
    .collection-banner.p-left .banner-text {
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
  .collection-banner.p-bottom .contain-banner {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .collection-banner .banner-text {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .collection-banner .banner-text .banner-content {
      padding: 50px;
      width: 60%; }
      [dir="rtl"] .collection-banner .banner-text .banner-content {
        text-align: right; }
      .collection-banner .banner-text .banner-content.t-top h3 {
        color: #212529;
        margin-top: -4px; }
        @media (max-width: 480px) {
          .collection-banner .banner-text .banner-content.t-top h3 {
            margin-bottom: 5px; } }
      @media (max-width: 1460px) {
        .collection-banner .banner-text .banner-content {
          padding: 30px 60px; } }
      @media (max-width: 1366px) {
        .collection-banner .banner-text .banner-content {
          padding: 30px 40px; } }
      @media (max-width: 1199px) {
        .collection-banner .banner-text .banner-content {
          padding: 20px 15px; } }
      @media (max-width: 991px) {
        .collection-banner .banner-text .banner-content {
          padding: 0 40px; } }
      @media (max-width: 575px) {
        .collection-banner .banner-text .banner-content {
          padding: 0 30px; } }
      @media (max-width: 360px) {
        .collection-banner .banner-text .banner-content {
          padding: 0 10px;
          width: 50%; } }
    .collection-banner .banner-text h6 {
      font-weight: 600;
      margin-top: -3px; }
    .collection-banner .banner-text h2 {
      margin: calc(2px + (20 - 2) * ((100vw - 320px) / (1920 - 320))) 0;
      font-size: calc(18px + (46 - 18) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.32;
      color: #212529; }
    .collection-banner .banner-text h3 {
      font-size: calc(20px + (32 - 20) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.45;
      margin-bottom: 20px; }
      .collection-banner .banner-text h3.h-bottom {
        margin-bottom: calc(2px + (20 - 2) * ((100vw - 320px) / (1920 - 320)));
        margin-top: -6px;
        color: #212529; }
    .collection-banner .banner-text .btn {
      font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320))); }

.banner-title .banner-text .banner-content {
  width: 56%; }
  [dir="rtl"] .banner-title .banner-text .banner-content {
    text-align: left; }
  .banner-title .banner-text .banner-content .spacing-text {
    margin-top: -6px;
    color: #212529; }

.collection-center {
  position: relative;
  padding: 50px;
  background-color: #f0f3f8;
  color: #212529; }
  @media (max-width: 1460px) {
    .collection-center {
      padding: 40px; } }
  @media (max-width: 575px) {
    .collection-center {
      padding: 30px; } }
  @media (max-width: 360px) {
    .collection-center {
      padding: 20px; } }
  .collection-center h2 {
    line-height: 1.3; }

.banner-image {
  position: relative; }
  .banner-image .banner-content {
    position: absolute;
    left: calc(20px + (60 - 20) * ((100vw - 320px) / (1920 - 320)));
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 40%; }
    .banner-image .banner-content h3 {
      font-size: calc(16px + (32 - 16) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.45;
      margin-bottom: calc(2px + (15 - 2) * ((100vw - 320px) / (1920 - 320)));
      margin-top: calc(0px + (-6 - 0) * ((100vw - 320px) / (1920 - 320)));
      color: var(--theme-color); }
      @media (max-width: 767px) {
        .banner-image .banner-content h3 {
          margin-bottom: 0; } }
    .banner-image .banner-content p {
      color: #7e7e7e;
      margin-bottom: 0;
      line-height: 1.6; }
      @media (max-width: 767px) {
        .banner-image .banner-content p {
          display: none; } }

.banner-style-2 .collection-banner {
  position: relative;
  cursor: pointer; }
  .banner-style-2 .collection-banner .banner-img {
    min-height: 390px;
    -o-object-fit: cover;
       object-fit: cover; }
    @media (max-width: 1460px) {
      .banner-style-2 .collection-banner .banner-img {
        min-height: 330px; } }
    @media (max-width: 1199px) {
      .banner-style-2 .collection-banner .banner-img {
        min-height: 300px; } }
    @media (max-width: 360px) {
      .banner-style-2 .collection-banner .banner-img {
        min-height: 240px; } }
  .banner-style-2 .collection-banner .banner-detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: absolute;
    top: 0;
    width: 100%;
    padding: 30px; }
    @media (max-width: 575px) {
      .banner-style-2 .collection-banner .banner-detail {
        padding: 20px; } }
    .banner-style-2 .collection-banner .banner-detail .font-dark-30 {
      font-weight: 800;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease;
      color: #212529 !important; }
    .banner-style-2 .collection-banner .banner-detail .heart-wishlist .far {
      color: rgba(35, 35, 35, 0.6); }
    .banner-style-2 .collection-banner .banner-detail .heart-wishlist::after {
      opacity: 0;
      -webkit-transition: 0.5;
      transition: 0.5; }
  .banner-style-2 .collection-banner .contain-banner {
    top: unset;
    bottom: 60px; }
    .banner-style-2 .collection-banner .contain-banner.contain-center {
      top: 0;
      bottom: 0; }
    @media (max-width: 1199px) {
      .banner-style-2 .collection-banner .contain-banner {
        bottom: 30px; } }
    .banner-style-2 .collection-banner .contain-banner .banner-content {
      padding: 40px;
      width: calc(100% - 120px);
      -webkit-transition: all 0.5s;
      transition: all 0.5s;
      -webkit-backdrop-filter: blur(4px);
              backdrop-filter: blur(4px); }
      .banner-style-2 .collection-banner .contain-banner .banner-content.banner-center {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        -webkit-backdrop-filter: blur(5px);
                backdrop-filter: blur(5px); }
      @media (max-width: 1460px) {
        .banner-style-2 .collection-banner .contain-banner .banner-content {
          padding: 30px;
          width: unset; } }
      @media (max-width: 575px) {
        .banner-style-2 .collection-banner .contain-banner .banner-content {
          padding: 20px; } }
      @media (max-width: 1460px) {
        .banner-style-2 .collection-banner .contain-banner .banner-content span {
          letter-spacing: 3px; } }
  .banner-style-2 .collection-banner.ratio2_1 .bg-size:before {
    display: none; }
  .banner-style-2 .collection-banner:hover .contain-banner .banner-content.banner-center {
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px); }
  .banner-style-2 .collection-banner:hover .contain-banner .banner-content.with-bg {
    background-color: var(--theme-color);
    opacity: 0.9;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    color: #fff; }
  .banner-style-2 .collection-banner:hover .contain-banner .banner-content.with-big {
    background-color: var(--theme-color);
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px);
    opacity: 0.9; }
  .banner-style-2 .collection-banner:hover .banner-detail .heart-wishlist .far {
    color: var(--theme-color); }
  .banner-style-2 .collection-banner:hover .banner-detail .heart-wishlist::after {
    opacity: 0.1;
    -webkit-transition: 0.5;
    transition: 0.5; }
  .banner-style-2 .collection-banner:hover .banner-detail .font-dark-30 {
    color: #232323 !important;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .banner-style-2 .collection-banner:hover .banner-detail .font-dark-30 span {
      color: var(--theme-color) !important; }

.banner-style-2.offer-banner .collection-banner .banner-img {
  min-height: unset; }

.banner-style-2.offer-banner .collection-banner .contain-banner {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  bottom: unset; }
  .banner-style-2.offer-banner .collection-banner .contain-banner .banner-content {
    padding: 40px; }
    .banner-style-2.offer-banner .collection-banner .contain-banner .banner-content span {
      letter-spacing: unset; }

.timer-banner-style-2 .timer-title {
  font-size: calc(28px + (46 - 28) * ((100vw - 320px) / (1920 - 320)));
  line-height: 1.32;
  margin: 20px auto 10px;
  width: 80%; }

.timer-banner-style-2 h3 {
  margin-top: 30px; }

.timer-banner-style-2 .heart-wishlist {
  margin: 0 auto; }

.timer-banner-style-2 .timer-bg {
  position: absolute;
  padding: 30px;
  left: 0;
  z-index: 1;
  color: #fff; }
  .timer-banner-style-2 .timer-bg-center {
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .timer-banner-style-2 .timer-bg::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    opacity: 0.8;
    top: 0;
    left: 0;
    z-index: -1; }
  .timer-banner-style-2 .timer-bg span {
    font-size: 12px;
    letter-spacing: 5px; }
  .timer-banner-style-2 .timer-bg h3 {
    margin-bottom: 5px; }

.timer-banner-style-2 .timer {
  margin-bottom: 30px; }
  .timer-banner-style-2 .timer ul {
    background-color: transparent;
    color: #232323;
    z-index: 2; }
    .timer-banner-style-2 .timer ul li .counter {
      padding: 15px 20px;
      background: #fff;
      min-width: 90px; }
      .timer-banner-style-2 .timer ul li .counter h2 {
        color: var(--theme-color);
        margin-bottom: 5px; }
    .timer-banner-style-2 .timer ul li + li::before {
      display: none; }

/**=====================
     product css start
==========================**/
.tab-section .product-style-1 .product-box .product-details h5 {
  margin-left: 0; }
  [dir="rtl"] .tab-section .product-style-1 .product-box .product-details h5 {
    margin-left: unset;
    margin-right: 0; }
  .tab-section .product-style-1 .product-box .product-details h5.main-title {
    margin: 0 auto; }
    [dir="rtl"] .tab-section .product-style-1 .product-box .product-details h5.main-title {
      margin: 0 auto; }

.rating {
  display: block;
  margin-bottom: -4px; }
  [dir="rtl"] .rating {
    padding: 0; }
  .rating li i {
    color: #c3c3c3 !important; }
    .rating li i.theme-color {
      color: #ffa202 !important; }

.heart-wishlist {
  font-size: 14px;
  width: 30px;
  height: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background-color: #fff;
  border-radius: 100%; }
  .heart-wishlist .far {
    margin-top: 1px;
    margin-left: -1px; }
    [dir="rtl"] .heart-wishlist .far {
      margin-left: unset;
      margin-right: -1px; }
  .heart-wishlist::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    opacity: 0.1;
    border-radius: 100%;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    z-index: -1; }
  .heart-wishlist.heart-color::after {
    background-color: transparent; }

.product-box {
  overflow: hidden; }
  [dir="rtl"] .product-box {
    direction: rtl; }
  .product-box:hover .img-wrapper .share {
    opacity: 1 !important;
    color: #fff; }
    .product-box:hover .img-wrapper .share-opacity {
      opacity: 1; }
  .product-box:hover .img-wrapper .share-plus {
    color: black;
    background-color: white;
    opacity: 1;
    border-radius: 50%; }
  .product-box:hover .img-wrapper.hover-image::after {
    opacity: 1; }
  .product-box:hover .img-wrapper.squre-image::after {
    opacity: 1; }
  .product-box:hover .img-wrapper .circle-shape {
    -webkit-transform: scale(100%);
            transform: scale(100%); }
  .product-box:hover .img-wrapper .background-text {
    opacity: 1; }
  .product-box .img-wrapper {
    position: relative;
    overflow: hidden; }
    .product-box .img-wrapper.hover-image::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      background-image: url(../images/vegetable/effect1.png);
      background-size: cover;
      background-repeat: no-repeat;
      top: 0;
      left: 0;
      opacity: 0;
      -webkit-transition: 0.5s ease;
      transition: 0.5s ease; }
    .product-box .img-wrapper.squre-image::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      background-image: url(../images/vegetable/effect.png);
      background-size: cover;
      background-repeat: no-repeat;
      top: 0;
      left: 0;
      opacity: 0;
      -webkit-transition: 0.5s ease;
      transition: 0.5s ease; }
      @media (max-width: 1199px) {
        .product-box .img-wrapper.squre-image::after {
          opacity: 1; } }
    .product-box .img-wrapper .circle-shape {
      position: absolute;
      background-color: rgba(232, 115, 22, 0.04);
      top: -80px;
      left: -80px;
      width: 100%;
      height: 87%;
      border-radius: 50%;
      z-index: 1;
      -webkit-transform: scale(0);
              transform: scale(0);
      -webkit-transition: 0.6s ease;
      transition: 0.6s ease;
      -webkit-transform-origin: top left;
              transform-origin: top left; }
      .product-box .img-wrapper .circle-shape-1 {
        width: 390px;
        height: 390px;
        position: absolute;
        background-color: rgba(232, 115, 22, 0.04);
        top: -130px;
        left: -130px;
        border-radius: 50%;
        z-index: 1;
        -webkit-transition: 0.6s ease;
        transition: 0.6s ease; }
    .product-box .img-wrapper .background-text {
      text-transform: uppercase;
      position: absolute;
      top: 90px;
      right: -30px;
      -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: vertical-rl;
      text-orientation: mixed;
      font-weight: bolder;
      font-size: 68px;
      color: rgba(232, 115, 22, 0.1);
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      opacity: 0;
      -webkit-transition: 0.6s ease;
      transition: 0.6s ease; }
  .product-box .cart-wrap {
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    text-align: center;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 2; }
    @media (max-width: 1366px) {
      .product-box .cart-wrap {
        bottom: 20px; } }
    @media (max-width: 480px) {
      .product-box .cart-wrap {
        bottom: 15px; } }
    .product-box .cart-wrap .category-item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 100%; }
    .product-box .cart-wrap a,
    .product-box .cart-wrap button {
      padding: 15px;
      background-color: #fff;
      position: relative;
      z-index: 1; }
      @media (max-width: 1366px) {
        .product-box .cart-wrap a,
        .product-box .cart-wrap button {
          padding: 10px; } }
      @media (max-width: 480px) {
        .product-box .cart-wrap a,
        .product-box .cart-wrap button {
          padding: 5px; } }
      .product-box .cart-wrap a::after,
      .product-box .cart-wrap button::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: var(--theme-color);
        -webkit-transform: scale(0);
                transform: scale(0);
        -webkit-transition: 0.5s;
        transition: 0.5s;
        top: 0;
        left: 0;
        z-index: -1; }
        [dir="rtl"] .product-box .cart-wrap a::after, [dir="rtl"]
        .product-box .cart-wrap button::after {
          left: unset;
          right: 0; }
      .product-box .cart-wrap a svg,
      .product-box .cart-wrap button svg {
        width: 16px;
        height: 16px; }
        @media (max-width: 767px) {
          .product-box .cart-wrap a svg,
          .product-box .cart-wrap button svg {
            width: 14px;
            height: 14px; } }
        @media (max-width: 480px) {
          .product-box .cart-wrap a svg,
          .product-box .cart-wrap button svg {
            width: 13px;
            height: 13px; } }
      .product-box .cart-wrap a:hover,
      .product-box .cart-wrap button:hover {
        background-color: transparent;
        color: #fff; }
        .product-box .cart-wrap a:hover::after,
        .product-box .cart-wrap button:hover::after {
          -webkit-transform: scale(1);
                  transform: scale(1);
          -webkit-transition: 0.5s;
          transition: 0.5s; }
    .product-box .cart-wrap a {
      color: #232323; }
    .product-box .cart-wrap button {
      line-height: 0.8; }
    [dir="rtl"] .product-box .cart-wrap ul li + li {
      margin-right: 8px;
      margin-left: unset; }
  .product-box .product-details {
    margin-top: 15px; }
    .product-box .product-details h3 span {
      font-size: 15px;
      text-decoration: line-through;
      margin-left: 4px; }
      [dir="rtl"] .product-box .product-details h3 span {
        margin-left: 0;
        margin-right: 4px; }
    .product-box .product-details h5 {
      margin: 5px auto 6px auto;
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      display: -webkit-box;
      overflow: hidden;
      width: 90%;
      font-weight: 500; }
    .product-box .product-details .size-box {
      margin-top: 5px !important;
      margin: -1px; }
      .product-box .product-details .size-box li {
        color: #212529;
        margin: 1px;
        padding: 2px 6px;
        font-size: 13px;
        border-radius: 3px;
        background-color: #f0f7ef; }
      .product-box .product-details .size-box-2 li {
        background-color: #eff2f7; }
    .product-box .product-details .rating {
      display: block;
      margin-bottom: -4px; }
      .product-box .product-details .rating.rating-2 {
        margin-bottom: 0px; }
      .product-box .product-details .rating li i {
        font-size: 13px;
        color: #c3c3c3; }
        .product-box .product-details .rating li i.theme-color {
          color: #ffa202; }
  .product-box .label-dark {
    left: 0; }
    [dir="rtl"] .product-box .label-dark {
      float: right;
      left: unset;
      right: 0; }
      [dir="rtl"] [dir="rtl"] .product-box .label-dark {
        float: left; }
  .product-box .label-theme {
    float: right;
    right: 0; }
    [dir="rtl"] .product-box .label-theme {
      float: left;
      right: unset;
      left: 0; }
      [dir="rtl"] [dir="rtl"] .product-box .label-theme {
        float: right; }
  .product-box:hover .cart-wrap {
    opacity: 1;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .product-box:hover .cart-wrap ul li:first-child {
      -webkit-animation: fadeInUp 400ms ease-in-out;
              animation: fadeInUp 400ms ease-in-out; }
    .product-box:hover .cart-wrap ul li:nth-child(2) {
      -webkit-animation: fadeInUp 600ms ease-in-out;
              animation: fadeInUp 600ms ease-in-out; }
    .product-box:hover .cart-wrap ul li:nth-child(3) {
      -webkit-animation: fadeInUp 800ms ease-in-out;
              animation: fadeInUp 800ms ease-in-out; }
    .product-box:hover .cart-wrap ul li:nth-child(4) {
      -webkit-animation: fadeInUp 1000ms ease-in-out;
              animation: fadeInUp 1000ms ease-in-out; }

.product-wrapper-1 .slick-dots {
  margin-top: -25px !important; }

.product-wrapper .slick-dots {
  position: relative;
  bottom: 0;
  margin-top: calc(5px + (20 - 5) * ((100vw - 320px) / (1920 - 320))); }
  .product-wrapper .slick-dots li {
    width: auto;
    height: auto; }
    .product-wrapper .slick-dots li button {
      width: 8px;
      height: 8px;
      border-radius: 4px;
      padding: 0;
      margin: 0;
      background-color: rgba(35, 35, 35, 0.2);
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
      .product-wrapper .slick-dots li button::before {
        display: none; }
    .product-wrapper .slick-dots li.slick-active button {
      margin: 0;
      width: 40px;
      background-color: var(--theme-color);
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }

.product-wrapper .timer {
  position: absolute;
  top: 15px;
  left: 0;
  right: 0;
  text-align: center; }

.product-wrapper.slick-slider.slick-dotted {
  margin-bottom: -2px; }

.product-banner-circle {
  overflow: hidden;
  height: 100%; }

@media (max-width: 991px) {
  .product-banner {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1; } }

.product-banner .product-box {
  padding: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320))) !important;
  height: 100%; }
  @media (max-width: 1199px) {
    .product-banner .product-box {
      padding: 20px !important; } }
  .product-banner .product-box .img-wrapper a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto;
    width: 100%; }

.product-banner .label-block {
  padding: 0;
  position: relative; }
  .product-banner .label-block ~ a {
    clear: both; }

.product-banner .offer-end {
  position: absolute;
  bottom: 50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding: 30px;
  background-color: rgba(35, 35, 35, 0.8);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  color: #fff;
  width: 70%;
  text-align: center;
  z-index: 1; }
  .product-banner .offer-end-demo4 {
    background-color: rgba(232, 115, 22, 0.8); }
    .product-banner .offer-end-demo4 h3 {
      margin-top: -3px; }
    .product-banner .offer-end-demo4 h6 {
      margin-bottom: -1px; }
  @media (max-width: 1366px) {
    .product-banner .offer-end {
      padding: 20px; } }
  @media (max-width: 991px) {
    .product-banner .offer-end {
      width: unset; } }
  @media (max-width: 480px) {
    .product-banner .offer-end {
      width: 60%;
      padding: 15px; } }
  @media (max-width: 360px) {
    .product-banner .offer-end {
      width: 90%; } }
  .product-banner .offer-end h3 {
    margin-bottom: 10px; }
  .product-banner .offer-end h6 {
    font-weight: 400; }

.instagram-wrap .product-box {
  position: relative; }
  .instagram-wrap .product-box::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    opacity: 0;
    visibility: hidden;
    top: 0;
    left: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .instagram-wrap .product-box .img-wrapper img {
    max-height: unset !important;
    max-width: unset !important;
    height: 225px;
    width: 225px;
    -o-object-fit: contain;
       object-fit: contain; }
    @media (max-width: 1366px) {
      .instagram-wrap .product-box .img-wrapper img {
        height: 195px;
        width: 195px; } }
    @media (max-width: 767px) {
      .instagram-wrap .product-box .img-wrapper img {
        height: 175px;
        width: 175px; } }
  .instagram-wrap .product-box .img-wrapper .share {
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.6;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: initial;
    position: absolute;
    top: 0; }
    .instagram-wrap .product-box .img-wrapper .share-opacity {
      opacity: 0;
      -webkit-transition: 0.2s ease;
      transition: 0.2s ease; }
    .instagram-wrap .product-box .img-wrapper .share-box {
      z-index: 2; }
    .instagram-wrap .product-box .img-wrapper .share .share-plus {
      position: relative;
      width: 25px;
      height: 25px;
      font-size: 16px;
      display: inline-block;
      text-align: center;
      color: var(--theme-color); }
      .instagram-wrap .product-box .img-wrapper .share .share-plus::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: var(--theme-color);
        opacity: 0.1;
        border-radius: 100%;
        -webkit-transition: all 0.5s;
        transition: all 0.5s;
        z-index: -1;
        z-index: 1;
        left: 0;
        top: 0; }
      .instagram-wrap .product-box .img-wrapper .share .share-plus-color {
        background-color: #fff;
        border-radius: 50%;
        -webkit-animation: ripple-2 0.7s linear infinite;
                animation: ripple-2 0.7s linear infinite; }
        .instagram-wrap .product-box .img-wrapper .share .share-plus-color::after {
          background-color: #fff; }
    .instagram-wrap .product-box .img-wrapper .share span:not(.share-plus) {
      letter-spacing: 10px;
      padding-top: 15px;
      color: #fff; }
      @media (max-width: 991px) {
        .instagram-wrap .product-box .img-wrapper .share span:not(.share-plus) {
          letter-spacing: 6px;
          font-size: 13px;
          padding-top: 10px; } }
  .instagram-wrap .product-box .insta-hover {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: 100%;
    color: #fff;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .instagram-wrap .product-box .insta-hover-gradient {
      background: #ec7a1f;
      background: linear-gradient(138deg, #ec7a1f 0%, #e3627b 50%, #a0768e 100%);
      opacity: 0; }
    .instagram-wrap .product-box .insta-hover h2 {
      position: absolute;
      top: 25px;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      font-size: calc(65px + (80 - 65) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 900;
      opacity: 0.08; }
      @media (max-width: 991px) {
        .instagram-wrap .product-box .insta-hover h2 {
          top: 30px; } }
    .instagram-wrap .product-box .insta-hover h3 {
      font-size: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 600;
      margin-bottom: 30px;
      line-height: 1.4; }
      .instagram-wrap .product-box .insta-hover h3.text-hide {
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden; }
      .instagram-wrap .product-box .insta-hover h3.brand-name {
        font-size: calc(20px + (35 - 20) * ((100vw - 320px) / (1920 - 320)));
        margin-bottom: 20px;
        line-height: 1.2; }
      @media (max-width: 991px) {
        .instagram-wrap .product-box .insta-hover h3 {
          margin-bottom: 20px; } }
    .instagram-wrap .product-box .insta-hover h5 {
      font-weight: 400;
      margin-bottom: 15px; }
      @media (max-width: 991px) {
        .instagram-wrap .product-box .insta-hover h5 {
          margin-bottom: 5px; } }
    .instagram-wrap .product-box .insta-hover .btn {
      font-weight: 500; }
  .instagram-wrap .product-box:hover .insta-hover {
    opacity: 1;
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px);
    visibility: visible;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
    .instagram-wrap .product-box:hover .insta-hover-gradient {
      background: #ec7a1f;
      background: linear-gradient(138deg, #ec7a1f 0%, #e3627b 50%, #a0768e 100%);
      opacity: 1; }
  .instagram-wrap .product-box:hover::after {
    opacity: 0.8;
    visibility: visible;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }

.color-variant li {
  width: 30px;
  height: 30px;
  cursor: pointer; }
  .color-variant li + li {
    margin-left: 10px; }
  .color-variant li.selected {
    -webkit-box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.16), 0 5px 15px 2px rgba(0, 0, 0, 0.05);
            box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.16), 0 5px 15px 2px rgba(0, 0, 0, 0.05); }

.color-variant .bg-half-light {
  background-color: #f0f3f8;
  position: relative; }
  .color-variant .bg-half-light .half-black {
    background-color: #232323;
    position: absolute;
    width: 50%;
    right: 0;
    top: 0;
    display: inline-block;
    height: 100%; }

.color-variant .bg-blue1 {
  background-color: #88d1f4; }

.color-variant .bg-light1 {
  background-color: #f0f3f8; }

.color-variant .bg-black1 {
  background-color: #000; }

.label-price {
  position: absolute;
  text-align: right;
  padding: 30px;
  top: 0;
  right: 0; }

.product-style-1 .product-box {
  background-color: #f0f3f8;
  padding: 20px;
  position: relative; }
  .product-style-1 .product-box.product-box1 {
    background-color: #e9e9e9; }
  .product-style-1 .product-box.bg-image {
    background-image: url(../images/vegetable/percentage.jpg);
    background-color: transparent;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; }
  .product-style-1 .product-box-4 {
    background-color: #f0f7f0; }
  @media (max-width: 480px) {
    .product-style-1 .product-box {
      padding: 15px; } }
  .product-style-1 .product-box .img-wrapper img {
    margin: 0 auto;
    max-height: 115px;
    max-width: 150px;
    z-index: 1; }
  .product-style-1 .product-box .img-wrapper .round-circle {
    position: absolute;
    -webkit-animation: rounded 10s infinite linear;
            animation: rounded 10s infinite linear;
    z-index: 0;
    width: 100%; }
  .product-style-1 .product-box .img-wrapper .bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .product-style-1 .product-box .img-wrapper a.text-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    min-height: 116px; }
  .product-style-1 .product-box .top-wishlist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .product-style-1 .product-box .top-wishlist.product-color {
      z-index: 2;
      background-color: #fff;
      border-radius: 50%; }
    .product-style-1 .product-box .top-wishlist span {
      font-size: 13px; }
  .product-style-1 .product-box .product-details h5 {
    -webkit-line-clamp: 1;
    color: #212529;
    margin: 5px auto; }

.product-style-1 .product-list .product-box {
  padding: 20px calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 1199px) {
    .product-style-1 .product-list .product-box {
      padding: 20px; } }
  .product-style-1 .product-list .product-box .img-wrapper {
    min-width: 90px; }
    @media (max-width: 1199px) {
      .product-style-1 .product-list .product-box .img-wrapper {
        min-width: 70px; } }
    .product-style-1 .product-list .product-box .img-wrapper a.text-center {
      min-height: unset; }
    .product-style-1 .product-list .product-box .img-wrapper img {
      height: 118px;
      max-width: 90px;
      max-height: unset !important;
      -o-object-fit: contain;
         object-fit: contain; }
      @media (max-width: 1199px) {
        .product-style-1 .product-list .product-box .img-wrapper img {
          height: 78px;
          max-width: 70px; } }
  .product-style-1 .product-list .product-box .product-details {
    margin-top: 0;
    margin-left: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .product-style-1 .product-list .product-box .product-details {
      margin-left: unset !important;
      margin-right: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    @media (max-width: 1199px) {
      .product-style-1 .product-list .product-box .product-details {
        margin-left: 15px; }
        [dir="rtl"] .product-style-1 .product-list .product-box .product-details {
          margin-right: 15px; } }
    .product-style-1 .product-list .product-box .product-details h3 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
  .product-style-1 .product-list .product-box + .product-box {
    margin-top: 30px; }
    @media (max-width: 1199px) {
      .product-style-1 .product-list .product-box + .product-box {
        margin-top: 16px; } }

.product-style-1.offer-wrap .product-banner .product-box .img-wrapper img {
  max-height: unset;
  max-width: unset;
  height: 310px;
  -o-object-fit: contain;
     object-fit: contain; }
  @media (max-width: 1199px) {
    .product-style-1.offer-wrap .product-banner .product-box .img-wrapper img {
      height: 198px; } }

.product-style-1.instagram-2 .product-box {
  padding: 0; }
  .product-style-1.instagram-2 .product-box .top-wishlist {
    position: absolute;
    right: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .product-style-1.instagram-2 .product-box .top-wishlist {
      right: unset;
      left: 30px; }
  .product-style-1.instagram-2 .product-box .img-wrapper .share {
    top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    left: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .product-style-1.instagram-2 .product-box .img-wrapper .share {
      left: unset;
      right: 30px; }
  .product-style-1.instagram-2 .product-box .insta-hover {
    padding: calc(30px + (70 - 30) * ((100vw - 320px) / (1920 - 320))); }
    .product-style-1.instagram-2 .product-box .insta-hover.insta-spacing {
      padding: calc(35px + (70 - 35) * ((100vw - 320px) / (1920 - 320))); }

.product-style-2 .product-box .img-wrapper .back {
  opacity: 0;
  position: absolute;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 100%; }

.product-style-2 .product-box .product-details h5 {
  margin: 0; }

.product-style-2 .product-box .product-details .rating-details,
.product-style-2 .product-box .product-details .main-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .product-style-2 .product-box .product-details .rating-details.main-shop,
  .product-style-2 .product-box .product-details .main-price.main-shop {
    display: block !important;
    text-align: center; }
    [dir="rtl"] .product-style-2 .product-box .product-details .rating-details.main-shop, [dir="rtl"]
    .product-style-2 .product-box .product-details .main-price.main-shop {
      text-align: right; }
  @media (max-width: 575px) {
    .product-style-2 .product-box .product-details .rating-details,
    .product-style-2 .product-box .product-details .main-price {
      display: block;
      text-align: left; }
      [dir="rtl"] .product-style-2 .product-box .product-details .rating-details, [dir="rtl"]
      .product-style-2 .product-box .product-details .main-price {
        text-align: right; } }

.product-style-2 .product-box .product-details .main-price {
  margin-top: 10px; }
  @media (max-width: 575px) {
    .product-style-2 .product-box .product-details .main-price {
      margin-top: 5px; }
      .product-style-2 .product-box .product-details .main-price h3 {
        margin-top: 5px; } }

.product-style-2 .product-box .cart-wrap ul li + li {
  margin-left: 0; }
  [dir="rtl"] .product-style-2 .product-box .cart-wrap ul li + li {
    margin-left: unset;
    margin-right: 0; }

.product-style-2 .product-box .cart-wrap a svg,
.product-style-2 .product-box .cart-wrap button svg {
  width: 14px;
  height: 14px; }
  @media (max-width: 575px) {
    .product-style-2 .product-box .cart-wrap a svg,
    .product-style-2 .product-box .cart-wrap button svg {
      width: 13px;
      height: 13px; } }

.product-style-2 .product-box:hover .img-wrapper .back {
  opacity: 1;
  -webkit-backface-visibility: visible;
          backface-visibility: visible;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }

@media (max-width: 1660px) {
  .product-style-2.slide-4 {
    padding: 0 30px; } }

.product-style-2.slide-4 .slick-prev {
  left: -70px; }
  @media (max-width: 1660px) {
    .product-style-2.slide-4 .slick-prev {
      left: -20px; } }
  @media (max-width: 575px) {
    .product-style-2.slide-4 .slick-prev {
      left: -5px; } }

.product-style-2.slide-4 .slick-next {
  right: -70px; }
  @media (max-width: 1660px) {
    .product-style-2.slide-4 .slick-next {
      right: -20px; } }
  @media (max-width: 575px) {
    .product-style-2.slide-4 .slick-next {
      right: -5px; } }

/**=====================
     category css start
==========================**/
/**=====================
    category mixins css start
==========================**/
.category-section.ratio_40 .bg-size::before {
  padding-top: 20%; }

.category-wrap {
  padding: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320)));
  position: relative;
  height: 130px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 360px) {
    .category-wrap {
      height: unset; } }
  .category-wrap.category-color {
    background-color: #eff2f7; }
  @media (max-width: 1460px) {
    .category-wrap.category-padding {
      padding: 23px; } }
  @media (max-width: 1199px) {
    .category-wrap.category-padding {
      padding: 19px; } }
  .category-wrap.theme-bg-color {
    color: #fff;
    background-color: var(--theme-color); }
    .category-wrap.theme-bg-color .light-text {
      font-size: 72px;
      line-height: 96px;
      color: #fff;
      font-weight: 700;
      margin-bottom: 0;
      position: absolute;
      opacity: 0.08;
      top: -10px;
      left: 0; }
      [dir="rtl"] .category-wrap.theme-bg-color .light-text {
        left: unset;
        right: 0; }
    .category-wrap.theme-bg-color h2 {
      margin-bottom: 10px; }
      .category-wrap.theme-bg-color h2.top-spacing {
        margin-top: -3px; }
    .category-wrap.theme-bg-color span {
      letter-spacing: calc(2px + (8 - 2) * ((100vw - 320px) / (1920 - 320)));
      text-transform: uppercase;
      display: block;
      margin-bottom: -5px; }
  .category-wrap .category-content {
    position: absolute;
    right: 30px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
    .category-wrap .category-content span {
      color: #212529;
      display: block;
      text-align: right; }
    [dir="rtl"] .category-wrap .category-content {
      text-align: right; }
    .category-wrap .category-content.category-text {
      text-align: right; }
      .category-wrap .category-content.category-text h3 {
        font-size: calc(14px + (24 - 14) * ((100vw - 320px) / (1920 - 320)));
        margin-top: -1px; }
      .category-wrap .category-content.category-text span {
        font-size: calc(12px + (18 - 12) * ((100vw - 320px) / (1920 - 320)));
        display: block;
        margin-bottom: -3px; }
      .category-wrap .category-content.category-text-1 h3 {
        margin-top: -4px; }
      .category-wrap .category-content.category-text-1 span {
        display: block;
        margin-bottom: -6px; }
      .category-wrap .category-content.category-text.category-spacing h3 {
        margin-top: -3px; }
      .category-wrap .category-content.category-text.category-spacing span {
        margin-bottom: -3px; }
      .category-wrap .category-content.category-text.t-text h3 {
        margin-top: -5px;
        color: #212529; }
      .category-wrap .category-content.category-text.t-text span {
        display: block;
        margin-bottom: -5px;
        color: #212529; }
    .category-wrap .category-content h3 {
      margin-bottom: 2px;
      font-weight: 600;
      font-size: calc(14px + (24 - 14) * ((100vw - 320px) / (1920 - 320))); }

.category-style-1 {
  width: 100%;
  position: relative;
  background-color: #ff0000; }
  .category-style-1 img {
    width: 100px; }
  .category-style-1.theme-bg-color {
    color: #fff; }
    .category-style-1.theme-bg-color .light-text {
      font-size: 72px;
      line-height: 96px;
      color: #fff;
      font-weight: 700;
      margin-bottom: 0;
      position: absolute;
      opacity: 0.08;
      top: -10px;
      left: 0; }
    .category-style-1.theme-bg-color h2 {
      margin-bottom: 10px; }
    .category-style-1.theme-bg-color span {
      letter-spacing: 8px;
      text-transform: uppercase; }
  .category-style-1 .category-content {
    color: #212529; }
    .category-style-1 .category-content h3 {
      margin-bottom: 2px;
      font-weight: 600;
      font-size: calc(18px + (24 - 18) * ((100vw - 320px) / (1920 - 320))); }
    .category-style-1 .category-content span {
      font-weight: 500; }
    .category-style-1 .category-content.category-spacing h3 {
      margin-top: -3px; }
    .category-style-1 .category-content.category-spacing span {
      margin-bottom: -3px; }

/**=====================
     footer css start
==========================**/
@media (max-width: 575px) {
  footer h3 {
    font-size: 16px; } }

footer .main-footer {
  border-top: 2px solid #f0f3f8;
  border-bottom: 2px solid #f0f3f8;
  padding: 80px 0; }
  @media (max-width: 1460px) {
    footer .main-footer {
      padding: 70px 0; } }
  @media (max-width: 1199px) {
    footer .main-footer {
      padding: 60px 0; } }
  @media (max-width: 991px) {
    footer .main-footer {
      padding: 50px 0; } }
  @media (max-width: 767px) {
    footer .main-footer {
      padding: 40px 0; } }
  @media (max-width: 575px) {
    footer .main-footer {
      padding: 30px 0; } }
  @media (max-width: 991px) {
    footer .main-footer .row > div:first-child, footer .main-footer .row > div:last-child {
      -webkit-box-ordinal-group: 0;
          -ms-flex-order: -1;
              order: -1; } }
  @media (max-width: 767px) {
    footer .main-footer .row > div:first-child, footer .main-footer .row > div:last-child {
      -webkit-box-ordinal-group: unset;
          -ms-flex-order: unset;
              order: unset; } }

footer .footer-contact {
  padding-right: 40px; }
  [dir="rtl"] footer .footer-contact {
    padding-right: unset !important;
    padding-left: 40px; }
  footer .footer-contact .brand-logo .svg-icon {
    width: 25px;
    height: 25px;
    margin-right: 5px;
    -webkit-animation: none;
            animation: none;
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }
    [dir="rtl"] footer .footer-contact .brand-logo .svg-icon {
      margin-right: 0;
      margin-left: 5px; }
    footer .footer-contact .brand-logo .svg-icon .fill-color {
      fill: var(--theme-color); }
  @media (max-width: 1366px) {
    footer .footer-contact {
      padding-right: 20px; }
      [dir="rtl"] footer .footer-contact {
        padding-left: 20px; } }
  @media (max-width: 991px) {
    footer .footer-contact {
      padding-right: 0; }
      [dir="rtl"] footer .footer-contact {
        padding-left: 0; } }
  footer .footer-contact .footer-logo {
    display: block;
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
  [dir="rtl"] footer .footer-contact .contact-lists {
    padding: 0; }
  footer .footer-contact .contact-lists li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-transform: capitalize; }
    footer .footer-contact .contact-lists li:nth-child(1) span {
      margin-top: -3px; }
    footer .footer-contact .contact-lists li:nth-child(3) span {
      margin-bottom: -3px; }
    footer .footer-contact .contact-lists li span {
      display: inline; }
      footer .footer-contact .contact-lists li span b {
        font-weight: 500;
        padding-right: 5px; }
        [dir="rtl"] footer .footer-contact .contact-lists li span b {
          padding-right: unset;
          padding-left: 5px;
          float: right; }
    footer .footer-contact .contact-lists li + li {
      margin-top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
      @media (max-width: 991px) {
        footer .footer-contact .contact-lists li + li {
          margin-top: 15px; } }
      @media (max-width: 575px) {
        footer .footer-contact .contact-lists li + li {
          margin-top: 10px; } }

footer .footer-links .footer-title h3 {
  position: relative; }
  @media (max-width: 575px) {
    footer .footer-links .footer-title h3::after {
      position: absolute;
      content: "\f078";
      font-family: "Font Awesome 5 Free";
      font-size: 9px;
      font-weight: 600;
      right: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      color: #7e7e7e;
      -webkit-transition: 0.5s;
      transition: 0.5s; }
      [dir="rtl"] footer .footer-links .footer-title h3::after {
        right: unset;
        left: 0; } }

@media (max-width: 575px) {
  footer .footer-links .footer-title.active h3::after {
    content: "\f077";
    -webkit-transition: 0.5s;
    transition: 0.5s; } }

footer .footer-links .footer-content {
  padding-top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }

[dir="rtl"] footer .footer-links ul {
  padding: 0; }

footer .footer-links ul li {
  display: block; }
  footer .footer-links ul li .font-dark:hover {
    color: var(--theme-color) !important; }
  footer .footer-links ul li + li {
    margin-top: 15px; }
    @media (max-width: 991px) {
      footer .footer-links ul li + li {
        margin-top: 10px; } }
    @media (max-width: 575px) {
      footer .footer-links ul li + li {
        margin-top: 6px; } }

footer .footer-newsletter h3 {
  margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }

footer .footer-newsletter p {
  line-height: 1.6;
  letter-spacing: .03em; }

footer .footer-newsletter .input-group input {
  border-radius: 0;
  position: relative;
  border: none;
  background-color: #f0f3f8;
  color: rgba(35, 35, 35, 0.65); }
  footer .footer-newsletter .input-group input.color-4 {
    background-color: #e9e9e9; }

footer .footer-newsletter .input-group .input-group-text {
  padding: 6px 16px;
  background-color: var(--theme-color);
  border: 1px solid var(--theme-color);
  color: #fff;
  border-radius: 0;
  cursor: pointer; }

footer .footer-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  footer .footer-number .footer-number-image {
    background-color: #eff3f7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-right: 20px; }
    [dir="rtl"] footer .footer-number .footer-number-image {
      margin-right: 0;
      margin-left: 20px; }
    footer .footer-number .footer-number-image img {
      width: 20px; }
  footer .footer-number .footer-number-container h3 {
    margin-bottom: 0; }

footer .footer-details {
  margin-top: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320))); }
  footer .footer-details p {
    line-height: 1.5;
    margin-bottom: 0; }

footer .sub-footer {
  padding: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320))) 0; }
  @media (max-width: 767px) {
    footer .sub-footer {
      text-align: center; } }
  footer .sub-footer .row {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  [dir="rtl"] footer .sub-footer ul {
    padding: 0; }
  footer .sub-footer ul li + li {
    margin-left: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] footer .sub-footer ul li + li {
      margin-left: unset !important;
      margin-right: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    @media (max-width: 991px) {
      footer .sub-footer ul li + li {
        margin-left: 10px; }
        [dir="rtl"] footer .sub-footer ul li + li {
          margin-right: 10px; } }
  footer .sub-footer p {
    text-align: right; }
    [dir="rtl"] footer .sub-footer p {
      text-align: left; }
    @media (max-width: 767px) {
      footer .sub-footer p {
        text-align: center; }
        [dir="rtl"] footer .sub-footer p {
          text-align: center; } }

@media (max-width: 575px) {
  .footer-sm-space {
    margin-bottom: 80px; } }

/**=====================
    Cookie section css start
==========================**/
.cookie-bar-section {
  position: fixed;
  bottom: 20px;
  right: 20px;
  max-width: 365px;
  background: #eff2f7;
  padding: 30px;
  border-radius: 0;
  -webkit-box-shadow: 1px 7px 14px -5px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 7px 14px -5px rgba(0, 0, 0, 0.15);
  text-align: center;
  z-index: 99;
  -webkit-box-shadow: 0 4px 7px rgba(0, 0, 0, 0.15);
          box-shadow: 0 4px 7px rgba(0, 0, 0, 0.15);
  opacity: 1;
  -webkit-transition: .5s ease;
  transition: .5s ease; }
  .cookie-bar-section.cookiebar-left-section {
    right: unset;
    left: 20px; }
    @media (max-width: 767px) {
      .cookie-bar-section.cookiebar-left-section {
        bottom: 10px;
        left: 10px; }
        [dir="rtl"] .cookie-bar-section.cookiebar-left-section {
          left: unset;
          right: 10px; } }
    @media (max-width: 360px) {
      .cookie-bar-section.cookiebar-left-section {
        bottom: 0;
        left: 0;
        margin: 15px;
        padding: 20px 10px;
        border-radius: 7px; }
        [dir="rtl"] .cookie-bar-section.cookiebar-left-section {
          left: unset;
          right: 0; } }
  [dir="rtl"] .cookie-bar-section {
    right: unset;
    left: 20px; }
  .cookie-bar-section.chair-cookiebar {
    background-color: #e9e9e9; }
  @media (max-width: 767px) {
    .cookie-bar-section {
      bottom: 10px;
      right: 10px; }
      [dir="rtl"] .cookie-bar-section {
        right: unset;
        left: 10px; } }
  @media (max-width: 360px) {
    .cookie-bar-section {
      bottom: 0;
      right: 0;
      margin: 10px;
      padding: 20px 10px;
      border-radius: 7px; }
      [dir="rtl"] .cookie-bar-section {
        right: unset;
        left: 0; } }
  .cookie-bar-section img {
    max-width: calc(40px + (60 - 40) * ((100vw - 320px) / (1920 - 320))); }
  .cookie-bar-section::-moz-selection {
    color: #fff;
    background: #fcba7f; }
  .cookie-bar-section::selection {
    color: #fff;
    background: #fcba7f; }
  .cookie-bar-section.hide {
    opacity: 0;
    bottom: -350px; }

.content {
  margin-top: 10px; }
  .content h3 {
    color: #212529;
    font-size: calc(16px + (22 - 16) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600; }
    @media (max-width: 360px) {
      .content h3 {
        font-size: 19px; } }
  .content p {
    margin: calc(8px + (12 - 8) * ((100vw - 320px) / (1920 - 320))) 0;
    line-height: 1.6;
    letter-spacing: 0.03em; }
  .content .buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

/**=====================
    Subsribe css Start
==========================**/
.subscribe-section {
  background-color: #eff3f7; }
  .subscribe-section-light {
    background-color: #f0f8f0; }
  .subscribe-section .subscribe-details {
    height: 100%; }
    .subscribe-section .subscribe-details h2 {
      font-size: calc(18px + (30 - 18) * ((100vw - 320px) / (1920 - 320)));
      margin-top: -2px; }
    .subscribe-section .subscribe-details h6 {
      font-size: 15px;
      font-weight: normal;
      display: block;
      margin-bottom: -3px;
      line-height: 1.6; }
  .subscribe-section .subsribe-input {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%; }
    .subscribe-section .subsribe-input .form-control {
      border-radius: 0; }

/**=====================
    offer section css start
==========================**/
.discount-image-details {
  background-color: #eff3f7;
  padding: calc(22px + (50 - 22) * ((100vw - 320px) / (1920 - 320))) calc(30px + (100 - 30) * ((100vw - 320px) / (1920 - 320)));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative; }
  .discount-image-details.discount-spacing {
    padding: calc(50px + (180 - 50) * ((100vw - 320px) / (1920 - 320))); }
  @media (max-width: 991px) {
    .discount-image-details {
      display: block; } }
  .discount-image-details .discount-images {
    margin-right: 80px; }
    [dir="rtl"] .discount-image-details .discount-images {
      margin-right: 0;
      margin-left: 80px; }
    @media (max-width: 991px) {
      .discount-image-details .discount-images {
        margin-right: 0;
        position: relative; }
        [dir="rtl"] .discount-image-details .discount-images {
          margin-right: 0;
          margin-left: 0px; } }
    .discount-image-details .discount-images .theme-circle {
      width: 450px;
      height: 450px;
      background: #752add;
      background: radial-gradient(circle, #752add 0%, #572e93 100%);
      border-radius: 50%; }
      @media (max-width: 1366px) {
        .discount-image-details .discount-images .theme-circle {
          width: 420px;
          height: 420px; } }
      @media (max-width: 1199px) {
        .discount-image-details .discount-images .theme-circle {
          width: 340px;
          height: 340px; } }
      @media (max-width: 991px) {
        .discount-image-details .discount-images .theme-circle {
          display: none; } }
    .discount-image-details .discount-images .shoes-images-1 {
      position: absolute;
      top: 18%;
      left: 59px;
      -webkit-transform: rotate(34deg);
              transform: rotate(34deg);
      width: 40%; }
      [dir="rtl"] .discount-image-details .discount-images .shoes-images-1 {
        left: unset;
        right: 130px; }
      @media (max-width: 1366px) {
        .discount-image-details .discount-images .shoes-images-1 {
          top: 24%;
          left: 50px;
          width: 43%; } }
      @media (max-width: 1199px) {
        .discount-image-details .discount-images .shoes-images-1 {
          top: 33%;
          left: 55px;
          width: 40%; } }
      @media (max-width: 991px) {
        .discount-image-details .discount-images .shoes-images-1 {
          position: relative;
          -webkit-transform: rotate(0);
                  transform: rotate(0);
          display: block;
          width: 100%;
          left: 0;
          -webkit-animation: run-shoes 15s infinite linear;
                  animation: run-shoes 15s infinite linear; }
          [dir="rtl"] .discount-image-details .discount-images .shoes-images-1 {
            left: unset;
            right: 0 !important; } }
      @media (max-width: 360px) {
        .discount-image-details .discount-images .shoes-images-1 {
          width: 100%; } }
    .discount-image-details .discount-images .shoes-images-2 {
      position: absolute;
      top: 50px;
      left: 430px;
      width: 20%;
      -webkit-transform: rotateY(180deg) rotate(45deg);
              transform: rotateY(180deg) rotate(45deg); }
      [dir="rtl"] .discount-image-details .discount-images .shoes-images-2 {
        left: unset;
        right: 30px; }
      @media (max-width: 1366px) {
        .discount-image-details .discount-images .shoes-images-2 {
          top: 90px;
          left: 375px;
          width: 18%; } }
      @media (max-width: 1199px) {
        .discount-image-details .discount-images .shoes-images-2 {
          top: 95px;
          left: 325px;
          width: 16%; } }
      @media (max-width: 991px) {
        .discount-image-details .discount-images .shoes-images-2 {
          display: none; } }
  .discount-image-details .discunt-details {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center; }
    @media (max-width: 991px) {
      .discount-image-details .discunt-details {
        position: relative;
        width: 100%;
        display: block; } }
    .discount-image-details .discunt-details .heart-button {
      background-color: #e3ddf4;
      border-radius: 50%;
      width: 40px;
      height: 40px;
      margin: 0 auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .discount-image-details .discunt-details .heart-button-2 {
        background-color: #efdee7 !important; }
      .discount-image-details .discunt-details .heart-button-light {
        background-color: #eee1e6; }
      .discount-image-details .discunt-details .heart-button .fa-heart {
        margin-top: 2px; }
    .discount-image-details .discunt-details h5 {
      color: #212529; }
    .discount-image-details .discunt-details .deal-text {
      font-size: calc(22px + (45 - 22) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.1;
      font-weight: 900;
      color: #212529; }

/**=====================
     brand section css start
==========================**/
.brand-slider {
  margin-bottom: -7px; }

.zi-1 {
  z-index: 1; }

.blog-profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .blog-profile .image-profile {
    position: relative;
    width: 55px;
    height: 55px;
    overflow: hidden;
    border-radius: 50%; }
    .blog-profile .image-profile img {
      -webkit-transition: 0.5s ease;
      transition: 0.5s ease;
      width: 100%;
      height: auto;
      -o-object-fit: cover;
         object-fit: cover; }
  .blog-profile .image-name {
    margin-left: 15px; }
    [dir="rtl"] .blog-profile .image-name {
      margin-left: unset;
      margin-right: 15px; }
    .blog-profile .image-name .text-weight h6 {
      font-weight: 300; }
    .blog-profile .image-name h3 {
      position: relative;
      font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 500;
      margin-bottom: 4px; }
    .blog-profile .image-name h6 {
      color: #6c757d;
      font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320))); }

.search-section .search-bar .input-group {
  width: 50%;
  margin: 26px auto 110px; }

.search-section .search-bar button {
  padding: 15px 35px;
  background-color: var(--theme-color);
  color: #fff;
  border: 1px solid var(--theme-colors); }
  .search-section .search-bar button i {
    color: #fff; }
  .search-section .search-bar button.search-button {
    padding: 15px; }

.search-section .search-bar input:focus {
  border-color: #ced4da; }

/**=====================
       Social media css start
  ==========================**/
.social-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .social-media.media-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .social-media a + a {
    margin-left: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320))); }
    [dir="rtl"] .social-media a + a {
      margin-left: unset;
      margin-right: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320))); }
  .social-media .social-icon-box {
    width: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    background-color: #212529;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 4px; }
    .social-media .social-icon-box + .social-meida {
      margin-left: calc(6px + (15 - 6) * ((100vw - 320px) / (1920 - 320))); }
    .social-media .social-icon-box.social-color {
      background-color: #eff2f7; }
      @media (max-width: 360px) {
        .social-media .social-icon-box.social-color {
          background-color: var(--theme-color); } }
      .social-media .social-icon-box.social-color i {
        color: #212529; }
        @media (max-width: 575px) {
          .social-media .social-icon-box.social-color i {
            font-size: 12px; } }
        @media (max-width: 360px) {
          .social-media .social-icon-box.social-color i {
            color: #fff; } }
    .social-media .social-icon-box i {
      color: #fff; }

/**=====================
     Load more css start
  ==========================**/
.load-more {
  text-align: center;
  margin: 40px auto 0;
  width: 280px; }
  .load-more a {
    font-size: 18px;
    text-transform: uppercase;
    display: block;
    padding: 10px 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    width: 100%;
    color: var(--theme-color); }

.product-load-more .col-grid-box {
  display: none; }

/**=====================
       Log In page Css Start
  ==========================**/
.login-section {
  min-height: 100vh;
  position: relative;
  background: #f0f3f8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: calc(30px + (50 - 10) * ((100vw - 320px) / (1920 - 320))); }
  .login-section .materialContainer {
    width: 100%;
    max-width: 460px;
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translate(0);
            transform: translate(0); }
    .login-section .materialContainer .box {
      position: relative;
      top: 0;
      opacity: 1;
      float: left;
      padding: calc(30px + (60 - 30) * ((100vw - 320px) / (1920 - 320))) calc(10px + (30 - 10) * ((100vw - 320px) / (1920 - 320)));
      width: 100%;
      background: #fff;
      border-radius: 10px;
      -webkit-transform: scale(1);
              transform: scale(1);
      z-index: 5; }
      .login-section .materialContainer .box.back {
        -webkit-transform: scale(0.95);
                transform: scale(0.95);
        top: -20px;
        opacity: 0.8;
        z-index: -1; }
      .login-section .materialContainer .box:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 30px;
        border-radius: 10px;
        top: -10px;
        background-color: rgba(255, 255, 255, 0.6);
        left: 0;
        -webkit-transform: scale(0.95);
                transform: scale(0.95); }
    .login-section .materialContainer .login-title {
      width: 100%;
      line-height: 46px;
      font-size: 34px;
      font-weight: 700;
      letter-spacing: calc(0px + (2 - 0) * ((100vw - 320px) / (1920 - 320)));
      color: var(--theme-color);
      position: relative; }
      .login-section .materialContainer .login-title:before {
        content: "";
        position: absolute;
        width: 5px;
        height: 100%;
        top: 0;
        left: calc(-10px + (-10 - 10) * ((100vw - 320px) / (1920 - 320)));
        background: var(--theme-color); }
        [dir="rtl"] .login-section .materialContainer .login-title:before {
          left: unset;
          right: calc(-10px + (-10 - 10) * ((100vw - 320px) / (1920 - 320))); }
      .login-section .materialContainer .login-title h2 {
        font-size: calc(27px + (28 - 27) * ((100vw - 320px) / (1920 - 320)));
        margin-left: calc(10px + (0 - 10) * ((100vw - 320px) / (1920 - 320)));
        margin-top: -2px; }
    .login-section .materialContainer .social-media {
      padding: 15px calc(10px + (25 - 10) * ((100vw - 320px) / (1920 - 320)));
      border-radius: 4px;
      -webkit-box-shadow: 0 0 10px rgba(199, 199, 197, 0.6);
              box-shadow: 0 0 10px rgba(199, 199, 197, 0.6);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .login-section .materialContainer .social-media h6 {
        margin-left: 20px;
        margin-bottom: -2px;
        color: #fff; }
        [dir="rtl"] .login-section .materialContainer .social-media h6 {
          margin-left: 0;
          margin-right: 20px; }
      .login-section .materialContainer .social-media img {
        width: calc(8% + (18 - 8) * ((100vw - 320px) / (1920 - 320))); }
      .login-section .materialContainer .social-media.fb-media {
        background-color: #43609c; }
        .login-section .materialContainer .social-media.fb-media h6 {
          color: #fff;
          font-size: 18px; }
      .login-section .materialContainer .social-media.google-media {
        color: #000; }
        .login-section .materialContainer .social-media.google-media h6 {
          font-size: 18px;
          color: #000; }
    .login-section .materialContainer p {
      width: 100%;
      float: left;
      text-align: center;
      color: rgba(33, 37, 41, 0.4);
      font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320)));
      margin-top: calc(17px + (23 - 17) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: 0; }
      .login-section .materialContainer p.pass-or {
        margin-top: calc(4px + (12 - 4) * ((100vw - 320px) / (1920 - 320))); }
    .login-section .materialContainer .input {
      -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
      transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
      .login-section .materialContainer .input label,
      .login-section .materialContainer .input input,
      .login-section .materialContainer .input .spin {
        -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
        transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
    .login-section .materialContainer .button {
      -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
      transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
      .login-section .materialContainer .button button .button.login button i.fa {
        -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
        transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
    .login-section .materialContainer .material-button .shape:before, .login-section .materialContainer .material-button .shape:after {
      -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
      transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
    .login-section .materialContainer .button.login button {
      -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
      transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
    .login-section .materialContainer .material-button,
    .login-section .materialContainer .alt-2,
    .login-section .materialContainer .material-button .shape,
    .login-section .materialContainer .alt-2 .shape,
    .login-section .materialContainer .box {
      -webkit-transition: 400ms cubic-bezier(0.4, 0, 0.2, 1);
      transition: 400ms cubic-bezier(0.4, 0, 0.2, 1); }
    .login-section .materialContainer .input {
      width: 100%;
      float: left; }
      .login-section .materialContainer .input label,
      .login-section .materialContainer .input input,
      .login-section .materialContainer .input .spin {
        width: 100%;
        float: left; }
    .login-section .materialContainer .button {
      width: 100%;
      float: left; }
      .login-section .materialContainer .button button {
        width: 100%;
        float: left; }
    .login-section .materialContainer .input {
      margin-top: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
      height: 70px; }
    .login-section .materialContainer .input {
      position: relative; }
      .login-section .materialContainer .input input {
        position: relative; }
    .login-section .materialContainer .button {
      position: relative; }
      .login-section .materialContainer .button button {
        position: relative; }
    .login-section .materialContainer .input input {
      height: 60px;
      top: 10px;
      border: none;
      background: transparent;
      font-family: "Roboto", sans-serif;
      font-size: 18px;
      color: #212529;
      font-weight: 300; }
    .login-section .materialContainer .input label {
      font-family: "Roboto", sans-serif;
      font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
      color: rgba(33, 37, 41, 0.8);
      font-weight: 300; }
      .login-section .materialContainer .input label.email-label {
        font-size: calc(15px + (24 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .login-section .materialContainer .button button {
      font-family: "Roboto", sans-serif;
      font-size: 24px;
      color: rgba(33, 37, 41, 0.8);
      font-weight: 300; }
    .login-section .materialContainer .input:before,
    .login-section .materialContainer .input .spin {
      width: 100%;
      height: 1px;
      position: absolute;
      bottom: 0;
      left: 0; }
      [dir="rtl"] .login-section .materialContainer .input:before, [dir="rtl"]
      .login-section .materialContainer .input .spin {
        left: unset;
        right: 0; }
    .login-section .materialContainer .input:before {
      content: "";
      background: rgba(33, 37, 41, 0.15);
      z-index: 3; }
    .login-section .materialContainer .input .spin {
      background: var(--theme-color);
      z-index: 4;
      width: 0; }
    .login-section .materialContainer .overbox .input .spin {
      background: #fff; }
    .login-section .materialContainer .overbox .input:before {
      background: rgba(255, 255, 255, 0.5); }
    .login-section .materialContainer .input label {
      position: absolute;
      top: 10px;
      left: 0;
      z-index: 2;
      cursor: pointer;
      line-height: 60px;
      color: #777777; }
    .login-section .materialContainer .button {
      margin-top: 20px;
      margin: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320))) 0;
      overflow: hidden;
      z-index: 2; }
      .login-section .materialContainer .button.button-1 {
        margin-bottom: 0; }
      .login-section .materialContainer .button.login button {
        width: 100%;
        left: 0%;
        background-color: var(--theme-color);
        border: 1px solid var(--theme-color);
        font-weight: 900;
        font-size: 18px;
        color: #fff;
        padding: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
        border-radius: 4px; }
        .login-section .materialContainer .button.login button span {
          display: block;
          margin-top: -3px; }
      .login-section .materialContainer .button button {
        width: 100%;
        left: 0%;
        background-color: transparent;
        border: 1px solid rgba(33, 37, 41, 0.1);
        font-weight: 900;
        font-size: 18px;
        color: rgba(33, 37, 41, 0.2);
        padding: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320))); }
      .login-section .materialContainer .button button {
        background-color: #fff;
        color: var(--theme-color);
        border: none; }
      .login-section .materialContainer .button.login button.active {
        border: 1px solid transparent;
        color: #fff !important;
        background-color: var(--theme-color); }
        .login-section .materialContainer .button.login button.active span {
          opacity: 0;
          -webkit-transform: scale(0);
                  transform: scale(0);
          display: none; }
        .login-section .materialContainer .button.login button.active i.fa {
          opacity: 1;
          -webkit-transform: scale(1) rotate(0deg);
                  transform: scale(1) rotate(0deg);
          display: block; }
      .login-section .materialContainer .button.login button i.fa {
        width: 100%;
        height: 100%;
        position: relative;
        top: 0;
        left: 0;
        font-size: 18px;
        -webkit-transform: scale(0) rotate(-45deg);
                transform: scale(0) rotate(-45deg);
        display: none; }
      .login-section .materialContainer .button button {
        cursor: pointer;
        position: relative;
        z-index: 2; }
    .login-section .materialContainer .pass-forgot {
      width: 100%;
      float: right;
      text-align: right;
      color: rgba(33, 37, 41, 0.4);
      font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320)));
      margin: 10px auto 0; }
      .login-section .materialContainer .pass-forgot:hover {
        color: var(--theme-color); }
    .login-section .materialContainer .sign-category {
      width: 100%;
      text-align: center;
      color: rgba(33, 37, 41, 0.4);
      font-size: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
      margin: 10px auto;
      position: relative; }
      .login-section .materialContainer .sign-category span {
        background-color: #fff;
        z-index: 1;
        padding: 0 12px; }
      .login-section .materialContainer .sign-category::after {
        content: "";
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        left: 0;
        width: 100%;
        height: 1px;
        color: rgba(33, 37, 41, 0.2);
        z-index: -1; }
    .login-section .materialContainer .overbox {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      overflow: inherit;
      border-radius: 10px;
      padding: 60px 50px 40px 50px; }
      .login-section .materialContainer .overbox .login-title,
      .login-section .materialContainer .overbox .button,
      .login-section .materialContainer .overbox .input {
        z-index: 111;
        position: relative;
        color: #fff !important;
        display: none; }
      .login-section .materialContainer .overbox .login-title {
        width: 80%; }
      .login-section .materialContainer .overbox .input {
        margin-top: 20px; }
        .login-section .materialContainer .overbox .input input,
        .login-section .materialContainer .overbox .input label {
          color: #fff; }
      .login-section .materialContainer .overbox .material-button,
      .login-section .materialContainer .overbox .alt-2 {
        display: block; }
        .login-section .materialContainer .overbox .material-button .shape,
        .login-section .materialContainer .overbox .alt-2 .shape {
          display: block; }
    .login-section .materialContainer .material-button,
    .login-section .materialContainer .alt-2 {
      width: 140px;
      height: 140px;
      border-radius: 50%;
      background: var(--theme-color);
      position: absolute;
      top: 40px;
      right: -70px;
      cursor: pointer;
      z-index: 100;
      -webkit-transform: translate(0%, 0%);
              transform: translate(0%, 0%); }
    .login-section .materialContainer .material-button .shape,
    .login-section .materialContainer .alt-2 .shape {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%; }
    .login-section .materialContainer .material-button .shape:before,
    .login-section .materialContainer .alt-2 .shape:before,
    .login-section .materialContainer .material-button .shape:after,
    .login-section .materialContainer .alt-2 .shape:after {
      content: "";
      position: absolute;
      background: #fff;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    .login-section .materialContainer .material-button .shape:before,
    .login-section .materialContainer .alt-2 .shape:before {
      width: 25px;
      height: 4px; }
    .login-section .materialContainer .material-button .shape:after,
    .login-section .materialContainer .alt-2 .shape:after {
      height: 25px;
      width: 4px; }
    .login-section .materialContainer .material-button.active,
    .login-section .materialContainer .alt-2.active {
      top: 50%;
      right: 50%;
      -webkit-transform: translate(50%, -50%) rotate(0deg);
              transform: translate(50%, -50%) rotate(0deg); }

/**=====================
       404 Page Css Start
  ==========================**/
.page-not-found .page-image {
  text-align: center; }
  .page-not-found .page-image img {
    width: 60%; }

.page-not-found .page-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 0 calc(0px + (50 - 0) * ((100vw - 320px) / (1920 - 320)));
  margin-top: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320))); }
  .page-not-found .page-container h2 {
    margin-bottom: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    color: #212529;
    font-size: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -3px; }
  .page-not-found .page-container p {
    font-size: 16px;
    line-height: 1.6;
    color: #7e7e7e; }

/**=====================
       Contact Page Css Start
  ==========================**/
.contact-section .materialContainer {
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  -webkit-transform: translate(0);
          transform: translate(0); }
  .contact-section .materialContainer .material-details h2 {
    margin-top: -5px; }
  .contact-section .materialContainer .material-details h4 {
    margin-top: 10px;
    font-weight: 400;
    color: #78909c;
    line-height: 1.5;
    font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320))); }
  .contact-section .materialContainer .box {
    position: relative;
    top: 0;
    opacity: 1;
    float: left;
    width: 100%;
    background: #fff;
    border-radius: 10px;
    -webkit-transform: scale(1);
            transform: scale(1);
    z-index: 5; }
  .contact-section .materialContainer .input {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
    .contact-section .materialContainer .input label,
    .contact-section .materialContainer .input input,
    .contact-section .materialContainer .input textarea,
    .contact-section .materialContainer .input .spin {
      -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
      transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
  .contact-section .materialContainer .input {
    margin-top: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: 70px; }
  .contact-section .materialContainer .input {
    position: relative; }
    .contact-section .materialContainer .input input {
      position: relative; }
    .contact-section .materialContainer .input textarea {
      position: relative;
      width: 100%; }
  .contact-section .materialContainer .input input,
  .contact-section .materialContainer .input textarea {
    height: 60px;
    top: 10px;
    border: none;
    background: transparent;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    color: rgba(33, 37, 41, 0.8);
    font-weight: 300; }
  .contact-section .materialContainer .input label {
    font-family: "Roboto", sans-serif;
    font-size: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
    color: rgba(33, 37, 41, 0.8);
    font-weight: 300; }
    .contact-section .materialContainer .input label.email-label {
      font-size: calc(15px + (24 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .contact-section .materialContainer .input:before,
  .contact-section .materialContainer .input .spin {
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0; }
  .contact-section .materialContainer .input:before {
    content: "";
    background: rgba(33, 37, 41, 0.1);
    z-index: 3; }
  .contact-section .materialContainer .input .spin {
    background: var(--theme-color);
    z-index: 4;
    width: 0; }
  .contact-section .materialContainer .input label {
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 2;
    cursor: pointer;
    line-height: 60px;
    color: #78909c; }

.contact-section .location-map iframe {
  width: 100%;
  height: calc(200px + (340 - 200) * ((100vw - 320px) / (1920 - 320)));
  margin-bottom: -6px; }

.contact-section .contact-details {
  background-color: #eff2f7;
  height: 100%;
  padding: calc(21px + (30 - 21) * ((100vw - 320px) / (1920 - 320)));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .contact-section .contact-details h2 {
    font-weight: 500;
    margin-top: -3px;
    margin-bottom: 10px;
    font-size: calc(18px + (24 - 18) * ((100vw - 320px) / (1920 - 320))); }
  .contact-section .contact-details h5 {
    font-weight: 400;
    margin-bottom: 30px; }
  .contact-section .contact-details .contact-box {
    margin-top: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .contact-section .contact-details .contact-box .contact-title {
      width: calc(80% - 80px);
      margin-left: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320))); }
      [dir="rtl"] .contact-section .contact-details .contact-box .contact-title {
        margin-left: unset;
        margin-right: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320))); }
      @media (max-width: 991px) {
        .contact-section .contact-details .contact-box .contact-title {
          width: calc(100% - 80px); } }
      .contact-section .contact-details .contact-box .contact-title h4 {
        margin-bottom: 10px;
        font-weight: 500; }
      .contact-section .contact-details .contact-box .contact-title p {
        margin-bottom: 0;
        letter-spacing: 0.6px;
        line-height: 26px; }
        .contact-section .contact-details .contact-box .contact-title p + p {
          margin-top: 0;
          margin-bottom: -2px; }
    .contact-section .contact-details .contact-box .contact-icon {
      width: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
      height: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
      border-radius: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: relative;
      overflow: hidden; }
      .contact-section .contact-details .contact-box .contact-icon .feather {
        width: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
        stroke: var(--theme-color); }
      .contact-section .contact-details .contact-box .contact-icon:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        background-color: var(--theme-color);
        opacity: 0.12;
        border-radius: 100%; }

/**=====================
       FAQ Page Css Start
  ==========================**/
.search-title {
  margin-bottom: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
  text-align: center; }
  .search-title h1 {
    font-size: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    display: block;
    margin-top: -10px;
    text-transform: none; }

.faq-section {
  margin-top: -160px; }
  .faq-section .faq-contain {
    text-align: center;
    padding: calc(22px + (40 - 22) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 10px;
    height: 100%;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    z-index: 1;
    background-color: #fff;
    -webkit-box-shadow: 0 8px 40px 0 rgba(33, 37, 41, 0.1);
            box-shadow: 0 8px 40px 0 rgba(33, 37, 41, 0.1); }
    .faq-section .faq-contain .faq-image {
      width: 60px;
      height: 60px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin: 0 auto; }
      .faq-section .faq-contain .faq-image img {
        -o-object-fit: contain;
           object-fit: contain; }
    .faq-section .faq-contain h2 {
      margin-top: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)));
      font-size: calc(20px + (22 - 20) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 500;
      color: #212529; }
    .faq-section .faq-contain h5 {
      color: #7e7e7e;
      font-weight: 300;
      margin-top: 10px;
      line-height: 1.6;
      margin-bottom: -2px;
      margin: 0 auto -2px;
      letter-spacing: 0.03em; }

.faq-details .faq-link-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: sticky;
  top: 30px; }
  .faq-details .faq-link-box ul li {
    display: block; }
  .faq-details .faq-link-box a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: relative;
    padding-bottom: 12px;
    padding-top: 12px;
    color: #212529; }
    .faq-details .faq-link-box a:after {
      content: "";
      position: absolute;
      width: 100%;
      height: 1px;
      bottom: 0;
      left: 0;
      background-color: rgba(120, 144, 174, 0.23); }
      @media (max-width: 575px) {
        .faq-details .faq-link-box a:after {
          opacity: 0; } }
    .faq-details .faq-link-box a h4 {
      font-weight: 200;
      font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .faq-details .faq-link-box a h5 {
      font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 200;
      margin-left: 10px; }
      [dir="rtl"] .faq-details .faq-link-box a h5 {
        margin-left: 0;
        margin-right: 10px; }
    .faq-details .faq-link-box a + a {
      margin-top: 15px; }

.faq-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .faq-heading + .faq-heading {
    margin-top: calc(30px + (45 - 30) * ((100vw - 320px) / (1920 - 320))); }
  .faq-heading .feather {
    width: calc(20px + (22 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: auto;
    margin-top: -3px; }
  .faq-heading .faq-option {
    margin-left: 10px;
    width: calc(100% - 0px); }
    [dir="rtl"] .faq-heading .faq-option {
      margin-left: 0;
      margin-right: 10px; }
    .faq-heading .faq-option h3 {
      font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 400;
      margin-top: -5px;
      margin-bottom: 0;
      line-height: 1.5; }
    .faq-heading .faq-option h6 {
      font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.6;
      letter-spacing: 0.05em;
      margin-bottom: -4px;
      margin-top: 10px; }

/**=====================
       Review Page Css Start
  ==========================**/
.review-section .review-box {
  position: relative;
  padding: calc(20px + (35 - 20) * ((100vw - 320px) / (1920 - 320)));
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(33, 37, 41, 0.08);
          box-shadow: 0 0 8px rgba(33, 37, 41, 0.08);
  border-radius: 7px;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
  overflow: hidden; }
  .review-section .review-box:hover {
    -webkit-box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
    .review-section .review-box:hover .review-image .fa-quote-left {
      opacity: 0.04; }
    .review-section .review-box:hover .review-image .fa-quote-right {
      opacity: 0.04; }
  .review-section .review-box .review-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .review-section .review-box .review-image .fa-quote-left {
      font-size: 170px;
      position: absolute;
      top: -27px;
      left: -12px;
      -webkit-transform: rotate(-9deg);
              transform: rotate(-9deg);
      color: var(--theme-color);
      opacity: 0.03;
      -webkit-transition: 0.5s ease;
      transition: 0.5s ease; }
    .review-section .review-box .review-image .fa-quote-right {
      font-size: 170px;
      position: absolute;
      bottom: -27px;
      right: -12px;
      -webkit-transform: rotate(-9deg);
              transform: rotate(-9deg);
      color: var(--theme-color);
      opacity: 0.03;
      -webkit-transition: 0.5s ease;
      transition: 0.5s ease; }
    .review-section .review-box .review-image .review-profile {
      position: relative;
      width: calc(40px + (50 - 40) * ((100vw - 320px) / (1920 - 320)));
      height: calc(40px + (50 - 40) * ((100vw - 320px) / (1920 - 320)));
      overflow: hidden;
      border-radius: 50%; }
      .review-section .review-box .review-image .review-profile img {
        -webkit-transition: 0.5s ease;
        transition: 0.5s ease;
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
    .review-section .review-box .review-image .rating {
      margin-top: 0; }
      .review-section .review-box .review-image .rating .fa-star {
        font-size: 14px; }
    .review-section .review-box .review-image .image-name {
      margin-left: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320))); }
      [dir="rtl"] .review-section .review-box .review-image .image-name {
        margin-left: 0;
        margin-right: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320))); }
      .review-section .review-box .review-image .image-name h3 {
        position: relative;
        font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
        font-weight: 600;
        margin: 0 0 4px; }
      .review-section .review-box .review-image .image-name p {
        color: #6c757d;
        margin-bottom: -3px;
        font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320))); }
  .review-section .review-box .review-name p {
    margin-top: -4px;
    margin-bottom: 0;
    color: #6c757d;
    letter-spacing: 0.05em;
    line-height: 1.5;
    font-size: 14px;
    margin-bottom: 20px;
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
    text-align: justify;
    word-break: normal;
    line-height: 1.6; }
    .review-section .review-box .review-name p + p {
      margin: 20px 0; }

/**=====================
       Portfolio Page Css Start
  ==========================**/
.portfolio .peregraph {
  text-align: center;
  color: var(--darkgrey);
  margin: 0 auto;
  width: 90%;
  padding: 15px 0; }
  .portfolio .peregraph p {
    margin: 0;
    padding: 0; }

.portfolio .button ul {
  list-style: none;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .portfolio .button ul li {
    display: inline-block;
    font-weight: bold;
    font-size: 15px;
    border: 2px solid transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
    background-color: transparent;
    font-weight: 300;
    color: #7e7e7e;
    border-radius: 5px;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .portfolio .button ul li h4 {
      margin-top: -3px;
      margin-bottom: -4px; }
    .portfolio .button ul li.btn-submit:hover {
      color: var(--theme-color); }
    .portfolio .button ul li.active {
      color: #fff;
      background-color: var(--theme-color); }
      .portfolio .button ul li.active:hover {
        color: #fff; }

.portfolio .parent-container {
  position: relative;
  overflow: hidden; }
  .portfolio .parent-container-size .images {
    width: 100%;
    height: 500px;
    -o-object-fit: cover;
       object-fit: cover; }
  .portfolio .parent-container .images {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%; }
  .portfolio .parent-container:hover .overlay-color {
    top: 0;
    opacity: 1; }
    .portfolio .parent-container:hover .overlay-color .overlay-icon {
      opacity: 1; }
  .portfolio .parent-container .overlay-color {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    opacity: 0;
    padding: 20px; }
    .portfolio .parent-container .overlay-color .overlay-icon {
      background-color: #fff;
      color: #212529;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-transition: 0.8s ease;
      transition: 0.8s ease;
      width: 100%;
      height: 100px;
      padding: 20px;
      border-radius: 4px;
      position: relative;
      opacity: 0; }
      .portfolio .parent-container .overlay-color .overlay-icon h3 {
        font-size: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
        font-weight: 600;
        -webkit-transition: 0.5s ease;
        transition: 0.5s ease;
        position: relative; }
      .portfolio .parent-container .overlay-color .overlay-icon p {
        margin-top: 5px;
        margin-bottom: 0; }

.portfolio .card {
  border: none;
  background-color: #fff; }

/**=====================
       Blog Page Css Start
  ==========================**/
.blog-section .blog-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(240, 243, 248, 0.5);
  padding-right: 35px;
  border-radius: 5px;
  overflow: hidden; }
  @media (max-width: 991px) {
    .blog-section .blog-image {
      display: block; } }
  .blog-section .blog-image img {
    width: 400px;
    height: 400px;
    -o-object-fit: cover;
       object-fit: cover; }
    @media (max-width: 991px) {
      .blog-section .blog-image img {
        width: 100%;
        height: auto; } }
  .blog-section .blog-image .blog-details {
    margin-left: 50px; }
    @media (max-width: 991px) {
      .blog-section .blog-image .blog-details {
        margin-left: 0;
        padding: calc(20px + (36 - 20) * ((100vw - 320px) / (1920 - 320))) calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320))); } }
    .blog-section .blog-image .blog-details h5 {
      margin-bottom: calc(6px + (12 - 6) * ((100vw - 320px) / (1920 - 320)));
      margin-top: -3px;
      font-size: calc(13px + (19 - 13) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 600; }
      .blog-section .blog-image .blog-details h5 span {
        font-weight: 300;
        font-size: 13px; }
    .blog-section .blog-image .blog-details h2 {
      color: #212529;
      font-weight: 500;
      font-size: calc(22px + (36 - 22) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: calc(6px + (12 - 6) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.2;
      letter-spacing: 1px; }
      @media (max-width: 360px) {
        .blog-section .blog-image .blog-details h2 {
          line-height: 1; } }
    .blog-section .blog-image .blog-details p {
      line-height: 1.5;
      font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1920 - 320)));
      letter-spacing: calc(0px + (1 - 0) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: calc(10px + (12 - 10) * ((100vw - 320px) / (1920 - 320))); }
    .blog-section .blog-image .blog-details .blog-profile {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-left: 15px; }
      @media (max-width: 991px) {
        .blog-section .blog-image .blog-details .blog-profile {
          margin-left: 0; } }
      .blog-section .blog-image .blog-details .blog-profile .fa-quote-left {
        font-size: 170px;
        position: absolute;
        top: -27px;
        left: -12px;
        -webkit-transform: rotate(-9deg);
                transform: rotate(-9deg);
        color: var(--theme-color);
        opacity: 0.03;
        -webkit-transition: 0.5s ease;
        transition: 0.5s ease; }
      .blog-section .blog-image .blog-details .blog-profile .fa-quote-right {
        font-size: 170px;
        position: absolute;
        bottom: -27px;
        right: -12px;
        -webkit-transform: rotate(-9deg);
                transform: rotate(-9deg);
        color: var(--theme-color);
        opacity: 0.03;
        -webkit-transition: 0.5s ease;
        transition: 0.5s ease; }
      .blog-section .blog-image .blog-details .blog-profile .image-profile {
        position: relative;
        width: 55px;
        height: 55px;
        overflow: hidden;
        border-radius: 50%; }
        .blog-section .blog-image .blog-details .blog-profile .image-profile img {
          -webkit-transition: 0.5s ease;
          transition: 0.5s ease;
          width: 100%;
          height: auto;
          -o-object-fit: cover;
             object-fit: cover; }
      .blog-section .blog-image .blog-details .blog-profile .image-name {
        margin-left: 15px; }
        .blog-section .blog-image .blog-details .blog-profile .image-name h3 {
          position: relative;
          font-size: 20px;
          margin-top: -6px;
          font-weight: 500;
          margin-bottom: 4px; }
        .blog-section .blog-image .blog-details .blog-profile .image-name span {
          color: #6c757d;
          margin-bottom: -3px;
          font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320))); }
    .blog-section .blog-image .blog-details .review-name p {
      margin-top: -4px;
      margin-bottom: 0;
      color: #6c757d;
      font-size: 16px;
      letter-spacing: 0.7px;
      line-height: 1.5;
      font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: 20px; }
      .blog-section .blog-image .blog-details .review-name p + p {
        margin: 20px 0; }

.blog-categority {
  padding: 0;
  border: none;
  background-color: #fff; }
  .blog-categority.box-bottom {
    margin-bottom: 14px; }
  .blog-categority .blog-img {
    border-radius: 5px;
    position: relative;
    overflow: hidden; }
    .blog-categority .blog-img:after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      background: var(--theme-color);
      opacity: 0;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
  .blog-categority .card-body {
    padding: 0;
    margin-top: 20px;
    background-color: #fff; }
    [dir="rtl"] .blog-categority .card-body {
      direction: rtl; }
    .blog-categority .card-body h5 {
      color: var(--theme-color);
      margin-bottom: 6px; }
    .blog-categority .card-body h2 {
      font-weight: 500;
      line-height: 1.3;
      font-size: 16px;
      margin-bottom: 16px;
      color: #212529; }
    .blog-categority .card-body .blog-profile {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .blog-categority .card-body .blog-profile .image-profile {
        position: relative;
        width: 45px;
        height: 45px;
        overflow: hidden;
        border-radius: 50%; }
        .blog-categority .card-body .blog-profile .image-profile img {
          -webkit-transition: 0.5s ease;
          transition: 0.5s ease;
          width: 100%;
          height: auto;
          -o-object-fit: cover;
             object-fit: cover; }
      .blog-categority .card-body .blog-profile .image-name {
        margin-left: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        [dir="rtl"] .blog-categority .card-body .blog-profile .image-name {
          margin-right: 0; }
        .blog-categority .card-body .blog-profile .image-name h3 {
          position: relative;
          font-size: 16px;
          margin-top: 0;
          margin-bottom: 0;
          color: #7e7e7e;
          font-weight: 400;
          padding-right: 10px;
          border-right: 1px solid #ddd;
          margin-right: 10px; }
          [dir="rtl"] .blog-categority .card-body .blog-profile .image-name h3 {
            padding-right: 0;
            padding-left: 10px;
            border-left: 1px solid #ddd;
            border-right: none;
            margin-right: 0;
            margin-left: 10px; }
        .blog-categority .card-body .blog-profile .image-name h6 {
          color: #7e7e7e;
          margin-bottom: 0;
          font-size: 16px;
          font-weight: 400; }
    .blog-categority .card-body .review-name p {
      margin-top: -4px;
      margin-bottom: 0;
      color: #6c757d;
      font-size: 16px;
      letter-spacing: 0.7px;
      line-height: 1.5;
      font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: 20px; }
      .blog-categority .card-body .review-name p + p {
        margin: 20px 0; }
  .blog-categority:hover .blog-img:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: var(--theme-color);
    opacity: 0.5;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }

.masonary-blog-section {
  position: relative;
  overflow: hidden; }
  .masonary-blog-section .peregraph {
    text-align: center;
    color: var(--darkgrey);
    margin: 0 auto;
    width: 90%;
    padding: 15px 0; }
    .masonary-blog-section .peregraph p {
      margin: 0;
      padding: 0; }
  .masonary-blog-section .button ul {
    list-style: none;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .masonary-blog-section .button ul li {
      display: inline-block;
      font-weight: bold;
      font-size: 15px;
      border: 2px solid transparent;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: relative;
      font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
      background-color: transparent;
      font-weight: 300;
      color: #7e7e7e; }
      .masonary-blog-section .button ul li:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: var(--theme-color);
        -webkit-transition: 0.4s ease;
        transition: 0.4s ease; }
      .masonary-blog-section .button ul li h4 {
        margin-top: -3px;
        margin-bottom: -4px; }
      .masonary-blog-section .button ul li.btn-submit:hover {
        color: var(--theme-color); }
      .masonary-blog-section .button ul li.active {
        color: var(--theme-color); }
        .masonary-blog-section .button ul li.active:after {
          width: 100%; }
  .masonary-blog-section .masonary-blog {
    border-radius: 8px;
    -webkit-box-shadow: 0 5px 15px rgba(33, 37, 41, 0.08);
            box-shadow: 0 5px 15px rgba(33, 37, 41, 0.08);
    border: none;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #fff; }
    @media (max-width: 991px) {
      .masonary-blog-section .masonary-blog {
        display: block; } }
    .masonary-blog-section .masonary-blog.box-shadow {
      -webkit-box-shadow: 0 5px 10px rgba(35, 35, 35, 0.08);
              box-shadow: 0 5px 10px rgba(35, 35, 35, 0.08); }
    .masonary-blog-section .masonary-blog .bg-size {
      width: 30%; }
      @media (max-width: 991px) {
        .masonary-blog-section .masonary-blog .bg-size {
          width: 100%; } }
    .masonary-blog-section .masonary-blog img {
      width: 100%; }
      .masonary-blog-section .masonary-blog img.image-fit {
        height: 350px;
        -o-object-fit: cover;
           object-fit: cover;
        -webkit-box-shadow: 0 5px 10px rgba(35, 35, 35, 0.05);
                box-shadow: 0 5px 10px rgba(35, 35, 35, 0.05); }
    .masonary-blog-section .masonary-blog .card-body {
      padding: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320))); }
      .masonary-blog-section .masonary-blog .card-body-width {
        width: 70%; }
      @media (max-width: 991px) {
        .masonary-blog-section .masonary-blog .card-body {
          width: 100%; } }
      .masonary-blog-section .masonary-blog .card-body.quote-body {
        text-align: center; }
      .masonary-blog-section .masonary-blog .card-body .quote-image {
        width: 60px;
        height: auto;
        display: block;
        opacity: 0.2;
        margin: 0 auto;
        margin-bottom: calc(25px + (40 - 25) * ((100vw - 320px) / (1920 - 320))); }
      .masonary-blog-section .masonary-blog .card-body span {
        margin-bottom: 16px;
        margin-top: -3px;
        display: block; }
      .masonary-blog-section .masonary-blog .card-body .masonary-name {
        letter-spacing: 1.2px;
        margin-bottom: 6px;
        color: var(--theme-color); }
      .masonary-blog-section .masonary-blog .card-body h2 {
        font-weight: 400;
        line-height: 1.4;
        font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1920 - 320)));
        margin-bottom: 6px;
        color: #212529; }
        .masonary-blog-section .masonary-blog .card-body h2.quote-head {
          font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
          letter-spacing: 1.1px; }
      .masonary-blog-section .masonary-blog .card-body p {
        letter-spacing: .06em;
        line-height: 1.6;
        font-weight: 400;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        margin-top: 15px; }
      .masonary-blog-section .masonary-blog .card-body .blog-profile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        border-top: 1px solid #eaeaea;
        padding-top: 16px;
        margin-top: 20px; }
        .masonary-blog-section .masonary-blog .card-body .blog-profile.box-center {
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center; }
        .masonary-blog-section .masonary-blog .card-body .blog-profile .image-profile {
          position: relative;
          width: 50px;
          height: 50px;
          overflow: hidden;
          border-radius: 50%; }
          .masonary-blog-section .masonary-blog .card-body .blog-profile .image-profile img {
            -webkit-transition: 0.5s ease;
            transition: 0.5s ease;
            width: 100%;
            height: auto;
            -o-object-fit: cover;
               object-fit: cover; }
        .masonary-blog-section .masonary-blog .card-body .blog-profile .image-name {
          margin-left: 15px; }
          .masonary-blog-section .masonary-blog .card-body .blog-profile .image-name h3 {
            position: relative;
            font-size: 17px;
            margin: 0 0 5px 0;
            font-weight: 500;
            color: #212529; }
            .masonary-blog-section .masonary-blog .card-body .blog-profile .image-name h3 span {
              font-weight: 400;
              display: revert;
              color: var(--theme-color); }
          .masonary-blog-section .masonary-blog .card-body .blog-profile .image-name h6 {
            color: #6c757d;
            font-size: 14px; }
      .masonary-blog-section .masonary-blog .card-body .review-name p {
        margin-top: -4px;
        margin-bottom: 0;
        color: #6c757d;
        font-size: 16px;
        letter-spacing: 0.7px;
        line-height: 1.5;
        font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
        margin-bottom: 20px; }
        .masonary-blog-section .masonary-blog .card-body .review-name p + p {
          margin: 20px 0; }

.popular-post .popular-title {
  margin-bottom: calc(15px + (24 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .popular-post .popular-title h2 {
    font-size: calc(22px + (35 - 22) * ((100vw - 320px) / (1920 - 320))); }

.popular-post .popular-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 10px; }
  [dir="rtl"] .popular-post .popular-image {
    padding-right: unset; }
  .popular-post .popular-image img {
    width: 100px;
    height: 100px;
    -o-object-fit: cover;
       object-fit: cover; }
  .popular-post .popular-image .popular-contain {
    margin-left: 15px; }
    .popular-post .popular-image .popular-contain h5 {
      font-size: calc(16px + (19 - 16) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: 10px;
      font-weight: 400;
      margin-top: -3px; }
    .popular-post .popular-image .popular-contain p {
      margin-bottom: -1px;
      font-weight: 400; }
      .popular-post .popular-image .popular-contain p span {
        font-weight: 600; }

.popular-post .popular-details p {
  line-height: 1.8; }

.popular-title {
  margin-bottom: 30px;
  background-color: #eff2f7;
  padding: 16px 20px; }
  .popular-title.minus-spacing {
    margin-bottom: 0; }
  .popular-title h3 {
    font-weight: 500;
    font-size: 16px; }

.left-side {
  position: sticky; }
  .left-side .popular-post {
    padding: 20px;
    border: 1px solid #ddd;
    color: #212529;
    border-radius: 5px; }
    .left-side .popular-post .review-box {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin: 2px -2px -2px -2px; }
      .left-side .popular-post .review-box span {
        font-size: 13px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        font-weight: 300;
        margin: 2px; }
        .left-side .popular-post .review-box span .feather {
          width: 15px;
          margin-right: 5px; }
          [dir="rtl"] .left-side .popular-post .review-box span .feather {
            margin-right: unset;
            margin-left: 5px; }
    .left-side .popular-post .popular-image {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
      .left-side .popular-post .popular-image + .popular-image {
        margin-top: 30px; }
      .left-side .popular-post .popular-image .popular-number {
        border-radius: 7px;
        width: 55px; }
        [dir="rtl"] .left-side .popular-post .popular-image .popular-number {
          width: unset;
          margin-left: 15px; }
        .left-side .popular-post .popular-image .popular-number h4 {
          font-size: 30px;
          font-weight: 400;
          line-height: 1;
          margin-top: -4px; }
          @media (max-width: 1199px) {
            .left-side .popular-post .popular-image .popular-number h4 {
              font-size: 20px; } }
      .left-side .popular-post .popular-image img {
        width: 100px;
        height: 100px;
        -o-object-fit: cover;
           object-fit: cover; }
      .left-side .popular-post .popular-image .popular-contain {
        margin-left: 15px; }
        .left-side .popular-post .popular-image .popular-contain h3 {
          font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320)));
          margin-bottom: 5px;
          font-weight: 400;
          line-height: 1.4;
          letter-spacing: -0.3px;
          margin-top: -3px; }
        .left-side .popular-post .popular-image .popular-contain p {
          margin-bottom: -1px;
          font-weight: 400; }
          .left-side .popular-post .popular-image .popular-contain p span {
            font-weight: 600; }
    .left-side .popular-post .popular-details p {
      line-height: 1.8; }
    .left-side .popular-post .popular-details .social-media {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 767px) {
        .left-side .popular-post .popular-details .social-media {
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center; } }
      .left-side .popular-post .popular-details .social-media .social-icon-box {
        width: 30px;
        height: 30px;
        background-color: #212529;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        border-radius: 4px; }
        .left-side .popular-post .popular-details .social-media .social-icon-box + .social-icon-box {
          margin-left: 15px; }
        .left-side .popular-post .popular-details .social-media .social-icon-box i {
          color: #fff; }
  .left-side .category-section .category-box {
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    display: block; }
    .left-side .category-section .category-box + .category-box {
      margin-top: 5px; }
    .left-side .category-section .category-box:hover {
      -webkit-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out; }
      .left-side .category-section .category-box:hover .category-product {
        background-color: #f0f3f8; }
        .left-side .category-section .category-box:hover .category-product .cate-shape {
          background-color: var(--theme-color); }
          .left-side .category-section .category-box:hover .category-product .cate-shape i {
            color: #fff !important; }
        .left-side .category-section .category-box:hover .category-product .cate-contain h5 {
          color: #212529;
          font-weight: 500; }
    .left-side .category-section .category-box .category-product {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border-radius: 5px;
      -webkit-transition: 0.5s ease;
      transition: 0.5s ease; }
      .left-side .category-section .category-box .category-product .cate-shape {
        width: 40px;
        height: 40px;
        border-radius: 6px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out; }
        .left-side .category-section .category-box .category-product .cate-shape i {
          font-size: 16px;
          -webkit-transition: all 0.5s ease-in-out;
          transition: all 0.5s ease-in-out; }
      .left-side .category-section .category-box .category-product .cate-contain {
        margin-left: 15px;
        -webkit-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out; }
        [dir="rtl"] .left-side .category-section .category-box .category-product .cate-contain {
          margin-left: unset;
          margin-right: 15px; }
        .left-side .category-section .category-box .category-product .cate-contain h5 {
          -webkit-transition: all 0.5s ease-in-out;
          transition: all 0.5s ease-in-out;
          color: #212529;
          font-weight: 300; }
    .left-side .category-section .category-box:hover .category-product .cate-shape i {
      color: var(--theme-color); }
    .left-side .category-section .category-box:hover .category-product .cate-contain h5 {
      color: var(--theme-color); }
  .left-side .tag-section .button-tags {
    display: inline-block;
    margin: 2px 0; }

.blog-details {
  border-radius: 8px;
  border: none;
  overflow: hidden;
  display: block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative; }
  @media (max-width: 767px) {
    .blog-details {
      margin-top: 30px; } }
  .blog-details .blog-image-box {
    position: relative; }
    .blog-details .blog-image-box img {
      width: 100%; }
    .blog-details .blog-image-box .blog-title {
      position: absolute;
      bottom: 20px;
      right: 20px;
      padding: 15px;
      background: #fff;
      border-radius: 6px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center; }
      @media (max-width: 575px) {
        .blog-details .blog-image-box .blog-title {
          padding: 6px;
          bottom: 10px;
          right: 10px;
          background-color: transparent; } }
      .blog-details .blog-image-box .blog-title .blog-contain {
        margin-top: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320))); }
        .blog-details .blog-image-box .blog-title .blog-contain h4 {
          font-weight: 300;
          margin-bottom: 10px; }
          @media (max-width: 360px) {
            .blog-details .blog-image-box .blog-title .blog-contain h4 {
              display: none; } }
        .blog-details .blog-image-box .blog-title .blog-contain h2 {
          font-size: calc(16px + (28 - 16) * ((100vw - 320px) / (1920 - 320))); }
  .blog-details .blog-detail-contain {
    padding: 0 0 calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320))) 0;
    margin-top: 40px; }
    .blog-details .blog-detail-contain span {
      margin-bottom: 16px;
      margin-top: -5px;
      display: block; }
    .blog-details .blog-detail-contain h2 {
      font-weight: 400;
      line-height: 1.2;
      font-size: calc(18px + (27 - 18) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: 16px;
      margin-top: -8px; }
    .blog-details .blog-detail-contain p {
      letter-spacing: 0.05em;
      line-height: 1.6;
      font-weight: 400;
      margin-bottom: 0;
      text-align: justify; }
      .blog-details .blog-detail-contain p + p {
        margin-top: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320))); }
      .blog-details .blog-detail-contain p.firt-latter::first-letter {
        float: left;
        font-size: 75px;
        line-height: 60px;
        padding-top: 4px;
        padding-right: 15px;
        padding-left: 3px;
        color: #212529; }
    .blog-details .blog-detail-contain .blog-profile {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .blog-details .blog-detail-contain .blog-profile .image-profile {
        position: relative;
        width: 55px;
        height: 55px;
        overflow: hidden;
        border-radius: 50%; }
        .blog-details .blog-detail-contain .blog-profile .image-profile img {
          -webkit-transition: 0.5s ease;
          transition: 0.5s ease;
          width: 100%;
          height: auto;
          -o-object-fit: cover;
             object-fit: cover; }
      .blog-details .blog-detail-contain .blog-profile .image-name {
        margin-left: 15px; }
        .blog-details .blog-detail-contain .blog-profile .image-name h3 {
          position: relative;
          font-size: calc(17px + (20 - 17) * ((100vw - 320px) / (1920 - 320)));
          font-weight: 500;
          margin-bottom: 4px; }
        .blog-details .blog-detail-contain .blog-profile .image-name h6 {
          color: #6c757d;
          font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320))); }
    .blog-details .blog-detail-contain .review-name p {
      margin-top: -4px;
      margin-bottom: 0;
      color: #6c757d;
      font-size: 16px;
      letter-spacing: 0.7px;
      line-height: 1.5;
      font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
      margin-bottom: 20px; }
      .blog-details .blog-detail-contain .review-name p + p {
        margin: 20px 0; }

.leave-comments .form-control {
  background-color: #f0f3f8;
  border: none; }
  .leave-comments .form-control:focus {
    border-color: transparent; }

.block-shadow-space {
  padding-bottom: calc(80px - 14px); }

/**=====================
       Pagination Css Start
  ==========================**/
.page-section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  margin-top: 50px; }
  .page-section .pagination {
    margin-bottom: 0; }
    [dir="rtl"] .page-section .pagination .page-item .page-link span i {
      -webkit-transform: rotate(-180deg);
              transform: rotate(-180deg); }
    .page-section .pagination .page-item + .page-item {
      margin-left: 10px; }
      [dir="rtl"] .page-section .pagination .page-item + .page-item {
        margin-left: unset;
        margin-right: 10px; }
    .page-section .pagination .page-item.active .page-link {
      border-radius: 5px;
      background-color: var(--theme-color);
      color: #fff;
      font-weight: 600;
      z-index: 0; }
    .page-section .pagination .page-item .page-link {
      border: 1px solid transparent;
      color: var(--theme-color);
      border-radius: 5px;
      background-color: #fff; }
      .page-section .pagination .page-item .page-link:hover {
        background-color: #eff2f7;
        color: var(--theme-color); }
      .page-section .pagination .page-item .page-link:focus {
        background-color: transparent;
        -webkit-box-shadow: none;
                box-shadow: none; }

/**=====================
       Cart Page Scss Start
  ==========================**/
.wish-list-section.table-dashboard thead tr th {
  padding: 16px 12px; }

.wish-list-section.table-dashboard tbody tr td {
  padding: 16px; }

.wish-list-section .count-down {
  margin-bottom: 20px;
  background: #f0f3f8;
  padding: 10px;
  letter-spacing: 1.1px;
  margin-bottom: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #212529; }
  @media (max-width: 767px) {
    .wish-list-section .count-down {
      display: block;
      text-align: center; } }
  .wish-list-section .count-down h5 {
    margin-right: 10px; }
    @media (max-width: 767px) {
      .wish-list-section .count-down h5 {
        margin-right: 0; } }

.wish-list-section.shopping-button {
  display: block; }
  .wish-list-section.shopping-button .fas {
    margin-right: 10px; }

.table tbody + tbody {
  border-top: none; }

.cart-buttons {
  padding-top: 35px; }
  .cart-buttons > div:last-child {
    text-align: right;
    padding-right: 59px;
    padding-right: 38px; }

@media (max-width: 767px) {
  .wishlist-table thead tr th:nth-child(n + 3) {
    display: none; } }

@media (max-width: 767px) {
  .wishlist-table tbody tr td:nth-child(n + 3) {
    display: none; }
  .wishlist-table tbody tr td .mobile-cart-content .col {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; } }

.cart-table {
  overflow: hidden;
  margin-bottom: 0; }
  .cart-table thead th {
    border-bottom-width: 1px;
    font-weight: 600;
    color: #212529;
    text-transform: uppercase;
    font-size: 14px;
    border-top: 0;
    text-align: center;
    padding: 12px;
    border-bottom: 1px solid #eff2f7 !important;
    background-color: #eff2f7; }
  .cart-table tbody h2 {
    margin-bottom: 0; }
  .cart-table tbody tr td {
    vertical-align: middle;
    color: #777777;
    border-top: 0;
    border-bottom: 1px solid #eff2f7 !important;
    text-align: center;
    padding: 14px 8px; }
    .cart-table tbody tr td a {
      white-space: nowrap;
      font-weight: 400;
      font-size: 14px;
      text-transform: capitalize;
      margin-bottom: 0;
      display: inline-block; }
      .cart-table tbody tr td a.icon {
        background-color: #eff2f7;
        border: 1px solid #eff2f7;
        margin: 0 5px; }
        @media (max-width: 767px) {
          .cart-table tbody tr td a.icon {
            margin: 0; } }
        .cart-table tbody tr td a.icon:hover .fas {
          color: var(--theme-color); }
        .cart-table tbody tr td a.icon .fas {
          width: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
          height: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
          font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          border-radius: 3px; }
      .cart-table tbody tr td a img {
        height: 70px; }
    .cart-table tbody tr td p {
      color: #212529;
      white-space: nowrap;
      font-weight: 400;
      font-size: 14px;
      text-transform: capitalize;
      margin-bottom: 0; }
      .cart-table tbody tr td p img {
        height: 90px; }
    .cart-table tbody tr td .td-color {
      color: var(--theme-deafult); }
    .cart-table tbody tr td h2 {
      font-size: 20px;
      color: #212529;
      font-weight: 400; }
    .cart-table tbody tr td .mobile-cart-content {
      display: none;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 10px; }
      @media (max-width: 767px) {
        .cart-table tbody tr td .mobile-cart-content {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; } }
      .cart-table tbody tr td .mobile-cart-content .qty-box {
        border-radius: 5px; }
        .cart-table tbody tr td .mobile-cart-content .qty-box .input-group .form-control {
          width: 48px;
          padding: 6px; }
      .cart-table tbody tr td .mobile-cart-content .col {
        -ms-flex-item-align: center;
            align-self: center;
        margin: 10px 0; }
        @media (max-width: 767px) {
          .cart-table tbody tr td .mobile-cart-content .col {
            margin: 0;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            white-space: nowrap; } }
      .cart-table tbody tr td .mobile-cart-content h2 {
        font-size: 20px;
        margin-left: 10px; }
    .cart-table tbody tr td .qty-box .input-group {
      display: block; }
      .cart-table tbody tr td .qty-box .input-group .form-control {
        width: 75px;
        margin: 0 auto;
        text-align: center; }

tfoot tr th {
  padding-top: 35px;
  text-align: right; }

tfoot tr td {
  padding-top: 35px;
  padding-bottom: 0;
  text-align: right;
  border: none;
  padding-right: 63px;
  padding-right: 41px; }
  tfoot tr td h2 {
    font-size: 20px;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center; }
  tfoot tr td:first-child {
    width: 85%;
    font-size: 15px;
    padding-right: 10px;
    text-transform: capitalize;
    font-weight: 700; }

.left-side-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .left-side-button a {
    border-radius: 5px; }
    .left-side-button a i {
      margin-right: 6px; }
  @media (max-width: 767px) {
    .left-side-button {
      text-align: center; } }
  @media (max-width: 767px) {
    .left-side-button .shopping-button {
      width: 100%;
      text-align: center; } }

.cart-section .count-down {
  margin-bottom: 5px;
  padding: 0;
  letter-spacing: 1.1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #212529; }
  @media (max-width: 767px) {
    .cart-section .count-down {
      display: block;
      text-align: center; } }
  .cart-section .count-down h5 {
    margin-right: 10px; }
    [dir="rtl"] .cart-section .count-down h5 {
      margin-right: unset;
      margin-left: 10px; }
    @media (max-width: 767px) {
      .cart-section .count-down h5 {
        margin-right: 0;
        margin-bottom: 13px; } }

.cart-section .table tbody + tbody {
  border-top: none; }

.cart-section .cart-buttons {
  padding-top: 35px; }
  .cart-section .cart-buttons > div:last-child {
    text-align: right;
    padding-right: 59px;
    padding-right: 38px; }

.cart-section .cart-table {
  overflow: hidden;
  margin-bottom: 0; }
  .cart-section .cart-table thead th {
    border-bottom-width: 1px;
    font-weight: 600;
    color: #212529;
    text-transform: uppercase;
    font-size: 15px;
    border-top: 0;
    text-align: center;
    border-bottom: 1px solid #eff2f7 !important;
    padding: 12px;
    background-color: #eff2f7; }
    @media (max-width: 767px) {
      .cart-section .cart-table thead th:nth-last-child(-n + 4) {
        display: none; } }

.cart-section tbody h2 {
  margin-bottom: 0; }

.cart-section tbody tr.table-order td {
  min-width: 150px; }

.cart-section tbody tr td {
  vertical-align: middle;
  color: #212529;
  border-top: 0;
  border-bottom: 1px solid #c7c7c5 !important;
  text-align: center;
  min-width: 175px; }
  @media (max-width: 767px) {
    .cart-section tbody tr td:nth-last-child(-n + 4) {
      display: none; } }
  .cart-section tbody tr td a {
    color: #7e7e7e;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 0; }
    .cart-section tbody tr td a.icon {
      border: 1px solid rgba(169, 169, 169, 0.5);
      padding: 10px 15px;
      border-radius: 3px; }
    .cart-section tbody tr td a img {
      height: 80px; }
  .cart-section tbody tr td p {
    color: #777777;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 0; }
    .cart-section tbody tr td p img {
      height: 90px; }
  .cart-section tbody tr td .td-color {
    color: var(--theme-deafult); }
  .cart-section tbody tr td h2 {
    font-size: 20px;
    color: var(--theme-color);
    font-weight: 400; }
  .cart-section tbody tr td .mobile-cart-content {
    display: none;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 10px; }
    @media (max-width: 767px) {
      .cart-section tbody tr td .mobile-cart-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; } }
    .cart-section tbody tr td .mobile-cart-content .qty-box {
      border-radius: 5px; }
      .cart-section tbody tr td .mobile-cart-content .qty-box .input-group .form-control {
        width: 48px;
        padding: 6px; }
    .cart-section tbody tr td .mobile-cart-content .col {
      -ms-flex-item-align: center;
          align-self: center;
      margin: 10px 0; }
      @media (max-width: 767px) {
        .cart-section tbody tr td .mobile-cart-content .col {
          margin: 0;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; } }
    .cart-section tbody tr td .mobile-cart-content h2 {
      font-size: 20px; }
  .cart-section tbody tr td .qty-box .input-group {
    display: block; }
    .cart-section tbody tr td .qty-box .input-group .form-control {
      width: 75px;
      margin: 0 auto;
      text-align: center;
      padding: 5px;
      height: 50px; }

.cart-section tfoot tr th {
  padding-top: 35px;
  text-align: right; }

.cart-section tfoot tr td {
  padding-top: 35px;
  padding-bottom: 0;
  text-align: right;
  border: none;
  padding-right: 63px;
  padding-right: 41px; }
  .cart-section tfoot tr td h2 {
    font-size: 20px;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center; }
  .cart-section tfoot tr td:first-child {
    width: 85%;
    font-size: 15px;
    padding-right: 10px;
    text-transform: capitalize;
    font-weight: 700; }

.cart-section .left-side-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  [dir="rtl"] .cart-section .left-side-button a i {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  @media (max-width: 767px) {
    .cart-section .left-side-button {
      text-align: center; } }
  @media (max-width: 767px) {
    .cart-section .left-side-button .shopping-button {
      width: 100%;
      text-align: center; } }

.cart-section .cart-checkout-section {
  margin-top: 30px; }
  .cart-section .cart-checkout-section .promo-section .input-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .cart-section .cart-checkout-section .promo-section .input-group .form-control {
      padding: 12px 20px; }
  .cart-section .cart-checkout-section .checkout-button {
    text-align: right; }
    [dir="rtl"] .cart-section .cart-checkout-section .checkout-button {
      text-align: left; }
    .cart-section .cart-checkout-section .checkout-button a {
      border-radius: 5px; }
  .cart-section .cart-checkout-section .cart-box {
    background-color: #eff2f7;
    border-radius: 10px;
    overflow: hidden;
    padding: 0; }
    .cart-section .cart-checkout-section .cart-box label {
      font-weight: 500;
      margin-bottom: 8px;
      text-transform: capitalize; }
    .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details span {
      float: right; }
      [dir="rtl"] .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details span {
        float: left; }
    .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .top-details {
      border-bottom: 1px solid #c7c7c5;
      padding: 22px;
      margin-bottom: 0; }
      .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .top-details h3 {
        margin-bottom: 10px;
        color: #212529; }
      .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .top-details h6 {
        line-height: 1.9;
        color: #212529; }
    .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .bottom-details a {
      background-color: var(--theme-color);
      width: 100%;
      display: block;
      padding: 12px 0;
      text-align: center;
      color: #fff;
      font-weight: 500;
      letter-spacing: 1.2px; }

/**=====================
       Checkout Page Scss Start
  ==========================**/
.your-cart-box {
  position: sticky;
  top: 10px; }
  .your-cart-box .list-group .lh-condensed {
    padding: 15px 25px;
    background-color: #fff; }
    .your-cart-box .list-group .lh-condensed.active {
      background: #eff2f7;
      border-color: rgba(33, 37, 41, 0.125); }
    .your-cart-box .list-group .lh-condensed h6 {
      color: #212529; }
    .your-cart-box .list-group .lh-condensed small,
    .your-cart-box .list-group .lh-condensed span,
    .your-cart-box .list-group .lh-condensed strong {
      color: #7e7e7e; }
  .your-cart-box .list-group .card {
    border: none; }
  .your-cart-box .new-badge {
    border-radius: 50% !important;
    padding: 8px;
    line-height: 0;
    font-size: 13px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 25px;
    height: 25px; }
  .your-cart-box .custome-imput-group .form-control {
    padding: 6px 12px; }

.custome-form-select {
  padding: 12px 20px; }

.checkout-label {
  padding-top: 2px; }

.custome-radio-box {
  display: inline-block;
  margin-right: 10px; }
  [dir="rtl"] .custome-radio-box {
    margin-right: 0;
    margin-left: 10px; }
  .custome-radio-box .form-check-input {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    margin-top: 2px;
    background-color: #fff; }
    .custome-radio-box .form-check-input:checked {
      background-color: var(--theme-color);
      border-color: var(--theme-color); }
    .custome-radio-box .form-check-input:active {
      -webkit-filter: none;
              filter: none; }
    .custome-radio-box .form-check-input:focus {
      -webkit-box-shadow: none;
              box-shadow: none; }

hr {
  background-color: #6c757d; }

/**=====================
       Order Success css Start
  ==========================**/
.success-icon {
  padding: 70px 20px;
  background-color: #f0f3f8; }
  @media (max-width: 575px) {
    .success-icon {
      padding: 30px 20px; } }
  .success-icon .main-container {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    align-items: center; }
    .success-icon .main-container .check-container {
      width: 100px;
      height: 120px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      -webkit-animation: mover 1s infinite alternate;
              animation: mover 1s infinite alternate; }
      .success-icon .main-container .check-container .check-background {
        width: 100%;
        height: calc(100% - 20px);
        background: -webkit-gradient(linear, left top, right bottom, from(#008000), to(#008000));
        background: linear-gradient(to bottom right, #008000, #008000);
        -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
                box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        -webkit-transform: scale(0.84);
                transform: scale(0.84);
        border-radius: 50%;
        -webkit-animation: animateContainer 0.75s ease-out forwards 0.75s;
                animation: animateContainer 0.75s ease-out forwards 0.75s;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        opacity: 0; }
        .success-icon .main-container .check-container .check-background svg {
          width: 65%;
          -webkit-transform: translateY(4px);
                  transform: translateY(4px);
          stroke-dasharray: 80;
          stroke-dashoffset: 80;
          -webkit-animation: animateCheck 0.35s forwards 1.25s ease-out;
                  animation: animateCheck 0.35s forwards 1.25s ease-out; }
      .success-icon .main-container .check-container .check-shadow {
        bottom: calc(-15% - 5px);
        left: 0;
        border-radius: 50%;
        background: radial-gradient(closest-side, #49da83, transparent);
        -webkit-animation: animateShadow 0.75s ease-out forwards 0.75s;
                animation: animateShadow 0.75s ease-out forwards 0.75s; }
  .success-icon .success-contain {
    text-align: center; }
    .success-icon .success-contain h4 {
      color: green;
      font-size: 30px;
      font-weight: 500; }
    .success-icon .success-contain h5 {
      margin: 5px 0 10px;
      font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320))); }
    .success-icon .success-contain h6 {
      letter-spacing: 1.1px; }

.order-left-box {
  position: relative;
  text-align: center; }
  .order-left-box:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd; }
  .order-left-box:nth-child(4)::after {
    width: 0; }
  @media (max-width: 991px) {
    .order-left-box:nth-child(2)::after {
      width: 0; } }

.order-details-table .table tbody {
  border-bottom: 1px solid #ddd; }
  .order-details-table .table tbody tr td {
    padding: 10px;
    text-align: left;
    max-width: 150px;
    border-bottom: none !important;
    color: #7e7e7e; }
    [dir="rtl"] .order-details-table .table tbody tr td {
      text-align: right; }
    @media (max-width: 767px) {
      .order-details-table .table tbody tr td:nth-last-child(-n + 4) {
        display: revert !important; } }
    .order-details-table .table tbody tr td:nth-child(1) {
      background-color: transparent; }
    .order-details-table .table tbody tr td h5 {
      margin-top: 10px;
      color: #212529; }

.order-details-table .table tfoot tr td {
  text-align: right;
  padding: 10px 15px; }
  [dir="rtl"] .order-details-table .table tfoot tr td {
    text-align: left; }
  .order-details-table .table tfoot tr td:nth-child(1) {
    text-align: left;
    width: 100%; }
    [dir="rtl"] .order-details-table .table tfoot tr td:nth-child(1) {
      text-align: right; }
  .order-details-table .table tfoot tr td h4 {
    font-weight: 400;
    color: #212529; }

.order-details-table .table tfoot tr.table-order:nth-child(3) {
  border-bottom: 1px solid #ddd; }

.order-details-table .order-success {
  padding: 30px;
  border-radius: 5px;
  background-color: #eff2f7; }
  @media (max-width: 360px) {
    .order-details-table .order-success {
      padding: 20px; } }
  .order-details-table .order-success h4 {
    font-weight: 700;
    text-transform: capitalize;
    font-size: 16px;
    margin-bottom: 8px; }
  .order-details-table .order-success .order-details li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-transform: capitalize;
    line-height: 1.6;
    font-size: 15px;
    margin-bottom: 3px;
    color: #7e7e7e; }
  .order-details-table .order-success .payment-mode p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0;
    color: #7e7e7e;
    letter-spacing: 1px; }
  .order-details-table .order-success .delivery-sec {
    margin-bottom: -5px;
    padding: 0;
    margin-top: 20px;
    background-color: transparent; }
    .order-details-table .order-success .delivery-sec h3 {
      color: #212529;
      text-transform: capitalize;
      font-size: 18px;
      margin-bottom: 0;
      font-weight: 400; }
      .order-details-table .order-success .delivery-sec h3 span {
        font-weight: 700;
        margin-left: 5px; }
        [dir="rtl"] .order-details-table .order-success .delivery-sec h3 span {
          margin-left: 0;
          margin-right: 5px; }
    .order-details-table .order-success .delivery-sec a {
      font-size: 16px;
      text-transform: capitalize;
      margin-top: 5px;
      display: block;
      font-weight: 600; }

/**=======================
   Dashboard Scss Start
  ============================**/
.dash-filter {
  margin-bottom: 40px; }

.custome-nav-tabs {
  padding: 20px;
  color: black;
  border: none;
  border-radius: 5px;
  position: sticky;
  top: 10px;
  background: #eff2f7; }
  [dir="rtl"] .custome-nav-tabs {
    padding: 20px; }
  @media (max-width: 991px) {
    .custome-nav-tabs {
      position: fixed;
      z-index: 9;
      top: 0;
      left: -300px;
      width: 300px;
      height: 100%;
      z-index: 1;
      border-radius: 0;
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
      .custome-nav-tabs.show {
        left: 0; } }
  .custome-nav-tabs .nav-item .nav-link {
    width: 100%;
    text-align: left;
    border-radius: 5px;
    background: transparent;
    border: 1px solid transparent;
    position: relative;
    font-size: 16px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: #212529 !important; }
    [dir="rtl"] .custome-nav-tabs .nav-item .nav-link {
      text-align: right; }
    .custome-nav-tabs .nav-item .nav-link i {
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      -webkit-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out; }
      [dir="rtl"] .custome-nav-tabs .nav-item .nav-link i {
        top: 3px;
        left: unset;
        right: 0;
        -webkit-transform: rotate(180deg) translateY(-50%);
                transform: rotate(180deg) translateY(-50%); }
    .custome-nav-tabs .nav-item .nav-link:before {
      content: "\f101";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out;
      opacity: 0; }
      [dir="rtl"] .custome-nav-tabs .nav-item .nav-link:before {
        left: unset;
        right: 0;
        top: 0;
        -webkit-transform: rotate(180deg) translateY(-50%);
                transform: rotate(180deg) translateY(-50%); }
    .custome-nav-tabs .nav-item .nav-link:hover {
      padding-left: 20px;
      color: var(--theme-color) !important; }
      [dir="rtl"] .custome-nav-tabs .nav-item .nav-link:hover {
        padding-left: 0;
        padding-right: 20px; }
      .custome-nav-tabs .nav-item .nav-link:hover:before {
        opacity: 1;
        left: 0px; }
        [dir="rtl"] .custome-nav-tabs .nav-item .nav-link:hover:before {
          left: unset;
          right: 0; }
    .custome-nav-tabs .nav-item .nav-link.active {
      padding-left: 20px;
      color: var(--theme-color) !important;
      font-weight: 600; }
      [dir="rtl"] .custome-nav-tabs .nav-item .nav-link.active {
        padding-left: 0;
        padding-right: 20px; }
      .custome-nav-tabs .nav-item .nav-link.active:before {
        opacity: 1;
        left: 0px; }
        [dir="rtl"] .custome-nav-tabs .nav-item .nav-link.active:before {
          left: unset;
          right: 0;
          top: 0;
          -webkit-transform: rotate(180deg) translateY(-50%);
                  transform: rotate(180deg) translateY(-50%); }

.page-title {
  margin-bottom: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .page-title h2 {
    font-size: 28px;
    margin-top: -3px;
    color: #212529; }
  .page-title a {
    margin-left: 30px; }

.box-head {
  margin-bottom: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .box-head h2 {
    font-size: 25px;
    letter-spacing: 1.1px; }
  .box-head a {
    margin-left: 20px; }
    [dir="rtl"] .box-head a {
      margin-left: unset;
      margin-right: 20px; }

.dashboard {
  background-color: transparent;
  padding: 0 15px;
  border: none;
  border-radius: 6px; }
  .dashboard .page-title {
    margin-bottom: calc(22px + (32 - 22) * ((100vw - 320px) / (1920 - 320))); }
    .dashboard .page-title h2 {
      font-size: calc(22px + (38 - 22) * ((100vw - 320px) / (1920 - 320))); }
  .dashboard address a {
    display: block;
    margin-bottom: -5px;
    margin-top: 10px; }
  .dashboard .welcome-msg p {
    letter-spacing: 0.3px;
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.5; }
  .dashboard .welcome-msg h6 {
    letter-spacing: 1.5px; }
    .dashboard .welcome-msg h6 span {
      font-weight: 600;
      color: #212529; }
  .dashboard .box-account {
    margin-top: calc(25px + (45 - 25) * ((100vw - 320px) / (1920 - 320))); }
    .dashboard .box-account .box-content {
      margin: 10px 0; }
      .dashboard .box-account .box-content h4 {
        margin: 15px 0; }
  .dashboard .address-box {
    margin-top: calc(5px + (20 - 5) * ((100vw - 320px) / (1920 - 320))); }
  .dashboard .box-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding: calc(4px + (8 - 4) * ((100vw - 320px) / (1920 - 320))) 0; }
    .dashboard .box-title h3 {
      font-weight: 400; }
  .dashboard h6,
  .dashboard p {
    margin: 6px 0;
    line-height: 1.4; }

.order-box-contain .order-box {
  position: relative;
  overflow: hidden;
  padding: 20px 30px;
  border-radius: 6px;
  background-color: #eff2f7;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .order-box-contain .order-box .order-box-image {
    position: absolute;
    top: 50%;
    right: -20px;
    width: 25%;
    opacity: 0.04;
    -webkit-transform: rotate(0) translateY(-50%);
            transform: rotate(0) translateY(-50%);
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }
    [dir="rtl"] .order-box-contain .order-box .order-box-image {
      left: -20px;
      right: unset; }
  .order-box-contain .order-box:hover .order-box-image {
    -webkit-transform: rotate(-7deg) translateY(-50%);
            transform: rotate(-7deg) translateY(-50%);
    opacity: 0.25; }
    [dir="rtl"] .order-box-contain .order-box:hover .order-box-image {
      -webkit-transform: rotate(7deg) translateY(-50%);
              transform: rotate(7deg) translateY(-50%); }
  .order-box-contain .order-box .order-box-contain {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .order-box-contain .order-box .order-box-contain img {
      width: calc(40px + (50 - 40) * ((100vw - 320px) / (1920 - 320))); }
    .order-box-contain .order-box .order-box-contain > div {
      width: calc(100% - 20px);
      margin-left: 15px;
      text-transform: capitalize; }
      [dir="rtl"] .order-box-contain .order-box .order-box-contain > div {
        margin-left: unset;
        margin-right: 15px; }
      .order-box-contain .order-box .order-box-contain > div h3 {
        margin-top: 6px; }

.dashboard-profile .dash-profile li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2px; }
  @media (max-width: 575px) {
    .dashboard-profile .dash-profile li {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .dashboard-profile .dash-profile li .left {
    width: 220px; }
    @media (max-width: 575px) {
      .dashboard-profile .dash-profile li .left {
        width: auto;
        margin-right: 10px; }
        [dir="rtl"] .dashboard-profile .dash-profile li .left {
          margin-right: 0;
          margin-left: 10px; } }
    .dashboard-profile .dash-profile li .left h6 {
      margin: 0; }
  .dashboard-profile .dash-profile li a {
    margin-left: 20px; }
    [dir="rtl"] .dashboard-profile .dash-profile li a {
      margin-left: unset;
      margin-right: 20px; }

.dashboard-security .page-title {
  margin-bottom: 10px; }

.dashboard-security p {
  line-height: 1.6;
  letter-spacing: 0.05em; }

.dashboard-security .security-details {
  margin-bottom: 18px; }
  .dashboard-security .security-details h5 span {
    font-weight: 500;
    color: #212529; }

.dashboard-security .security-details-1 {
  border: 1px dashed rgba(0, 0, 0, 0.28);
  border-radius: 5px;
  padding: 15px; }

.success-button {
  background-color: green;
  margin: 0 !important;
  padding: 4px 10px;
  border-radius: 5px;
  font-size: 12px !important;
  color: #fff !important; }

.danger-button {
  background-color: var(--theme-color);
  margin: 0 !important;
  padding: 4px 10px;
  border-radius: 5px;
  font-size: 12px !important;
  color: #fff !important; }
  .danger-button.danger-center {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
    margin: 0 !important; }
    .danger-button.danger-center .feather {
      stroke: #fff; }

.save-details-box .save-details {
  border: 1px solid #eff2f7;
  padding: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  border-radius: 5px;
  background-color: #eff2f7;
  position: relative; }
  .save-details-box .save-details.show {
    -webkit-box-shadow: 0 0px 10px rgba(33, 37, 41, 0.2);
            box-shadow: 0 0px 10px rgba(33, 37, 41, 0.2); }
  .save-details-box .save-details .save-name {
    position: relative;
    margin-bottom: 20px; }
    .save-details-box .save-details .save-name h5 {
      color: #212529; }
  .save-details-box .save-details .save-position {
    position: absolute;
    background-color: var(--theme-color);
    top: 0;
    right: 0;
    color: #fff;
    padding: 8px 15px;
    border-radius: 4px; }
    [dir="rtl"] .save-details-box .save-details .save-position {
      right: unset;
      left: 0; }
    .save-details-box .save-details .save-position h6 {
      margin: 0;
      margin-bottom: -2px;
      font-weight: 500; }
  .save-details-box .save-details .save-address p {
    line-height: 1.4;
    letter-spacing: 1px;
    margin: 0 0 calc(2px + (5 - 2) * ((100vw - 320px) / (1920 - 320))); }
  .save-details-box .save-details .mobile p.mobile {
    margin-top: 20px;
    padding-bottom: 6px; }
  .save-details-box .save-details .button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: -5px; }
    .save-details-box .save-details .button a {
      width: 100%;
      margin: 5px;
      background-color: #fff;
      color: #212529; }

.payment-card-detail {
  position: relative; }
  .payment-card-detail:hover .edit-card {
    opacity: 1;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  .payment-card-detail.add-card {
    background-color: #f9f9f9;
    cursor: pointer;
    padding: 0; }
    .payment-card-detail.add-card .card-details {
      min-height: 130px;
      background: #d2d2d2;
      color: #212529;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center; }
      .payment-card-detail.add-card .card-details h5 {
        margin-bottom: 0;
        text-transform: capitalize; }
  .payment-card-detail .card-details {
    color: #fff;
    padding: 30px 20px;
    border-radius: 5px;
    background-color: #4b77a0;
    background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0) 1px, rgba(255, 255, 255, 0.03) 2px, rgba(255, 255, 255, 0.04) 3px, rgba(255, 255, 255, 0.05) 4px), -webkit-linear-gradient(-245deg, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2) 70%, rgba(255, 255, 255, 0) 90%); }
    .payment-card-detail .card-details.card-visa {
      background-color: #777876; }
    .payment-card-detail .card-details.dabit-card {
      background-color: #86b8cf; }
    .payment-card-detail .card-details .card-number {
      margin-bottom: 10px; }
      .payment-card-detail .card-details .card-number h4 {
        color: #fff; }
    .payment-card-detail .card-details .valid-detail {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320))); }
      .payment-card-detail .card-details .valid-detail .title {
        margin-bottom: 0; }
        .payment-card-detail .card-details .valid-detail .title span {
          display: block;
          color: rgba(255, 255, 255, 0.7);
          text-transform: uppercase;
          font-size: 12px;
          line-height: 1.3; }
      .payment-card-detail .card-details .valid-detail .date h3 {
        margin-bottom: 0;
        color: #fff;
        margin-left: 15px;
        font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
        font-weight: normal; }
        [dir="rtl"] .payment-card-detail .card-details .valid-detail .date h3 {
          margin-left: 0;
          margin-right: 15px; }
      .payment-card-detail .card-details .valid-detail .primary {
        margin-left: auto; }
        [dir="rtl"] .payment-card-detail .card-details .valid-detail .primary {
          margin-left: 0;
          margin-right: auto; }
        .payment-card-detail .card-details .valid-detail .primary span {
          font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
          padding: 0;
          font-weight: 400;
          text-transform: capitalize; }
    .payment-card-detail .card-details .name-detail {
      margin-top: calc(10px + (25 - 10) * ((100vw - 320px) / (1920 - 320)));
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .payment-card-detail .card-details .name-detail .name {
        width: 100%; }
        .payment-card-detail .card-details .name-detail .name h5 {
          text-transform: uppercase;
          font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
          margin-bottom: 0;
          color: #fff; }
      .payment-card-detail .card-details .name-detail .card-img {
        display: inline-block;
        margin-left: auto;
        text-align: right; }
        [dir="rtl"] .payment-card-detail .card-details .name-detail .card-img {
          text-align: left; }
  .payment-card-detail .edit-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
    position: absolute;
    text-align: center;
    top: 0;
    left: 0;
    background-color: rgba(33, 37, 41, 0.8);
    border-radius: 5px;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    @media (max-width: 767px) {
      .payment-card-detail .edit-card {
        display: none; } }
    .payment-card-detail .edit-card a {
      padding: 0 10px;
      text-transform: capitalize;
      color: #fff; }

.edit-card-mobile {
  display: none; }
  @media (max-width: 767px) {
    .edit-card-mobile {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 10px; }
      .edit-card-mobile a {
        padding: 0 10px;
        text-transform: capitalize;
        color: #212529; } }

/**============================
    Order Tracking css Start
  =================================**/
.tracker-title {
  font-size: 28px;
  letter-spacing: 1.2px;
  margin: 0;
  font-weight: 500; }
  @media (max-width: 360px) {
    .tracker-title {
      font-size: 26px;
      line-height: 1.5; } }

.tracker-number p {
  margin-bottom: 10px;
  letter-spacing: 1.2px; }
  .tracker-number p span {
    font-weight: 500;
    margin-left: 10px;
    color: #212529; }

.progtrckr {
  margin: 40px 0 15px;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media (max-width: 575px) {
    .progtrckr {
      display: block;
      margin: 30px 0; } }
  .progtrckr li {
    display: inline-block;
    text-align: center;
    margin: 10px 0; }
    @media (max-width: 575px) {
      .progtrckr li {
        margin: 0;
        width: 50% !important; } }
    .progtrckr li h5 {
      margin-top: 20px;
      text-align: center;
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-weight: 500; }
      @media (max-width: 575px) {
        .progtrckr li h5 {
          display: block;
          text-align: left;
          margin-top: 0; }
          [dir="rtl"] .progtrckr li h5 {
            text-align: right; } }
    .progtrckr li:before {
      position: relative;
      top: -2px;
      float: left;
      left: 50% !important;
      line-height: 1;
      -webkit-transform: translate(-50%, -50%) !important;
              transform: translate(-50%, -50%) !important; }
      @media (max-width: 575px) {
        .progtrckr li:before {
          position: relative;
          top: 10px;
          float: left;
          left: -2px !important;
          line-height: 1;
          -webkit-transform: translate(-50%, -50%) !important;
                  transform: translate(-50%, -50%) !important; }
          [dir="rtl"] .progtrckr li:before {
            float: right;
            right: -32px !important;
            left: unset !important; } }
    .progtrckr li.progtrckr-todo {
      color: #c0c0c0;
      border-top: 4px solid #c0c0c0;
      width: 100% !important; }
      @media (max-width: 575px) {
        .progtrckr li.progtrckr-todo {
          position: relative;
          text-align: left;
          margin-left: 30px;
          -webkit-box-align: start;
              -ms-flex-align: start;
                  align-items: flex-start;
          padding-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
          padding-left: 30px;
          border-top: unset;
          border-left: 4px solid #c0c0c0; }
          [dir="rtl"] .progtrckr li.progtrckr-todo {
            border-left: none;
            border-right: 4px solid #c0c0c0;
            margin-left: 0;
            margin-right: 30px;
            -webkit-box-align: end;
                -ms-flex-align: end;
                    align-items: flex-end;
            padding-left: 0;
            padding-right: 30px;
            text-align: right; } }
      .progtrckr li.progtrckr-todo:before {
        content: "\f111";
        font-family: "Font Awesome 5 Free";
        color: #c0c0c0;
        background-color: #fff;
        font-size: 2.2em; }
        @media (max-width: 575px) {
          .progtrckr li.progtrckr-todo:before {
            position: absolute;
            top: 10px;
            left: -17px;
            line-height: 1;
            -webkit-transform: translateY(-50%);
                    transform: translateY(-50%); }
            [dir="rtl"] .progtrckr li.progtrckr-todo:before {
              left: unset;
              right: -17px; } }
      .progtrckr li.progtrckr-todo h6 {
        font-size: 13px;
        margin-top: 8px; }
    .progtrckr li.progtrckr-done {
      color: #212529;
      border-top: 4px solid var(--theme-color);
      width: 100% !important; }
      @media (max-width: 575px) {
        .progtrckr li.progtrckr-done {
          position: relative;
          text-align: left;
          margin-left: 30px;
          -webkit-box-align: self-start;
              -ms-flex-align: self-start;
                  align-items: self-start;
          padding-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
          border-top: unset;
          border-left: 4px solid var(--theme-color); }
          [dir="rtl"] .progtrckr li.progtrckr-done {
            margin-left: 0;
            margin-right: 30px;
            text-align: right;
            border-left: none;
            border-right: 4px solid var(--theme-color);
            -webkit-box-align: end;
                -ms-flex-align: end;
                    align-items: flex-end; } }
      .progtrckr li.progtrckr-done:before {
        content: "\f00c";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        color: #fff;
        background-color: var(--theme-color);
        height: 30px;
        width: 30px;
        line-height: 2.2em;
        border: none;
        border-radius: 2.2em;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
      .progtrckr li.progtrckr-done h6 {
        font-size: 13px;
        margin-top: 8px;
        color: #7e7e7e; }

.order-left-image {
  margin-top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 991px) {
    .order-left-image {
      display: block; } }
  .order-left-image .tracking-product-image {
    margin-right: 40px;
    width: 30%; }
    [dir="rtl"] .order-left-image .tracking-product-image {
      margin-right: 0;
      margin-left: 40px; }
    @media (max-width: 991px) {
      .order-left-image .tracking-product-image {
        margin-bottom: 18px;
        width: 50%;
        margin-left: auto;
        margin-right: auto; }
        [dir="rtl"] .order-left-image .tracking-product-image {
          margin-right: auto;
          margin-left: auto; } }
    @media (max-width: 767px) {
      .order-left-image .tracking-product-image {
        margin: 0 auto;
        margin-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320))); } }
  .order-left-image .order-image-contain {
    width: calc(100% - 30px); }
    @media (max-width: 991px) {
      .order-left-image .order-image-contain {
        width: 100%; } }
    .order-left-image .order-image-contain p {
      margin-bottom: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320)));
      letter-spacing: 0.05em; }
      .order-left-image .order-image-contain p span {
        font-weight: 500;
        margin-left: 10px;
        color: #212529; }
        [dir="rtl"] .order-left-image .order-image-contain p span {
          margin-left: 0;
          margin-right: 10px; }
    .order-left-image .order-image-contain h4 {
      font-size: 22px;
      letter-spacing: 0.03em;
      margin-bottom: calc(12px + (23 - 12) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 500; }
      @media (max-width: 767px) {
        .order-left-image .order-image-contain h4 {
          font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1920 - 320))); } }

.order-address {
  margin-top: 50px; }
  @media (max-width: 360px) {
    .order-address {
      margin-top: 20px; } }
  .order-address li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    @media (max-width: 360px) {
      .order-address li {
        display: block; } }
    .order-address li .left-box {
      text-transform: capitalize;
      min-width: 210px;
      padding: 10px 0; }
      .order-address li .left-box h6 {
        font-weight: 500; }
        @media (max-width: 360px) {
          .order-address li .left-box h6 {
            color: #7e7e7e !important;
            margin-bottom: -13px;
            padding-bottom: 8px;
            border-bottom: 1px solid #cacaca;
            font-weight: 500; } }
    .order-address li .right-box {
      padding: 10px 0;
      width: 180px; }
      .order-address li .right-box p {
        margin-bottom: 0;
        line-height: 1.6; }

.tracker-table {
  padding-top: calc(30px + (60 - 30) * ((100vw - 320px) / (1920 - 320)));
  overflow: hidden;
  margin-bottom: 0; }
  .tracker-table .table {
    margin-bottom: 0; }
    .tracker-table .table thead th {
      border-bottom-width: 1px;
      font-weight: 500;
      color: #212529 !important;
      text-transform: uppercase;
      font-size: 15px;
      border-top: 0;
      text-align: left;
      padding: 16px;
      border-bottom: 1px solid #eff2f7 !important;
      background-color: #eff2f7; }
      [dir="rtl"] .tracker-table .table thead th {
        text-align: right; }
    .tracker-table .table tbody h2 {
      margin-bottom: 0; }
    .tracker-table .table tbody tr td {
      vertical-align: middle;
      color: #777777;
      border-top: 0;
      border-bottom: 1px solid #eff2f7 !important;
      text-align: left;
      padding: calc(0px + (16 - 0) * ((100vw - 320px) / (1920 - 320))) calc(6px + (16 - 6) * ((100vw - 320px) / (1920 - 320)));
      min-width: 175px; }
      [dir="rtl"] .tracker-table .table tbody tr td {
        text-align: right; }
      .tracker-table .table tbody tr td p {
        margin: 10px 0 !important; }
      .tracker-table .table tbody tr td:nth-child(odd) p {
        color: #212529; }
      .tracker-table .table tbody tr td a {
        font-weight: 400;
        font-size: 14px;
        text-transform: capitalize;
        display: inline-block; }

/**=====================
    Element Page css Start
  ==========================**/
.header-image-contain {
  margin-bottom: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))); }
  .header-image-contain .background-contain {
    background-image: none;
    height: 100%; }

.custome-card {
  border: 1px solid #ced4da; }
  .custome-card .card-header {
    background-color: #eff2f7; }
  .custome-card .card-body {
    background-color: #fff; }

/**=====================
    About Page css Start
  ==========================**/
@media (max-width: 991px) {
  .about-image {
    display: none; } }

.about-details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%; }
  .about-details h2 {
    margin-bottom: 10px;
    letter-spacing: 1px;
    color: var(--theme-color); }
  .about-details h3 {
    font-size: calc(18px + (25 - 18) * ((100vw - 320px) / (1920 - 320)));
    letter-spacing: 1.5px;
    margin-bottom: 16px;
    max-width: 80%;
    line-height: 1.5;
    text-transform: uppercase; }
    @media (max-width: 991px) {
      .about-details h3 {
        max-width: 100%; } }
  .about-details p {
    letter-spacing: 1px;
    line-height: 1.5;
    color: #7e7e7e; }

.custome-accordion {
  padding: 25px;
  border: 1px solid #ddd;
  border-radius: 5px; }
  .custome-accordion .accordion-item {
    border-top: 1px solid rgba(221, 221, 221, 0.5);
    border: none; }
    .custome-accordion .accordion-item .accordion-header {
      border-top: 1px solid rgba(221, 221, 221, 0.5); }
      .custome-accordion .accordion-item .accordion-header .accordion-button {
        background-color: transparent;
        font-weight: 600;
        text-transform: capitalize; }
        .custome-accordion .accordion-item .accordion-header .accordion-button:focus {
          border-color: #c7c7c5;
          -webkit-box-shadow: none;
                  box-shadow: none; }
        .custome-accordion .accordion-item .accordion-header .accordion-button.collapsed {
          background-color: #fff;
          font-weight: 400; }
        .custome-accordion .accordion-item .accordion-header .accordion-button:after {
          -ms-flex-negative: 0;
              flex-shrink: 0;
          width: 20px;
          height: 20px;
          margin-left: auto;
          color: #7e7e7e;
          content: "\f054";
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          background-image: none;
          -webkit-transition: -webkit-transform 0.4s ease-in-out;
          transition: -webkit-transform 0.4s ease-in-out;
          transition: transform 0.4s ease-in-out;
          transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center; }
        .custome-accordion .accordion-item .accordion-header .accordion-button:not(.collapsed) {
          color: #212529; }
          .custome-accordion .accordion-item .accordion-header .accordion-button:not(.collapsed)::after {
            -webkit-transform: rotate(90deg);
                    transform: rotate(90deg); }
    .custome-accordion .accordion-item .accordion-collapse .accordion-body p {
      letter-spacing: 1.3px;
      margin-bottom: 0;
      line-height: 1.4;
      text-align: justify;
      color: #7e7e7e; }

.team-contain.team-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  margin-bottom: 22px; }
  .team-contain.team-center img {
    width: 40%; }
  .team-contain.team-center .team-details {
    margin-top: 0;
    margin-left: 20px; }
    .team-contain.team-center .team-details p span {
      color: #7e7e7e;
      display: none; }
    .team-contain.team-center .team-details .moreless-button {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      text-align: right;
      color: var(--theme-color); }

.team-details {
  margin-top: 30px;
  position: relative; }
  .team-details h3 {
    font-size: 23px;
    margin-bottom: 10px;
    color: #212529; }
  .team-details p {
    margin-bottom: 0;
    letter-spacing: 0.6px;
    line-height: 1.5;
    color: #7e7e7e; }
    .team-details p span {
      color: #7e7e7e;
      display: none; }
  .team-details .moreless-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    text-align: right;
    color: var(--theme-color); }

.team-image {
  width: 100%;
  height: 220px;
  -o-object-fit: cover;
     object-fit: cover; }

.team-leader-section {
  background-color: #eff2f7; }

.leader-contain:hover .leader-image .social-media {
  bottom: 0;
  opacity: 1; }
  @media (max-width: 767px) {
    .leader-contain:hover .leader-image .social-media {
      top: 0;
      opacity: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 100%;
      border-radius: 0; } }

.leader-contain .leader-image {
  border-radius: 5px;
  position: relative;
  overflow: hidden; }
  .leader-contain .leader-image .social-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    bottom: -60px;
    opacity: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    text-align: center;
    display: block;
    padding: calc(8px + (12 - 8) * ((100vw - 320px) / (1920 - 320)));
    background-color: rgba(226, 46, 83, 0.8);
    width: 100%;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px); }
    @media (max-width: 767px) {
      .leader-contain .leader-image .social-media {
        top: 0;
        bottom: unset;
        opacity: 0;
        height: 100%;
        background-color: rgba(226, 46, 83, 0.6); } }
    .leader-contain .leader-image .social-media li {
      margin: 0 5px;
      width: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
      height: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
      -webkit-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out;
      border-radius: 3px; }
      .leader-contain .leader-image .social-media li:hover {
        background-color: rgba(33, 37, 41, 0.7); }
        .leader-contain .leader-image .social-media li:hover a {
          color: #fff; }
      .leader-contain .leader-image .social-media li a {
        color: #ddd;
        width: 100%;
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out;
        font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (1920 - 320))); }

.leader-contain .leader-contain {
  color: #212529;
  padding: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320)));
  width: 100%;
  text-align: center; }
  .leader-contain .leader-contain h3 {
    letter-spacing: 1px; }
  .leader-contain .leader-contain h6 {
    margin: calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320))) 0 0;
    letter-spacing: 1.6px;
    color: #7e7e7e; }

.testimonial-section .testimonial-contain {
  text-align: center;
  -webkit-box-shadow: 0 0 8px #ddd;
          box-shadow: 0 0 8px #ddd;
  padding: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
  border-radius: 10px; }
  [dir="rtl"] .testimonial-section .testimonial-contain {
    direction: rtl; }
  .testimonial-section .testimonial-contain .textimonial-image {
    text-align: center; }
    .testimonial-section .testimonial-contain .textimonial-image img {
      border-radius: 25px;
      border: 1px solid #c7c7c5;
      padding: 5px;
      height: 100px;
      width: 100px;
      margin: 0 auto;
      -o-object-fit: cover;
         object-fit: cover; }

.testimonial-section .testimonial-details {
  margin: 15px auto 0; }
  @media (max-width: 767px) {
    .testimonial-section .testimonial-details {
      width: 100%; } }
  .testimonial-section .testimonial-details .details-images {
    margin-top: 20px;
    font-size: 14px;
    letter-spacing: 0.5px;
    line-height: 1.8;
    color: #7e7e7e;
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 20px; }
    .testimonial-section .testimonial-details .details-images i {
      color: var(--theme-color);
      font-size: 15px;
      vertical-align: super; }
      [dir="rtl"] .testimonial-section .testimonial-details .details-images i {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }
      .testimonial-section .testimonial-details .details-images i.fa-quote-left {
        margin-right: 8px; }
        [dir="rtl"] .testimonial-section .testimonial-details .details-images i.fa-quote-left {
          margin-right: 0;
          margin-left: 8px; }
      .testimonial-section .testimonial-details .details-images i.fa-quote-right {
        margin-left: 8px; }
        [dir="rtl"] .testimonial-section .testimonial-details .details-images i.fa-quote-right {
          margin-left: 0;
          margin-right: 8px; }
    .testimonial-section .testimonial-details .details-images::before {
      content: "";
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      bottom: 0;
      width: 90px;
      height: 3px;
      background-color: var(--theme-color); }
  .testimonial-section .testimonial-details h5 {
    text-transform: uppercase;
    letter-spacing: 1.4px; }

/**=====================
    Dark and RTL css Start
  ==========================**/
.theme-setting {
  position: fixed;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 3; }
  [dir="rtl"] .theme-setting ul {
    padding-right: 0; }
  .theme-setting ul li {
    background-color: #eff2f7;
    border: 1px solid #ced4da;
    margin: 10px 0;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    border-right: none;
    width: 40px;
    height: 38px;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 14px;
    text-decoration: none;
    cursor: pointer;
    font-weight: 600; }
    .theme-setting ul li button {
      color: #212529; }
      .theme-setting ul li button:hover {
        color: #212529; }
    .theme-setting ul li.color-picker {
      background: none;
      overflow: hidden;
      margin-bottom: 0;
      border: none; }
      .theme-setting ul li.color-picker input {
        height: 100%;
        opacity: 1;
        padding: 0;
        border: none;
        font-size: x-large; }

/**=====================
    Dark and RTL css Start
  ==========================**/
.demo-contain {
  width: 100%;
  height: 500px;
  overflow: hidden;
  border: 2px solid rgba(33, 37, 41, 0.3);
  border-radius: 5px;
  position: relative; }
  .demo-contain .demo-image {
    overflow: hidden;
    width: 100%; }
    .demo-contain .demo-image:hover img {
      -webkit-transform: translateY(calc(-100% + 500px));
              transform: translateY(calc(-100% + 500px));
      -webkit-transition: -webkit-transform 5s ease-in-out;
      transition: -webkit-transform 5s ease-in-out;
      transition: transform 5s ease-in-out;
      transition: transform 5s ease-in-out, -webkit-transform 5s ease-in-out; }
    .demo-contain .demo-image img {
      -o-object-fit: cover;
         object-fit: cover;
      -webkit-transition: -webkit-transform 5s ease-in-out;
      transition: -webkit-transform 5s ease-in-out;
      transition: transform 5s ease-in-out;
      transition: transform 5s ease-in-out, -webkit-transform 5s ease-in-out;
      width: 100%; }
    .demo-contain .demo-image a {
      width: 100%;
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: absolute;
      top: 0;
      left: 0;
      background-color: #ff0000;
      color: #212529; }

/**=====================
     Shop page css start
==========================**/
.custome-nav-tabs {
  position: sticky;
  top: 10px; }

.category-scroll {
  max-height: 250px;
  overflow: auto;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */ }
  .category-scroll::-webkit-scrollbar {
    width: 5px; }
  .category-scroll::-webkit-scrollbar-track {
    background-color: #ddd; }
  .category-scroll::-webkit-scrollbar-thumb {
    background: #b5bec7;
    border-radius: 5px; }
  .category-scroll::-webkit-scrollbar-thumb:hover {
    opacity: 0.8; }

.custome-form-check {
  min-height: 0;
  margin-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  [dir="rtl"] .custome-form-check {
    padding-right: 0; }
  .custome-form-check .form-check-input {
    margin-right: 10px;
    width: 17px;
    height: 17px;
    margin-top: 0;
    background-color: transparent;
    border: 1px solid #c7c7c5 !important;
    border-radius: 3px !important;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
    [dir="rtl"] .custome-form-check .form-check-input {
      margin-left: 1.5rem;
      margin-right: 0; }
    .custome-form-check .form-check-input:checked[type="checkbox"] {
      background-image: url(../images/check.svg);
      background-size: 13px; }
    .custome-form-check .form-check-input:focus {
      border-color: transparent;
      -webkit-box-shadow: none;
              box-shadow: none; }
  .custome-form-check .form-check-label {
    color: #212529;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }

.sidebar-image {
  margin-top: 20px; }
  .sidebar-image img {
    height: 500px;
    border-radius: 5px; }

.category-option {
  position: sticky;
  top: 40px;
  z-index: 1; }
  @media (max-width: 991px) {
    .category-option {
      position: fixed;
      top: 0;
      left: -320px;
      background-color: #fff;
      z-index: 7;
      padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
      width: 300px;
      height: 100vh;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease;
      overflow-x: scroll;
      overflow-y: auto; }
      [dir="rtl"] .category-option {
        left: unset;
        right: -320px; } }
  .category-option.show {
    left: 0; }
    [dir="rtl"] .category-option.show {
      left: unset;
      right: 0; }
  .category-option .button-close {
    display: none; }
    @media (max-width: 991px) {
      .category-option .button-close {
        display: block;
        margin-bottom: 10px; } }
    .category-option .button-close button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 17px;
      color: #212529; }
      .category-option .button-close button .feather {
        display: block;
        width: 18px;
        margin-right: 8px; }
        [dir="rtl"] .category-option .button-close button .feather {
          margin-right: unset;
          margin-left: 8px; }
  .category-option .category-name {
    color: #fff;
    background-color: #fff; }
    .category-option .category-name .accordion-item {
      padding: 20px;
      border: 1px solid #ced4da;
      color: #212529;
      border-radius: 5px;
      background-color: #fff; }
      .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .form-check-label span {
          margin-left: 10px; }
          [dir="rtl"] .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .form-check-label span {
            margin-left: 0;
            margin-right: 10px; }
        .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check p {
          margin-bottom: 0;
          margin-left: 12px;
          font-size: 13px; }
          [dir="rtl"] .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check p {
            margin-left: 0;
            margin-right: 12px; }
        .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
          .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list {
            margin: 0; }
            .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list + .rating-list {
              margin-left: 3px; }
            .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list .fa-star {
              color: #c3c3c3; }
              .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list .fa-star.theme-color {
                color: #ffa202; }
      .category-option .category-name .accordion-item.category-price .accordion-collapse .accordion-body .category-list li {
        display: inline-block;
        padding: 5px 10px;
        background: #fff;
        border-radius: 5px;
        font-size: 13px;
        border: 1px solid #fff;
        margin: 3px 1px; }
        .category-option .category-name .accordion-item.category-price .accordion-collapse .accordion-body .category-list li a {
          color: #212529;
          font-weight: 400; }
      .category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li {
        margin: 0;
        padding: 2px 6px; }
        .category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li:nth-child(3) a .label-tag {
          margin-bottom: 0; }
        .category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li .label-tag {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          border: none;
          padding: 0 5px;
          margin-bottom: 10px;
          border-radius: 5px; }
          .category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li .label-tag span {
            color: #7f7f7f;
            font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320))); }
          .category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li .label-tag .btn-close {
            font-size: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320)));
            margin-left: auto;
            margin-top: 3px; }
      .category-option .category-name .accordion-item.category-color .accordion-collapse {
        margin-top: 22px; }
        .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          margin-bottom: 0;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
          margin: -5px; }
          .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li {
            margin-top: 0;
            margin: 5px; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li a {
              width: 30px;
              height: 30px;
              background-color: #ff0000;
              border-radius: 5px;
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-align: center;
                  -ms-flex-align: center;
                      align-items: center;
              -webkit-box-pack: center;
                  -ms-flex-pack: center;
                      justify-content: center; }
              .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li a i {
                color: #212529;
                display: none; }
                .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li a i.active {
                  display: block; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(2) a {
              background-color: #fab1a0; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(3) a {
              background-color: #10ac84; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(4) a {
              background-color: #ff9f43; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(5) a {
              background-color: #8395a7; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(6) a {
              background-color: #fab1a0; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(7) a {
              background-color: #10ac84; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(8) a {
              background-color: #ff9f43; }
            .category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(9) a {
              background-color: #8395a7; }
      @media (max-width: 991px) {
        .category-option .category-name .accordion-item {
          padding: 0;
          border: none; } }
      .category-option .category-name .accordion-item + .accordion-item {
        margin-top: 20px; }
      .category-option .category-name .accordion-item .accordion-header {
        margin-bottom: 0;
        background-color: #eff2f7; }
      .category-option .category-name .accordion-item .accordion-collapse {
        border: none;
        border-width: 0 1px;
        margin-top: 10px; }
        .category-option .category-name .accordion-item .accordion-collapse .accordion-body {
          padding: 0; }
          .category-option .category-name .accordion-item .accordion-collapse .accordion-body .category-list {
            overflow: hidden; }
            .category-option .category-name .accordion-item .accordion-collapse .accordion-body .category-list li {
              display: block;
              margin: 10px 5px;
              text-overflow: ellipsis;
              white-space: nowrap; }
              .category-option .category-name .accordion-item .accordion-collapse .accordion-body .category-list li::nth-child(9) {
                margin-bottom: 0; }
    .category-option .category-name .accordion-button {
      color: #212529;
      border: none;
      margin: 0;
      font-weight: bold;
      -webkit-box-shadow: none;
              box-shadow: none;
      background-color: #eff2f7; }
      .category-option .category-name .accordion-button:focus {
        -webkit-box-shadow: none;
                box-shadow: none;
        outline: none; }
      .category-option .category-name .accordion-button:not(.collapsed)::after {
        background-image: url(../images/minus.svg);
        -webkit-filter: invert(1);
                filter: invert(1);
        -webkit-transform: rotate(0);
                transform: rotate(0); }
      .category-option .category-name .accordion-button:after {
        background-image: url(../images/plus.svg);
        -webkit-filter: invert(1);
                filter: invert(1);
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out; }
  .category-option-1 {
    background-color: #f0f3f8; }
    @media (max-width: 991px) {
      .category-option-1 {
        background-color: #fff; } }
    .category-option-1 .category-name .accordion-item {
      border: none;
      padding: 10px 20px 0;
      background-color: transparent; }
      @media (max-width: 991px) {
        .category-option-1 .category-name .accordion-item {
          padding: 0; } }
      .category-option-1 .category-name .accordion-item + .accordion-item {
        margin-top: 0; }
      .category-option-1 .category-name .accordion-item .accordion-header .accordion-button {
        padding: 14px 8px; }
      .category-option-1 .category-name .accordion-item .accordion-collapse {
        margin-top: 0; }
        .category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body {
          padding: 10px 3px; }
          .category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body .category-list {
            margin-top: -12px; }
            .category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body .category-list li {
              margin-top: 12px; }
              .category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body .category-list li .form-check .form-check-input {
                background-color: #fff; }

.filter-button {
  display: none; }
  @media (max-width: 991px) {
    .filter-button {
      display: block; } }
  .filter-button a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .filter-button .feather {
    width: 20px;
    margin-right: 10px; }
    [dir="rtl"] .filter-button .feather {
      margin-right: unset;
      margin-left: 10px; }
  .filter-button span {
    display: block;
    margin-bottom: -3px; }

.hide-button button {
  font-size: 15px !important;
  background-color: var(--theme-color);
  padding: 4px 10px;
  border-radius: 5px;
  color: #fff !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .hide-button button .feather {
    width: 20px;
    margin-right: 10px; }
    [dir="rtl"] .hide-button button .feather {
      margin-right: 0;
      -webkit-transform: rotateY(180deg);
              transform: rotateY(180deg); }

.hide-button span {
  display: block;
  margin-bottom: -3px; }

.short-name {
  margin: -5px; }
  .short-name .label-tag {
    display: inline-block;
    border: none;
    padding: 3px 12px;
    margin-bottom: 15px;
    border: none;
    margin: 5px;
    background-color: #eff2f7;
    border-radius: 8px; }
    .short-name .label-tag span {
      font-size: 14px; }
    .short-name .label-tag .btn-close {
      font-size: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320)));
      margin-left: 5px; }
      [dir="rtl"] .short-name .label-tag .btn-close {
        margin-left: 0;
        margin-right: 5px; }

.select-featured {
  border: 1px solid #eff2f7;
  color: #8f8397;
  margin-left: auto;
  border-radius: 0; }
  .select-featured:focus {
    border-color: #eff2f7;
    -webkit-box-shadow: 0 0 0 0.25rem transparent;
            box-shadow: 0 0 0 0.25rem transparent; }
  .select-featured .dropdown-toggle {
    border: 1px solid #eff2f7;
    color: #8f8397;
    margin-left: auto;
    border-radius: 0;
    font-weight: 400;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    position: relative; }
    .select-featured .dropdown-toggle::after {
      display: none; }
    .select-featured .dropdown-toggle::before {
      content: "\f107";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 14px; }
  .select-featured .dropdown-menu {
    min-width: 100%; }
    .select-featured .dropdown-menu li {
      width: 100%; }

.custome-offcanvas .offcanvas-body {
  background-color: #fff; }

@media (max-width: 991px) {
  .custome-offcanvas {
    width: 300px; } }

.custome-offcanvas .offcanvas-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .custome-offcanvas .offcanvas-header h5 {
    margin-top: -5px; }

.custome-offcanvas .offcanvas-body .category-spacing .category-name .accordion-item {
  padding: 0; }
  .custome-offcanvas .offcanvas-body .category-spacing .category-name .accordion-item + .accordion-item {
    margin-top: 10px; }

@media (max-width: 991px) {
  .custome-offcanvas .category-option {
    position: relative;
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: unset;
    padding: 0;
    width: unset;
    height: auto;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    overflow-y: auto; }
    [dir="rtl"] .custome-offcanvas .category-option {
      left: unset;
      right: 0; } }

.image-slider {
  display: block;
  overflow: hidden; }
  .image-slider .image-product {
    position: relative;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
    .image-slider .image-product img {
      border-radius: 5px; }
  .image-slider .image-contain {
    display: block;
    text-align: center;
    padding: 20px 0 0;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
    .image-slider .image-contain h3 {
      font-weight: 400; }

.filter-name {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .filter-name h4 {
    font-weight: 500;
    font-size: large; }

.filter-icon {
  display: none; }
  @media (max-width: 991px) {
    .filter-icon {
      display: block; } }

.category-filter {
  width: 100%; }

.category-list {
  width: 100%; }
  .category-list .dropdown .dropdown-toggle {
    width: 100%;
    background-color: rgba(233, 233, 233, 0.5);
    border-radius: 5px;
    font-size: 16px;
    font-weight: 500;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320))); }
  .category-list .dropdown .dropdown-menu {
    padding: 1rem;
    width: 100%; }
    .category-list .dropdown .dropdown-menu .dropdown-list {
      display: block; }
      .category-list .dropdown .dropdown-menu .dropdown-list + .dropdown-list {
        margin-top: 10px;
        text-overflow: ellipsis;
        white-space: nowrap; }

.filter-show-button {
  padding: 15px;
  display: none; }
  .filter-show-button a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .filter-show-button a .feather {
      margin-right: 10px;
      width: 20px; }
    .filter-show-button a h5 {
      font-weight: 600; }
  @media (max-width: 991px) {
    .filter-show-button {
      padding: 0 0 10px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }

.top-filter-section {
  background-color: #fff;
  padding-bottom: 50px; }
  @media (max-width: 991px) {
    .top-filter-section {
      position: fixed;
      left: -300px;
      width: 300px;
      height: 100vh;
      top: 0;
      margin-top: 0;
      padding: 20px;
      z-index: 5;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease;
      -webkit-box-shadow: 0 15px 5px 0 rgba(77, 77, 77, 0.28);
              box-shadow: 0 15px 5px 0 rgba(77, 77, 77, 0.28);
      overflow-y: auto; } }
  .top-filter-section.show {
    left: 0; }
  .top-filter-section ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media (max-width: 991px) {
      .top-filter-section ul {
        display: block; } }
    .top-filter-section ul .back-btn {
      display: none; }
      @media (max-width: 991px) {
        .top-filter-section ul .back-btn {
          padding-bottom: 20px;
          border-bottom: 1px solid #ddd;
          font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320)));
          text-transform: capitalize;
          color: black;
          font-weight: 700;
          margin-bottom: 20px;
          cursor: pointer;
          display: block; } }
    .top-filter-section ul .onclick-title {
      width: 100%;
      cursor: pointer;
      position: relative;
      background-color: #eff2f7;
      border-radius: 5px;
      font-size: 16px;
      font-weight: 500;
      padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
      margin: 0 15px; }
      .top-filter-section ul .onclick-title:nth-child(7) {
        margin-right: 0; }
      @media (max-width: 991px) {
        .top-filter-section ul .onclick-title {
          margin: 30px 0 0;
          background-color: #fff;
          padding: 0; }
          .top-filter-section ul .onclick-title:nth-child(3) {
            margin-top: 15px; }
          .top-filter-section ul .onclick-title + .onclick-title {
            margin-left: unset; } }
      .top-filter-section ul .onclick-title h6 {
        white-space: nowrap;
        text-transform: capitalize;
        font-size: 16px;
        text-align: left;
        margin-bottom: 0;
        padding: 0 20px 0 0;
        position: relative; }
        [dir="rtl"] .top-filter-section ul .onclick-title h6 {
          text-align: right;
          padding: 0 0 0 20px; }
        @media (max-width: 991px) {
          .top-filter-section ul .onclick-title h6 {
            text-align: left;
            font-weight: 500; } }
        .top-filter-section ul .onclick-title h6:before {
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          content: "\f107";
          position: absolute;
          right: 0;
          opacity: 0.2; }
          [dir="rtl"] .top-filter-section ul .onclick-title h6:before {
            right: unset;
            left: 0; }
          @media (max-width: 991px) {
            .top-filter-section ul .onclick-title h6:before {
              content: ""; } }
      .top-filter-section ul .onclick-title:nth-child(-n + 3) {
        border-left: none; }
      .top-filter-section ul .onclick-title .onclick-content {
        display: none;
        position: absolute;
        background-color: #fff;
        padding: 1rem;
        width: 100%;
        left: 0;
        top: 40px;
        -webkit-box-shadow: 0px 5px 9px 3px rgba(33, 37, 41, 0.13);
                box-shadow: 0px 5px 9px 3px rgba(33, 37, 41, 0.13);
        z-index: 2; }
        @media (max-width: 991px) {
          .top-filter-section ul .onclick-title .onclick-content {
            display: block;
            position: relative;
            -webkit-box-shadow: none;
                    box-shadow: none;
            padding: 0;
            top: 10px;
            margin-top: 10px; } }
        .top-filter-section ul .onclick-title .onclick-content li {
          display: block;
          cursor: pointer; }
          .top-filter-section ul .onclick-title .onclick-content li + li {
            margin-top: 10px; }
        .top-filter-section ul .onclick-title .onclick-content .custom-control .form-check-label {
          text-transform: capitalize; }
    .top-filter-section ul .filter-title {
      width: 100%;
      cursor: pointer;
      position: relative;
      border-left: 1px solid #e0e0e0;
      min-width: 60px; }
      @media (max-width: 991px) {
        .top-filter-section ul .filter-title {
          margin-bottom: 10px; } }
      .top-filter-section ul .filter-title h6 {
        text-transform: capitalize;
        font-size: 16px;
        margin-bottom: 0;
        padding: 0 20px 0 0;
        position: relative;
        padding: 0;
        font-weight: 700; }
        .top-filter-section ul .filter-title h6:before {
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          content: "\f107";
          position: absolute;
          right: 15px;
          opacity: 0.2;
          display: none; }
      .top-filter-section ul .filter-title:nth-child(-n + 3) {
        border-left: none; }
      .top-filter-section ul .filter-title .onclick-content {
        display: none;
        position: absolute;
        background-color: white;
        z-index: 1;
        padding: 10px 20px;
        width: 200px;
        left: 30px;
        top: 34px;
        -webkit-box-shadow: 0px 1px 9px 3px rgba(228, 228, 228, 0.81);
                box-shadow: 0px 1px 9px 3px rgba(228, 228, 228, 0.81); }
        @media (max-width: 991px) {
          .top-filter-section ul .filter-title .onclick-content {
            display: block;
            position: relative;
            top: 10px;
            -webkit-box-shadow: none;
                    box-shadow: none; } }
        .top-filter-section ul .filter-title .onclick-content .custom-control .form-check-label {
          text-transform: capitalize; }
    .top-filter-section ul .onclick-title.show .onclick-content {
      display: block; }
    .top-filter-section ul .filter-title.show .onclick-content {
      display: block; }
  .top-filter-section .form-check {
    text-transform: capitalize;
    text-overflow: ellipsis;
    white-space: nowrap; }
    .top-filter-section .form-check + .form-check {
      margin-top: 10px; }
    .top-filter-section .form-check .form-check-label {
      font-weight: 400;
      display: block;
      text-transform: capitalize;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }

.category-image {
  padding: 10px 20px;
  border-radius: 5px;
  background-color: #eff2f7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .category-image .elec-image {
    padding-right: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 120px; }
    [dir="rtl"] .category-image .elec-image {
      padding-right: 0;
      padding-left: 30px; }
    .category-image .elec-image img {
      width: 90%; }
  .category-image .category-contain {
    color: #212529;
    width: calc(100% - 150px); }
    .category-image .category-contain h3 {
      text-transform: capitalize;
      color: #212529;
      letter-spacing: 1.1px; }
    .category-image .category-contain .product-list {
      margin: 5px 0;
      -webkit-padding-start: 15px;
              padding-inline-start: 15px;
      list-style-type: circle; }
      .category-image .category-contain .product-list li {
        display: list-item;
        text-transform: capitalize; }
        .category-image .category-contain .product-list li a {
          font-size: 14px;
          -webkit-line-clamp: 1;
          -webkit-box-orient: vertical;
          display: -webkit-box;
          overflow: hidden; }

.fliter-menu button {
  font-weight: 300;
  display: inline-block;
  border: none;
  padding: 5px calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
  border-radius: 0;
  border: 1px solid #ddd;
  margin: 5px; }
  .fliter-menu button .feather {
    width: 16px;
    stroke-width: 1px; }

.product-box .product-details .main-price p {
  display: none; }

.product-box .product-details .main-price .listing-content {
  display: none; }

.list-view.product-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .list-view.product-box .img-wrapper .back {
    opacity: 0;
    position: absolute;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    top: 0;
    left: 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    width: 100%; }
  .list-view.product-box .product-details .rating-details,
  .list-view.product-box .product-details .main-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media (max-width: 575px) {
      .list-view.product-box .product-details .rating-details,
      .list-view.product-box .product-details .main-price {
        display: block;
        text-align: left; }
        [dir="rtl"] .list-view.product-box .product-details .rating-details, [dir="rtl"]
        .list-view.product-box .product-details .main-price {
          text-align: right; } }
  .list-view.product-box .product-details .main-price {
    margin-top: 10px; }
    @media (max-width: 575px) {
      .list-view.product-box .product-details .main-price {
        margin-top: 5px; }
        .list-view.product-box .product-details .main-price h3 {
          margin-top: 5px; } }
  .list-view.product-box .cart-wrap ul li + li {
    margin-left: 0; }
    [dir="rtl"] .list-view.product-box .cart-wrap ul li + li {
      margin-left: unset;
      margin-right: 0; }
  .list-view.product-box .cart-wrap a svg,
  .list-view.product-box .cart-wrap button svg {
    width: 14px;
    height: 14px; }
    @media (max-width: 575px) {
      .list-view.product-box .cart-wrap a svg,
      .list-view.product-box .cart-wrap button svg {
        width: 13px;
        height: 13px; } }
  .list-view.product-box:hover .img-wrapper .back {
    opacity: 1;
    -webkit-backface-visibility: visible;
            backface-visibility: visible;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }

@media (max-width: 1660px) {
  .list-view.slide-4 {
    padding: 0 30px; } }

.list-view.slide-4 .slick-prev {
  left: -70px; }
  @media (max-width: 1660px) {
    .list-view.slide-4 .slick-prev {
      left: -20px; } }
  @media (max-width: 575px) {
    .list-view.slide-4 .slick-prev {
      left: -5px; } }

.list-view.slide-4 .slick-next {
  right: -70px; }
  @media (max-width: 1660px) {
    .list-view.slide-4 .slick-next {
      right: -20px; } }
  @media (max-width: 575px) {
    .list-view.slide-4 .slick-next {
      right: -5px; } }

.collection-grid-view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%; }
  .collection-grid-view ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%; }
    .collection-grid-view ul li {
      height: 100%;
      margin-right: 8px;
      border: 2px solid #212529; }
      .collection-grid-view ul li button {
        padding: 5px; }
        .collection-grid-view ul li button img {
          height: 50%; }

.range-slider {
  margin-top: 0; }
  .range-slider .irs--flat .irs-line {
    background-color: #eff2f7; }
  .range-slider .irs--flat .irs-max {
    background-color: #c7c7c5;
    color: #212529; }
  .range-slider .irs--flat .irs-bar {
    background-color: var(--theme-color); }
  .range-slider .irs--flat .irs-handle i {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    margin-left: -1px;
    background-color: var(--theme-color); }
  .range-slider .irs--flat .irs-to {
    background-color: var(--theme-color); }
    .range-slider .irs--flat .irs-to:before {
      border-top-color: var(--theme-color); }
  .range-slider .irs--flat .irs-from {
    background-color: var(--theme-color); }
    .range-slider .irs--flat .irs-from:before {
      border-top-color: var(--theme-color); }

.banner-deatils .banner-contain p {
  line-height: 1.8;
  font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320))); }

.most-popular {
  margin: calc(35px + (50 - 35) * ((100vw - 320px) / (1920 - 320))) 0 0; }
  .most-popular .title {
    margin-bottom: 25px; }
    [dir="rtl"] .most-popular .title {
      text-align: left !important; }
  .most-popular .product-slider {
    padding-top: 20px;
    border-top: 1px solid #eff2f7; }
    .most-popular .product-slider .slick-prev,
    .most-popular .product-slider .slick-next {
      background-color: #eff2f7;
      position: absolute;
      top: -35px;
      z-index: 1;
      width: 35px;
      height: 35px;
      border-radius: 5px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .most-popular .product-slider .slick-prev {
      left: unset;
      right: 50px; }
      .most-popular .product-slider .slick-prev::before {
        content: "\f053";
        color: #000;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        z-index: 1;
        font-size: 16px; }
    .most-popular .product-slider .slick-next {
      right: 0; }
      .most-popular .product-slider .slick-next::before {
        content: "\f054";
        color: #000;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        z-index: 1;
        font-size: 16px; }

.list-style > div {
  width: 100%; }

.list-style .product-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 767px) {
    .list-style .product-box {
      display: block;
      border: 1px solid rgba(0, 0, 0, 0.08);
      padding: 15px calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
      border-radius: 5px; } }
  .list-style .product-box .img-wrapper {
    width: 25%; }
    @media (max-width: 767px) {
      .list-style .product-box .img-wrapper {
        width: 60%;
        margin: 0 auto; } }
    @media (max-width: 575px) {
      .list-style .product-box .img-wrapper {
        width: 100%; } }
  .list-style .product-box .cart-wrap {
    display: none; }
  .list-style .product-box .product-details {
    padding-left: 15px;
    margin-top: 0;
    width: calc(100% - 100px); }
    [dir="rtl"] .list-style .product-box .product-details {
      padding-left: 0;
      padding-right: 15px; }
    @media (max-width: 767px) {
      .list-style .product-box .product-details {
        width: 100%;
        margin-top: 20px;
        padding: 0; } }
    .list-style .product-box .product-details .rating {
      margin: 0; }
    .list-style .product-box .product-details h5 {
      font-weight: 500;
      margin: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320))) 0 0 0; }
    .list-style .product-box .product-details span {
      margin-top: 5px; }
    .list-style .product-box .product-details .rating-details {
      text-align: left !important; }
      .list-style .product-box .product-details .rating-details.rating-shop {
        text-align: left; }
        [dir="rtl"] .list-style .product-box .product-details .rating-details.rating-shop {
          text-align: right; }
        .list-style .product-box .product-details .rating-details.rating-shop h5 {
          margin-top: 5px; }
        .list-style .product-box .product-details .rating-details.rating-shop .size-box {
          margin: 5px 0; }
      .list-style .product-box .product-details .rating-details .grid-content {
        display: none; }
    .list-style .product-box .product-details .main-price .listing-content {
      display: block; }
      .list-style .product-box .product-details .main-price .listing-content.listing-shop {
        text-align: left; }
        [dir="rtl"] .list-style .product-box .product-details .main-price .listing-content.listing-shop {
          text-align: right; }
  .list-style .product-box .main-price {
    display: block !important;
    margin-top: 0 !important; }
    .list-style .product-box .main-price h3 {
      padding: 0;
      margin: 0 0 8px; }
    .list-style .product-box .main-price p {
      display: block !important;
      margin: 8px 0;
      display: -webkit-box !important;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
      line-height: 1.6;
      letter-spacing: 0.04em; }
    .list-style .product-box .main-price button {
      position: relative;
      padding: calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320))) calc(13px + (20 - 13) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 600;
      z-index: 1;
      -webkit-transition: all 0.5s;
      transition: all 0.5s;
      border-radius: 0;
      font-weight: bold;
      background: var(--theme-color);
      font-size: calc(12px + (15 - 12) * ((100vw - 320px) / (1920 - 320)));
      color: #fff;
      border-radius: 5px;
      margin-top: 0; }
      .list-style .product-box .main-price button:hover {
        color: #fff;
        background-color: var(--theme-color); }

.filter-options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .filter-options .select-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .filter-options .select-options > div + div {
      margin-left: 12px; }
      [dir="rtl"] .filter-options .select-options > div + div {
        margin-left: 0;
        margin-right: 12px; }
  .filter-options .grid-options {
    margin-left: auto; }
    [dir="rtl"] .filter-options .grid-options {
      margin-left: unset;
      margin-right: auto; }
    .filter-options .grid-options.avtive li {
      background-color: var(--theme-color); }
      .filter-options .grid-options.avtive li a img {
        -webkit-filter: invert(1);
                filter: invert(1); }
    .filter-options .grid-options li {
      width: 36px;
      height: 36px;
      border-radius: 4px;
      background-color: #eff2f7;
      opacity: 0.5; }
      .filter-options .grid-options li.active {
        opacity: 1; }
      .filter-options .grid-options li a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        height: 100%; }
      .filter-options .grid-options li + li {
        margin-left: 8px; }
        [dir="rtl"] .filter-options .grid-options li + li {
          margin-left: 0;
          margin-right: 8px; }

.category-side {
  -webkit-transition: .3s ease;
  transition: .3s ease; }
  .category-side.show {
    -webkit-transition: .3s ease;
    transition: .3s ease;
    width: 0;
    opacity: 0;
    padding: 0;
    visibility: hidden; }
  .category-side .category-option {
    background-color: #ddd; }
    @media (max-width: 991px) {
      .category-side .category-option {
        background-color: #eff2f7; } }
    .category-side .category-option .custome-form-check .form-check-input {
      background-color: #fff; }
    .category-side .category-option .category-name .accordion-button {
      background-color: #fff;
      border: none; }
    .category-side .category-option .category-name .accordion-item {
      background-color: #eff2f7;
      border: none; }
      @media (max-width: 991px) {
        .category-side .category-option .category-name .accordion-item {
          padding: 20px 0; } }
      .category-side .category-option .category-name .accordion-item + .accordion-item {
        margin-top: 0px; }

/**=====================
     Product Page CSS Start
==========================**/
.pro-popular .product-slider .slick-prev {
  background-color: #ddd !important; }

.pro-popular .product-slider .slick-next {
  background-color: #ddd !important; }

.rating .fa-star {
  padding-right: 1px !important;
  font-size: 16px !important;
  color: #c3c3c3 !important; }
  .rating .fa-star.theme-color {
    color: #ffa202 !important; }

.product-title {
  color: #212529;
  text-transform: capitalize;
  font-weight: 500;
  font-size: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 14px; }
  .product-title-2 {
    margin-top: 18px; }
  .product-title.hurry-title {
    -webkit-box-pack: unset;
        -ms-flex-pack: unset;
            justify-content: unset;
    font-weight: 400; }
    .product-title.hurry-title span {
      margin: 0 5px;
      color: var(--theme-color); }

.shipping-info {
  margin-top: 10px; }
  .shipping-info li {
    display: block;
    font-size: 16px;
    color: #777777;
    line-height: 1.5;
    padding-bottom: 5px; }

.product-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 767px) {
    .product-icon {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .product-icon .product-social {
    margin-top: 5px; }
    .product-icon .product-social li {
      padding-right: 30px; }
      .product-icon .product-social li:last-child {
        padding-right: 0; }
      [dir="rtl"] .product-icon .product-social li {
        padding-right: 0;
        padding-left: 30px; }
      .product-icon .product-social li a {
        color: #212529;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        font-size: 16px; }

.added-notification {
  width: 180px;
  position: fixed;
  top: -100px;
  right: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: transparent;
  border-radius: 3px;
  padding: 6px;
  overflow: hidden;
  -webkit-box-shadow: 0 0 2px 1px #ced4da;
          box-shadow: 0 0 2px 1px #ced4da;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  z-index: 9;
  background-color: #fff; }
  @media (max-width: 575px) {
    .added-notification {
      right: 12px; } }
  .added-notification.show {
    top: 30px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  .added-notification img {
    width: 25%; }
  .added-notification h3 {
    color: #212529;
    text-transform: capitalize;
    font-size: 16px;
    margin: 0 10px;
    font-weight: 400;
    white-space: nowrap; }

.addeffect-section {
  padding-top: 15px;
  padding-bottom: 20px;
  border-top: 1px dashed #ddd; }
  .addeffect-section.cartMove .error-message {
    display: block; }
  .addeffect-section.cartMove .size-box {
    -webkit-animation: buttons-shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
            animation: buttons-shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both; }
  .addeffect-section .size-box {
    margin: 10px 0; }
    .addeffect-section .size-box ul li {
      height: 35px;
      width: 35px;
      border-radius: 5px;
      margin-right: 10px;
      cursor: pointer;
      background-color: #eff2f7;
      border: 1px solid #eff2f7;
      text-align: center;
      -webkit-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
      [dir="rtl"] .addeffect-section .size-box ul li {
        margin-right: 0;
        margin-left: 10px; }
      .addeffect-section .size-box ul li.active {
        background: #212529; }
        .addeffect-section .size-box ul li.active a {
          color: #fff; }
      .addeffect-section .size-box ul li a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        height: 100%;
        color: #212529;
        font-weight: 400; }
  .addeffect-section .error-message {
    display: none;
    color: var(--theme-color);
    font-weight: 500;
    margin: 10px 0; }
  @media (max-width: 767px) {
    .addeffect-section .qty-box .input-group {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .addeffect-section .qty-box .input-group span button {
    border: 1px solid #ced4da;
    height: 100%; }
  .addeffect-section .qty-box .input-group .form-control {
    text-align: center;
    width: 80px;
    -webkit-box-flex: unset;
        -ms-flex: unset;
            flex: unset; }
  .addeffect-section .qty-box .input-group input {
    padding: 12px 10px; }
  .addeffect-section .qty-box .input-group button {
    background-color: transparent;
    border: 0;
    color: #212529;
    cursor: pointer;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    padding: 15px 20px; }
    .addeffect-section .qty-box .input-group button i {
      font-weight: 900;
      color: #212529; }
  .addeffect-section .qty-box .input-group .icon {
    padding-right: 0; }

.product-buttons {
  margin-bottom: 20px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 767px) {
    .product-buttons {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  @media (max-width: 575px) {
    .product-buttons {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .product-buttons .btn-solid {
    background-color: var(--theme-color);
    color: #fff;
    padding: 12px 45px;
    font-size: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .product-buttons .btn-solid + .btn-solid {
      margin-left: 8px; }
      [dir="rtl"] .product-buttons .btn-solid + .btn-solid {
        margin-right: 8px;
        margin-left: unset; }
    @media (max-width: 991px) {
      .product-buttons .btn-solid {
        padding: 12px 30px; } }
    @media (max-width: 575px) {
      .product-buttons .btn-solid {
        width: 100%; } }
    @media (max-width: 480px) {
      .product-buttons .btn-solid {
        padding: 10px 20px;
        font-size: 14px; } }
    .product-buttons .btn-solid i {
      font-size: 17px;
      margin-right: 5px; }
      [dir="rtl"] .product-buttons .btn-solid i {
        margin-right: unset;
        margin-left: 5px; }
    .product-buttons .btn-solid span {
      font-weight: 500; }
    .product-buttons .btn-solid.btn-animation i {
      -webkit-animation: ring 4s 0.7s ease-in-out infinite;
              animation: ring 4s 0.7s ease-in-out infinite; }

.shipping-order li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left; }
  @media (max-width: 767px) {
    .shipping-order li {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .shipping-order li img {
    margin-right: 18px; }

.product-count {
  background-color: #eff2f7;
  padding: 10px 12px !important;
  margin-bottom: 20px; }
  .product-count img {
    margin-right: 6px; }
    [dir="rtl"] .product-count img {
      margin-right: 0;
      margin-left: 6px; }
  .product-count ul {
    margin-bottom: -4px; }
    .product-count ul li {
      margin-bottom: 4px; }
      .product-count ul li:first-child {
        margin-right: 14px; }
        [dir="rtl"] .product-count ul li:first-child {
          margin-right: 0;
          margin-left: 14px; }

.rating-section {
  margin-bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 767px) {
    .rating-section {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .rating-section h6 {
    margin-bottom: 0;
    margin-left: 10px;
    font-weight: 500;
    font-size: 15px; }
    [dir="rtl"] .rating-section h6 {
      margin-left: 0;
      margin-right: 10px; }

.color-variant {
  margin-bottom: 10px; }
  .color-variant li {
    height: 30px;
    width: 30px;
    cursor: pointer;
    display: inline-block;
    border-radius: 100%;
    margin-right: 5px;
    overflow: hidden;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    .color-variant li + li {
      margin-left: 0; }
    .color-variant li:nth-child(1) {
      background-color: #f1e7e6; }
    .color-variant li:nth-child(3) {
      background-color: #bfbfbf; }
    .color-variant li.active {
      position: relative; }
      .color-variant li.active:after {
        content: "\f00c";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        top: 10px;
        height: 100%;
        right: 4px;
        height: 15px;
        width: 15px;
        background-size: 70%;
        background-repeat: no-repeat;
        position: absolute;
        opacity: 0.8; }

.price-detail {
  font-size: 26px;
  color: #212529;
  font-weight: 400;
  margin: 15px 0; }
  .price-detail del {
    font-size: 14px;
    color: #aaaaaa;
    font-weight: 400; }
  .price-detail span {
    font-size: 16px;
    color: var(--theme-color);
    padding-left: 10px; }
    [dir="rtl"] .price-detail span {
      padding-left: 0;
      padding-right: 10px; }

.label-section {
  margin: 10px 0; }
  .label-section .badge-grey-color {
    padding: 6px 11px;
    font-size: 12px;
    background: #929292; }
  .label-section .label-text {
    text-transform: capitalize;
    padding-left: 5px; }
    [dir="rtl"] .label-section .label-text {
      padding-left: 0;
      padding-right: 5px; }

.service-accorion {
  padding: 28px; }
  .service-accorion .accordion-collapse {
    margin-top: 0 !important; }
    .service-accorion .accordion-collapse .accordion-body .category-list li {
      margin: 0 !important; }
      .service-accorion .accordion-collapse .accordion-body .category-list li + li {
        margin-top: 30px !important; }
      .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-icon svg {
          width: 30px;
          height: 30px;
          margin-right: 16px;
          fill: var(--theme-color);
          stroke: var(--theme-color);
          font-weight: 300; }
          [dir="rtl"] .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-icon svg {
            margin-right: 0;
            margin-left: 16px; }
          @media (max-width: 767px) {
            .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-icon svg {
              width: 35px;
              height: 35px; } }
        .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content h3 {
          margin-top: -1px;
          font-size: 15px;
          font-weight: 400; }
          @media (max-width: 1199px) {
            .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content h3 {
              margin-bottom: 2px !important; } }
        .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content span {
          display: block;
          margin-bottom: -3px; }
          @media (max-width: 991px) {
            .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content span {
              font-size: 13px; } }

.details-items .color-image {
  margin: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 767px) {
    .details-items .color-image {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .details-items .color-image .image-select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .details-items .color-image .image-select h5 {
      white-space: nowrap; }
    .details-items .color-image .image-select .image-section {
      width: calc(100% - 30px);
      margin-left: 10px;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      [dir="rtl"] .details-items .color-image .image-select .image-section {
        margin-left: 0;
        margin-right: 10px; }
      .details-items .color-image .image-select .image-section li {
        width: 60px;
        height: 60px;
        margin-right: 10px;
        overflow: hidden;
        border-radius: 5px;
        -webkit-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out; }
        .details-items .color-image .image-select .image-section li.active {
          -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
                  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4); }

.details-items .details-image {
  position: relative; }
  .details-items .details-image .product-image-tag {
    position: relative; }
    .details-items .details-image .product-image-tag img {
      border-radius: 5px;
      height: 100%;
      position: relative; }
    .details-items .details-image .product-image-tag .label-tag {
      position: absolute;
      bottom: 10px;
      right: 0;
      border-radius: 50px 0 0 50px;
      background-color: #fff;
      display: none; }
      @media (max-width: 575px) {
        .details-items .details-image .product-image-tag .label-tag {
          display: block; } }
      .details-items .details-image .product-image-tag .label-tag h6 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding: 8px 10px;
        font-weight: 500;
        font-size: 12px; }
        .details-items .details-image .product-image-tag .label-tag h6 i {
          font-size: 10px;
          margin: -1px 2px 0 0;
          color: var(--theme-color); }
        .details-items .details-image .product-image-tag .label-tag h6 span {
          font-weight: 400;
          border-left: 1px solid #ddd;
          padding-left: 6px;
          margin-left: 6px; }

.details-items .degree-section {
  position: relative; }
  .details-items .degree-section .image-360 {
    position: absolute;
    top: 20px;
    right: 20px;
    -webkit-filter: brightness(0.5);
            filter: brightness(0.5);
    z-index: 1;
    cursor: pointer; }
    .details-items .degree-section .image-360.videoplay-box {
      -webkit-filter: contrast(0.5);
              filter: contrast(0.5); }

.details-items .details-image-option .play-icon {
  position: relative; }
  .details-items .details-image-option .play-icon .fa-play {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    color: #212529;
    border: 2px solid #212529;
    padding: 15px;
    border-radius: 50%;
    font-size: 18px; }

.details-items .cloth-details-size {
  position: sticky;
  top: 10px; }
  @media (max-width: 767px) {
    .details-items .cloth-details-size {
      text-align: center; } }
  .details-items .cloth-details-size .details-image-concept {
    margin: 15px 0; }
    .details-items .cloth-details-size .details-image-concept h2 {
      text-transform: uppercase;
      font-size: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
      line-height: 1.2em;
      color: #212529; }
  .details-items .cloth-details-size .rating-number {
    display: inline-block;
    padding: 10px 0 0 0;
    color: #212529; }
    .details-items .cloth-details-size .rating-number h5 {
      font-size: 15px;
      margin: 0;
      padding: 10px;
      border-radius: 5px;
      border: 1px solid rgba(0, 0, 0, 0.1); }
      .details-items .cloth-details-size .rating-number h5 .feather {
        width: 15px;
        margin: 0 2px;
        margin-top: -3px;
        fill: #ffa202;
        color: #ffa202; }
      .details-items .cloth-details-size .rating-number h5 span {
        font-weight: 300;
        color: #212529; }
  .details-items .cloth-details-size .price-rating {
    padding: 0;
    margin-bottom: 0; }
    .details-items .cloth-details-size .price-rating li {
      list-style: none;
      display: inline-block;
      margin-right: 10px;
      color: var(--theme-color);
      text-decoration: none;
      font-weight: 600;
      font-size: 20px; }
      .details-items .cloth-details-size .price-rating li:nth-child(2) {
        color: #696969;
        text-decoration: line-through;
        font-weight: 300;
        font-size: 15px; }
      .details-items .cloth-details-size .price-rating li:nth-child(3) {
        color: #009c00;
        font-weight: 600; }
  .details-items .cloth-details-size .border-product {
    padding: 20px 0;
    border-top: 1px dashed #ddd; }
    .details-items .cloth-details-size .border-product img {
      width: 100%;
      max-width: 75%; }
      @media (max-width: 767px) {
        .details-items .cloth-details-size .border-product img {
          width: 100%;
          max-width: 100%; } }
  .details-items .cloth-details-size .timer-5 {
    margin-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 10px -5px 0; }
    .details-items .cloth-details-size .timer-5 h5 {
      display: inline-block;
      margin: 5px; }
    .details-items .cloth-details-size .timer-5 .timer1 {
      padding: 0;
      width: auto;
      display: inline-block; }
      .details-items .cloth-details-size .timer-5 .timer1 .counter {
        display: inline-block; }
        .details-items .cloth-details-size .timer-5 .timer1 .counter h5 {
          display: inline-block;
          color: #212529; }
  .details-items .cloth-details-size .progress {
    background-color: #ddd;
    height: 5px;
    width: 70%; }
    @media (max-width: 1199px) {
      .details-items .cloth-details-size .progress {
        width: 75%; } }
    @media (max-width: 767px) {
      .details-items .cloth-details-size .progress {
        width: 100%; } }
    .details-items .cloth-details-size .progress .progress-bar {
      background-color: var(--theme-color); }
  .details-items .cloth-details-size .image-bundle .bundle-img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .details-items .cloth-details-size .image-bundle .bundle-img .image-contain a img {
      max-width: 115px;
      -webkit-box-shadow: 0 0 8px rgba(33, 37, 41, 0.15);
              box-shadow: 0 0 8px rgba(33, 37, 41, 0.15); }
    .details-items .cloth-details-size .image-bundle .bundle-img span {
      margin: 0 15px; }
  .details-items .cloth-details-size .image-bundle .checkbox-details {
    margin-top: 18px; }
    .details-items .cloth-details-size .image-bundle .checkbox-details .checkbox-list {
      display: block;
      margin-bottom: 10px; }
  .details-items .cloth-details-size .cloth-size h5 {
    font-weight: 600;
    font-size: 22px;
    margin-bottom: 4px; }
  .details-items .cloth-details-size .cloth-size .choose-size {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: -10px; }
    .details-items .cloth-details-size .cloth-size .choose-size li {
      list-style: none;
      border-radius: 5px;
      font-size: 15px;
      border: 1px solid rgba(33, 37, 41, 0.2);
      margin: 10px;
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .details-items .cloth-details-size .cloth-size .choose-size li a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        color: #212529;
        text-decoration: none;
        width: 40px;
        height: 40px;
        font-size: 13px; }
      .details-items .cloth-details-size .cloth-size .choose-size li:hover a {
        font-weight: bold; }
  .details-items .cloth-details-size .cloth-timer {
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #212529;
    background-color: #eaeaea; }
    .details-items .cloth-details-size .cloth-timer h4 {
      font-size: calc(13px + (15 - 13) * ((100vw - 300px) / (1600 - 300))); }
    .details-items .cloth-details-size .cloth-timer #time-date {
      border-right: 1px solid rgba(0, 0, 0, 0.2);
      bottom: 0;
      right: 0;
      font-size: calc(13px + (15 - 13) * ((100vw - 300px) / (1600 - 300)));
      display: inline-block;
      margin: 0;
      font-weight: 500; }
  .details-items .cloth-details-size .cloth-color .dropdown-color {
    border-radius: 5px;
    padding: 9px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    width: 100%;
    height: 100%;
    font-weight: 400;
    background-color: white; }
    .details-items .cloth-details-size .cloth-color .dropdown-color:focus-visible {
      outline: none; }
    .details-items .cloth-details-size .cloth-color .dropdown-color option {
      color: #212529; }
  .details-items .cloth-details-size .cloth-color .counter-1 {
    width: 100%;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .details-items .cloth-details-size .cloth-color .counter-1 input {
      width: 100px;
      height: 40px;
      border: 0;
      line-height: 30px;
      font-size: 20px;
      text-align: center;
      background: #fff;
      margin: 0px 5px;
      color: #212529;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      outline: 0; }
    .details-items .cloth-details-size .cloth-color .counter-1 span {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-size: 25px;
      width: 40px;
      height: 40px;
      cursor: pointer;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      background-color: #696969;
      border-radius: 5px; }
      .details-items .cloth-details-size .cloth-color .counter-1 span .feather {
        color: #fff;
        width: 20px;
        stroke-width: 2.5px; }
  .details-items .cloth-details-size .cloth-color .wise-list {
    width: 40px;
    height: 40px;
    border-radius: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: auto;
    border: 1px solid var(--theme-color);
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }
    .details-items .cloth-details-size .cloth-color .wise-list:hover {
      border: 1px solid var(--theme-color);
      background-color: var(--theme-color); }
      .details-items .cloth-details-size .cloth-color .wise-list:hover .feather {
        fill: var(--theme-color);
        color: white;
        stroke-width: 3px; }
    .details-items .cloth-details-size .cloth-color .wise-list .feather {
      width: 20px;
      -webkit-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out; }
  .details-items .cloth-details-size .cart-button .buy-cart {
    background-color: var(--theme-color);
    width: 100%;
    height: 100%;
    border-radius: 5px;
    color: #fff;
    font-weight: bold;
    font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1600 - 320)));
    border: none;
    padding: 0; }
    .details-items .cloth-details-size .cart-button .buy-cart .fa-shopping-cart {
      margin-top: -1px; }
  .details-items .cloth-details-size .cart-button .add-cart {
    background-color: #fff;
    width: 100%;
    height: calc(40px + (50 - 40) * ((100vw - 320px) / (1600 - 320)));
    border-radius: 5px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1600 - 320)));
    padding: 0; }
    .details-items .cloth-details-size .cart-button .add-cart h6 {
      font-weight: 400; }
  .details-items .cloth-details-size .pay-option {
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .details-items .cloth-details-size .pay-option li {
      list-style: none;
      width: 60px;
      height: 60px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .details-items .cloth-details-size .pay-option li a {
        color: gray;
        font-size: 30px;
        margin: 0;
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        text-decoration: none; }
  .details-items .cloth-details-size .share-it {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
    position: absolute;
    top: 0;
    right: 0; }
    .details-items .cloth-details-size .share-it button {
      display: inline-block;
      color: #c6c9cc;
      cursor: pointer;
      background-color: #ececec;
      border: none;
      padding: 6px 12px;
      border-radius: 4px; }
      .details-items .cloth-details-size .share-it button .feather {
        width: 18px;
        color: #212529; }
    .details-items .cloth-details-size .share-it .share-option {
      padding: 0; }
      .details-items .cloth-details-size .share-it .share-option li {
        list-style: none;
        margin-right: 20px; }
        .details-items .cloth-details-size .share-it .share-option li a {
          color: #212529;
          font-size: 20px; }
          .details-items .cloth-details-size .share-it .share-option li a:hover {
            color: #696969; }

.cloth-review .nav-tabs {
  -ms-flex-wrap: initial;
      flex-wrap: initial;
  overflow-x: auto;
  overflow-y: hidden;
  border-bottom: 1px solid #ced4da; }
  .cloth-review .nav-tabs .nav-link {
    color: #212529;
    border-bottom: 4px solid transparent;
    padding: 15px 20px;
    font-size: 19px;
    font-weight: 500;
    margin-right: 20px;
    white-space: nowrap; }
    [dir="rtl"] .cloth-review .nav-tabs .nav-link {
      margin-right: 0;
      margin-left: 20px; }
    @media (max-width: 575px) {
      .cloth-review .nav-tabs .nav-link {
        margin-right: 0; } }
    .cloth-review .nav-tabs .nav-link:hover {
      border-top-color: transparent;
      border-right-color: transparent;
      border-left-color: transparent;
      border-bottom: 4px solid var(--theme-color);
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
    .cloth-review .nav-tabs .nav-link.active {
      border-top-color: transparent;
      border-right-color: transparent;
      border-left-color: transparent;
      border-bottom: 4px solid var(--theme-color);
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease;
      color: #212529;
      background-color: #fff; }

.cloth-review .shipping-chart {
  padding-bottom: 5px;
  padding: 0; }
  .cloth-review .shipping-chart li {
    font-size: 15px;
    list-style: none;
    color: #696969;
    padding: 0;
    margin: 10px 0;
    display: block; }

.cloth-review .tab-pane {
  padding-top: 30px; }
  .cloth-review .tab-pane .customer-review-box h4 {
    margin-bottom: 0px; }
  .cloth-review .tab-pane .customer-review-box .customer-section {
    border-bottom: 1px solid rgba(206, 212, 218, 0.7);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 30px 0; }
    .cloth-review .tab-pane .customer-review-box .customer-section .customer-profile {
      width: 60px;
      height: 60px;
      overflow: hidden;
      border-radius: 50%;
      margin-right: 28px; }
      [dir="rtl"] .cloth-review .tab-pane .customer-review-box .customer-section .customer-profile {
        margin-right: 0;
        margin-left: 28px; }
    .cloth-review .tab-pane .customer-review-box .customer-section .customer-details {
      width: calc(100% - 30px); }
      .cloth-review .tab-pane .customer-review-box .customer-section .customer-details h5 {
        font-weight: 500; }
      .cloth-review .tab-pane .customer-review-box .customer-section .customer-details p {
        line-height: 1.4; }
      .cloth-review .tab-pane .customer-review-box .customer-section .customer-details .date-custo {
        margin-top: 15px;
        font-size: 14px; }
  .cloth-review .tab-pane .customer-rating .rating-progess {
    margin-top: 21px; }
    .cloth-review .tab-pane .customer-rating .rating-progess li {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 20px; }
      .cloth-review .tab-pane .customer-rating .rating-progess li .progress {
        width: 100%;
        border-radius: 8px;
        height: 12px; }
        .cloth-review .tab-pane .customer-rating .rating-progess li .progress .progress-bar {
          background-color: #ffa202; }
      .cloth-review .tab-pane .customer-rating .rating-progess li h5 {
        margin: 0;
        white-space: nowrap;
        color: #212529;
        font-size: 14px; }
  .cloth-review .tab-pane .table-pane tr.bg-color {
    background-color: #eff2f7; }
  .cloth-review .tab-pane .pro .table-part {
    margin-top: 25px; }
    .cloth-review .tab-pane .pro .table-part tr {
      color: #7e7e7e; }
      .cloth-review .tab-pane .pro .table-part tr th {
        border: 1px solid #ced4da;
        background-color: #eff2f7;
        font-weight: 500;
        padding: 1.5rem !important;
        white-space: nowrap; }
      .cloth-review .tab-pane .pro .table-part tr td {
        border: 1px solid #ced4da;
        text-align: left;
        padding: 1.5rem !important;
        white-space: nowrap; }
        [dir="rtl"] .cloth-review .tab-pane .pro .table-part tr td {
          text-align: right; }
  .cloth-review .tab-pane .question-answer ul li {
    margin-bottom: 26px;
    padding-bottom: 26px;
    border-bottom: 1px solid #ced4da; }
    .cloth-review .tab-pane .question-answer ul li .que {
      font-weight: 500;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      margin-bottom: 0; }
      .cloth-review .tab-pane .question-answer ul li .que .fa-question {
        margin-right: 15px;
        font-size: 19px;
        color: var(--theme-color);
        width: 38px;
        height: 38px;
        border-radius: 100%;
        border: 1px solid #ced4da;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        [dir="rtl"] .cloth-review .tab-pane .question-answer ul li .que .fa-question {
          margin-right: 0;
          margin-left: 15px; }
      .cloth-review .tab-pane .question-answer ul li .que .que-details {
        width: calc(100% - 30px); }
        .cloth-review .tab-pane .question-answer ul li .que .que-details h6 {
          font-weight: 400;
          text-transform: capitalize;
          letter-spacing: 0.9px;
          display: block;
          width: 100%;
          color: #212529;
          font-size: 16px;
          line-height: 1.5; }
        .cloth-review .tab-pane .question-answer ul li .que .que-details p {
          margin-bottom: 0;
          line-height: 1.6;
          letter-spacing: 0.05em;
          font-size: 14px;
          margin-top: 15px;
          font-weight: 300;
          color: #7e7e7e; }
  .cloth-review .tab-pane .speci-list {
    display: block;
    margin-bottom: 28px; }
    .cloth-review .tab-pane .speci-list h6 {
      font-weight: 500; }
      .cloth-review .tab-pane .speci-list h6 span {
        font-weight: 400; }
  .cloth-review .tab-pane p {
    margin-bottom: 0;
    line-height: 1.8;
    letter-spacing: 0.05em;
    font-size: 14px; }
  .cloth-review .tab-pane .submit-button {
    background-color: var(--theme-color);
    color: #fff;
    font-weight: bold; }
  .cloth-review .tab-pane table tbody tr th {
    padding: 1.2rem 0.5rem !important;
    font-weight: 400;
    white-space: nowrap; }
  .cloth-review .tab-pane table tbody tr td {
    padding: 1.2rem 0.5rem;
    white-space: nowrap;
    text-align: center; }

.cloth-review .review-box .form-control:focus {
  border-color: #eff3f7 !important;
  -webkit-box-shadow: none;
          box-shadow: none; }

.part {
  margin-bottom: calc(0px + (20 - 0) * ((100vw - 320px) / (1920 - 320))); }
  .part .inner-title {
    font-weight: 400;
    text-transform: capitalize;
    font-size: 18px; }

.custome-modal .modal-content {
  border-radius: 10px; }
  .custome-modal .modal-content .modal-header {
    padding: 0; }
    .custome-modal .modal-content .modal-header button {
      position: absolute;
      top: 10px;
      right: 10px;
      margin: 0;
      z-index: 1;
      opacity: 1;
      color: #fff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
  .custome-modal .modal-content .modal-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center; }
    .custome-modal .modal-content .modal-body .share-it {
      padding: 0;
      margin: 0; }
      .custome-modal .modal-content .modal-body .share-it li {
        list-style: none;
        display: block; }
        .custome-modal .modal-content .modal-body .share-it li + li {
          margin-top: 30px; }
        .custome-modal .modal-content .modal-body .share-it li a {
          text-decoration: none;
          color: #212529;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-line-pack: center;
              align-content: center; }
          .custome-modal .modal-content .modal-body .share-it li a p {
            margin-bottom: 0; }
          .custome-modal .modal-content .modal-body .share-it li a i {
            margin-right: 10px;
            stroke-width: 1px;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            line-height: 1.5;
            -ms-flex-line-pack: center;
                align-content: center; }

.recently-purchase {
  background: #fff;
  max-width: 400px;
  border: 0;
  border-radius: 0;
  bottom: -200px;
  left: 10px;
  padding: 12px;
  position: fixed;
  text-align: left;
  width: auto;
  z-index: 7;
  -webkit-box-shadow: 0 0 4px 0 rgba(33, 37, 41, 0.2);
          box-shadow: 0 0 4px 0 rgba(33, 37, 41, 0.2);
  padding: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease; }
  [dir="rtl"] .recently-purchase {
    left: unset;
    right: 10px; }
  @media (max-width: 360px) {
    .recently-purchase {
      left: 0;
      margin: 0 13px; } }
  .recently-purchase.show {
    bottom: 10px;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease; }
    @media (max-width: 767px) {
      .recently-purchase.show {
        bottom: 80px; } }
    @media (max-width: 480px) {
      .recently-purchase.show {
        bottom: 64px; } }
  .recently-purchase img {
    width: 22%; }
  .recently-purchase .close-popup {
    position: absolute;
    right: 7px;
    top: 7px;
    opacity: 0.5;
    color: #212529; }
    [dir="rtl"] .recently-purchase .close-popup {
      right: unset;
      left: 7px; }
  .recently-purchase .media-body {
    padding: 0 20px; }
    [dir="rtl"] .recently-purchase .media-body {
      text-align: right; }
    .recently-purchase .media-body h4 {
      font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (1920 - 320)));
      font-weight: 500; }
    .recently-purchase .media-body .title {
      font-weight: 600; }
    .recently-purchase .media-body .product-name {
      color: var(--theme-color);
      font-size: 12px;
      display: block;
      margin: 2px 0; }
    .recently-purchase .media-body .timeAgo {
      display: block; }

.stickyCart {
  padding-bottom: 94px; }
  @media (max-width: 575px) {
    .stickyCart {
      padding-bottom: 0; } }
  .stickyCart .sticky-bottom-cart {
    bottom: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  .stickyCart .recently-purchase.show {
    bottom: 110px; }
  .stickyCart .tap-top {
    bottom: 110px; }

.outline-button {
  padding: 12px 45px;
  font-size: 15px;
  text-transform: capitalize;
  font-weight: 600; }
  @media (max-width: 767px) {
    .outline-button {
      padding: 12px; } }

.sticky-bottom-cart {
  position: fixed;
  bottom: -160px;
  width: 100vw;
  z-index: 9;
  background-color: #fff;
  padding: 12px 0;
  -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.16);
          box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.16);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  .sticky-bottom-cart .cart-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media (max-width: 575px) {
      .sticky-bottom-cart .cart-content {
        display: block; } }
  .sticky-bottom-cart .product-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 575px) {
      .sticky-bottom-cart .product-image {
        display: none; } }
    .sticky-bottom-cart .product-image img {
      width: 60px;
      height: 70px;
      -o-object-fit: cover;
         object-fit: cover;
      -o-object-position: top;
         object-position: top; }
    .sticky-bottom-cart .product-image .content {
      margin-left: 12px;
      color: #212529;
      margin-top: 0; }
      [dir="rtl"] .sticky-bottom-cart .product-image .content {
        margin-left: 0;
        margin-right: 12px; }
      @media (max-width: 991px) {
        .sticky-bottom-cart .product-image .content {
          display: none; } }
      @media (max-width: 480px) {
        .sticky-bottom-cart .product-image .content {
          display: block; } }
      .sticky-bottom-cart .product-image .content h5,
      .sticky-bottom-cart .product-image .content h6 {
        margin-bottom: 0; }
      .sticky-bottom-cart .product-image .content h5 {
        font-size: 16px;
        font-weight: 500;
        text-transform: capitalize; }
      .sticky-bottom-cart .product-image .content h6 {
        font-size: 15px;
        margin-top: 3px; }
        .sticky-bottom-cart .product-image .content h6 del {
          margin-left: 7px; }
        .sticky-bottom-cart .product-image .content h6 span {
          color: var(--theme-deafult);
          margin-left: 5px; }
          [dir="rtl"] .sticky-bottom-cart .product-image .content h6 span {
            margin-left: 0;
            margin-right: 5px; }
  .sticky-bottom-cart .selection-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 10px; }
    @media (max-width: 575px) {
      .sticky-bottom-cart .selection-section {
        display: none; } }
    .sticky-bottom-cart .selection-section .form-control {
      background-color: #eff2f7;
      border: 1px solid #eff2f7;
      text-transform: capitalize; }
      .sticky-bottom-cart .selection-section .form-control:focus {
        -webkit-box-shadow: none;
                box-shadow: none; }
    .sticky-bottom-cart .selection-section .form-group {
      width: 300px;
      margin-left: 10px;
      margin-right: 10px; }
      @media (max-width: 1199px) {
        .sticky-bottom-cart .selection-section .form-group {
          width: 190px; } }
      @media (max-width: 767px) {
        .sticky-bottom-cart .selection-section .form-group {
          margin-right: 0;
          width: unset; } }
  @media (max-width: 575px) {
    .sticky-bottom-cart .add-btn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  @media (max-width: 575px) {
    .sticky-bottom-cart .add-btn a {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .sticky-bottom-cart .add-btn a.wishlist-btn {
    display: none;
    background-color: #eff2f7;
    color: #212529; }
    .sticky-bottom-cart .add-btn a.wishlist-btn:hover {
      background-color: var(--theme-color);
      border-color: var(--theme-color);
      color: #fff; }
    @media (max-width: 575px) {
      .sticky-bottom-cart .add-btn a.wishlist-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
  @media (max-width: 575px) {
    .sticky-bottom-cart .add-btn a + a {
      margin-left: 8px; }
      [dir="rtl"] .sticky-bottom-cart .add-btn a + a {
        margin-right: 8px;
        margin-left: unset; } }
  .sticky-bottom-cart .add-btn a i {
    margin-right: 7px; }
    [dir="rtl"] .sticky-bottom-cart .add-btn a i {
      margin-right: unset;
      margin-left: 7px; }

.product-image {
  border-radius: 7px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .product-image:hover .product-details .cart-wrap {
    opacity: 1; }
    .product-image:hover .product-details .cart-wrap ul li {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0); }
      .product-image:hover .product-details .cart-wrap ul li:nth-child(2) {
        -webkit-transition-delay: 0.1s;
                transition-delay: 0.1s; }
      .product-image:hover .product-details .cart-wrap ul li:nth-child(3) {
        -webkit-transition-delay: 0.2s;
                transition-delay: 0.2s; }
      .product-image:hover .product-details .cart-wrap ul li:nth-child(4) {
        -webkit-transition-delay: 0.3s;
                transition-delay: 0.3s; }
      .product-image:hover .product-details .cart-wrap ul li:nth-child(5) {
        -webkit-transition-delay: 0.4s;
                transition-delay: 0.4s; }
  [dir="rtl"] .product-image {
    direction: rtl; }
  .product-image img {
    width: 80px;
    height: 90px;
    -o-object-fit: cover;
       object-fit: cover; }
  .product-image .product-details {
    margin-left: 15px;
    overflow: hidden;
    position: relative; }
    .product-image .product-details .cart-wrap {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 100%;
      height: 100%;
      left: 0;
      background-color: #fff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      padding-left: 20px;
      opacity: 0;
      -webkit-transition: .4s ease;
      transition: .4s ease; }
      [dir="rtl"] .product-image .product-details .cart-wrap {
        margin-left: unset;
        padding-right: 20px; }
      .product-image .product-details .cart-wrap ul li {
        opacity: 0;
        -webkit-transform: translateY(40px);
                transform: translateY(40px);
        -webkit-transition: .4s ease;
        transition: .4s ease; }
        .product-image .product-details .cart-wrap ul li + li {
          margin-left: 10px; }
          [dir="rtl"] .product-image .product-details .cart-wrap ul li + li {
            margin-left: unset;
            margin-right: 10px; }
        .product-image .product-details .cart-wrap ul li a .feather {
          width: 20px; }
    [dir="rtl"] .product-image .product-details {
      margin-left: 0;
      margin-right: 15px; }
    .product-image .product-details a {
      color: #212529; }
      .product-image .product-details a h3 {
        font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        margin: 4px 0 0; }
    .product-image .product-details h4 {
      font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320))); }
      .product-image .product-details h4 span {
        margin-left: 10px; }
        [dir="rtl"] .product-image .product-details h4 span {
          margin-left: unset;
          margin-right: 10px; }
  .product-image + .product-image {
    margin-top: 30px; }

.wrapper {
  text-align: center;
  color: #696969;
  overflow: hidden; }
  .wrapper #threesixty {
    margin: 0 auto;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .wrapper .buttons-wrapper {
    max-width: 120px;
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .wrapper .buttons-wrapper .button {
      position: relative;
      border: none;
      width: 45px;
      cursor: pointer;
      height: 45px;
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
      .wrapper .buttons-wrapper .button:hover {
        background-color: #212529;
        color: #fff; }

.compare-table tbody tr th,
.compare-table tbody tr td {
  padding: 12px 20px;
  font-weight: 400; }

.compare-table tbody tr td p {
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.9px;
  margin-bottom: 0; }

.compare-table tbody tr td.table-image-section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .compare-table tbody tr td.table-image-section img {
    width: 100%;
    max-width: 250px; }
  .compare-table tbody tr td.table-image-section .image-details {
    margin-left: 20px;
    width: 100%; }
    .compare-table tbody tr td.table-image-section .image-details h5 {
      margin: 8px 0; }
    .compare-table tbody tr td.table-image-section .image-details p {
      line-height: 10px;
      margin-bottom: 0; }
    .compare-table tbody tr td.table-image-section .image-details .btn-solid {
      background-color: var(--theme-color);
      color: #fff;
      padding: 7px 25px; }

.compare-table tbody tr td.product-description {
  width: 500px; }

/**=====================
    Coming soon css start
==========================**/
.store-container {
  line-height: 0;
  margin: 0 auto;
  text-align: center;
  width: 32%; }
  @media (max-width: 991px) {
    .store-container {
      width: 40%; } }
  @media (max-width: 767px) {
    .store-container {
      width: 60%; } }
  @media (max-width: 480px) {
    .store-container {
      width: 80%; } }
  @media (max-width: 360px) {
    .store-container {
      width: 100%; } }
  .store-container svg {
    overflow: visible; }
  .store-container #toldo {
    -webkit-animation: fadeIn 1s 1.4s ease-in forwards;
            animation: fadeIn 1s 1.4s ease-in forwards; }
  .store-container .grass {
    -webkit-animation: fadeIn 0.5s 1.6s ease-in forwards;
            animation: fadeIn 0.5s 1.6s ease-in forwards; }
  .store-container #window {
    -webkit-animation: fadeIn 0.5s 1.8s ease-in forwards;
            animation: fadeIn 0.5s 1.8s ease-in forwards; }
  .store-container #door {
    -webkit-animation: fadeIn 0.5s 2s ease-in forwards;
            animation: fadeIn 0.5s 2s ease-in forwards; }
  .store-container #sign {
    -webkit-transform-origin: 837px 597px;
            transform-origin: 837px 597px;
    -webkit-animation: pendulum 1.5s 2s ease-in-out alternate;
            animation: pendulum 1.5s 2s ease-in-out alternate; }
  .store-container .trees {
    -webkit-animation: fadeIn 0.5s 2.2s ease-in forwards;
            animation: fadeIn 0.5s 2.2s ease-in forwards; }
  .store-container #browser {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    -webkit-animation: moveDown 1.5s cubic-bezier(0.77, -0.5, 0.3, 1.5) forwards;
            animation: moveDown 1.5s cubic-bezier(0.77, -0.5, 0.3, 1.5) forwards; }
  .store-container .stroke {
    stroke: var(--theme-color);
    stroke-width: 5;
    stroke-linejoin: round;
    stroke-miterlimit: 10; }
  .store-container .round-end {
    stroke-linecap: round; }
  .store-container #store {
    -webkit-animation: fadeIn 0.8s ease-in;
            animation: fadeIn 0.8s ease-in; }
  .store-container .cat {
    -webkit-transform-origin: 1145px 620px;
            transform-origin: 1145px 620px; }
  .store-container .cat-shadow {
    -webkit-transform-origin: 1115px 625px;
            transform-origin: 1115px 625px; }
  .store-container #store:hover .cat {
    -webkit-animation: catHi 3s 3s cubic-bezier(0.7, -0.5, 0.3, 1.4);
            animation: catHi 3s 3s cubic-bezier(0.7, -0.5, 0.3, 1.4); }
  .store-container #store:hover .cat-shadow {
    -webkit-animation: catShadow 4s 2s cubic-bezier(0.7, -0.5, 0.3, 1.4) alternate;
            animation: catShadow 4s 2s cubic-bezier(0.7, -0.5, 0.3, 1.4) alternate; }
  .store-container .box,
  .store-container .parachute {
    -webkit-transform-origin: 430px 100px;
            transform-origin: 430px 100px;
    -webkit-animation: moveBox 14s 4s linear forwards infinite;
            animation: moveBox 14s 4s linear forwards infinite; }
  .store-container .parachute {
    -webkit-animation: parachute 14s 4s linear forwards infinite;
            animation: parachute 14s 4s linear forwards infinite; }
  .store-container .tshirt {
    -webkit-animation: fadeInOut 42s 10s ease-in forwards infinite;
            animation: fadeInOut 42s 10s ease-in forwards infinite; }
  .store-container .cap {
    -webkit-animation: fadeInOut 42s 24s ease-in forwards infinite;
            animation: fadeInOut 42s 24s ease-in forwards infinite; }
  .store-container .ball {
    -webkit-animation: fadeInOut 42s 38s ease-in forwards infinite;
            animation: fadeInOut 42s 38s ease-in forwards infinite; }
  .store-container #text,
  .store-container #button {
    -webkit-animation: fadeIn 1s 5s ease-in forwards;
            animation: fadeIn 1s 5s ease-in forwards; }
  .store-container .sky-circle {
    -webkit-animation: fadeInOut 10s 5s ease-in infinite;
            animation: fadeInOut 10s 5s ease-in infinite; }
  .store-container .sky-circle2 {
    -webkit-animation: fadeInOut 12s 30s ease-in infinite;
            animation: fadeInOut 12s 30s ease-in infinite; }
  .store-container .sky-circle3 {
    -webkit-animation: fadeInOut 8s 40s ease-in infinite;
            animation: fadeInOut 8s 40s ease-in infinite; }
  .store-container .cloud {
    -webkit-animation: clouds 50s linear backwards infinite;
            animation: clouds 50s linear backwards infinite; }
  .store-container .cloud2 {
    -webkit-animation: clouds 40s 40s linear backwards infinite;
            animation: clouds 40s 40s linear backwards infinite; }
  .store-container .plane {
    -webkit-animation: clouds 30s linear backwards infinite;
            animation: clouds 30s linear backwards infinite;
    will-change: transform; }
  .store-container #toldo,
  .store-container .grass,
  .store-container #window,
  .store-container #door,
  .store-container .trees,
  .store-container .cat,
  .store-container .cat-shadow,
  .store-container .box,
  .store-container .parachute,
  .store-container .tshirt,
  .store-container .cap,
  .store-container .ball,
  .store-container #text,
  .store-container #button,
  .store-container .sky-circle,
  .store-container .sky-circle2,
  .store-container .sky-circle3 {
    opacity: 0; }

.coming-soon-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  text-align: center; }
  .coming-soon-content h1 {
    font-size: calc(25px + (45 - 25) * ((100vw - 320px) / (1920 - 320)));
    color: #212529;
    margin-bottom: 16px; }
  .coming-soon-content p {
    color: #7e7e7e;
    font-size: 16px;
    max-width: 80%;
    line-height: 1.5;
    margin: 0 auto 16px; }
    @media (max-width: 360px) {
      .coming-soon-content p {
        max-width: 100%; } }
  .coming-soon-content .form-control {
    max-width: 80%;
    margin: 0px auto; }
    @media (max-width: 360px) {
      .coming-soon-content .form-control {
        max-width: 100%; } }

/**=====================
     responsive css start
==========================**/
@media (min-width: 1430px) {
  .container {
    max-width: 1400px; } }

/**=====================
    RTL css start
==========================**/
[dir="rtl"] ol,
[dir="rtl"] ul {
  padding: 0; }

[dir="rtl"] .slick-slider {
  direction: ltr; }

[dir="rtl"] .slick-slide {
  float: left; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL192YXJpYWJsZXMuc2NzcyIsInV0aWxzL21peGluL19jb21tb24uc2NzcyIsImRlbW8yLmNzcyIsInV0aWxzL21peGluL19icmVha3BvaW50cy5zY3NzIiwidXRpbHMvbWl4aW4vX2FuaW1hdGlvbi5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fYWxlcnQuc2NzcyIsImNvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCJjb21wb25lbnRzL190YWIuc2NzcyIsImNvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCJjb21wb25lbnRzL190aW1lci5zY3NzIiwiY29tcG9uZW50cy9fdGFwX3RvX3RvcC5zY3NzIiwiY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsImNvbXBvbmVudHMvX3RpdGxlLnNjc3MiLCJjb21wb25lbnRzL19yYXRpby5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL190b3VjaHNwaW4uc2NzcyIsImNvbXBvbmVudHMvX2xhenlsb2FkLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19uYXYuc2NzcyIsImxheW91dC9faG9tZV9zbGlkZXIuc2NzcyIsImxheW91dC9fc2xpY2stc2xpZGVyLnNjc3MiLCJsYXlvdXQvX3NlcnZpY2Uuc2NzcyIsImxheW91dC9fYmFubmVyLnNjc3MiLCJsYXlvdXQvX3Byb2R1Y3Quc2NzcyIsImxheW91dC9fY2F0ZWdvcnkuc2NzcyIsInV0aWxzL21peGluL19jYXRlZ29yeS5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fY29va2llX2Jhci5zY3NzIiwibGF5b3V0L19zdWJzY3JpYmUuc2NzcyIsImxheW91dC9fb2ZmZXIuc2NzcyIsInBhZ2VzL19pbm5lcl9wYWdlLnNjc3MiLCJwYWdlcy9fc2hvcF9wYWdlLnNjc3MiLCJwYWdlcy9fcHJvZHVjdF9kZXRhaWxzLnNjc3MiLCJwYWdlcy9fY29taW5nX3Nvb24uc2NzcyIsInRoZW1lcy9fcmVzcG9uc2l2ZS5zY3NzIiwidGhlbWVzL19ydGwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLHNCQUFjLEVBQUE7O0FBR2xCO0VBQ0ksc0JBQWMsRUFBQTs7QUFHbEI7RUFDSSxzQkFBYyxFQUFBOztBQUdsQjtFQUNJLHNCQUFjLEVBQUE7O0FBR2xCO0VBQ0ksc0JBQWMsRUFBQTs7QUFHbEI7RUFDSSxzQkFBYyxFQUFBOztBQUdsQjtFQUNJLGNBQWMsRUFBQTs7QUN6QmxCOzs0QkN1QjRCO0FEbkI1Qix3Q0FBQTtBQThCQSxzQ0FBQTtBQUVBLDRDQUFBO0FBT0EsMENBQUE7QUFFQSwwQ0FBQTtBQWFJO0VBQ0kseUJBQXFDLEVBQUE7O0FBRHpDO0VBQ0ksd0NBQXFDLEVBQUE7O0FBRHpDO0VBQ0kseUJBQXFDLEVBQUE7O0FBRHpDO0VBQ0kseUJBQXFDLEVBQUE7O0FBSTdDLHVDQUFBO0FBRUEsdUNBQUE7QUFLSTtFQUNJLFdEM0NJO0VDNENKLHVCQUF1QjtFQUN2Qix5QkR0QzBCLEVBQUE7RUNtQzlCO0lBL0RBLFdBRG1DO0lBRW5DLGtCQUZxQjtJQU1yQixXQUR3QjtJQUV4QixZQUZ1QztJQW1FL0IsTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gseUJEOUNzQjtJQytDdEIsNEJBQW9CO0lBQXBCLG9CQUFvQixFQUFBO0VBWjVCO0lBZ0JRLGNEbkRzQixFQUFBO0lDbUM5QjtNQW1CWSxVQUFVO01BQ1Ysa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBOztBQXBCdEM7RUFDSSxXRDNDSTtFQzRDSix1QkFBdUI7RUFDdkIseUJEaENjO0VDc0RWLFdEbkVBLEVBQUE7RUMwQ1I7SUEvREEsV0FEbUM7SUFFbkMsa0JBRnFCO0lBTXJCLFdBRHdCO0lBRXhCLFlBRnVDO0lBbUUvQixNQUFNO0lBQ04sT0FBTztJQUNQLFdBQVc7SUFDWCx5QkR4Q1U7SUN5Q1YsNEJBQW9CO0lBQXBCLG9CQUFvQixFQUFBO0VBWjVCO0lBZ0JRLGNEbkRzQixFQUFBO0lDbUM5QjtNQW1CWSxVQUFVO01BQ1Ysa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBO0VBcEJ0QztJQStCWSxXRHhFSixFQUFBOztBQ3lDUjtFQUNJLFdEM0NJO0VDNENKLHVCQUF1QjtFQUN2QixvQ0FKb0IsRUFBQTtFQUN4QjtJQS9EQSxXQURtQztJQUVuQyxrQkFGcUI7SUFNckIsV0FEd0I7SUFFeEIsWUFGdUM7SUFtRS9CLE1BQU07SUFDTixPQUFPO0lBQ1AsV0FBVztJQUNYLG9DQVpnQjtJQWFoQiw0QkFBb0I7SUFBcEIsb0JBQW9CLEVBQUE7RUFaNUI7SUFnQlEsY0RuRHNCLEVBQUE7SUNtQzlCO01BbUJZLFVBQVU7TUFDVixrQ0FBMEI7Y0FBMUIsMEJBQTBCLEVBQUE7O0FBaUIxQyxvQ0FBQTtBQUVBLHFDQUFBO0FBU0EsbUNBQUE7QUFhQSx3Q0FBQTtBRW5JQTs7NEJEZ0g0QjtBRWhINUI7RUFDSTtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTtFQUc3QjtJQUNJLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQSxFQUFBO0FBVmpDO0VBQ0k7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSxpQ0FBeUI7WUFBekIseUJBQXlCLEVBQUE7RUFHN0I7SUFDSSxpQ0FBeUI7WUFBekIseUJBQXlCLEVBQUEsRUFBQTs7QUFJakM7RUFDSTtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQTtFQUczQztJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsOEJBQXNCO1lBQXRCLHNCQUFzQixFQUFBO0VBRzFCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QjtJQUN4QiwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUEsRUFBQTs7QUFoQi9DO0VBQ0k7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUE7RUFHM0M7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLDhCQUFzQjtZQUF0QixzQkFBc0IsRUFBQTtFQUcxQjtJQUNJLGdDQUF3QjtZQUF4Qix3QkFBd0I7SUFDeEIsK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBRzNCO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBLEVBQUE7O0FBSS9DO0VBQ0k7SUFDSSx3RkppQm1CO1lJakJuQixnRkppQm1CLEVBQUE7RUlidkI7SUFDSSwwRkpZbUI7WUlabkIsa0ZKWW1CLEVBQUEsRUFBQTs7QUluQjNCO0VBQ0k7SUFDSSx3RkppQm1CO1lJakJuQixnRkppQm1CLEVBQUE7RUlidkI7SUFDSSwwRkpZbUI7WUlabkIsa0ZKWW1CLEVBQUEsRUFBQTs7QUlQM0I7RUFDSTtJQUNJLHNGSmlCUTtZSWpCUiw4RUppQlEsRUFBQTtFSWRaO0lBQ0ksd0ZKYVE7WUliUixnRkphUSxFQUFBLEVBQUE7O0FJbkJoQjtFQUNJO0lBQ0ksc0ZKaUJRO1lJakJSLDhFSmlCUSxFQUFBO0VJZFo7SUFDSSx3RkphUTtZSWJSLGdGSmFRLEVBQUEsRUFBQTs7QUlUaEI7RUFDSTtJQUNJLHdGQUFnRjtZQUFoRixnRkFBZ0YsRUFBQTtFQUdwRjtJQUNJLDBGQUFrRjtZQUFsRixrRkFBa0YsRUFBQSxFQUFBOztBQU4xRjtFQUNJO0lBQ0ksd0ZBQWdGO1lBQWhGLGdGQUFnRixFQUFBO0VBR3BGO0lBQ0ksMEZBQWtGO1lBQWxGLGtGQUFrRixFQUFBLEVBQUE7O0FBSTFGO0VBQ0k7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLGdDQUF3QjtZQUF4Qix3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLGdDQUF3QjtZQUF4Qix3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQSxFQUFBOztBQW5CL0I7RUFDSTtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBRzNCO0lBQ0ksK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBRzNCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBLEVBQUE7O0FBSS9CO0VBQ0k7SUFDSSxrQ0FBMEI7WUFBMUIsMEJBQTBCLEVBQUE7RUFHOUI7SUFDSSxvQ0FBNEI7WUFBNUIsNEJBQTRCLEVBQUE7RUFHaEM7SUFDSSxrQ0FBMEI7WUFBMUIsMEJBQTBCLEVBQUEsRUFBQTs7QUFWbEM7RUFDSTtJQUNJLGtDQUEwQjtZQUExQiwwQkFBMEIsRUFBQTtFQUc5QjtJQUNJLG9DQUE0QjtZQUE1Qiw0QkFBNEIsRUFBQTtFQUdoQztJQUNJLGtDQUEwQjtZQUExQiwwQkFBMEIsRUFBQSxFQUFBOztBQUlsQztFQUNJO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBO0VBRzNDO0lBQ0kscURBQTZDO1lBQTdDLDZDQUE2QyxFQUFBO0VBR2pEO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBLEVBQUE7O0FBVi9DO0VBQ0k7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUE7RUFHM0M7SUFDSSxxREFBNkM7WUFBN0MsNkNBQTZDLEVBQUE7RUFHakQ7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUEsRUFBQTs7QUFJL0M7RUFDSTtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQTtFQUczQztJQUNJLHNEQUE4QztZQUE5Qyw4Q0FBOEMsRUFBQTtFQUdsRDtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQSxFQUFBOztBQVYvQztFQUNJO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBO0VBRzNDO0lBQ0ksc0RBQThDO1lBQTlDLDhDQUE4QyxFQUFBO0VBR2xEO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBLEVBQUE7O0FBSS9DO0VBQ0k7SUFDSSxtREFBMkM7WUFBM0MsMkNBQTJDLEVBQUE7RUFHL0M7SUFDSSx3REFBZ0Q7WUFBaEQsZ0RBQWdELEVBQUE7RUFHcEQ7SUFDSSx5REFBaUQ7WUFBakQsaURBQWlELEVBQUE7RUFHckQ7SUFDSSxzREFBOEM7WUFBOUMsOENBQThDLEVBQUEsRUFBQTs7QUFkdEQ7RUFDSTtJQUNJLG1EQUEyQztZQUEzQywyQ0FBMkMsRUFBQTtFQUcvQztJQUNJLHdEQUFnRDtZQUFoRCxnREFBZ0QsRUFBQTtFQUdwRDtJQUNJLHlEQUFpRDtZQUFqRCxpREFBaUQsRUFBQTtFQUdyRDtJQUNJLHNEQUE4QztZQUE5Qyw4Q0FBOEMsRUFBQSxFQUFBOztBQUl0RDtFQUNJO0lBQ0ksWUFBWTtJQUNaLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsMkRKNUhRO1lJNEhSLG1ESjVIUSxFQUFBO0VJK0haO0lBQ0ksV0FBVztJQUNYLFlBQVk7SUFDWix3REpsSVE7WUlrSVIsZ0RKbElRO0lJbUlSLGlCQUFpQixFQUFBLEVBQUE7O0FBWnpCO0VBQ0k7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLGtCQUFrQjtJQUNsQiwyREo1SFE7WUk0SFIsbURKNUhRLEVBQUE7RUkrSFo7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLHdESmxJUTtZSWtJUixnREpsSVE7SUltSVIsaUJBQWlCLEVBQUEsRUFBQTs7QUFJekI7RUFDSTtJQUNJLHNEQUE4QztZQUE5Qyw4Q0FBOEMsRUFBQTtFQUdsRDtJQUNJLHlEQUFpRDtZQUFqRCxpREFBaUQsRUFBQTtFQUdyRDtJQUNJLHdEQUFnRDtZQUFoRCxnREFBZ0QsRUFBQTtFQUdwRDtJQUNJLG1EQUEyQztZQUEzQywyQ0FBMkMsRUFBQSxFQUFBOztBQWRuRDtFQUNJO0lBQ0ksc0RBQThDO1lBQTlDLDhDQUE4QyxFQUFBO0VBR2xEO0lBQ0kseURBQWlEO1lBQWpELGlEQUFpRCxFQUFBO0VBR3JEO0lBQ0ksd0RBQWdEO1lBQWhELGdEQUFnRCxFQUFBO0VBR3BEO0lBQ0ksbURBQTJDO1lBQTNDLDJDQUEyQyxFQUFBLEVBQUE7O0FBSW5EO0VBQ0k7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLHdESjdKUTtZSTZKUixnREo3SlE7SUk4SlIsaUJBQWlCLEVBQUE7RUFHckI7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLGtCQUFrQjtJQUNsQiwyREpyS1E7WUlxS1IsbURKcktRLEVBQUEsRUFBQTs7QUl5SmhCO0VBQ0k7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLHdESjdKUTtZSTZKUixnREo3SlE7SUk4SlIsaUJBQWlCLEVBQUE7RUFHckI7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLGtCQUFrQjtJQUNsQiwyREpyS1E7WUlxS1IsbURKcktRLEVBQUEsRUFBQTs7QUl5S2hCO0VBRUk7O0lBRUksdUNBQStCO1lBQS9CLCtCQUErQixFQUFBO0VBR25DOzs7OztJQUtJLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUd2Qzs7OztJQUlJLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQSxFQUFBOztBQW5CMUM7RUFFSTs7SUFFSSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHbkM7Ozs7O0lBS0ksMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3ZDOzs7O0lBSUksMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBSTFDO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBRzNCO0lBQ0ksWUFBWTtJQUNaLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTtFQUc3QjtJQUNJLFVBQVU7SUFDVixpQ0FBeUI7WUFBekIseUJBQXlCLEVBQUEsRUFBQTs7QUFiakM7RUFDSTtJQUNJLFVBQVU7SUFDViwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSxZQUFZO0lBQ1osaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksVUFBVTtJQUNWLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQSxFQUFBOztBQUlqQztFQUVJOztJQUVJLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUd0Qzs7SUFFSSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUE7RUFHckM7OztJQUdJLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUd0Qzs7SUFFSSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUEsRUFBQTs7QUFwQnpDO0VBRUk7O0lBRUksMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3RDOztJQUVJLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUdyQzs7O0lBR0ksMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3RDOztJQUVJLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQSxFQUFBOztBQUl6QztFQUNJO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBO0VBR3pCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBO0VBR3pCO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBLEVBQUE7O0FBOUY3QjtFQUNJO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBO0VBR3pCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ks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S2hCO01tQzZJUjtRQTRCWSxlQUFlLEVBQUEsRUFFdEI7O0FDbE1MOzs0QnJDMjlXNEI7QXFDeDlXNUI7RUFDSTtJQUNJLGlCQUFpQixFQUFBLEVBQ3BCOztBQ05MOzs0QnRDaytXNEI7QUFDNUI7O0VzQzU5V1EsVUFBVSxFQUFBOztBdENnK1dsQjtFc0M1OVdRLGNBQWMsRUFBQTs7QXRDKzlXdEI7RXNDMzlXUSxXQUFXLEVBQUEiLCJmaWxlIjoiZGVtbzIuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiOnJvb3Qge1xuICAgIC0tdGhlbWUtY29sb3I6ICMwMTYzZDI7XG59XG5cbi50aGVtZS1jb2xvcjIge1xuICAgIC0tdGhlbWUtY29sb3I6ICNlMjI0NTQ7XG59XG5cbi50aGVtZS1jb2xvcjMge1xuICAgIC0tdGhlbWUtY29sb3I6ICM3NTIwZGQ7XG59XG5cbi50aGVtZS1jb2xvcjQge1xuICAgIC0tdGhlbWUtY29sb3I6ICNlODczMTY7XG59XG5cbi50aGVtZS1jb2xvcjUge1xuICAgIC0tdGhlbWUtY29sb3I6ICNkZjQyNDY7XG59XG5cbi50aGVtZS1jb2xvcjYge1xuICAgIC0tdGhlbWUtY29sb3I6ICM1MTk4M2M7XG59XG5cbi50ZXh0LWNvbG9yIHtcbiAgICBjb2xvcjogIzZkNmQ2ZDtcbn1cblxuJHdoaXRlOiAjZmZmO1xuJGJsYWNrOiAjMDAwO1xuJGJsYWNrMTogIzIxMjUyOTtcbiRncmF5OiAjYzdjN2M1O1xuJGdyYXktbGlnaHQ6ICNkZGQ7XG4kZ3JheS05MDogI2U1ZTVlNTtcbiRsaWdodC1ibHVlOiAjZWZmMmY3O1xuJHRoZW1lLWZvbnQtY29sb3I6IHJnYigzNSwgMzUsIDM1KTtcbiRkYXJrLWNvbG9yOiAjMWQxZDFkO1xuJGZvbnQtZGFyazogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC42NSk7XG4kZm9udC1kYXJrLTMwOiByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAxKTtcbiRyYXRpbmctY29sb3I6ICNmYWNjMjE7XG4kZm9udC1saWdodDogIzdlN2U3ZTtcbiRsaWdodC1idXR0b246ICNmZWZlZmU7XG4kZGVtbzEtYmc6ICNmMGYzZjg7XG4kYm9yZGVyLWNvbG9yOiAjY2VkNGRhO1xuJGRhcmtzaWx2ZXI6ICM2OTY5Njk7XG4kbGlnaHRzaWx2ZXI6ICNmOGY4Zjg7XG4kdGhlbWUtY29sb3I6ICM3NTIwZGQ7XG4kdGhlbWUtbGlnaHQtY29sb3I6ICNlM2RkZjQ7XG4kcmVkOiAjZmYwMDAwO1xuJHllbGxvdzogI2ZmYTIwMjtcbiRiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuJGxpZ2h0LXRleHQ6ICMzODM4Mzg5OTtcbiRncmVlbjogIzAwOWMwMDtcbiRsaWdodC10aGVtZS1jb2xvcjogI2VmZjNmNztcbiRyZWQtNDA6IHJnYmEoMjU1LCAwLCAwLCAwLjQpO1xuJGRlbW8tbGlnaHQtMjogI2VmZGVlNztcbiRkZW1vLWxpZ2h0LTQ6ICNlYWRmZDU7XG4kbGlnaHQtZGVtby00OiAjZWFlYWVhO1xuJGRlbW8tbGlnaHQtNTogI2VlZTFlNjtcbiRsaWdodC1kZW1vLTY6ICNmMGY4ZjA7XG4kbGlnaHQtZGVtby03OiAjZjBmN2YwO1xuJGxpZ2h0LXJlZC1zaGFkZTogI2U5ZTllOTtcbiRhbWVyaWNhbi1zaWx2ZXI6ICNjZWNlY2U7XG4kc2hhZGUtZ3JheTogIzc3Nzc3NztcbiRuZXJvOiAjMTkxOTE5O1xuJGRlbW8tNDogI2U4NzMxNjtcbiR0aGVtZS1jb2xvcjE6ICMwMTYzZDI7XG4kZ3JlZW4tZGFyazogIzBmNTEzMjtcbiRkYXJrLWdyZWVuOiAjMGM1NDYwO1xuJGxpZ2h0LWdyZWVuOiAjZDFlN2RkO1xuJGFtZXJpY2FuLWdyYXk6ICNkMGQwZDA7XG4kbGlnaHQteWVsbG93OiAjZmNiYTdmO1xuJGxpZ2h0LWdyYXk6ICNjM2MzYzM7XG4kcHVycGxlOiAjNzMxZmRhO1xuJGNhbW91ZmxhZ2UtZ3JlZW46ICM3Nzc4NzY7XG4kaGFsZi1iYWtlZDogIzg2YjhjZjtcbiRtb25vY2hyb21hdGljOiAjNGI3N2EwO1xuJHNpbHZlcjogI2MwYzBjMDtcbiRkYXJrLXNpbHZlcjogI2NhY2FjYTtcbiRncmF5LTUwOiAjZWJlYmViO1xuJGRvZGdlci1ibHVlOiAjODhkMWY0O1xuJGxpZ2h0LXJlZDojZTM2MjdiO1xuJGxpZ2h0LXB1cnBsZTogI2EwNzY4ZTtcbiRicmlnaHQtZ3JheTogI2VmZWZlZjtcbiRnYWluc2Jvcm86ICNkZWRlZGU7XG4kcXVpY2stc2lsdmVyOiAjYTVhNWE1O1xuJGxpZ2h0LWdyYXlpc2gtYmx1ZTogIzZjNzU3ZDtcbiRkYXJrLWJsdWU6ICM0MzYwOWM7XG4kYmVybXVkYS1ncmV5OiAjNzg5MDljO1xuJGdyZWVuLWRhcms6ICMwMDgwMDA7XG4kd2hpdGUtZGFyazogI2YyZjlmYztcbiRsaWdodC1zaGFkZS1ncmF5OiAjZjlmOWY5O1xuJGRhcmstc2hhZGUtZ3JheTogI2QyZDJkMjtcbiR3aGlzcGVyOiAjZjFlN2U2O1xuJHNpbHZlci1vcmlnaW5hbDogI2JmYmZiZjtcbiRzaWx2ZXItc2F0dXJhdGVkOiAjYWFhYWFhO1xuJGdyYXktc2F0dXJhdGVkOiAjOTI5MjkyO1xuJGNoaW5lc2Utc2lsdmVyOiAjYzZjOWNjO1xuJGJyaWdodC1zaWx2ZXItMTogI2VjZWNlYztcbiRzaWx2ZXItbGlnaHQ6ICNiNWJlYzc7XG4kZ3JheS1kYXJrOiAjN2Y3ZjdmO1xuJGdyYXktZGFyay0xOiAjOGY4Mzk3O1xuJGNoaW5lc2Utc2lsdmVyLTE6ICNlMGUwZTA7XG4kbGlnaHQtb3JhbmdlOiAjZmFiMWEwO1xuJGxpZ2h0LWdyZWVuLTE6ICMxMGFjODQ7XG4keWVsbG93LWRhcms6ICNmZjlmNDM7XG4kZGFyay1zaGFkZS1zaWx2ZXI6ICM4Mzk1YTc7XG4kYmxhY2stb2xpdmU6ICMzZDNkM2Q7XG5cbiRvcmFuZ2UxOiAjZWM3YTFmO1xuJHB1cnBsZS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KC0yM2RlZywgIzQ5MGM5MiAwJSwgIzdiMjNlOSAxMDAlKTtcbiRyZWQtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsICNhMTFkMTkgMCUsICM5ZDFjMWUgMTAwJSk7XG4kYmx1ZS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDExOWRlZywgIzAwNzlkYiAwJSwgIzAwMTI2NSAxMDAlKTtcbiR0aGVtZS1jb2xvci1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE2MGRlZywgI2ExMWQxOSAwJSwgIzlkMWMxZSAxMDAlKTtcbiRyZWQtNTA6IHJnYmEoMjU1LCAwLCAwLCAwLjIpO1xuJHBpbmsxOiAjZGYwZjg4O1xuJHZlZzE6ICM1MTk4M2M7XG5cbi8vIGZvbnQgZmFtaWx5XG4kZm9udF8wOiBSdWJpaztcbiRmb250XzE6IHNhbnMtc2VyaWY7XG5cbiRtaW4tYnJlYWtwb2ludHM6IChsZzogOTkycHgsXG4gICAgeGw6IDEyMDBweCxcbiAgICAyeGw6IDEzNjZweCxcbik7XG5cbiRtYXgtYnJlYWtwb2ludHM6ICgyeHM6IDM2MHB4LFxuICAgIHhzOiA0ODBweCxcbiAgICBzbTogNTc1cHgsXG4gICAgbWQ6IDc2N3B4LFxuICAgIGxnOiA5OTFweCxcbiAgICB4bDogMTE5OXB4LFxuICAgIDJ4bDogMTM2NnB4LFxuICAgIDN4bDogMTQ2MHB4LFxuICAgIDR4bDogMTY2MHB4LFxuKTsiLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBjb21tb24gbWl4aW5zIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuLyo9PT09PT09IHBvc2l0aW9uIGNzcyBzdGFydHMgID09PT09PT0gKi9cblxuQG1peGluIHBvcygkcG9zOiBhYnNvbHV0ZSwgJGNvbnRlbnQ6IFwiXCIpIHtcbiAgICBjb250ZW50OiAkY29udGVudDtcbiAgICBwb3NpdGlvbjogJHBvcztcbn1cblxuQG1peGluIHBzZXVkb3doKCR3aWR0aDogMTAwJSwgJGhlaWdodDogMTAwJSkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuXG5AbWl4aW4gY2VudGVyKCRwb3NpdGlvbikge1xuICAgIEBpZiAkcG9zaXRpb249PVwidmVydGljYWxcIiB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJHBvc2l0aW9uPT1cImhvcml6b250YWxcIiB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgIEBlbHNlIGlmICRwb3NpdGlvbj09XCJib3RoXCIge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB9XG59XG5cbi8qPT09PT09PSBwb3NpdGlvbiBjc3MgZW5kcyAgPT09PT09PSAqL1xuXG4vKj09PT09PT0gZGlzcGxheSBmbGV4IGNzcyBzdGFydHMgID09PT09PT0gKi9cbkBtaXhpbiBmbGV4X2NvbW1vbigkZGlzOiBmbGV4LCAkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcikge1xuICAgIGRpc3BsYXk6ICRkaXM7XG4gICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xufVxuXG4vKj09PT09PT0gZGlzcGxheSBmbGV4IGNzcyBlbmRzICA9PT09PT09ICovXG5cbi8qPT09PT09PSBGb250LWNvbG9yIGNzcyBzdGFydHMgID09PT09PT0gKi9cbiR0ZXh0LW5hbWU6IGRlZmF1bHQsXG5kYXJrLFxubGlnaHQsXG5kYXJrLTMwO1xuJHR4dC1jb2xvcjogJHRoZW1lLWZvbnQtY29sb3IsXG4kZm9udC1kYXJrLFxuJGZvbnQtbGlnaHQsXG4kZm9udC1kYXJrLTMwO1xuXG5AZWFjaCAkdmFyIGluICR0ZXh0LW5hbWUge1xuICAgICRpOiBpbmRleCgkdGV4dC1uYW1lLCAkdmFyKTtcblxuICAgIC5mb250LSN7JHZhcn0ge1xuICAgICAgICBjb2xvcjogbnRoKCR0eHQtY29sb3IsICRpKSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyo9PT09PT09IEZvbnQtY29sb3IgY3NzIGVuZCAgPT09PT09PSAqL1xuXG4vKj09PT09PT0gYnV0dG9ucyBjc3Mgc3RhcnRzICA9PT09PT09ICovXG5AZWFjaCAkYnRuLW5hbWUsXG4kYnRuLWNvbG9yIGluIChkYXJrLCAkdGhlbWUtZm9udC1jb2xvciksXG4obGlnaHQsICRsaWdodC1idXR0b24pLFxuKGRlZmF1bHQsIHZhcigtLXRoZW1lLWNvbG9yKSkge1xuICAgIC5idG4tc29saWQtI3skYnRuLW5hbWV9IHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRidG4tY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1jb2xvcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoJGJ0bi1uYW1lPT1cImxpZ2h0XCIpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyo9PT09PT09IGJ1dHRvbnMgY3NzIGVuZCAgPT09PT09PSAqL1xuXG4vKj09PT09PT0gYWxpZ24gY3NzIHN0YXJ0cyAgPT09PT09PSAqL1xuQG1peGluIHJ0bCgkcHJvcGVydHksICRsdHItdmFsdWUsICRydGwtdmFsdWUpIHtcbiAgICAjeyRwcm9wZXJ0eX06ICRsdHItdmFsdWU7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAjeyRwcm9wZXJ0eX06ICRydGwtdmFsdWU7XG4gICAgfVxufVxuXG4vKj09PT09PT0gYWxpZ24gY3NzIGVuZHMgID09PT09PT0gKi9cblxuLy8gcmVwZWF0ZWQgY3NzIG1peGluc1xuQG1peGluIGJhY2stbGlnaHQge1xuICAgIEBpbmNsdWRlIHBvcztcbiAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgei1pbmRleDogLTE7XG59XG5cbi8qPT09PT09PSBicmVha3BvaW50IGNzcyBlbmRzICA9PT09PT09ICovIiwiOnJvb3Qge1xuICAtLXRoZW1lLWNvbG9yOiAjMDE2M2QyOyB9XG5cbi50aGVtZS1jb2xvcjIge1xuICAtLXRoZW1lLWNvbG9yOiAjZTIyNDU0OyB9XG5cbi50aGVtZS1jb2xvcjMge1xuICAtLXRoZW1lLWNvbG9yOiAjNzUyMGRkOyB9XG5cbi50aGVtZS1jb2xvcjQge1xuICAtLXRoZW1lLWNvbG9yOiAjZTg3MzE2OyB9XG5cbi50aGVtZS1jb2xvcjUge1xuICAtLXRoZW1lLWNvbG9yOiAjZGY0MjQ2OyB9XG5cbi50aGVtZS1jb2xvcjYge1xuICAtLXRoZW1lLWNvbG9yOiAjNTE5ODNjOyB9XG5cbi50ZXh0LWNvbG9yIHtcbiAgY29sb3I6ICM2ZDZkNmQ7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgY29tbW9uIG1peGlucyBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4vKj09PT09PT0gcG9zaXRpb24gY3NzIHN0YXJ0cyAgPT09PT09PSAqL1xuLyo9PT09PT09IHBvc2l0aW9uIGNzcyBlbmRzICA9PT09PT09ICovXG4vKj09PT09PT0gZGlzcGxheSBmbGV4IGNzcyBzdGFydHMgID09PT09PT0gKi9cbi8qPT09PT09PSBkaXNwbGF5IGZsZXggY3NzIGVuZHMgID09PT09PT0gKi9cbi8qPT09PT09PSBGb250LWNvbG9yIGNzcyBzdGFydHMgID09PT09PT0gKi9cbi5mb250LWRlZmF1bHQge1xuICBjb2xvcjogIzIzMjMyMyAhaW1wb3J0YW50OyB9XG5cbi5mb250LWRhcmsge1xuICBjb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjY1KSAhaW1wb3J0YW50OyB9XG5cbi5mb250LWxpZ2h0IHtcbiAgY29sb3I6ICM3ZTdlN2UgIWltcG9ydGFudDsgfVxuXG4uZm9udC1kYXJrLTMwIHtcbiAgY29sb3I6ICMyMzIzMjMgIWltcG9ydGFudDsgfVxuXG4vKj09PT09PT0gRm9udC1jb2xvciBjc3MgZW5kICA9PT09PT09ICovXG4vKj09PT09PT0gYnV0dG9ucyBjc3Mgc3RhcnRzICA9PT09PT09ICovXG4uYnRuLXNvbGlkLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyMzIzMjM7IH1cbiAgLmJ0bi1zb2xpZC1kYXJrOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyMzIzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gIC5idG4tc29saWQtZGFyazpob3ZlciB7XG4gICAgY29sb3I6ICMyMzIzMjM7IH1cbiAgICAuYnRuLXNvbGlkLWRhcms6aG92ZXI6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7IH1cblxuLmJ0bi1zb2xpZC1saWdodCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmJ0bi1zb2xpZC1saWdodDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAuYnRuLXNvbGlkLWxpZ2h0OmhvdmVyIHtcbiAgICBjb2xvcjogIzIzMjMyMzsgfVxuICAgIC5idG4tc29saWQtbGlnaHQ6aG92ZXI6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7IH1cbiAgLmJ0bi1zb2xpZC1saWdodDpob3ZlciwgLmJ0bi1zb2xpZC1saWdodDpmb2N1cywgLmJ0bi1zb2xpZC1saWdodDphY3RpdmUsIC5idG4tc29saWQtbGlnaHQuYWN0aXZlIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuXG4uYnRuLXNvbGlkLWRlZmF1bHQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAuYnRuLXNvbGlkLWRlZmF1bHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAuYnRuLXNvbGlkLWRlZmF1bHQ6aG92ZXIge1xuICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gICAgLmJ0bi1zb2xpZC1kZWZhdWx0OmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG5cbi8qPT09PT09PSBidXR0b25zIGNzcyBlbmQgID09PT09PT0gKi9cbi8qPT09PT09PSBhbGlnbiBjc3Mgc3RhcnRzICA9PT09PT09ICovXG4vKj09PT09PT0gYWxpZ24gY3NzIGVuZHMgID09PT09PT0gKi9cbi8qPT09PT09PSBicmVha3BvaW50IGNzcyBlbmRzICA9PT09PT09ICovXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBicmVha3BvaW50IG1peGlucyBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5Aa2V5ZnJhbWVzIHJvdW5kZWQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJ1bi1zaG9lcyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0OyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0OyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZSgwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmlwcGxlIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMzksIDI0MywgMjQ3LCAwLjMpLCAwIDAgMCAxZW0gcmdiYSgyMzksIDI0MywgMjQ3LCAwLjMpOyB9XG4gIDEwMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFlbSByZ2JhKDIzOSwgMjQzLCAyNDcsIDAuMyksIDAgMCAwIDNlbSByZ2JhKDIzOSwgMjQzLCAyNDcsIDAuMyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJpcHBsZS0xIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMzIsIDExNSwgMjIsIDAuMyksIDAgMCAwIDFlbSByZ2JhKDIzMiwgMTE1LCAyMiwgMC4zKTsgfVxuICAxMDAlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxZW0gcmdiYSgyMzIsIDExNSwgMjIsIDAuMyksIDAgMCAwIDEuNWVtIHJnYmEoMjMyLCAxMTUsIDIyLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmlwcGxlLTIge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksIDAgMCAwIDFlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7IH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMWVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSwgMCAwIDAgMS41ZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcm90YXRlLWZsb3dlciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4ZGVnKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLThkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBiYWNrIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xM3B4KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsgfSB9XG5cbkBrZXlmcmFtZXMgcmVnTWFzayB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgc2NhbGUoMCk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDBweCwgMTAwcHgpIHNjYWxlKDAuNSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpIHNjYWxlKDEpOyB9IH1cblxuQGtleWZyYW1lcyByZWdNYXNrUiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgc2NhbGUoMSk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTBweCwgLTE1MHB4KSBzY2FsZSgwLjUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmVnVGFnIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSByb3RhdGUoMGRlZyk7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIDI1cHgpIHJvdGF0ZSgxMS4yNWRlZyk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtODhweCwgNDBweCkgcm90YXRlKDIyLjVkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05NnB4LCA4cHgpIHJvdGF0ZSg0NWRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJlZ1RhZzIge1xuICAwJSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0MHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IC0xcHggcmdiYSgzMywgMzcsIDQxLCAwLjQ1KTsgfVxuICAxMDAlIHtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggLTFweCByZ2JhKDMzLCAzNywgNDEsIDApO1xuICAgIGxpbmUtaGVpZ2h0OiA2OHB4OyB9IH1cblxuQGtleWZyYW1lcyByZWdUYWdSIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05NnB4LCA4cHgpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtODhweCwgNDBweCkgcm90YXRlKDIyLjVkZWcpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAyNXB4KSByb3RhdGUoMTEuMjVkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSByb3RhdGUoMGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJlZ1RhZzJSIHtcbiAgMCUge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAtMXB4IHJnYmEoMzMsIDM3LCA0MSwgMCk7XG4gICAgbGluZS1oZWlnaHQ6IDY4cHg7IH1cbiAgMTAwJSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0MHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IC0xcHggcmdiYSgzMywgMzcsIDQxLCAwLjQ1KTsgfSB9XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICBmcm9tLFxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICAxMCUsXG4gIDMwJSxcbiAgNTAlLFxuICA3MCUsXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7IH1cbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGJ1dHRvbnMtc2hha2Uge1xuICAxMCUsXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMXB4LCAwLCAwKTsgfVxuICAyMCUsXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgycHgsIDAsIDApOyB9XG4gIDMwJSxcbiAgNTAlLFxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMCwgMCk7IH1cbiAgNDAlLFxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7IH1cbiAgMSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigxNWRlZyk7IH1cbiAgMyUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTRkZWcpOyB9XG4gIDUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTdkZWcpOyB9XG4gIDclIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTE2ZGVnKTsgfVxuICA5JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDE1ZGVnKTsgfVxuICAxMSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTRkZWcpOyB9XG4gIDEzJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDEzZGVnKTsgfVxuICAxNSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTJkZWcpOyB9XG4gIDE3JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDEyZGVnKTsgfVxuICAxOSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTBkZWcpOyB9XG4gIDIxJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDlkZWcpOyB9XG4gIDIzJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC04ZGVnKTsgfVxuICAyNSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWig3ZGVnKTsgfVxuICAyNyUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtNWRlZyk7IH1cbiAgMjklIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooNWRlZyk7IH1cbiAgMzElIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTRkZWcpOyB9XG4gIDMzJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDNkZWcpOyB9XG4gIDM1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC0yZGVnKTsgfVxuICAzNyUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigxZGVnKTsgfVxuICAzOSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMWRlZyk7IH1cbiAgNDElIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMWRlZyk7IH1cbiAgNDMlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDApOyB9IH1cblxuQGtleWZyYW1lcyBhbmltYXRlQ29udGFpbmVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDsgfVxuICAyNSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0OyB9XG4gIDQzLjc1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA0My4zMzRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0LCAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH1cbiAgNjIuNSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDIxLjY2N3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH1cbiAgODEuMjUlIHtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVDaGVjayB7XG4gIGZyb20ge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4MDsgfVxuICB0byB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVTaGFkb3cge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE1JTsgfVxuICAyNSUge1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgNDMuNzUlIHtcbiAgICB3aWR0aDogNDAlO1xuICAgIGhlaWdodDogNyU7XG4gICAgb3BhY2l0eTogMC4zNTsgfVxuICAxMDAlIHtcbiAgICB3aWR0aDogODUlO1xuICAgIGhlaWdodDogMTUlO1xuICAgIG9wYWNpdHk6IDAuMjU7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1vdmVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZsb2F0aW5nIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4NyUpOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgbW92ZURvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9IH1cblxuQGtleWZyYW1lcyBwZW5kdWx1bSB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpOyB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwZGVnKTsgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgY2F0SGkge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cbiAgMTAlLFxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgY2F0U2hhZG93IHtcbiAgMCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwcHgsIC0zNXB4KSBzY2FsZSgwLjMpOyB9XG4gIDEwJSxcbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01cHgsIDEwcHgpIHNjYWxlKDAuNSk7IH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBtb3ZlQm94IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MHB4KSByb3RhdGUoMjBkZWcpOyB9XG4gIDE1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDBweCkgcm90YXRlKC0xNWRlZyk7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAyNTBweCkgcm90YXRlKDEwZGVnKTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDM1MHB4KSByb3RhdGUoLTVkZWcpOyB9XG4gIDM1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1NzBweCkgcm90YXRlKDBkZWcpOyB9XG4gIDQ1JSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1NzBweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHBhcmFjaHV0ZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTUwcHgpIHJvdGF0ZSgyMGRlZykgc2NhbGUoMC44KTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwcHgpIHJvdGF0ZSgtMTVkZWcpIHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAyNTBweCkgcm90YXRlKDEwZGVnKTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDM1MHB4KSByb3RhdGUoLTVkZWcpOyB9XG4gIDMzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNDYwcHgpIHJvdGF0ZSgwZGVnKSBzY2FsZSgwLjkpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgNDUlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0ODBweCk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgZmFkZUluT3V0IHtcbiAgNSUsXG4gIDEyJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAyMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGNsb3VkcyB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUwJSwgMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJvdW5kIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHJlc2V0IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbnNlY3Rpb24sXG4uc2VjdGlvbi10LXNwYWNlIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIHNlY3Rpb24sXG4gICAgLnNlY3Rpb24tdC1zcGFjZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNzBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuXG4uc2VjdGlvbi1iLXNwYWNlIHtcbiAgcGFkZGluZy1ib3R0b206IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIC5zZWN0aW9uLWItc3BhY2Uge1xuICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLnNlY3Rpb24tYi1zcGFjZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5zZWN0aW9uLWItc3BhY2Uge1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2VjdGlvbi1iLXNwYWNlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnNlY3Rpb24tYi1zcGFjZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbi5tZWRpYSAubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7IH1cblxuLnJhdGluZyBsaSBpLm9yYW5nZSB7XG4gIGNvbG9yOiAjZmFjYzIxOyB9XG5cbi5nLTE4IHtcbiAgbWFyZ2luOiAtMThweDsgfVxuICAuZy0xOCA+IGRpdiB7XG4gICAgcGFkZGluZzogMThweDsgfVxuXG4uY3VzdG9tLWd5LTUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0xNnB4ICsgKC0yMCAtIC0xNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTE2cHggKyAoLTIwIC0gLTE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuY3VzdG9tLWd5LTUgPiBkaXYge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmxpZ2h0LWdyYXktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmN1c3RvbS1jb2wge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSArIDQuMTYlKTsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICB0eXBvZ3JhcGh5IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogUnViaWssIHNhbnMtc2VyaWY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzIzMjMyMztcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIGJvZHkgLmJnLW92ZXJsYXkge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMztcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgIGJvZHkgLmJnLW92ZXJsYXkuc2hvdyB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5saSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbnAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4OyB9XG5cbmEge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gIGE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uYnRuLWNsb3NlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG46Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5mb3JtLWNvbnRyb2wge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuaDEge1xuICBmb250LXNpemU6IGNhbGMoNDBweCArICg3MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIG1hcmdpbjogMDsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDI4IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIG1hcmdpbjogMDsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDIwIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDA7IH1cblxuaDQge1xuICBmb250LXNpemU6IGNhbGMoMTdweCArICgxOCAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4udGhlbWUtY29sb3Ige1xuICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLnRoZW1lLWJnLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBidXR0b25zIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogNjAwO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDEzIC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuYnRuLXN1Ym1pdCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ0bi1zdWJtaXQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ0bi1zaXplIHtcbiAgICBmb250LXNpemU6IDEycHg7IH1cbiAgLmJ0bjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuYnRuLXNwYWNpbmcge1xuICAgIHBhZGRpbmc6IGNhbGMoNXB4ICsgKDE0IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg4cHggKyAoMzAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4uYnRuLXNtIHtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmRlZmF1bHQtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5kZWZhdWx0LWxpZ2h0IHtcbiAgY29sb3I6ICNmOGY4Zjg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IGNhbGMoNnB4ICsgKDE0IC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogODAwOyB9XG4gIC5kZWZhdWx0LWxpZ2h0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgb3BhY2l0eTogMC4xNTsgfVxuXG4uZGVmYXVsdC1saWdodDEge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuZGVmYXVsdC1saWdodDE6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBvcGFjaXR5OiAwLjExO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gIC5kZWZhdWx0LWxpZ2h0MTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogLTE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmRlZmF1bHQtbGlnaHQxOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmRlZmF1bHQtbGlnaHQxOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG4gICAgLmRlZmF1bHQtbGlnaHQxOmhvdmVyOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjExOyB9XG5cbi5kZWZhdWx0LWxpZ2h0LXRoZW1lIHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgcGFkZGluZzogY2FsYyg2cHggKyAoMTQgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmRlZmF1bHQtbGlnaHQtdGhlbWU6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmRlZmF1bHQtdGhlbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5kZWZhdWx0LXRoZW1lOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZGVmYXVsdC10aGVtZS0yIHtcbiAgcGFkZGluZzogMTJweCAyNXB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5kZWZhdWx0LXRoZW1lLTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MCwgMjQ3LCAyNDAsIDAuNik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAuZGVmYXVsdC10aGVtZS0xOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTsgfVxuXG4uZGVmYXVsdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBvcGFjaXR5OiAwLjExO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG4uZGVmYXVsdDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAtMTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG4uZGVmYXVsdDpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLmRlZmF1bHQ6aG92ZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KTsgfVxuICAuZGVmYXVsdDpob3Zlcjo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDAuMTE7IH1cblxuLmJ0bi1saWdodC13aGl0ZSB7XG4gIHBhZGRpbmc6IDZweCAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuICAuYnRuLWxpZ2h0LXdoaXRlIGkge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAuYnRuLWxpZ2h0LXdoaXRlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmJ0bi1saWdodC13aGl0ZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnRuLWxpZ2h0LXdoaXRlOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG5cbi5idG4td2hpdGUge1xuICBwYWRkaW5nOiA2cHggMjBweDtcbiAgY29sb3I6ICMyMzIzMjM7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmOyB9XG4gIC5idG4td2hpdGUgaSB7XG4gICAgZm9udC1zaXplOiAxMnB4OyB9XG4gIC5idG4td2hpdGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmJ0bi13aGl0ZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnRuLXdoaXRlOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG5cbi5idG4tZnVsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGFsZXJ0IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5hbGVydC1pbmZvIC5idG4tY2xvc2Uge1xuICBmb250LXNpemU6IDEwcHg7IH1cblxuLnByb2dyZXNzLWJhci1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBjNTQ2MDsgfVxuXG5bZGF0YS1ub3RpZnk9XCJwcm9ncmVzc2JhclwiXSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1cHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgbGFiZWwgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBwYWRkaW5nOiA2cHggMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAubGFiZWwge1xuICAgICAgcGFkZGluZzogNHB4IDZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIC5sYWJlbC1ibG9jayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTsgfVxuICAubGFiZWwtZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICAubGFiZWwtYmxhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5sYWJlbC1ibGFjayB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxhYmVsLXRoZW1lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHRhYiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFiLXdyYXAgLm5hdi10YWJzIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjBmM2Y4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC50YWItd3JhcCAubmF2LXRhYnMge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH0gfVxuICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAxNXB4OyB9IH1cbiAgICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLnRhYi13cmFwIC5uYXYtdGFicyAubmF2LWxpbms6YWN0aXZlLCAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsIC50YWItd3JhcCAubmF2LXRhYnMgLm5hdi1saW5rOmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLnRhYi13cmFwIC50YWItY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGRyb3Bkb3duIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5vbmhvdmVyLWRpdiB7XG4gIHRvcDogNzBweDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbiAgbWluLXdpZHRoOiAyODBweDtcbiAgYm94LXNoYWRvdzogMy4zNDZweCAzLjcxNnB4IDIyLjVweCByZ2JhKDAsIDAsIDAsIDAuMDcpOyB9XG4gIC5vbmhvdmVyLWRpdiBsaSB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLm9uaG92ZXItZGl2IGxpIGEgc3ZnIHtcbiAgICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gIC5vbmhvdmVyLWRpdjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgI2ZmZjtcbiAgICB0b3A6IC03cHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgei1pbmRleDogMjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm9uaG92ZXItZGl2OjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMTBweDsgfVxuXG4ub25ob3Zlci1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5vbmhvdmVyLWRyb3Bkb3duOmhvdmVyIC5vbmhvdmVyLWRpdiB7XG4gICAgdG9wOiA1MHB4O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm9uaG92ZXItZHJvcGRvd246aG92ZXIgLm9uaG92ZXItZGl2IHtcbiAgICAgICAgd2lkdGg6IDMyMHB4OyB9IH1cbiAgLm9uaG92ZXItZHJvcGRvd24uY2FydC1kcm9wZG93biBidXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5vbmhvdmVyLWRyb3Bkb3duLmNhcnQtZHJvcGRvd24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgIHdpZHRoOiAyM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDIycHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLm9uaG92ZXItZHJvcGRvd24uY2FydC1kcm9wZG93biBidXR0b24gLmZlYXRoZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5vbmhvdmVyLWRyb3Bkb3duLmNhcnQtZHJvcGRvd24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5vbmhvdmVyLWRyb3Bkb3duLmNhcnQtZHJvcGRvd24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgLm9uaG92ZXItZHJvcGRvd24uY2FydC1kcm9wZG93biBidXR0b24gc3BhbiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdGltZXIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnRpbWVyIHVsIHtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjgpO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwge1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgIC50aW1lciB1bCB7XG4gICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnRpbWVyIHVsIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH0gfVxuICAudGltZXIgdWwgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC50aW1lciB1bCBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAudGltZXIgdWwgbGkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnRpbWVyIHVsIGxpIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgICAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgICAgLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgxMjYsIDEyNiwgMTI2LCAwLjQpO1xuICAgICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgIHJpZ2h0OiAtMTdweDtcbiAgICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTI2LCAxMjYsIDEyNiwgMC40KTtcbiAgICAgICAgICBib3JkZXItbGVmdDogdW5zZXQ7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAgIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogLTEycHg7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogLTVweDsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7IH0gfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLnRpbWVyIHVsIGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lciB1bCBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfSB9XG5cbi50aW1lci1zdHlsZS0yIHVsIHtcbiAgbWFyZ2luOiBjYWxjKC01cHggKyAoLTE1IC0gLTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC50aW1lci1zdHlsZS0yIHVsIGxpIHtcbiAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDE1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTJweCArICgyMCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAudGltZXItc3R5bGUtMiB1bCBsaSBoMiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyOCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC50aW1lci1zdHlsZS0yIHVsIGxpIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC50aW1lci1zdHlsZS0yIHVsIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC50aW1lci1zdHlsZS0yIHVsIGxpIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cblxuLnRpbWVyLXN0eWxlLTMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzMiwgMTE1LCAyMiwgMC44KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDJweCk7XG4gIHdpZHRoOiA4MCU7IH1cbiAgLnRpbWVyLXN0eWxlLTMgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAudGltZXItc3R5bGUtMyB1bCBsaSB7XG4gICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDUgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDVweCArICg1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg1cHggKyAoNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTJweCArICgyMCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAgIC50aW1lci1zdHlsZS0zIHVsIGxpICsgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnRpbWVyLXN0eWxlLTMgdWwgbGkgKyBsaTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICBsZWZ0OiAwJTsgfVxuICAgICAgLnRpbWVyLXN0eWxlLTMgdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAudGltZXItc3R5bGUtMyB1bCBsaSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDI4IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAudGltZXItc3R5bGUtMyB1bCBsaSBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lci1zdHlsZS0zIHVsIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lci1zdHlsZS0zIHVsIGxpIGg1IHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgVGFwIHRvIHRvcCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFwLXRvLXRvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDE1cHg7XG4gIHJpZ2h0OiAtNjBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogY2FsYygzNXB4ICsgKDQ1IC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBoZWlnaHQ6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE4IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBib3gtc2hhZG93OiAwIDNweCA4cHggcmdiYSgzMywgMzcsIDQxLCAwLjM1KTtcbiAgei1pbmRleDogMztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLnRhcC10by10b3Age1xuICAgIHJpZ2h0OiB1bnNldDtcbiAgICBsZWZ0OiAtNjBweDsgfVxuICAudGFwLXRvLXRvcDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogIzIxMjUyOTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAudGFwLXRvLXRvcDpob3Zlcjo6YmVmb3JlIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnRhcC10by10b3Age1xuICAgICAgYm90dG9tOiA3NXB4OyB9IH1cbiAgLnRhcC10by10b3Auc2hvdyB7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAudGFwLXRvLXRvcC5zaG93IHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDE1cHg7IH1cbiAgLnRhcC10by10b3AgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IGNhbGMoMzVweCArICg0MCAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0MCAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgei1pbmRleDogMzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnRhcC10by10b3AgYSB7XG4gICAgICAgIGJvdHRvbTogNzVweDsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIE1vZGFsIGNzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICB0b3A6IC01MHB4O1xuICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogLTE0cHg7IH0gfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAtNTBweDsgfVxuICAgICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xNXB4O1xuICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBib3gtc2hhZG93OiAwIDdweCAxMXB4IHJnYmEoMzMsIDM3LCA0MSwgMC41KTtcbiAgICAgIHotaW5kZXg6IC0xOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSBpbWcge1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpOyB9XG4gICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSBoMiB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG4gICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMTVweDsgfVxuICAgICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7IH1cbiAgICAgICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSB1bCBsaTo6bWFya2VyIHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4udmlkZW8tcGxheS1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAudmlkZW8tcGxheS1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnZpZGVvLXBsYXktbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSBpZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDU1MHB4OyB9XG5cbi5jb21wYXJlbW9kYWwtYm9keSAudGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhOyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUudGFibGUtc3RyaXBlZC0xIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUudGFibGUtc3RyaXBlZC0xIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgYSB7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZSB0ci50YWJsZS1wcm9kdWN0LWRldGFpbHMge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHRyLnRhYmxlLWNhcnQtYnV0dG9uIHRkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZSB0ci50YWJsZS1jYXJ0LWJ1dHRvbiBhLmJ0biB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgcGFkZGluZzogNnB4IDE2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHRyLnRhYmxlLWNhcnQtYnV0dG9uIGEuYnRuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgdHIgdGQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NlZDRkYTtcbiAgICBwYWRkaW5nOiAxNHB4O1xuICAgIG1pbi13aWR0aDogMjMwcHg7XG4gICAgd2lkdGg6IDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1pbi13aWR0aDogMjcwcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHVsLmxpc3QtZGV0YWlsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIycHg7IH1cbiAgICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHVsLmxpc3QtZGV0YWlsIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7IH1cblxuLmNvbXBhcmVtb2RhbC1ib2R5IC5wcm9kdWN0LWJveCAuYnRuLWNsb3NlIHtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTsgfVxuXG4uY29tcGFyZW1vZGFsLWJvZHkgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLm1vZGFsLWhlYWRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuICAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgIHdpZHRoOiA1NHB4O1xuICAgIGhlaWdodDogNTRweDtcbiAgICB0b3A6IC01MHB4O1xuICAgIHJpZ2h0OiAtNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgcmlnaHQ6IC0xNHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgbGVmdDogLTE0cHg7IH0gfVxuICAgIFtkaXI9XCJydGxcIl0gLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IC01MHB4OyB9XG4gICAgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuXG4uc2hpcHBpbmctbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IGNhbGMoMTVweCArICg0MCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuc2hpcHBpbmctbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtdGl0bGUgaDYge1xuICAgIGNvbG9yOiAjMTkxOTE5O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDZweDsgfVxuICAuc2hpcHBpbmctbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtdGl0bGUgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMTVweDsgfVxuICAgIC5zaGlwcGluZy1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7IH1cbiAgICAgIC5zaGlwcGluZy1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSB1bCBsaTo6bWFya2VyIHtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICB3aWR0aDogNTRweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgdG9wOiAtNTBweDtcbiAgICByaWdodDogLTUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogMCAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgcmlnaHQ6IC0xNHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAtMTRweDsgfSB9XG4gICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2U6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9XG5cbi5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoNDAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtbWVzc2FnZXMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzAwODAwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICNkMWU3ZGQ7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1tZXNzYWdlcyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1tZXNzYWdlcyAuZmEtY2hlY2sge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA4MDAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtbWVzc2FnZXMgLmZhLWNoZWNrIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAxMnB4OyB9IH1cbiAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtcHJvZHVjdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWltZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxMHB4ICsgKDE4IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9IH1cbiAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWRldGFpbHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWRldGFpbHMge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtcHJvZHVjdCBoNSB7XG4gICAgICBtYXJnaW46IDVweCAwOyB9XG4gICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtcHJvZHVjdCAubW9kYWwtY29udGFpbi1pbWcgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbjogMTBweCAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtcHJvZHVjdCAubW9kYWwtY29udGFpbi1pbWcgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtcHJvZHVjdCAubW9kYWwtY29udGFpbi1pbWcgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDc1JTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAubW9kYWwtcHJvZHVjdCAubW9kYWwtY29udGFpbi1pbWcgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5wcm9kdWN0LXRvdGFsIGg1IHtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAucHJvZHVjdC10b3RhbCBoNSBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hvcC1jYXJ0LWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAtOHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5zaG9wLWNhcnQtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnNob3AtY2FydC1idXR0b24gLmNvbnRpLWJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIG1hcmdpbjogY2FsYygzcHggKyAoOCAtIDMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgcGFkZGluZzogY2FsYyg2cHggKyAoMTIgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMjUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNSAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hvcC1jYXJ0LWJ1dHRvbiAuY29udGktYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuXG4ubW9kYWwtc2l6ZSAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5tb2RhbC1zaXplIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciBidXR0b24ge1xuICAgIHdpZHRoOiA1NHB4O1xuICAgIGhlaWdodDogNTRweDtcbiAgICB0b3A6IC01MHB4O1xuICAgIHJpZ2h0OiAtNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5tb2RhbC1zaXplIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciBidXR0b24gLmZhLXRpbWVzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLm1vZGFsLXNpemUgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucXVpY2stdmlldy1tb2RhbCAuYnRuLWNsb3NlIHtcbiAgd2lkdGg6IDU0cHg7XG4gIGhlaWdodDogNTRweDtcbiAgdG9wOiAtNTBweDtcbiAgcmlnaHQ6IC01MHB4O1xuICBsaW5lLWhlaWdodDogNTRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgb3BhY2l0eTogMTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucXVpY2stdmlldy1tb2RhbCAuYnRuLWNsb3NlIHtcbiAgICAgIHJpZ2h0OiAtMTRweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucXVpY2stdmlldy1tb2RhbCAuYnRuLWNsb3NlIHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAtMTRweDsgfSB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5idG4tY2xvc2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucXVpY2stdmlldy1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucXVpY2stdmlldy1tb2RhbCAucXVpY2stdmlldy1pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAucXVpY2stdmlldy1tb2RhbCAucXVpY2stdmlldy1pbWFnZSBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH0gfVxuICAucXVpY2stdmlldy1tb2RhbCAucXVpY2stdmlldy1pbWFnZSAucXVpY2stbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIGxlZnQ6IDIwcHg7IH1cbiAgICAucXVpY2stdmlldy1tb2RhbCAucXVpY2stdmlldy1pbWFnZSAucXVpY2stbmF2IC5zbGljay1zbGlkZSA+IGRpdiBpbWcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAucXVpY2stdmlldy1tb2RhbCAucXVpY2stdmlldy1pbWFnZSAucXVpY2stbmF2IC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50ID4gZGl2IGltZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQudmVnLXByb2R1Y3QtcmlnaHQgaDIge1xuICBmb250LXNpemU6IDI2cHg7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQudmVnLXByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQudmVnLXByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtYnRucyBhIHtcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC5wcmljZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC5wcmljZSBsaSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCAucHJpY2UgbGkgLmN1c3RvbWUtZm9ybS1jaGVjayB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDE1cHggOHB4IDE1cHggMzBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkMGQwZDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggcmdiYSgzMywgMzcsIDQxLCAwLjEpO1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCAudmVnLWRldGFpbHMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2NlZDRkYTsgfVxuICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCAudmVnLWRldGFpbHMgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCAudmVnLWRldGFpbHMge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC52ZWctZGV0YWlscyB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgaDIge1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IGg2IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcmljZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByaWNlIGgzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAucHJpY2UgaDMge1xuICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLmNvbG9yLXR5cGVzIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZzogMjBweCAwO1xuICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNjZWQ0ZGE7IH1cbiAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLmNvbG9yLXR5cGVzLnZlZy1kZXRhaWxzIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLmNvbG9yLXR5cGVzIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuY29sb3ItdHlwZXMge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDsgfSB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5zaXplLWRldGFpbCB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjY2VkNGRhOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5zaXplLWRldGFpbCB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDA7IH0gfVxuICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuc2l6ZS1kZXRhaWwgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuc2l6ZS1kZXRhaWwgdWwgbGkge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnNpemUtZGV0YWlsIHVsIGxpLnNlbGVjdGVkIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggN3B4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAgICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnNpemUtZGV0YWlsIHVsIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNjZWQ0ZGE7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgI2NlZDRkYTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDsgfSB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcm9kdWN0LWRldGFpbHMgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtZGV0YWlscyB1bCBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcm9kdWN0LWRldGFpbHMgdWwgbGkgc3BhbiB7XG4gICAgICBtaW4td2lkdGg6IDE1MHB4OyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcm9kdWN0LWJ0bnMge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcm9kdWN0LWJ0bnMge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbi5yZXNldC1lbWFpbC1tb2RhbCAubW9kYWwtY29udGVudCB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgdG9wOiAtNTBweDtcbiAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgcmlnaHQ6IC0xNHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IC0xNHB4OyB9IH1cbiAgICAgIC5yZXNldC1lbWFpbC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2U6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBib3JkZXItdG9wOiBub25lOyB9XG4gICAgLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICB0b3A6IC01MHB4O1xuICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuZGVsZXRlLWFjY291bnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogLTE0cHg7IH0gfVxuICAgICAgLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAuZGVsZXRlLWFjY291bnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSBoNCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAuZGVsZXRlLWFjY291bnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuZGVsZXRlLWFjY291bnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ucGF5bWVudC1tb2RhbCAubW9kYWwtY29udGVudCB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAucGF5bWVudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICB3aWR0aDogNTRweDtcbiAgICAgIGhlaWdodDogNTRweDtcbiAgICAgIHRvcDogLTUwcHg7XG4gICAgICByaWdodDogLTUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgcmlnaHQ6IC0xNHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAucGF5bWVudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogLTE0cHg7IH0gfVxuICAgICAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9XG4gIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAucGF5bWVudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSBoNCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgdG9wOiAtNTBweDtcbiAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmFkZC1hZGRyZXNzLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgcmlnaHQ6IC0xNHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IC0xNHB4OyB9IH1cbiAgICAgIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2U6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgLmFkZC1hZGRyZXNzLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciB7XG4gICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLmFkZC1hZGRyZXNzLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLmFkZC1hZGRyZXNzLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHRpdGxlIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg1MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAudGl0bGUudGl0bGUxIGgyIHtcbiAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzNSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4OyB9XG4gICAgLnRpdGxlLnRpdGxlMSBoMjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGJvdHRvbTogMS41cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsgfVxuICAgIC50aXRsZS50aXRsZTEgaDI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7IH1cbiAgLnRpdGxlLnRpdGxlMSBwIHtcbiAgICBtYXJnaW46IDIwcHggYXV0byAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XG4gIC50aXRsZS50aXRsZS1lZmZlY3QgaDI6OmFmdGVyIHtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAudGl0bGUudGl0bGUtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgLnRpdGxlIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLnRpdGxlLTIge1xuICBjb2xvcjogIzIxMjUyOTsgfVxuICAudGl0bGUtMiBoMiB7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAudGl0bGUtMiBoMyB7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAudGl0bGUtMiBoNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG5cbi50aXRsZS0zIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC50aXRsZS0zLnRpdGxlLWJvcmRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYzZjg7IH1cbiAgLnRpdGxlLTMgaDIge1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLnRpdGxlLTMgaDUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4uZ3JhZGllbnQtdGl0bGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTAwZGVnLCAjM2QzZDNkLCB2YXIoLS10aGVtZS1jb2xvcikpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5ncmFkaWVudC10aXRsZS0xIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTAwZGVnLCB3aGl0ZSwgdmFyKC0tdGhlbWUtY29sb3IpKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcmF0aW8gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnJhdGlvXzMwIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAzMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpb18zNSAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMzUlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fNDAgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDQwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvXzQ1IC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA0NSU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpbzJfMSAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNTAlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fNTUgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvXzU5IC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA1OSU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpbzJfMyAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNjAlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW8zXzIgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDY2LjY2JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvXzkwIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA5MyU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpb19sYW5kc2NhcGUgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDc1JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX3ZlZyAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTEzJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX3NxdWFyZSAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX2Fzb3MgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDEyNy43Nzc3Nzc4JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX3NtYWxsIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxMTglO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fbWVkaXVtIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxMzglO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fcG9ydHJhaXQgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDE1MCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpbzJfMiAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTU0Ljc3Nzc3OCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpb18yIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxNjMlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW8xXzIgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDIwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBmb3JtIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmZvcm0tY29udHJvbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogY2FsYyg4cHggKyAoMTQgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmZvcm0tY29udHJvbC5zdWJzY3JpYmUtaW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgICBib3JkZXItY29sb3I6ICNjZWQ0ZGE7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uZm9ybS1zZWxlY3Qge1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjN2M1O1xuICAgIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAjMjEyNTI5OyB9XG5cbi5pbnB1dC1ncm91cCAuYnRuIHtcbiAgei1pbmRleDogMTsgfVxuXG4uY2hlY2tib3hfYW5pbWF0ZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmNoZWNrYm94X2FuaW1hdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cbiAgLmNoZWNrYm94X2FuaW1hdGVkOmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuNDUsIDEuOCwgMC41LCAwLjc1KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAsIDApO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDRweDtcbiAgICB0b3A6IDRweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsgfVxuICAuY2hlY2tib3hfYW5pbWF0ZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAyMXB4O1xuICAgIGhlaWdodDogMjFweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNkZGQ7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jaGVja2JveF9hbmltYXRlZDpjaGVja2VkOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgxLCAxKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgc2xpZGVyIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stYXJyb3cge1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stYXJyb3c6aG92ZXIge1xuICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLWFycm93OmhvdmVyOmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG5cbi5zcGFjaW5nLXNsaWRlci5zbGljay1zbGlkZXIge1xuICBtYXJnaW46IDAgLTEycHg7IH1cbiAgLnNwYWNpbmctc2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgbWFyZ2luOiAwIC0xMnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuc3BhY2luZy1zbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC02cHg7IH0gfVxuICAgIC5zcGFjaW5nLXNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgIG1hcmdpbjogMCAxMnB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnNwYWNpbmctc2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgICAgICAgIG1hcmdpbjogMCA2cHg7IH0gfVxuICAuc3BhY2luZy1zbGlkZXIuc2xpY2stc2xpZGVyLnNsaWNrLWRvdHRlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgbWFyZ2luOiAwIC0xMnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgICAgbWFyZ2luOiAwIC02cHg7IH0gfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0IC5zbGljay1zbGlkZSA+IGRpdiB7XG4gICAgbWFyZ2luOiAwIDEycHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgICAgbWFyZ2luOiAwIDZweDsgfSB9XG5cbi5zbGljay1zbGlkZXIuc2xpY2stZG90dGVkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2xpZGUtNiAuc2xpY2stbGlzdCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDUwcHg7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93IHtcbiAgICAgIGJvdHRvbTogOTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cge1xuICAgICAgYm90dG9tOiAxMHB4OyB9IH1cbiAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdzpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgaSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiAxcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgaSB7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdyBpOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgIHJpZ2h0OiAyMCU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cucHJldiBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDclOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IDUlOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogNSU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgcmlnaHQ6IDUzJSAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IDIwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgICByaWdodDogdW5zZXQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgcmlnaHQ6IDEyJTtcbiAgICAgICAgbGVmdDogdW5zZXQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICAgIGxlZnQ6IDEyJTtcbiAgICAgICAgICByaWdodDogdW5zZXQ7IH0gfVxuICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgIHJpZ2h0OiAxMyU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cubmV4dCBpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDEzJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxMSU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAxNSU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAxNiU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAxNiU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgICAgbGVmdDogMjAlOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogMjAlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogMyU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICAgIGxlZnQ6IDMlO1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDsgfSB9XG4gICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBsZWZ0OiAtMjhweDtcbiAgICAgIHRvcDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQ6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICBsZWZ0OiB1bnNldDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQ6OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdyBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNTBweDtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogMC41cztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdzpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdyBpIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgdmVydGljYWwtYWxpZ246IDFweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93IGkge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdyBpOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cucHJldiB7XG4gICAgcmlnaHQ6IDIwJTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiA2JSAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICBbZGlyPVwicnRsXCJdIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDUxJSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogNTIlICFpbXBvcnRhbnQ7IH0gfVxuICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgcmlnaHQ6IDEzJTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAxMiUgIWltcG9ydGFudDsgfVxuICAgIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdy5uZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBsZWZ0OiAtMjhweDtcbiAgICAgIHRvcDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dDo6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IC0yOHB4O1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgd2lkdGg6IDglOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgICAgIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdy5uZXh0OjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIGxlZnQ6IDE2JSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogMTMlICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiA0NCUgIWltcG9ydGFudDsgfSB9XG4gIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdyBzcGFuIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubGlnaHQtYXJyb3cgLnNsaWNrLWFycm93LFxuLndoaXRlLWFycm93IC5zbGljay1hcnJvdyB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdyxcbiAgICAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93IHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9IH1cbiAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdzpiZWZvcmUsXG4gIC53aGl0ZS1hcnJvdyAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuLmxpZ2h0LWFycm93IC5zbGljay1wcmV2LFxuLndoaXRlLWFycm93IC5zbGljay1wcmV2IHtcbiAgei1pbmRleDogMTsgfVxuICAubGlnaHQtYXJyb3cgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAud2hpdGUtYXJyb3cgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA1M1wiOyB9XG5cbi5saWdodC1hcnJvdyAuc2xpY2stbmV4dDpiZWZvcmUsXG4ud2hpdGUtYXJyb3cgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjsgfVxuXG4ubGlnaHQtYXJyb3cgLnNsaWNrLWFycm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODsgfVxuICAubGlnaHQtYXJyb3cgLnNsaWNrLWFycm93OmJlZm9yZSB7XG4gICAgY29sb3I6ICMyMzIzMjM7IH1cbiAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdzpob3ZlcjpiZWZvcmUge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuLmJvdHRvbS1zcGFjZSB7XG4gIG1hcmdpbi1ib3R0b206IC00cHg7IH1cblxuLndoaXRlLWFycm93IC5zbGljay1hcnJvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDsgfVxuICAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93OmJlZm9yZSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLndoaXRlLWFycm93IC5zbGljay1hcnJvdzpob3ZlciwgLndoaXRlLWFycm93IC5zbGljay1hcnJvdzphY3RpdmUsIC53aGl0ZS1hcnJvdyAuc2xpY2stYXJyb3c6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93OmhvdmVyOmJlZm9yZSwgLndoaXRlLWFycm93IC5zbGljay1hcnJvdzphY3RpdmU6YmVmb3JlLCAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93OmZvY3VzOmJlZm9yZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi5jYXRlZ29yeS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMTIwcHg7IH1cblxuLmNhdGVnb3J5LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiB1bnNldDtcbiAgbGVmdDogLTgwcHg7IH1cblxuLmJyYW5kLWltYWdlIGltZyB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5kb3QtZGFyayAuc2xpY2stZG90cyB7XG4gIGJvdHRvbTogdW5zZXQ7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICByaWdodDogMDtcbiAgbGVmdDogdW5zZXQ7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuZG90LWRhcmsgLnNsaWNrLWRvdHMge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IHVuc2V0OyB9XG4gIC5kb3QtZGFyayAuc2xpY2stZG90cyBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNXB4OyB9XG4gICAgLmRvdC1kYXJrIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMyMzIzMjM7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gICAgICAuZG90LWRhcmsgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZG90LWRhcmsgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmltYWdlLXNob3cgLnNsaWNrLWxpc3Qge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmltYWdlLXNob3cgLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAuaW1hZ2Utc2hvdyAuc2xpY2stc2xpZGUsIFtkaXI9XCJydGxcIl1cbi5wb3N0ZXItc2VjdGlvbiAuaW1hZ2Utc2hvdyAuc2xpY2stc2xpZGUge1xuICBmbG9hdDogbm9uZTsgfVxuXG4uc2xpY2stbGctc3BhY2UgLnNsaWNrLWxpc3Qge1xuICBtYXJnaW46IC01cHggLTE4cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnNsaWNrLWxnLXNwYWNlIC5zbGljay1saXN0IHtcbiAgICAgIG1hcmdpbjogLTVweCAtMTBweDsgfSB9XG4gIC5zbGljay1sZy1zcGFjZSAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgIG1hcmdpbjogNXB4IDE4cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zbGljay1sZy1zcGFjZSAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgICAgICBtYXJnaW46IDVweCAxMHB4OyB9IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUgPiBkaXYge1xuICBtYXJnaW46IDAgNXB4OyB9XG5cbi5ibGFjay1zbGlkZSAuc2xpY2stbGlzdCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlLnNsaWNrLWFjdGl2ZSAucGxheS1pY29uIC5mYS1wbGF5IHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSkgYmx1cigxcHgpO1xuICBvcGFjaXR5OiAwLjU7IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUuc2xpY2stYWN0aXZlIC5wbGF5LWljb246aG92ZXIgLmZhLXBsYXkge1xuICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uYmxhY2stc2xpZGUgLnNsaWNrLWxpc3QgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZS5zbGljay1hY3RpdmUgaW1nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUuc2xpY2stYWN0aXZlOmhvdmVyIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5ibGFjay1zbGlkZSAuc2xpY2stbGlzdCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDIwJSkgYmx1cigxcHgpO1xuICBvcGFjaXR5OiAwLjg7IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUuc2xpY2stY2VudGVyIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5ibGFjay1zbGlkZSAuc2xpY2stbGlzdCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlLnNsaWNrLWNlbnRlciAucGxheS1pY29uIC5mYS1wbGF5IHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgVG91Y2hzcGluICBDU1MgU3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYm9vdHN0cmFwLXRvdWNoc3BpbiBpbnB1dC50b3VjaHNwaW4ge1xuICBwYWRkaW5nOiAwIDEycHg7IH1cblxuLmJvb3RzdHJhcC10b3VjaHNwaW4gLmlucHV0LWdyb3VwIC5idG4ge1xuICBwYWRkaW5nOiAwLjVyZW0gMS43NXJlbTsgfVxuXG4uYm9vdHN0cmFwLXRvdWNoc3BpbiAuaW5wdXQtZ3JvdXAge1xuICBmb250LWZhbWlseTogUnViaWssIHNhbnMtc2VyaWY7IH1cbiAgLmJvb3RzdHJhcC10b3VjaHNwaW4gLmlucHV0LWdyb3VwIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgfVxuXG4udG91Y2hzcGluLXZlcnRpY2FsLXRhYiB7XG4gIG1heC13aWR0aDogNjBweDtcbiAgd2lkdGg6IHVuc2V0OyB9XG4gIC50b3VjaHNwaW4tdmVydGljYWwtdGFiIC50b3VjaHNwaW4tdmVydGljYWwge1xuICAgIHBhZGRpbmc6IDZweCAxMnB4OyB9XG4gIC50b3VjaHNwaW4tdmVydGljYWwtdGFiIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuLXZlcnRpY2FsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDsgfVxuICAgIC50b3VjaHNwaW4tdmVydGljYWwtdGFiIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuLXZlcnRpY2FsIC5ib290c3RyYXAtdG91Y2hzcGluLWRvd24ge1xuICAgICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAgIC50b3VjaHNwaW4tdmVydGljYWwtdGFiIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuLXZlcnRpY2FsIGkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA0cHg7XG4gICAgICBsZWZ0OiA3cHg7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBmb250LXdlaWdodDogOTAwOyB9XG4gICAgLnRvdWNoc3Bpbi12ZXJ0aWNhbC10YWIgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4tdmVydGljYWwgPiAuYnRuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDlweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2NlZDRkYTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBMYXp5IExvYWQgY3NzIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJsdXItdXAge1xuICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgdHJhbnNpdGlvbjogZmlsdGVyIDQwMG1zLCAtd2Via2l0LWZpbHRlciA0MDBtczsgfVxuICAuYmx1ci11cC5sYXp5bG9hZGVkIHtcbiAgICBmaWx0ZXI6IGJsdXIoMCk7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIEJyZWFkY3J1bWIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJyZWFkY3J1bWItc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24gaDMge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI2IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24tMSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTsgfVxuICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5icmVhZGNydW1iLWl0ZW0uYWN0aXZlIHtcbiAgICBjb2xvcjogIzdlN2U3ZTsgfVxuICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5icmVhZGNydW1iIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZSAyNXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgYm90dG9tOiAtMTUwcHg7XG4gICAgICBvcGFjaXR5OiAwLjIgIWltcG9ydGFudDsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbGVmdDogMTAlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDJzO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEyczsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaTpudGgtY2hpbGQoMykge1xuICAgICAgICBsZWZ0OiA3MCU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogNHM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgbGVmdDogNDAlO1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDE4czsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaTpudGgtY2hpbGQoNSkge1xuICAgICAgICBsZWZ0OiA2NSU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgbGVmdDogNzUlO1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDNzOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5jaXJjbGVzIGxpOm50aC1jaGlsZCg3KSB7XG4gICAgICAgIGxlZnQ6IDE5JTtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDdzOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5jaXJjbGVzIGxpOm50aC1jaGlsZCg4KSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxNXM7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogNDVzOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5jaXJjbGVzIGxpOm50aC1jaGlsZCg5KSB7XG4gICAgICAgIGxlZnQ6IDIwJTtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzNXM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDEwKSB7XG4gICAgICAgIGxlZnQ6IDg1JTtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDExczsgfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAwcHgpIHJvdGF0ZSg3MjBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGhlYWRlciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uY29udGFpbmVyLWZsdWlkLWxnIHtcbiAgcGFkZGluZzogMCAxMTJweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZC1sZyB7XG4gICAgICBwYWRkaW5nOiAwIDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZC1sZyB7XG4gICAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZC1sZyB7XG4gICAgICBwYWRkaW5nOiAwIDEycHg7IH0gfVxuXG5oZWFkZXIgLnNlYXJjaC1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuXG5oZWFkZXIubmF2LWRvd24ubmF2LXVwIC5uYXZiYXItc2VhcmNoYmFyIHtcbiAgdG9wOiAwOyB9XG5cbmhlYWRlci5uYXYtZG93bi5uYXYtdXAgLm1haW4tbWVudSB7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuXG5oZWFkZXIubmF2LWRvd24gLm5hdmJhci1zZWFyY2hiYXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTEwMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDRweCAxMHB4IHJnYmEoMjMsIDMyLCA5MCwgMC4xNSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDY7IH1cblxuaGVhZGVyIC5zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gIGhlaWdodDogMHB4O1xuICBtYXgtaGVpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHRvcDogNjhweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMTAwMG1zIGN1YmljLWJlemllcigwLjI3LCAwLjcsIDAsIDAuOTkpO1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24ge1xuICAgICAgdG9wOiA1NnB4OyB9IH1cbiAgaGVhZGVyIC5zZWFyY2gtc3VnZ2VzdGlvbiA+IHVsIHtcbiAgICBtYXJnaW46IC0xMHB4OyB9XG4gICAgaGVhZGVyIC5zZWFyY2gtc3VnZ2VzdGlvbiA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMTBweDsgfVxuICBoZWFkZXIgLnNlYXJjaC1zdWdnZXN0aW9uIC5wcm9kdWN0LWNhcnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCBpbWcge1xuICAgICAgaGVpZ2h0OiAxMDBweDsgfVxuICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCAubWVkaWEtYm9keSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCAubWVkaWEtYm9keSBhIHtcbiAgICAgICAgY29sb3I6ICMyMzIzMjM7IH1cbiAgICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCAubWVkaWEtYm9keSAucmF0aW5nIGxpIGkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjYzNjM2MzOyB9XG5cbmhlYWRlciAubWFpbi1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaGVhZGVyIC5tYWluLW1lbnUge1xuICAgICAgcGFkZGluZzogMTBweCAwOyB9IH1cblxuaGVhZGVyIC5vbmhvdmVyLWRpdiB7XG4gIHJpZ2h0OiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5vbmhvdmVyLWRpdiB7XG4gICAgcmlnaHQ6IHVuc2V0O1xuICAgIGxlZnQ6IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIGhlYWRlciAud2lzbGlzdC1kcm9wZG93biB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoZWFkZXIgLmNhcnQtZHJvcGRvd246aG92ZXIgLm9uaG92ZXItZGl2IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9IH1cblxuaGVhZGVyIC5jYXJ0LWRyb3Bkb3duIC5vbmhvdmVyLWRpdjo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNmMGYzZjg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGhlYWRlciAuY2FydC1kcm9wZG93biAub25ob3Zlci1kaXYge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAyOTBweDtcbiAgICByaWdodDogLTI5MHB4O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogMC41cztcbiAgICB6LWluZGV4OiA0OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGhlYWRlciAuY2FydC1kcm9wZG93bi5zaG93IC5vbmhvdmVyLWRpdiB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogMC41czsgfSB9XG5cbmhlYWRlciAuY2FydC1tZW51IC5jYXJ0LXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgcGFkZGluZzogMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIGhlYWRlciAuY2FydC1tZW51IC5jYXJ0LXRpdGxlIGg2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBoZWFkZXIgLmNhcnQtbWVudSAuY2FydC10aXRsZSBoNiAubGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgcmlnaHQ6IC05cHg7XG4gICAgICBwYWRkaW5nOiAycHggNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5jYXJ0LW1lbnUgLmNhcnQtdGl0bGUgc3BhbiBpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbmhlYWRlciAuY2FydC1tZW51IC5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgaW1nIHtcbiAgICB3aWR0aDogNjBweDsgfVxuICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgaGVhZGVyIC5jYXJ0LW1lbnUgLm1lZGlhIC5tZWRpYS1ib2R5IGg2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkgaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogM3B4IDhweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkgLnF0eS13aXRoLXByaWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbmhlYWRlciAuY2FydC1tZW51IHVsIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgaGVhZGVyIC5jYXJ0LW1lbnUgdWwgbGkge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgaGVhZGVyIC5jYXJ0LW1lbnUgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaGVhZGVyIC5jYXJ0LW1lbnUgdWwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTgwcHgpO1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTsgfSB9XG5cbmhlYWRlciAuY2FydC1idG4ge1xuICBwYWRkaW5nOiAyMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGhlYWRlciAuY2FydC1idG4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMTsgfSB9XG4gIGhlYWRlciAuY2FydC1idG4gLmNhcnQtdG90YWwge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBoZWFkZXIgLmNhcnQtYnRuIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgaGVhZGVyIC5jYXJ0LWJ0biAuYnRuIHtcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuaGVhZGVyIC53aXNsaXN0LWVtcHR5IHtcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGhlYWRlciAud2lzbGlzdC1lbXB0eSBpIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbmhlYWRlciAuc2VhcmNoLWZ1bGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIGhlYWRlciAuc2VhcmNoLWZ1bGwgLmlucHV0LWdyb3VwIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjBmM2Y4OyB9XG4gICAgaGVhZGVyIC5zZWFyY2gtZnVsbCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIGhlYWRlciAuc2VhcmNoLWZ1bGwgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC10ZXh0LmNsb3NlLXNlYXJjaCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgaGVhZGVyIC5zZWFyY2gtZnVsbCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiAxOHB4OyB9XG4gICAgaGVhZGVyIC5zZWFyY2gtZnVsbCAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gIGhlYWRlciAuc2VhcmNoLWZ1bGwub3BlbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFuaW1hdGlvbjogem9vbUluIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG4gIGhlYWRlciAuc2VhcmNoLWZ1bGwuc2hvdyAuc2VhcmNoLXN1Z2dlc3Rpb24ge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjNmODtcbiAgICBoZWlnaHQ6IC13ZWJraXQtbWF4LWNvbnRlbnQ7XG4gICAgaGVpZ2h0OiAtbW96LW1heC1jb250ZW50O1xuICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LWhlaWdodDogNTAwcHg7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuMjcsIDAuNywgMCwgMC45OSk7IH1cblxuaGVhZGVyIC5zZWFyY2gtYm94MSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDU1JTtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBoZWFkZXIgLnNlYXJjaC1ib3gxIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICBoZWFkZXIgLnNlYXJjaC1ib3gxIC50d2l0dGVyLXR5cGVhaGVhZCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpOyB9XG4gIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHRvcDogNTVweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiA4cHggMDsgfVxuICAgIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUgLnR0LWRhdGFzZXQtc3RhdGVzIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDsgfVxuICAgICAgaGVhZGVyIC5zZWFyY2gtYm94MSAudHQtbWVudSAudHQtZGF0YXNldC1zdGF0ZXMgLnR0LXNlbGVjdGFibGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUgLnR0LWRhdGFzZXQtc3RhdGVzIC50dC1zZWxlY3RhYmxlIC5pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgICAgIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUgLnR0LWRhdGFzZXQtc3RhdGVzIC50dC1zZWxlY3RhYmxlIC5pbWFnZS1zZWN0aW9uIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBoZWFkZXIgLnNlYXJjaC1ib3gxIC50dC1tZW51IC50dC1kYXRhc2V0LXN0YXRlcyAudHQtc2VsZWN0YWJsZSAuZGVzY3JpcHRpb24tc2VjdGlvbiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpOyB9XG4gICAgICAgICAgaGVhZGVyIC5zZWFyY2gtYm94MSAudHQtbWVudSAudHQtZGF0YXNldC1zdGF0ZXMgLnR0LXNlbGVjdGFibGUgLmRlc2NyaXB0aW9uLXNlY3Rpb24gaDQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICBoZWFkZXIgLnNlYXJjaC1ib3gxIHtcbiAgICAgIHdpZHRoOiA0OCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgaGVhZGVyIC5zZWFyY2gtYm94MSB7XG4gICAgICB3aWR0aDogNDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIGhlYWRlciAuc2VhcmNoLWJveDEge1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG4gIGhlYWRlciAuc2VhcmNoLWJveDEgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2VkNGRhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgaGVhZGVyIC5zZWFyY2gtYm94MS5vcGVuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiB6b29tSW4gMC41cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgaGVhZGVyIC5zZWFyY2gtYm94MS5zaG93IC5zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjNmODtcbiAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMTAwMG1zIGN1YmljLWJlemllcigwLjI3LCAwLjcsIDAsIDAuOTkpOyB9XG4gIGhlYWRlciAuc2VhcmNoLWJveDEgLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICBoZWFkZXIgLnNlYXJjaC1ib3gxIC5pbnB1dC1ncm91cC10ZXh0IC5mZWF0aGVyIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbmhlYWRlciAucHJvZmlsZS1kcm9wZG93biB7XG4gIG1pbi13aWR0aDogMTYwcHg7IH1cbiAgaGVhZGVyIC5wcm9maWxlLWRyb3Bkb3duIHVsIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgICBoZWFkZXIgLnByb2ZpbGUtZHJvcGRvd24gdWwgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDsgfVxuXG4uYnJhbmQtbG9nbyAuc3ZnLWljb24ge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXI7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuYnJhbmQtbG9nbyAuc3ZnLWljb24ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gIC5icmFuZC1sb2dvIC5zdmctaWNvbiAuZmlsbC1jb2xvciB7XG4gICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbm5lciB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKC0zNjBkZWcpOyB9IH1cblxuLmNhdGVnb3J5LW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjMjMyMzIzO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkgYTpob3ZlciwgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpIGE6Zm9jdXMsIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaSBhOmFjdGl2ZSwgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpIGEuYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi5jbG9zZS1idG4ge1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjMjMyMzIzO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmNsb3NlLWJ0biBpIHtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cblxuLm1vYmlsZS1tZW51IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiAzO1xuICBib3gtc2hhZG93OiAwIDJweCA3cHggM3B4IHJnYmEoMTY4LCAxNjgsIDE2OCwgMC4yKTsgfVxuICBbZGlyPVwicnRsXCJdIC5tb2JpbGUtbWVudSB7XG4gICAgbGVmdDogMDsgfVxuICAubW9iaWxlLW1lbnUgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tb2JpbGUtbWVudSB1bCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1vYmlsZS1tZW51IHVsIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAubW9iaWxlLW1lbnUgdWwgbGkgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjQpOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAgIC5tb2JpbGUtbWVudSB1bCBsaSBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgICAgIC5tb2JpbGUtbWVudSB1bCBsaSBhLmFjdGl2ZSwgLm1vYmlsZS1tZW51IHVsIGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLm1vYmlsZS1tZW51IHVsIGxpIGEgc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBzdHJva2Utd2lkdGg6IDEuNXB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgICAubW9iaWxlLW1lbnUgdWwgbGkgYSBzdmcge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7IH0gfVxuICAgICAgICAubW9iaWxlLW1lbnUgdWwgbGkgYSBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY2F0ZWdvcnktbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICAgIHRvcDogNzBweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiA4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbiAgICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgICBib3gtc2hhZG93OiAzLjM0NnB4IDMuNzE2cHggMjIuNXB4IHJnYmEoMCwgMCwgMCwgMC4wNyk7IH1cbiAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51ID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgPiBhOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgPiBhOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBsZWZ0OiA5NSU7XG4gICAgICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgLmNhdGVnb3J5LW1lZ2EtbWVudSAuY2F0ZWdvcnktY2hpbGRtZW51IC50aXRsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IC5jYXRlZ29yeS1jaGlsZG1lbnUgdWwgbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudTpob3ZlciAuY2F0ZWdvcnktbWVnYS1tZW51IHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51OmhvdmVyIC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAxMDAlOyB9XG4gICAgLmNhdGVnb3J5LW1lbnU6aG92ZXIgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgIG1pbi13aWR0aDogNzIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgIG1pbi13aWR0aDogODUwcHg7IH0gfVxuXG4uY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gLnRpdGxlLWNhdGVnb3J5IGg2IHtcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgaGVhZGVyIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBsZWZ0OiAtMzAwcHg7XG4gICAgei1pbmRleDogOTk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgIGhlYWRlciAuY2F0ZWdvcnktZHJvcGRvd24ub3BlbiB7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjhweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IGEgLmFjY29yZGluZy1tZW51IHtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IGEgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgLmNhdGVnb3J5LW1lZ2EtbWVudSB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IC5jYXRlZ29yeS1jaGlsZG1lbnUgLnRpdGxlLWNhdGVnb3J5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiA2cHggMDsgfVxuICAgICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IC5jYXRlZ29yeS1jaGlsZG1lbnUgLnRpdGxlLWNhdGVnb3J5IGg2IHtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUgLmNhdGVnb3J5LWNoaWxkbWVudSAudGl0bGUtY2F0ZWdvcnkgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICByaWdodDogMDsgfVxuICAgICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgLmNhdGVnb3J5LW1lZ2EtbWVudSAuY2F0ZWdvcnktY2hpbGRtZW51IHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUgLmNhdGVnb3J5LWNoaWxkbWVudSB1bCBsaSB7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDA7IH1cbiAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duID4gdWwge1xuICAgIHBhZGRpbmc6IDIwcHggMTVweDsgfVxuICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biA+IHVsID4gbGkgPiBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1iYW5uZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGVhZGVyLXN0eWxlLTIuYmxhY2stYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTsgfVxuXG4uaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgbmF2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IG5hdiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH0gfVxuICAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1sZWZ0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMzBweCArICg2MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtbGVmdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtbGVmdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LWxlZnQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogIzIzMjMyMzsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSBzdmcge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSAuYnRuIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSAuYnRuIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMjRweDsgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpIC5idG4gc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMThweDsgfSB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSArIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH0gfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH1cbiAgICAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gICAgICAgIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpIC5idG4ge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpIC5idG4gc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMjRweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAgICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpIC5idG4gc3ZnIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7IH0gfVxuICAgICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgPiB1bCA+IGxpICsgbGkge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgICAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG4gIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC53aXNsaXN0LWRyb3Bkb3duIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLndpc2xpc3QtZHJvcGRvd24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLmhlYWRlci1zdHlsZS0yIC5tYWluLW1lbnUgLmNhcnQtZHJvcGRvd24gYnV0dG9uIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC5oZWFkZXItc3R5bGUtMiAubWFpbi1tZW51IC5jYXJ0LWRyb3Bkb3duIGJ1dHRvbiAucGUtMiB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAuaGVhZGVyLXN0eWxlLTIgLm1haW4tbWVudSAuY2FydC1tZWRpYSAubGFiZWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTlweDtcbiAgICB0b3A6IC0xMHB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBuYXYgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuaGVhZGVyIC5tYWluLW5hdmJhciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgKyBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpICsgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSArIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSArIGxpICsgbGkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogIzIzMjMyMztcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOHB4OyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzNSwgMzUsIDAuMSk7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCA1cHggMCByZ2JhKDkwLCA5MCwgOTAsIDAuMik7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSB7XG4gICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMDsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGEge1xuICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMjVweCAzcHggNDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDdlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggNDBweCAzcHggMjVweDsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSBzcGFuIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTVweCAtOHB4IHZhcigtLWJhZGdlLWNvbG9yKTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGEgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDc7IH1cbiAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSBzcGFuLnRyZW4tYnVkZ2Uge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZmYyZjc7IH1cbiAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSBzcGFuLnRvcC1idWRnZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNlZmYyZjc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdlN2U3ZTsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSAubGFiZWwge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmYwMDAwO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDNweDsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYS5tZW51LXRpdGxlLWxldmVsMTphZnRlciwgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYS5zdWJtZW51LXRpdGxlOmFmdGVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYS5hcnJvdy1jbHM6YWZ0ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubmF2LXN1Yi1jaGlsZG1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC0yMDBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDFweCAwICNlYmViZWI7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCAwIHJnYmEoOTAsIDkwLCA5MCwgMC4yKTtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyLnBvc3Rlci1iZy1pbWFnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy92b3hvLnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lci5wb3N0ZXItYmctaW1hZ2Uge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1bnNldDsgfSB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lci5wb3N0ZXItYmctaW1hZ2UgLmZsb2F0aW5nLWltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwdmg7XG4gICAgICAgICAgICBhbmltYXRpb246IGZsb2F0aW5nIDExMHMgbGluZWFyIGluZmluaXRlIHJldmVyc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXggIWltcG9ydGFudDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCB7XG4gICAgICAgICAgd2lkdGg6IDE2JTsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IGEgLmxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmYwMDAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgM3B4OyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS10aXRsZSBoNSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wN2VtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtOyB9IH1cbiAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYSBzcGFuIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjI2LCAzNiwgODQsIDAuMDcpO1xuICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTVweCAtOHB4IHZhcigtLWJhZGdlLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhIHNwYW4udHJlbi1idWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWZmMmY3OyB9XG4gICAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYSBzcGFuLnRvcC1idWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZWZmMmY3O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2U3ZTdlOyB9XG4gICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGEgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDsgfVxuICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4MHB4OyB9IH1cbiAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGEubWVnYW1lbnUtaW1hZ2U6aG92ZXIgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpLmhpZ2hsaWdodC1saW5rIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkuaGlnaGxpZ2h0LWxpbmsgaSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiArIC5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogdW5zZXQ7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIHVsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IHVsIGxpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSB1bCBsaSAubWVnYW1lbnUtaW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSB1bCBsaSAubWVnYW1lbnUtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7IH0gfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IHVsIGxpIC5tZWdhbWVudS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IHVsIGxpIC5tZWdhbWVudS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDApOyB9IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSB1bCBsaSAubWVnYW1lbnUtaW1hZ2U6aG92ZXIge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpLm1lZ2EtbWVudS5ob21lLW1lbnUgdWwgbGkgLm1lZ2FtZW51LWltYWdlOmhvdmVyIGltZyB7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSAubWVnYW1lbnUtaW1hZ2UtdGl0bGUge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSAubWVnYW1lbnUtaW1hZ2UtdGl0bGUge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5yZXNwb25zaXZlLWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgYSAuc3ViLWFycm93IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdG9wOiA3cHg7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubGV2ZWwxIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5sZXZlbDEgbGkgLmxldmVsMiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubGV2ZWwxIGxpIC5sZXZlbDIgbGkgLmxldmVsMyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubGV2ZWwxIGxpIC5sZXZlbDIgbGk6aG92ZXIgLmxldmVsMyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5sZXZlbDEgbGk6aG92ZXIgLmxldmVsMiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGk6aG92ZXIgLmxldmVsMSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGE6aG92ZXIgLnN1Yi1hcnJvdyB7XG4gICAgICByaWdodDogMTZweDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpLmRyb3Bkb3duIC5tZW51LXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMThweDsgfVxuICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkuZHJvcGRvd24gLm1lbnUtdGl0bGU6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGk6aG92ZXIgLm5hdi1zdWJtZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaTpob3ZlciAubWVnYS1tZW51LWNvbnRhaW5lciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAudG9nZ2xlLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubW9iaWxlLWJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxNTVweDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICByaWdodDogLTMwMHB4O1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51Lm9wZW5uYXYge1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAuYmFjay1idG4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLmJhY2stYnRuIC5tb2JpbGUtYmFjayB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAuYmFjay1idG4gLm1vYmlsZS1iYWNrIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpOm50aC1jaGlsZChuICsgMikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMjEsIDIyMSwgMjIxLCAwLjUpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSBhIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSBhIC5zdWItYXJyb3cge1xuICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgYSAuc3ViLWFycm93OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpID4gdWwgbGkgYSAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICB0b3A6IDJweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSA+IHVsIGxpIHVsIGxpIGEgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgdG9wOiAxcHg7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSBhIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSBhOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGE6YWZ0ZXIge1xuICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSBhOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUub3BlbnN1Ym1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5uYXYtc3ViLWNoaWxkbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgLm5hdi1zdWItY2hpbGRtZW51LnN1Ym1lbnUtY29udGVudC5sZXZlbDIgbGkgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubmF2LXN1Yi1jaGlsZG1lbnUuc3VibWVudS1jb250ZW50LmxldmVsMiAubGV2ZWwzIGxpIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCA3MHB4OyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgLm5hdi1zdWItY2hpbGRtZW51Lm9wZW5zdWJjaGlsZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5uYXYtc3ViLWNoaWxkbWVudSBsaSBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNDVweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyLm9wZW5zdWJtZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtdGl0bGUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LXRpdGxlIGg1IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDI1cHg7IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtdGl0bGUgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgICAgICAgdG9wOiA3cHg7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50Lm9wZW5zdWJtZWdhbWVudSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDQ1cHg7IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYTpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiArIC5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1saW5rLmFjdGl2ZTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLm1vYmlsZS1wb3N0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogLTQxMHB4O1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAubW9iaWxlLXBvc3RlciBpbWcge1xuICAgICAgICB3aWR0aDogNTBweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLm1vYmlsZS1wb3N0ZXIgLm1vYmlsZS1jb250YWluIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLm1vYmlsZS1wb3N0ZXIgLm1vYmlsZS1jb250YWluIGg1IHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAubW9iaWxlLXBvc3RlciAubW9iaWxlLWNvbnRhaW4gcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIG1hcmdpbjogN3B4IDA7IH1cbiAgaGVhZGVyIC5tZW51IG5hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4gIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5kZW1vIHVsIGxpIGEgc3BhbiBpbWcge1xuICAgIHRvcDogMzBweDtcbiAgICByaWdodDogLTYwcHg7IH1cbiAgLm1lZ2EtYm94LmNvbCB7XG4gICAgZmxleC1iYXNpczogdW5zZXQ7IH1cbiAgLmFjY29yZGluZy1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMjBweDsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBob21lIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmhvbWUtc2VjdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zbGlkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNzM2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zZWN0aW9uIC5ob21lLXNsaWRlciB7XG4gICAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtc2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXNsaWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXNlY3Rpb24gLmhvbWUtc2xpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtc2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAzNzBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXNsaWRlciB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyNCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi10b3A6IC00cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIGg0IHtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTE5OSAtIDMyMCkpKTsgfSB9XG4gICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIGg2IHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIHAge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIHAge1xuICAgICAgICAgIG1heC13aWR0aDogOTAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIHAge1xuICAgICAgICAgIG1heC13aWR0aDogODAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgcCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4OSU7IH0gfVxuICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygyMHB4ICsgKDQwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIC5kaXNjb3Zlci1ibG9jayAuZC1mbGV4IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIC5kaXNjb3Zlci1ibG9jayAucGxheS1pY29uIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzBweCArICg1MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDMwcHggKyAoNTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5wbGF5LWljb246OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEwcHgpO1xuICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgIHotaW5kZXg6IC0xOyB9XG4gICAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sgLnBsYXktaWNvbiBpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5wbGF5LWljb24gaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH1cbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sgLmRpc2NvdmVyLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5kaXNjb3Zlci1jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4OyB9IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5kaXNjb3Zlci1jb250ZW50IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sgLmRpc2NvdmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7IH0gfVxuICAuaG9tZS1zZWN0aW9uIC5ob21lLXNvY2lhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtc29jaWFsIHVsIGxpIGEge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwgbGkgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwgbGkgaW1nIFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwgbGkgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAtMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uaG9tZS1zdHlsZS0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ob21lLXN0eWxlLTIgLnNlbGVjdGlvbi13cmFwIHtcbiAgICBtYXJnaW46IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwOyB9XG4gICAgLmhvbWUtc3R5bGUtMiAuc2VsZWN0aW9uLXdyYXAgbGkgLmRhcmstc2VsZWN0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmhvbWUtc3R5bGUtMiAuc2VsZWN0aW9uLXdyYXAgbGkgLmRhcmstc2VsZWN0IC5mb3JtLXNlbGVjdCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxZDFkMWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxZDFkMWQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtaW4td2lkdGg6IDc1cHg7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICAgIC5ob21lLXN0eWxlLTIgLnNlbGVjdGlvbi13cmFwIGxpIC5kYXJrLXNlbGVjdCBpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmhvbWUtc3R5bGUtMiAuc2VsZWN0aW9uLXdyYXAgbGkgLmRhcmstc2VsZWN0IGkge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAxNXB4OyB9XG4gICAgLmhvbWUtc3R5bGUtMiAuc2VsZWN0aW9uLXdyYXAgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYygxMHB4ICsgKDE1IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXN0eWxlLTIgLnNlbGVjdGlvbi13cmFwIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEwcHggKyAoMTUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAgICAgLmhvbWUtc3R5bGUtMiAuc2VsZWN0aW9uLXdyYXAgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXN0eWxlLTIgLnNlbGVjdGlvbi13cmFwIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH1cbiAgLmhvbWUtc3R5bGUtMiAuYWRkLWJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmhvbWUtc3R5bGUtMiAuYWRkLWJ0biAuYnRuIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XG4gICAgICAuaG9tZS1zdHlsZS0yIC5hZGQtYnRuIC5idG4gaSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuaG9tZS1zdHlsZS0yIC5hZGQtYnRuIC5idG4tc29saWQtZGVmYXVsdCB7XG4gICAgICBwYWRkaW5nOiA4cHggMTBweDsgfVxuICAgICAgLmhvbWUtc3R5bGUtMiAuYWRkLWJ0biAuYnRuLXNvbGlkLWRlZmF1bHQ6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAuaG9tZS1zdHlsZS0yIC5zaGFyZS1pY29ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmhvbWUtc3R5bGUtMiAuc2hhcmUtaWNvbnMgc3BhbiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgIC5ob21lLXN0eWxlLTIgLnNoYXJlLWljb25zIHVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFkMWQxZDtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zdHlsZS0yIC5zaGFyZS1pY29ucyB1bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50OyB9XG4gICAgICAuaG9tZS1zdHlsZS0yIC5zaGFyZS1pY29ucyB1bCBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7IH1cbiAgLmhvbWUtc3R5bGUtMiAuaG9tZS1sZWZ0LXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzIzMjM7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAwIGNhbGMoMjBweCArICg4MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmhvbWUtc3R5bGUtMiAuaG9tZS1sZWZ0LXdyYXBwZXIge1xuICAgICAgZGlyZWN0aW9uOiBydGw7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgICAuaG9tZS1zdHlsZS0yIC5ob21lLWxlZnQtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDYwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjYwIC0gMzIwKSkpOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAuaG9tZS1zdHlsZS0yIC5ob21lLWxlZnQtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNDYwIC0gMzIwKSkpOyB9IH1cbiAgICAuaG9tZS1zdHlsZS0yIC5ob21lLWxlZnQtd3JhcHBlciBoMiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjRweCArICg0MiAtIDI0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuaG9tZS1zdHlsZS0yIC5ob21lLWxlZnQtd3JhcHBlciAucmF0aW5nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zdHlsZS0yIC5ob21lLWxlZnQtd3JhcHBlciAucmF0aW5nIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAgICAgLmhvbWUtc3R5bGUtMiAuaG9tZS1sZWZ0LXdyYXBwZXIgLnJhdGluZy5yYXRpbmctc3RhciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC5ob21lLXN0eWxlLTIgLmhvbWUtbGVmdC13cmFwcGVyIHAge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICBjb2xvcjogI2NlZDRkYTtcbiAgICAgIG1hcmdpbjogMjBweCAwIDMwcHg7IH1cbiAgICAuaG9tZS1zdHlsZS0yIC5ob21lLWxlZnQtd3JhcHBlciBoMyB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgzNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLmhvbWUtc3R5bGUtMiAuaG9tZS1sZWZ0LXdyYXBwZXIgaDMgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5ob21lLXN0eWxlLTIgLmhvbWUtc2xpZGVyIHtcbiAgICBoZWlnaHQ6IDg3MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgLmhvbWUtc3R5bGUtMiAuaG9tZS1zbGlkZXIge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoNDAwcHggKyAoNzUwIC0gNDAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTY2MCAtIDMyMCkpKTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuaG9tZS1zdHlsZS0yIC5ob21lLXNsaWRlciB7XG4gICAgICAgIGhlaWdodDogY2FsYyg0NDBweCArICg2ODAgLSA0NDApICogKCgxMDB2dyAtIDMyMHB4KSAvICg5OTEgLSAzMjApKSk7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmhvbWUtc3R5bGUtMiAuaG9tZS1zbGlkZXIge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMzYwcHggKyAoNDcwIC0gMzYwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoNDgwIC0gMzIwKSkpOyB9IH1cbiAgLmhvbWUtc3R5bGUtMiAubGVmdC1jb250ZW50IC5ob21lLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDgwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zdHlsZS0yIC5sZWZ0LWNvbnRlbnQgLmhvbWUtY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgICAuaG9tZS1zdHlsZS0yIC5sZWZ0LWNvbnRlbnQgLmhvbWUtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDYwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjYwIC0gMzIwKSkpOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAuaG9tZS1zdHlsZS0yIC5sZWZ0LWNvbnRlbnQgLmhvbWUtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNDYwIC0gMzIwKSkpOyB9IH1cbiAgICAuaG9tZS1zdHlsZS0yIC5sZWZ0LWNvbnRlbnQgLmhvbWUtY29udGVudCBoNiB7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5ob21lLXN0eWxlLTIgLmxlZnQtY29udGVudCAuaG9tZS1jb250ZW50IGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLmhvbWUtc3R5bGUtMiAubGVmdC1jb250ZW50IC5ob21lLWNvbnRlbnQgaDMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfVxuICAgIC5ob21lLXN0eWxlLTIgLmxlZnQtY29udGVudCAuaG9tZS1jb250ZW50IGgxIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmhvbWUtc3R5bGUtMiAubGVmdC1jb250ZW50IC5ob21lLWNvbnRlbnQgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygzMHB4ICsgKDQwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICg1NzUgLSAzMjApKSk7IH0gfVxuICAgIC5ob21lLXN0eWxlLTIgLmxlZnQtY29udGVudCAuaG9tZS1jb250ZW50ID4gZGl2ID4gaDYge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgICAuaG9tZS1zdHlsZS0yIC5sZWZ0LWNvbnRlbnQgLmhvbWUtY29udGVudCA+IGRpdiA+IGg2IHtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuaG9tZS1zdHlsZS0yIC5sZWZ0LWNvbnRlbnQgLmhvbWUtY29udGVudCA+IGRpdiA+IGg2IHtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLmhvbWUtc3R5bGUtMiAubGVmdC1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgIWltcG9ydGFudDsgfSB9XG4gIC5ob21lLXN0eWxlLTIgLnNsaWNrLTIgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5ob21lLXN0eWxlLTIgLnNsaWNrLTIgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLmhvbWUtc3R5bGUtMiAuaG9tZS13cmFwIHAge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09XG4gICAgU2xpY2sgU0xpZGVyIENTUyBTdGFydCBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJveC1hcnJvdyAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IGNhbGMoNXB4ICsgKDI1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIHotaW5kZXg6IDE7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJveC1hcnJvdyAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAxMHB4OyB9IH1cbiAgLmJveC1hcnJvdyAuc2xpY2stcHJldjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjMwYVwiO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGxlZnQ6IDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgZm9udC1zaXplOiA0MHB4OyB9XG5cbi5ib3gtYXJyb3cgLnNsaWNrLW5leHQge1xuICByaWdodDogY2FsYygyMHB4ICsgKDQwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB6LWluZGV4OiAxOyB9XG4gIC5ib3gtYXJyb3cgLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYzMGJcIjtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICByaWdodDogMDtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBmb250LXNpemU6IDQwcHg7IH1cblxuLnNsaWNrLWRvdHMgbGkge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4OyB9XG4gIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGVkZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuLndoaXRlLWFycm93IC5zbGljay1wcmV2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IC03MHB4O1xuICBtYXJnaW4tdG9wOiAtMjVweDsgfVxuICBbZGlyPVwicnRsXCJdIC53aGl0ZS1hcnJvdyAuc2xpY2stcHJldiB7XG4gICAgcmlnaHQ6IC04MHB4O1xuICAgIGxlZnQ6IHVuc2V0OyB9XG4gIC53aGl0ZS1hcnJvdyAuc2xpY2stcHJldjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLndoaXRlLWFycm93IC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgcmlnaHQ6IDkwcHg7XG4gICAgICB0b3A6IC04MHB4O1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC53aGl0ZS1hcnJvdyAuc2xpY2stcHJldiB7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogMzBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC53aGl0ZS1hcnJvdyAuc2xpY2stcHJldiB7XG4gICAgICB0b3A6IC01OHB4OyB9IH1cbiAgLndoaXRlLWFycm93IC5zbGljay1wcmV2OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuLndoaXRlLWFycm93IC5zbGljay1uZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IC03MHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLndoaXRlLWFycm93IC5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTgwcHg7XG4gICAgbGVmdDogdW5zZXQ7IH1cbiAgLndoaXRlLWFycm93IC5zbGljay1uZXh0OmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAud2hpdGUtYXJyb3cgLnNsaWNrLW5leHQge1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMzBweDtcbiAgICAgIHRvcDogLTgwcHg7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLndoaXRlLWFycm93IC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiA5MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLndoaXRlLWFycm93IC5zbGljay1uZXh0IHtcbiAgICAgIHRvcDogLTU4cHg7IH0gfVxuICAud2hpdGUtYXJyb3cgLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBzZXJ2aWNlIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAuc2VydmljZS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9IH1cblxuLnNlcnZpY2Utc2VjdGlvbiAuc2VydmljZS13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiBzdmcge1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiBzdmcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zZXJ2aWNlLXNlY3Rpb24gLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7IH0gfVxuICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtY29udGVudCBoMyB7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5zZXJ2aWNlLXNlY3Rpb24gLnNlcnZpY2Utd3JhcCAuc2VydmljZS1jb250ZW50IGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4ICFpbXBvcnRhbnQ7IH0gfVxuICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtY29udGVudCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTsgfVxuXG4uc2VydmljZS1zZWN0aW9uLmFib3V0LXBhZ2UgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7IH1cblxuLnNlcnZpY2Utc3R5bGUtMiAuc2VydmljZS13cmFwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogLTJweDsgfVxuICAuc2VydmljZS1zdHlsZS0yIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uc2VydmljZS1zdHlsZS0yIC5yb3cgPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlcnZpY2Utc3R5bGUtMiAucm93ID4gZGl2ICsgZGl2OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMnB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuc2VydmljZS1zdHlsZS0yIC5yb3cgPiBkaXYgKyBkaXY6bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5zZXJ2aWNlLXN0eWxlLTIgLnJvdyA+IGRpdiArIGRpdjpudGgtY2hpbGQoZXZlbik6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJhbm5lciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGltZXItYmFubmVyIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jb2xsZWN0aW9uLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29sbGVjdGlvbi1jb250YWluIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigzcHgpOyB9XG4gICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbGxlY3Rpb24tY29udGFpbiBoNixcbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29sbGVjdGlvbi1jb250YWluIGgyLFxuICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb2xsZWN0aW9uLWNvbnRhaW4gcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH0gfVxuICAuY29sbGVjdGlvbi1iYW5uZXIgLnRoZW1lLWNvbG9yIHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIuY29udGFpbi1jZW50ZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA0NXB4IDgwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggNjBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogNDBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LnNwYWNpbmctYmFubmVyIHtcbiAgICAgICAgcGFkZGluZzogNDBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQuc3BhY2luZy1iYW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC5zcGFjaW5nLWJhbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LnNwYWNpbmctYmFubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC5zcGFjaW5nLWJhbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQuc3BhY2luZy1iYW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LnNwYWNpbmctYmFubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzUsIDM1LCAzNSwgMC45Myk7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LndpdGgtYmcgaDIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iZyBoMyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC53aXRoLWJnIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7IH1cbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LndpdGgtYmlnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjg1KTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iaWcgaDIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHNwYW4ge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDsgfSB9XG4gICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC50LXRvcCBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00cHg7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtY2VudGVyIC5jb250YWluLWJhbm5lcixcbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtY2VudGVyIC5iYW5uZXItdGV4dCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtcmlnaHQgLmNvbnRhaW4tYmFubmVyLFxuICAuY29sbGVjdGlvbi1iYW5uZXIucC1yaWdodCAuYmFubmVyLXRleHQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5jb250YWluLWJhbm5lciwgW2Rpcj1cInJ0bFwiXVxuICAgIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5iYW5uZXItdGV4dCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIucC1yaWdodCAuY29udGFpbi1iYW5uZXIgaDMsXG4gICAgLmNvbGxlY3Rpb24tYmFubmVyLnAtcmlnaHQgLmJhbm5lci10ZXh0IGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IC05cHg7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIucC1yaWdodCAuY29udGFpbi1iYW5uZXIgLnNwYW4tdG9wLFxuICAgIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5iYW5uZXItdGV4dCAuc3Bhbi10b3Age1xuICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5iYW5uZXItY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtbGVmdCAuY29udGFpbi1iYW5uZXIsXG4gIC5jb2xsZWN0aW9uLWJhbm5lci5wLWxlZnQgLmJhbm5lci10ZXh0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jb2xsZWN0aW9uLWJhbm5lci5wLWxlZnQgLmNvbnRhaW4tYmFubmVyLCBbZGlyPVwicnRsXCJdXG4gICAgLmNvbGxlY3Rpb24tYmFubmVyLnAtbGVmdCAuYmFubmVyLXRleHQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAuY29sbGVjdGlvbi1iYW5uZXIucC1ib3R0b20gLmNvbnRhaW4tYmFubmVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgIHdpZHRoOiA2MCU7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQudC10b3AgaDMge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IC5iYW5uZXItY29udGVudC50LXRvcCBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDQwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCBoNiB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgaDIge1xuICAgICAgbWFyZ2luOiBjYWxjKDJweCArICgyMCAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICg0NiAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMyO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDMyIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IGgzLmgtYm90dG9tIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygycHggKyAoMjAgLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IC5idG4ge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmJhbm5lci10aXRsZSAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgd2lkdGg6IDU2JTsgfVxuICBbZGlyPVwicnRsXCJdIC5iYW5uZXItdGl0bGUgLmJhbm5lci10ZXh0IC5iYW5uZXItY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuYmFubmVyLXRpdGxlIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQgLnNwYWNpbmctdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uY29sbGVjdGlvbi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7XG4gIGNvbG9yOiAjMjEyNTI5OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAuY29sbGVjdGlvbi1jZW50ZXIge1xuICAgICAgcGFkZGluZzogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5jb2xsZWN0aW9uLWNlbnRlciB7XG4gICAgICBwYWRkaW5nOiAzMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLmNvbGxlY3Rpb24tY2VudGVyIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAuY29sbGVjdGlvbi1jZW50ZXIgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cblxuLmJhbm5lci1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYmFubmVyLWltYWdlIC5iYW5uZXItY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhbGMoMjBweCArICg2MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDQwJTsgfVxuICAgIC5iYW5uZXItaW1hZ2UgLmJhbm5lci1jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDMyIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDJweCArICgxNSAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygwcHggKyAoLTYgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYmFubmVyLWltYWdlIC5iYW5uZXItY29udGVudCBoMyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLmJhbm5lci1pbWFnZSAuYmFubmVyLWNvbnRlbnQgcCB7XG4gICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZSAuYmFubmVyLWNvbnRlbnQgcCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItaW1nIHtcbiAgICBtaW4taGVpZ2h0OiAzOTBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1pbWcge1xuICAgICAgICBtaW4taGVpZ2h0OiAzMzBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLWltZyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1pbWcge1xuICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDsgfSB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1kZXRhaWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItZGV0YWlsIHtcbiAgICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gICAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLWRldGFpbCAuZm9udC1kYXJrLTMwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDsgfVxuICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1kZXRhaWwgLmhlYXJ0LXdpc2hsaXN0IC5mYXIge1xuICAgICAgY29sb3I6IHJnYmEoMzUsIDM1LCAzNSwgMC42KTsgfVxuICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1kZXRhaWwgLmhlYXJ0LXdpc2hsaXN0OjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMC41OyB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIHtcbiAgICB0b3A6IHVuc2V0O1xuICAgIGJvdHRvbTogNjBweDsgfVxuICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyLmNvbnRhaW4tY2VudGVyIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIHtcbiAgICAgICAgYm90dG9tOiAzMHB4OyB9IH1cbiAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig0cHgpOyB9XG4gICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQuYmFubmVyLWNlbnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCBzcGFuIHtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4OyB9IH1cbiAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lci5yYXRpbzJfMSAuYmctc2l6ZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lcjpob3ZlciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LmJhbm5lci1jZW50ZXIge1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpOyB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXI6aG92ZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC53aXRoLWJnIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXI6aG92ZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC53aXRoLWJpZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xuICAgIG9wYWNpdHk6IDAuOTsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyOmhvdmVyIC5iYW5uZXItZGV0YWlsIC5oZWFydC13aXNobGlzdCAuZmFyIHtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXI6aG92ZXIgLmJhbm5lci1kZXRhaWwgLmhlYXJ0LXdpc2hsaXN0OjphZnRlciB7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIHRyYW5zaXRpb246IDAuNTsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyOmhvdmVyIC5iYW5uZXItZGV0YWlsIC5mb250LWRhcmstMzAge1xuICAgIGNvbG9yOiAjMjMyMzIzICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXI6aG92ZXIgLmJhbm5lci1kZXRhaWwgLmZvbnQtZGFyay0zMCBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4uYmFubmVyLXN0eWxlLTIub2ZmZXItYmFubmVyIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLWltZyB7XG4gIG1pbi1oZWlnaHQ6IHVuc2V0OyB9XG5cbi5iYW5uZXItc3R5bGUtMi5vZmZlci1iYW5uZXIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciB7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJvdHRvbTogdW5zZXQ7IH1cbiAgLmJhbm5lci1zdHlsZS0yLm9mZmVyLWJhbm5lciAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgcGFkZGluZzogNDBweDsgfVxuICAgIC5iYW5uZXItc3R5bGUtMi5vZmZlci1iYW5uZXIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQgc3BhbiB7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdW5zZXQ7IH1cblxuLnRpbWVyLWJhbm5lci1zdHlsZS0yIC50aW1lci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogY2FsYygyOHB4ICsgKDQ2IC0gMjgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBsaW5lLWhlaWdodDogMS4zMjtcbiAgbWFyZ2luOiAyMHB4IGF1dG8gMTBweDtcbiAgd2lkdGg6IDgwJTsgfVxuXG4udGltZXItYmFubmVyLXN0eWxlLTIgaDMge1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbi50aW1lci1iYW5uZXItc3R5bGUtMiAuaGVhcnQtd2lzaGxpc3Qge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4udGltZXItYmFubmVyLXN0eWxlLTIgLnRpbWVyLWJnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAzMHB4O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogI2ZmZjsgfVxuICAudGltZXItYmFubmVyLXN0eWxlLTIgLnRpbWVyLWJnLWNlbnRlciB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50aW1lci1iYW5uZXItc3R5bGUtMiAudGltZXItYmc6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTsgfVxuICAudGltZXItYmFubmVyLXN0eWxlLTIgLnRpbWVyLWJnIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsZXR0ZXItc3BhY2luZzogNXB4OyB9XG4gIC50aW1lci1iYW5uZXItc3R5bGUtMiAudGltZXItYmcgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4udGltZXItYmFubmVyLXN0eWxlLTIgLnRpbWVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAudGltZXItYmFubmVyLXN0eWxlLTIgLnRpbWVyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzIzMjMyMztcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLnRpbWVyLWJhbm5lci1zdHlsZS0yIC50aW1lciB1bCBsaSAuY291bnRlciB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgbWluLXdpZHRoOiA5MHB4OyB9XG4gICAgICAudGltZXItYmFubmVyLXN0eWxlLTIgLnRpbWVyIHVsIGxpIC5jb3VudGVyIGgyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgLnRpbWVyLWJhbm5lci1zdHlsZS0yIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcHJvZHVjdCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFiLXNlY3Rpb24gLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBoNSB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLnRhYi1zZWN0aW9uIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDUge1xuICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnRhYi1zZWN0aW9uIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDUubWFpbi10aXRsZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBbZGlyPVwicnRsXCJdIC50YWItc2VjdGlvbiAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1Lm1haW4tdGl0bGUge1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnJhdGluZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAtNHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnJhdGluZyB7XG4gICAgcGFkZGluZzogMDsgfVxuICAucmF0aW5nIGxpIGkge1xuICAgIGNvbG9yOiAjYzNjM2MzICFpbXBvcnRhbnQ7IH1cbiAgICAucmF0aW5nIGxpIGkudGhlbWUtY29sb3Ige1xuICAgICAgY29sb3I6ICNmZmEyMDIgIWltcG9ydGFudDsgfVxuXG4uaGVhcnQtd2lzaGxpc3Qge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gIC5oZWFydC13aXNobGlzdCAuZmFyIHtcbiAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5oZWFydC13aXNobGlzdCAuZmFyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDsgfVxuICAuaGVhcnQtd2lzaGxpc3Q6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC5oZWFydC13aXNobGlzdC5oZWFydC1jb2xvcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5wcm9kdWN0LWJveCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3gge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLnNoYXJlIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyIC5zaGFyZS1vcGFjaXR5IHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuc2hhcmUtcGx1cyB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIuaG92ZXItaW1hZ2U6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIuc3F1cmUtaW1hZ2U6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLmNpcmNsZS1zaGFwZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyIC5iYWNrZ3JvdW5kLXRleHQge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyLmhvdmVyLWltYWdlOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9lZmZlY3QxLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlci5zcXVyZS1pbWFnZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy92ZWdldGFibGUvZWZmZWN0LnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIuc3F1cmUtaW1hZ2U6OmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jaXJjbGUtc2hhcGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuMDQpO1xuICAgICAgdG9wOiAtODBweDtcbiAgICAgIGxlZnQ6IC04MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDg3JTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNpdGlvbjogMC42cyBlYXNlO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNpcmNsZS1zaGFwZS0xIHtcbiAgICAgICAgd2lkdGg6IDM5MHB4O1xuICAgICAgICBoZWlnaHQ6IDM5MHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMyLCAxMTUsIDIyLCAwLjA0KTtcbiAgICAgICAgdG9wOiAtMTMwcHg7XG4gICAgICAgIGxlZnQ6IC0xMzBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7IH1cbiAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5iYWNrZ3JvdW5kLXRleHQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogOTBweDtcbiAgICAgIHJpZ2h0OiAtMzBweDtcbiAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gICAgICB0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICBmb250LXNpemU6IDY4cHg7XG4gICAgICBjb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuMSk7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7IH1cbiAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDMwcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCB7XG4gICAgICAgIGJvdHRvbTogMjBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCB7XG4gICAgICAgIGJvdHRvbTogMTVweDsgfSB9XG4gICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgLmNhdGVnb3J5LWl0ZW0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSxcbiAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b24ge1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEsXG4gICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogMTBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSxcbiAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHtcbiAgICAgICAgICBwYWRkaW5nOiA1cHg7IH0gfVxuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYTo6YWZ0ZXIsXG4gICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b246OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogLTE7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhOjphZnRlciwgW2Rpcj1cInJ0bFwiXVxuICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b246OmFmdGVyIHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogMDsgfVxuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSBzdmcsXG4gICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b24gc3ZnIHtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhIHN2ZyxcbiAgICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b24gc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSBzdmcsXG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgIGhlaWdodDogMTNweDsgfSB9XG4gICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhOmhvdmVyLFxuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGE6aG92ZXI6OmFmdGVyLFxuICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b246aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhIHtcbiAgICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIHVsIGxpICsgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH1cbiAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBoMyBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBoMyBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XG4gICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDUge1xuICAgICAgbWFyZ2luOiA1cHggYXV0byA2cHggYXV0bztcbiAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5zaXplLWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogLTFweDsgfVxuICAgICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnNpemUtYm94IGxpIHtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdlZjsgfVxuICAgICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnNpemUtYm94LTIgbGkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnJhdGluZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmcucmF0aW5nLTIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmcgbGkgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgY29sb3I6ICNjM2MzYzM7IH1cbiAgICAgICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnJhdGluZyBsaSBpLnRoZW1lLWNvbG9yIHtcbiAgICAgICAgICBjb2xvcjogI2ZmYTIwMjsgfVxuICAucHJvZHVjdC1ib3ggLmxhYmVsLWRhcmsge1xuICAgIGxlZnQ6IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJveCAubGFiZWwtZGFyayB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtYm94IC5sYWJlbC1kYXJrIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnByb2R1Y3QtYm94IC5sYWJlbC10aGVtZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3ggLmxhYmVsLXRoZW1lIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJveCAubGFiZWwtdGhlbWUge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnByb2R1Y3QtYm94OmhvdmVyIC5jYXJ0LXdyYXAge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAgIC5wcm9kdWN0LWJveDpob3ZlciAuY2FydC13cmFwIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgNDAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAucHJvZHVjdC1ib3g6aG92ZXIgLmNhcnQtd3JhcCB1bCBsaTpudGgtY2hpbGQoMikge1xuICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA2MDBtcyBlYXNlLWluLW91dDsgfVxuICAgIC5wcm9kdWN0LWJveDpob3ZlciAuY2FydC13cmFwIHVsIGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICBhbmltYXRpb246IGZhZGVJblVwIDgwMG1zIGVhc2UtaW4tb3V0OyB9XG4gICAgLnByb2R1Y3QtYm94OmhvdmVyIC5jYXJ0LXdyYXAgdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMTAwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5wcm9kdWN0LXdyYXBwZXItMSAuc2xpY2stZG90cyB7XG4gIG1hcmdpbi10b3A6IC0yNXB4ICFpbXBvcnRhbnQ7IH1cblxuLnByb2R1Y3Qtd3JhcHBlciAuc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiBjYWxjKDVweCArICgyMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wcm9kdWN0LXdyYXBwZXIgLnNsaWNrLWRvdHMgbGkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5wcm9kdWN0LXdyYXBwZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzNSwgMzUsIDAuMik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgICAucHJvZHVjdC13cmFwcGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wcm9kdWN0LXdyYXBwZXIgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnByb2R1Y3Qtd3JhcHBlciAudGltZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTVweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucHJvZHVjdC13cmFwcGVyLnNsaWNrLXNsaWRlci5zbGljay1kb3R0ZWQge1xuICBtYXJnaW4tYm90dG9tOiAtMnB4OyB9XG5cbi5wcm9kdWN0LWJhbm5lci1jaXJjbGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wcm9kdWN0LWJhbm5lciB7XG4gICAgb3JkZXI6IC0xOyB9IH1cblxuLnByb2R1Y3QtYmFubmVyIC5wcm9kdWN0LWJveCB7XG4gIHBhZGRpbmc6IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5wcm9kdWN0LWJhbm5lciAucHJvZHVjdC1ib3gge1xuICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50OyB9IH1cbiAgLnByb2R1Y3QtYmFubmVyIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5wcm9kdWN0LWJhbm5lciAubGFiZWwtYmxvY2sge1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnByb2R1Y3QtYmFubmVyIC5sYWJlbC1ibG9jayB+IGEge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDUwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nOiAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzNSwgMzUsIDAuOCk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgY29sb3I6ICNmZmY7XG4gIHdpZHRoOiA3MCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogMTsgfVxuICAucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZC1kZW1vNCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuOCk7IH1cbiAgICAucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZC1kZW1vNCBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgLnByb2R1Y3QtYmFubmVyIC5vZmZlci1lbmQtZGVtbzQgaDYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLnByb2R1Y3QtYmFubmVyIC5vZmZlci1lbmQge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIHtcbiAgICAgIHdpZHRoOiB1bnNldDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIHtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnByb2R1Y3QtYmFubmVyIC5vZmZlci1lbmQge1xuICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIGg2IHtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDIyNXB4O1xuICAgIHdpZHRoOiAyMjVweDtcbiAgICBvYmplY3QtZml0OiBjb250YWluOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxOTVweDtcbiAgICAgICAgd2lkdGg6IDE5NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGltZyB7XG4gICAgICAgIGhlaWdodDogMTc1cHg7XG4gICAgICAgIHdpZHRoOiAxNzVweDsgfSB9XG4gIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICB0ZXh0LW9yaWVudGF0aW9uOiBpbml0aWFsO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7IH1cbiAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuc2hhcmUtb3BhY2l0eSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlOyB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlLWJveCB7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlIC5zaGFyZS1wbHVzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlIC5zaGFyZS1wbHVzOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwOyB9XG4gICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuc2hhcmUgLnNoYXJlLXBsdXMtY29sb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7IH1cbiAgICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlIC5zaGFyZS1wbHVzLWNvbG9yOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSBzcGFuOm5vdCguc2hhcmUtcGx1cykge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlIHNwYW46bm90KC5zaGFyZS1wbHVzKSB7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDZweDtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3Zlci1ncmFkaWVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWM3YTFmO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzOGRlZywgI2VjN2ExZiAwJSwgI2UzNjI3YiA1MCUsICNhMDc2OGUgMTAwJSk7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgaDIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyNXB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDY1cHggKyAoODAgLSA2NSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgb3BhY2l0eTogMC4wODsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmluc3RhLWhvdmVyIGgyIHtcbiAgICAgICAgICB0b3A6IDMwcHg7IH0gfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmluc3RhLWhvdmVyIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciBoMy50ZXh0LWhpZGUge1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciBoMy5icmFuZC1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMzUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciBoMyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgaDUge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciBoNSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9IH1cbiAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciAuYnRuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveDpob3ZlciAuaW5zdGEtaG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3g6aG92ZXIgLmluc3RhLWhvdmVyLWdyYWRpZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICNlYzdhMWY7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLCAjZWM3YTFmIDAlLCAjZTM2MjdiIDUwJSwgI2EwNzY4ZSAxMDAlKTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveDpob3Zlcjo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG5cbi5jb2xvci12YXJpYW50IGxpIHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jb2xvci12YXJpYW50IGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gIC5jb2xvci12YXJpYW50IGxpLnNlbGVjdGVkIHtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNiksIDAgNXB4IDE1cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7IH1cblxuLmNvbG9yLXZhcmlhbnQgLmJnLWhhbGYtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNvbG9yLXZhcmlhbnQgLmJnLWhhbGYtbGlnaHQgLmhhbGYtYmxhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzIzMjM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLmNvbG9yLXZhcmlhbnQgLmJnLWJsdWUxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4ZDFmNDsgfVxuXG4uY29sb3ItdmFyaWFudCAuYmctbGlnaHQxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODsgfVxuXG4uY29sb3ItdmFyaWFudCAuYmctYmxhY2sxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuXG4ubGFiZWwtcHJpY2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiAzMHB4O1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbi5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgcGFkZGluZzogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94LnByb2R1Y3QtYm94MSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveC5iZy1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy92ZWdldGFibGUvcGVyY2VudGFnZS5qcGcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3gtNCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCB7XG4gICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGltZyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LWhlaWdodDogMTE1cHg7XG4gICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAucm91bmQtY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYW5pbWF0aW9uOiByb3VuZGVkIDEwcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgei1pbmRleDogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmJnLWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBhLnRleHQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBtaW4taGVpZ2h0OiAxMTZweDsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAudG9wLXdpc2hsaXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC50b3Atd2lzaGxpc3QucHJvZHVjdC1jb2xvciB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC50b3Atd2lzaGxpc3Qgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBoNSB7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIG1hcmdpbjogNXB4IGF1dG87IH1cblxuLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCB7XG4gIHBhZGRpbmc6IDIwcHggY2FsYygyMHB4ICsgKDQwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciB7XG4gICAgbWluLXdpZHRoOiA5MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIge1xuICAgICAgICBtaW4td2lkdGg6IDcwcHg7IH0gfVxuICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGEudGV4dC1jZW50ZXIge1xuICAgICAgbWluLWhlaWdodDogdW5zZXQ7IH1cbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBpbWcge1xuICAgICAgaGVpZ2h0OiAxMThweDtcbiAgICAgIG1heC13aWR0aDogOTBweDtcbiAgICAgIG1heC1oZWlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgIG1heC13aWR0aDogNzBweDsgfSB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH0gfVxuICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBoMyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94ICsgLnByb2R1Y3QtYm94IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCArIC5wcm9kdWN0LWJveCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0xLm9mZmVyLXdyYXAgLnByb2R1Y3QtYmFubmVyIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgaW1nIHtcbiAgbWF4LWhlaWdodDogdW5zZXQ7XG4gIG1heC13aWR0aDogdW5zZXQ7XG4gIGhlaWdodDogMzEwcHg7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5wcm9kdWN0LXN0eWxlLTEub2ZmZXItd3JhcCAucHJvZHVjdC1iYW5uZXIgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBpbWcge1xuICAgICAgaGVpZ2h0OiAxOThweDsgfSB9XG5cbi5wcm9kdWN0LXN0eWxlLTEuaW5zdGFncmFtLTIgLnByb2R1Y3QtYm94IHtcbiAgcGFkZGluZzogMDsgfVxuICAucHJvZHVjdC1zdHlsZS0xLmluc3RhZ3JhbS0yIC5wcm9kdWN0LWJveCAudG9wLXdpc2hsaXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMS5pbnN0YWdyYW0tMiAucHJvZHVjdC1ib3ggLnRvcC13aXNobGlzdCB7XG4gICAgICByaWdodDogdW5zZXQ7XG4gICAgICBsZWZ0OiAzMHB4OyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEuaW5zdGFncmFtLTIgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuc2hhcmUge1xuICAgIHRvcDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxlZnQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMS5pbnN0YWdyYW0tMiAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSB7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAzMHB4OyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEuaW5zdGFncmFtLTIgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciB7XG4gICAgcGFkZGluZzogY2FsYygzMHB4ICsgKDcwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLnByb2R1Y3Qtc3R5bGUtMS5pbnN0YWdyYW0tMiAucHJvZHVjdC1ib3ggLmluc3RhLWhvdmVyLmluc3RhLXNwYWNpbmcge1xuICAgICAgcGFkZGluZzogY2FsYygzNXB4ICsgKDcwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG5cbi5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuYmFjayB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDUge1xuICBtYXJnaW46IDA7IH1cblxuLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsXG4ucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnJhdGluZy1kZXRhaWxzLm1haW4tc2hvcCxcbiAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZS5tYWluLXNob3Age1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5tYWluLXNob3AsIFtkaXI9XCJydGxcIl1cbiAgICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlLm1haW4tc2hvcCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscyxcbiAgICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscywgW2Rpcj1cInJ0bFwiXVxuICAgICAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICAgIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2UgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIHVsIGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgdWwgbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEgc3ZnLFxuLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b24gc3ZnIHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEgc3ZnLFxuICAgIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgICB3aWR0aDogMTNweDtcbiAgICAgIGhlaWdodDogMTNweDsgfSB9XG5cbi5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuYmFjayB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAucHJvZHVjdC1zdHlsZS0yLnNsaWRlLTQge1xuICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG5cbi5wcm9kdWN0LXN0eWxlLTIuc2xpZGUtNCAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC03MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yLnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yLnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTVweDsgfSB9XG5cbi5wcm9kdWN0LXN0eWxlLTIuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAtNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMi5zbGlkZS00IC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAtMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9kdWN0LXN0eWxlLTIuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogLTVweDsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBjYXRlZ29yeSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBjYXRlZ29yeSBtaXhpbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmNhdGVnb3J5LXNlY3Rpb24ucmF0aW9fNDAgLmJnLXNpemU6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAyMCU7IH1cblxuLmNhdGVnb3J5LXdyYXAge1xuICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAuY2F0ZWdvcnktd3JhcCB7XG4gICAgICBoZWlnaHQ6IHVuc2V0OyB9IH1cbiAgLmNhdGVnb3J5LXdyYXAuY2F0ZWdvcnktY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIC5jYXRlZ29yeS13cmFwLmNhdGVnb3J5LXBhZGRpbmcge1xuICAgICAgcGFkZGluZzogMjNweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuY2F0ZWdvcnktd3JhcC5jYXRlZ29yeS1wYWRkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDE5cHg7IH0gfVxuICAuY2F0ZWdvcnktd3JhcC50aGVtZS1iZy1jb2xvciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmNhdGVnb3J5LXdyYXAudGhlbWUtYmctY29sb3IgLmxpZ2h0LXRleHQge1xuICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDk2cHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgb3BhY2l0eTogMC4wODtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS13cmFwLnRoZW1lLWJnLWNvbG9yIC5saWdodC10ZXh0IHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmNhdGVnb3J5LXdyYXAudGhlbWUtYmctY29sb3IgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgLmNhdGVnb3J5LXdyYXAudGhlbWUtYmctY29sb3IgaDIudG9wLXNwYWNpbmcge1xuICAgICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgLmNhdGVnb3J5LXdyYXAudGhlbWUtYmctY29sb3Igc3BhbiB7XG4gICAgICBsZXR0ZXItc3BhY2luZzogY2FsYygycHggKyAoOCAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDsgfVxuICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5jYXRlZ29yeS13cmFwIC5jYXRlZ29yeS1jb250ZW50IHNwYW4ge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5jYXRlZ29yeS13cmFwIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXRleHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIC5jYXRlZ29yeS13cmFwIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXRleHQgaDMge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgyNCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAgICAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQuY2F0ZWdvcnktdGV4dCBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTggLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0LTEgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNHB4OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0LTEgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNnB4OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0LmNhdGVnb3J5LXNwYWNpbmcgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0LmNhdGVnb3J5LXNwYWNpbmcgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7IH1cbiAgICAgIC5jYXRlZ29yeS13cmFwIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXRleHQudC10ZXh0IGgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIC5jYXRlZ29yeS13cmFwIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXRleHQudC10ZXh0IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudCBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjQgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmNhdGVnb3J5LXN0eWxlLTEge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwMDAwOyB9XG4gIC5jYXRlZ29yeS1zdHlsZS0xIGltZyB7XG4gICAgd2lkdGg6IDEwMHB4OyB9XG4gIC5jYXRlZ29yeS1zdHlsZS0xLnRoZW1lLWJnLWNvbG9yIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0xLnRoZW1lLWJnLWNvbG9yIC5saWdodC10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG9wYWNpdHk6IDAuMDg7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0xLnRoZW1lLWJnLWNvbG9yIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAuY2F0ZWdvcnktc3R5bGUtMS50aGVtZS1iZy1jb2xvciBzcGFuIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5jYXRlZ29yeS1zdHlsZS0xIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0xIC5jYXRlZ29yeS1jb250ZW50IGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0xIC5jYXRlZ29yeS1jb250ZW50IHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0xIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXNwYWNpbmcgaDMge1xuICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0xIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXNwYWNpbmcgc3BhbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBmb290ZXIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIGZvb3RlciBoMyB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuZm9vdGVyIC5tYWluLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZjBmM2Y4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2YwZjNmODtcbiAgcGFkZGluZzogODBweCAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICBmb290ZXIgLm1haW4tZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDcwcHggMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICBmb290ZXIgLm1haW4tZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGZvb3RlciAubWFpbi1mb290ZXIge1xuICAgICAgcGFkZGluZzogNTBweCAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgZm9vdGVyIC5tYWluLWZvb3RlciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDA7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICBmb290ZXIgLm1haW4tZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGZvb3RlciAubWFpbi1mb290ZXIgLnJvdyA+IGRpdjpmaXJzdC1jaGlsZCwgZm9vdGVyIC5tYWluLWZvb3RlciAucm93ID4gZGl2Omxhc3QtY2hpbGQge1xuICAgICAgb3JkZXI6IC0xOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgZm9vdGVyIC5tYWluLWZvb3RlciAucm93ID4gZGl2OmZpcnN0LWNoaWxkLCBmb290ZXIgLm1haW4tZm9vdGVyIC5yb3cgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICBvcmRlcjogdW5zZXQ7IH0gfVxuXG5mb290ZXIgLmZvb3Rlci1jb250YWN0IHtcbiAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWNvbnRhY3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XG4gIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmJyYW5kLWxvZ28gLnN2Zy1pY29uIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cbiAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmJyYW5kLWxvZ28gLnN2Zy1pY29uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5icmFuZC1sb2dvIC5zdmctaWNvbiAuZmlsbC1jb2xvciB7XG4gICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgIGZvb3RlciAuZm9vdGVyLWNvbnRhY3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLmZvb3Rlci1jb250YWN0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgZm9vdGVyIC5mb290ZXItY29udGFjdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWNvbnRhY3Qge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5mb290ZXItbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIFtkaXI9XCJydGxcIl0gZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyB7XG4gICAgcGFkZGluZzogMDsgfVxuICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaTpudGgtY2hpbGQoMSkgc3BhbiB7XG4gICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaTpudGgtY2hpbGQoMykgc3BhbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9XG4gICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaSBzcGFuIGIge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpIHNwYW4gYiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmNvbnRhY3QtbGlzdHMgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cblxuZm9vdGVyIC5mb290ZXItbGlua3MgLmZvb3Rlci10aXRsZSBoMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICBmb290ZXIgLmZvb3Rlci1saW5rcyAuZm9vdGVyLXRpdGxlIGgzOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLmZvb3Rlci1saW5rcyAuZm9vdGVyLXRpdGxlIGgzOjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICBmb290ZXIgLmZvb3Rlci1saW5rcyAuZm9vdGVyLXRpdGxlLmFjdGl2ZSBoMzo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG4gICAgdHJhbnNpdGlvbjogMC41czsgfSB9XG5cbmZvb3RlciAuZm9vdGVyLWxpbmtzIC5mb290ZXItY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuW2Rpcj1cInJ0bFwiXSBmb290ZXIgLmZvb3Rlci1saW5rcyB1bCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuZm9vdGVyIC5mb290ZXItbGlua3MgdWwgbGkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBmb290ZXIgLmZvb3Rlci1saW5rcyB1bCBsaSAuZm9udC1kYXJrOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7IH1cbiAgZm9vdGVyIC5mb290ZXItbGlua3MgdWwgbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgZm9vdGVyIC5mb290ZXItbGlua3MgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgZm9vdGVyIC5mb290ZXItbGlua3MgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDsgfSB9XG5cbmZvb3RlciAuZm9vdGVyLW5ld3NsZXR0ZXIgaDMge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuZm9vdGVyIC5mb290ZXItbmV3c2xldHRlciBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wM2VtOyB9XG5cbmZvb3RlciAuZm9vdGVyLW5ld3NsZXR0ZXIgLmlucHV0LWdyb3VwIGlucHV0IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7XG4gIGNvbG9yOiByZ2JhKDM1LCAzNSwgMzUsIDAuNjUpOyB9XG4gIGZvb3RlciAuZm9vdGVyLW5ld3NsZXR0ZXIgLmlucHV0LWdyb3VwIGlucHV0LmNvbG9yLTQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZTk7IH1cblxuZm9vdGVyIC5mb290ZXItbmV3c2xldHRlciAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQge1xuICBwYWRkaW5nOiA2cHggMTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuZm9vdGVyIC5mb290ZXItbnVtYmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBmb290ZXIgLmZvb3Rlci1udW1iZXIgLmZvb3Rlci1udW1iZXItaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYzZjc7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLmZvb3Rlci1udW1iZXIgLmZvb3Rlci1udW1iZXItaW1hZ2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1udW1iZXIgLmZvb3Rlci1udW1iZXItaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAyMHB4OyB9XG4gIGZvb3RlciAuZm9vdGVyLW51bWJlciAuZm9vdGVyLW51bWJlci1jb250YWluZXIgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZm9vdGVyIC5mb290ZXItZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICBmb290ZXIgLmZvb3Rlci1kZXRhaWxzIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5mb290ZXIgLnN1Yi1mb290ZXIge1xuICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBmb290ZXIgLnN1Yi1mb290ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgZm9vdGVyIC5zdWItZm9vdGVyIC5yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLnN1Yi1mb290ZXIgdWwge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgZm9vdGVyIC5zdWItZm9vdGVyIHVsIGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuc3ViLWZvb3RlciB1bCBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGZvb3RlciAuc3ViLWZvb3RlciB1bCBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLnN1Yi1mb290ZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH1cbiAgZm9vdGVyIC5zdWItZm9vdGVyIHAge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLnN1Yi1mb290ZXIgcCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBmb290ZXIgLnN1Yi1mb290ZXIgcCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuc3ViLWZvb3RlciBwIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLmZvb3Rlci1zbS1zcGFjZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIENvb2tpZSBzZWN0aW9uIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5jb29raWUtYmFyLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIG1heC13aWR0aDogMzY1cHg7XG4gIGJhY2tncm91bmQ6ICNlZmYyZjc7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDFweCA3cHggMTRweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogOTk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDdweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAuNXMgZWFzZTsgfVxuICAuY29va2llLWJhci1zZWN0aW9uLmNvb2tpZWJhci1sZWZ0LXNlY3Rpb24ge1xuICAgIHJpZ2h0OiB1bnNldDtcbiAgICBsZWZ0OiAyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY29va2llLWJhci1zZWN0aW9uLmNvb2tpZWJhci1sZWZ0LXNlY3Rpb24ge1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY29va2llLWJhci1zZWN0aW9uLmNvb2tpZWJhci1sZWZ0LXNlY3Rpb24ge1xuICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAxMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5jb29raWUtYmFyLXNlY3Rpb24uY29va2llYmFyLWxlZnQtc2VjdGlvbiB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luOiAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5jb29raWUtYmFyLXNlY3Rpb24uY29va2llYmFyLWxlZnQtc2VjdGlvbiB7XG4gICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICBbZGlyPVwicnRsXCJdIC5jb29raWUtYmFyLXNlY3Rpb24ge1xuICAgIHJpZ2h0OiB1bnNldDtcbiAgICBsZWZ0OiAyMHB4OyB9XG4gIC5jb29raWUtYmFyLXNlY3Rpb24uY2hhaXItY29va2llYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllOWU5OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jb29raWUtYmFyLXNlY3Rpb24ge1xuICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgcmlnaHQ6IDEwcHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNvb2tpZS1iYXItc2VjdGlvbiB7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogMTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC5jb29raWUtYmFyLXNlY3Rpb24ge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDEwcHg7XG4gICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA3cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNvb2tpZS1iYXItc2VjdGlvbiB7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogMDsgfSB9XG4gIC5jb29raWUtYmFyLXNlY3Rpb24gaW1nIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNDBweCArICg2MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuY29va2llLWJhci1zZWN0aW9uOjpzZWxlY3Rpb24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICNmY2JhN2Y7IH1cbiAgLmNvb2tpZS1iYXItc2VjdGlvbi5oaWRlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJvdHRvbTogLTM1MHB4OyB9XG5cbi5jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAuY29udGVudCBoMyB7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjIgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLmNvbnRlbnQgaDMge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAuY29udGVudCBwIHtcbiAgICBtYXJnaW46IGNhbGMoOHB4ICsgKDEyIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07IH1cbiAgLmNvbnRlbnQgLmJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBTdWJzcmliZSBjc3MgU3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc3Vic2NyaWJlLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmM2Y3OyB9XG4gIC5zdWJzY3JpYmUtc2VjdGlvbi1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjhmMDsgfVxuICAuc3Vic2NyaWJlLXNlY3Rpb24gLnN1YnNjcmliZS1kZXRhaWxzIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuc3Vic2NyaWJlLXNlY3Rpb24gLnN1YnNjcmliZS1kZXRhaWxzIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAgIC5zdWJzY3JpYmUtc2VjdGlvbiAuc3Vic2NyaWJlLWRldGFpbHMgaDYge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgLnN1YnNjcmliZS1zZWN0aW9uIC5zdWJzcmliZS1pbnB1dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5zdWJzY3JpYmUtc2VjdGlvbiAuc3Vic3JpYmUtaW5wdXQgLmZvcm0tY29udHJvbCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIG9mZmVyIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmRpc2NvdW50LWltYWdlLWRldGFpbHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmM2Y3O1xuICBwYWRkaW5nOiBjYWxjKDIycHggKyAoNTAgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygzMHB4ICsgKDEwMCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLmRpc2NvdW50LXNwYWNpbmcge1xuICAgIHBhZGRpbmc6IGNhbGMoNTBweCArICgxODAgLSA1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDgwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDgwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4OyB9IH1cbiAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC50aGVtZS1jaXJjbGUge1xuICAgICAgd2lkdGg6IDQ1MHB4O1xuICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICM3NTJhZGQ7XG4gICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAjNzUyYWRkIDAlLCAjNTcyZTkzIDEwMCUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnRoZW1lLWNpcmNsZSB7XG4gICAgICAgICAgd2lkdGg6IDQyMHB4O1xuICAgICAgICAgIGhlaWdodDogNDIwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC50aGVtZS1jaXJjbGUge1xuICAgICAgICAgIHdpZHRoOiAzNDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDM0MHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC50aGVtZS1jaXJjbGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0xIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTglO1xuICAgICAgbGVmdDogNTlweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM0ZGVnKTtcbiAgICAgIHdpZHRoOiA0MCU7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTEge1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IDEzMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0xIHtcbiAgICAgICAgICB0b3A6IDI0JTtcbiAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgIHdpZHRoOiA0MyU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMSB7XG4gICAgICAgICAgdG9wOiAzMyU7XG4gICAgICAgICAgbGVmdDogNTVweDtcbiAgICAgICAgICB3aWR0aDogNDAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYW5pbWF0aW9uOiBydW4tc2hvZXMgMTVzIGluZmluaXRlIGxpbmVhcjsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTEge1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogMCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0yIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIGxlZnQ6IDQzMHB4O1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTIge1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IDMwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTIge1xuICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgICBsZWZ0OiAzNzVweDtcbiAgICAgICAgICB3aWR0aDogMTglOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTIge1xuICAgICAgICAgIHRvcDogOTVweDtcbiAgICAgICAgICBsZWZ0OiAzMjVweDtcbiAgICAgICAgICB3aWR0aDogMTYlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY3VudC1kZXRhaWxzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMgLmhlYXJ0LWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNkZGY0O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMgLmhlYXJ0LWJ1dHRvbi0yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZGVlNyAhaW1wb3J0YW50OyB9XG4gICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY3VudC1kZXRhaWxzIC5oZWFydC1idXR0b24tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlMWU2OyB9XG4gICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY3VudC1kZXRhaWxzIC5oZWFydC1idXR0b24gLmZhLWhlYXJ0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2N1bnQtZGV0YWlscyBoNSB7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMgLmRlYWwtdGV4dCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICg0NSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJyYW5kIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJyYW5kLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IC03cHg7IH1cblxuLnppLTEge1xuICB6LWluZGV4OiAxOyB9XG5cbi5ibG9nLXByb2ZpbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNTVweDtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAuYmxvZy1wcm9maWxlIC5pbWFnZS1wcm9maWxlIGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgLnRleHQtd2VpZ2h0IGg2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxuICAgIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgaDYge1xuICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4uc2VhcmNoLXNlY3Rpb24gLnNlYXJjaC1iYXIgLmlucHV0LWdyb3VwIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiAyNnB4IGF1dG8gMTEwcHg7IH1cblxuLnNlYXJjaC1zZWN0aW9uIC5zZWFyY2gtYmFyIGJ1dHRvbiB7XG4gIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3JzKTsgfVxuICAuc2VhcmNoLXNlY3Rpb24gLnNlYXJjaC1iYXIgYnV0dG9uIGkge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zZWFyY2gtc2VjdGlvbiAuc2VhcmNoLWJhciBidXR0b24uc2VhcmNoLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTVweDsgfVxuXG4uc2VhcmNoLXNlY3Rpb24gLnNlYXJjaC1iYXIgaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNjZWQ0ZGE7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgU29jaWFsIG1lZGlhIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnNvY2lhbC1tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnNvY2lhbC1tZWRpYS5tZWRpYS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5zb2NpYWwtbWVkaWEgYSArIGEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc29jaWFsLW1lZGlhIGEgKyBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYyg4cHggKyAoMTUgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgIHdpZHRoOiBjYWxjKDIwcHggKyAoMzAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgaGVpZ2h0OiBjYWxjKDIwcHggKyAoMzAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24tYm94ICsgLnNvY2lhbC1tZWlkYSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYyg2cHggKyAoMTUgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveC5zb2NpYWwtY29sb3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveC5zb2NpYWwtY29sb3Ige1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfSB9XG4gICAgICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3guc29jaWFsLWNvbG9yIGkge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3guc29jaWFsLWNvbG9yIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24tYm94LnNvY2lhbC1jb2xvciBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmOyB9IH1cbiAgICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3ggaSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgTG9hZCBtb3JlIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmxvYWQtbW9yZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgd2lkdGg6IDI4MHB4OyB9XG4gIC5sb2FkLW1vcmUgYSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLnByb2R1Y3QtbG9hZC1tb3JlIC5jb2wtZ3JpZC1ib3gge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIExvZyBJbiBwYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmxvZ2luLXNlY3Rpb24ge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZjBmM2Y4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogY2FsYygzMHB4ICsgKDUwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJveCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiBjYWxjKDMwcHggKyAoNjAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxMHB4ICsgKDMwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB6LWluZGV4OiA1OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJveC5iYWNrIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICB6LWluZGV4OiAtMTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5ib3g6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmxvZ2luLXRpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoMHB4ICsgKDIgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubG9naW4tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogY2FsYygtMTBweCArICgtMTAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubG9naW4tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogY2FsYygtMTBweCArICgtMTAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubG9naW4tdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMjdweCArICgyOCAtIDI3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTBweCArICgwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5zb2NpYWwtbWVkaWEge1xuICAgICAgcGFkZGluZzogMTVweCBjYWxjKDEwcHggKyAoMjUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDE5OSwgMTk5LCAxOTcsIDAuNik7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYSBoNiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc29jaWFsLW1lZGlhIGg2IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc29jaWFsLW1lZGlhIGltZyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDglICsgKDE4IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc29jaWFsLW1lZGlhLmZiLW1lZGlhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQzNjA5YzsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYS5mYi1tZWRpYSBoNiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYS5nb29nbGUtbWVkaWEge1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYS5nb29nbGUtbWVkaWEgaDYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciBwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjQpO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDE3cHggKyAoMjMgLSAxNykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgcC5wYXNzLW9yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg0cHggKyAoMTIgLSA0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCxcbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQsXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHtcbiAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbixcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIC5zaGFwZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJveCB7XG4gICAgICB0cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsLFxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCxcbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGhlaWdodDogNzBweDsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0IHtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjgpO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbC5lbWFpbC1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgY29sb3I6IHJnYmEoMzMsIDM3LCA0MSwgMC44KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0OmJlZm9yZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQ6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzMsIDM3LCA0MSwgMC4xNSk7XG4gICAgICB6LWluZGV4OiAzOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3BpbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB6LWluZGV4OiA0O1xuICAgICAgd2lkdGg6IDA7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IC5zcGluIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICBjb2xvcjogIzc3Nzc3NzsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW46IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmJ1dHRvbi0xIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogY2FsYygxM3B4ICsgKDE4IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzMsIDM3LCA0MSwgMC4xKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uLmFjdGl2ZSBzcGFuIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24uYWN0aXZlIGkuZmEge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnBhc3MtZm9yZ290IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjQpO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW46IDEwcHggYXV0byAwOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnBhc3MtZm9yZ290OmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc2lnbi1jYXRlZ29yeSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuNCk7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxOCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNpZ24tY2F0ZWdvcnkgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDAgMTJweDsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5zaWduLWNhdGVnb3J5OjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xuICAgICAgICB6LWluZGV4OiAtMTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAub3ZlcmJveCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBwYWRkaW5nOiA2MHB4IDUwcHggNDBweCA1MHB4OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmxvZ2luLXRpdGxlLFxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5vdmVyYm94IC5idXR0b24sXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IHtcbiAgICAgICAgei1pbmRleDogMTExO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAub3ZlcmJveCAubG9naW4tdGl0bGUge1xuICAgICAgICB3aWR0aDogODAlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IGlucHV0LFxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IGxhYmVsIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5vdmVyYm94IC5tYXRlcmlhbC1idXR0b24sXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmFsdC0yIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5vdmVyYm94IC5tYXRlcmlhbC1idXR0b24gLnNoYXBlLFxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmFsdC0yIC5zaGFwZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbixcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIHtcbiAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDQwcHg7XG4gICAgICByaWdodDogLTcwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB6LWluZGV4OiAxMDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYWx0LTIgLnNoYXBlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YmVmb3JlLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYWx0LTIgLnNoYXBlOmJlZm9yZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YWZ0ZXIsXG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5hbHQtMiAuc2hhcGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmJlZm9yZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIC5zaGFwZTpiZWZvcmUge1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDRweDsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlcixcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB3aWR0aDogNHB4OyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24uYWN0aXZlLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYWx0LTIuYWN0aXZlIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSkgcm90YXRlKDBkZWcpOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIDQwNCBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnBhZ2Utbm90LWZvdW5kIC5wYWdlLWltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAucGFnZS1pbWFnZSBpbWcge1xuICAgIHdpZHRoOiA2MCU7IH1cblxuLnBhZ2Utbm90LWZvdW5kIC5wYWdlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgY2FsYygwcHggKyAoNTAgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgbWFyZ2luLXRvcDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAucGFnZS1jb250YWluZXIgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBmb250LXNpemU6IGNhbGMoMjVweCArICgzNSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAucGFnZS1jb250YWluZXIgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQ29udGFjdCBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1kZXRhaWxzIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4OyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1kZXRhaWxzIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6ICM3ODkwOWM7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgei1pbmRleDogNTsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwsXG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0LFxuICAgIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCB0ZXh0YXJlYSxcbiAgICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBoZWlnaHQ6IDcwcHg7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHRleHRhcmVhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCxcbiAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6IHJnYmEoMzMsIDM3LCA0MSwgMC44KTtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgY29sb3I6IHJnYmEoMzMsIDM3LCA0MSwgMC44KTtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsLmVtYWlsLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUsXG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3BpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzMywgMzcsIDQxLCAwLjEpO1xuICAgIHotaW5kZXg6IDM7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgei1pbmRleDogNDtcbiAgICB3aWR0aDogMDsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBjb2xvcjogIzc4OTA5YzsgfVxuXG4uY29udGFjdC1zZWN0aW9uIC5sb2NhdGlvbi1tYXAgaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygyMDBweCArICgzNDAgLSAyMDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBtYXJnaW4tYm90dG9tOiAtNnB4OyB9XG5cbi5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogY2FsYygyMXB4ICsgKDMwIC0gMjEpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjQgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIGg1IHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSB7XG4gICAgICB3aWR0aDogY2FsYyg4MCUgLSA4MHB4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY29udGFjdC1zZWN0aW9uIC5jb250YWN0LWRldGFpbHMgLmNvbnRhY3QtYm94IC5jb250YWN0LXRpdGxlIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7IH0gfVxuICAgICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSBoNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgIC5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1ib3ggLmNvbnRhY3QtdGl0bGUgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7IH1cbiAgICAgICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSBwICsgcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4OyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC1pY29uIHtcbiAgICAgIHdpZHRoOiBjYWxjKDM1cHggKyAoNDUgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC1pY29uIC5mZWF0aGVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1ib3ggLmNvbnRhY3QtaWNvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgRkFRIFBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc2VhcmNoLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygzMHB4ICsgKDUwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlYXJjaC10aXRsZSBoMSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDMwcHggKyAoNTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uZmFxLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAtMTYwcHg7IH1cbiAgLmZhcS1zZWN0aW9uIC5mYXEtY29udGFpbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg0MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDQwcHggMCByZ2JhKDMzLCAzNywgNDEsIDAuMSk7IH1cbiAgICAuZmFxLXNlY3Rpb24gLmZhcS1jb250YWluIC5mYXEtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgIC5mYXEtc2VjdGlvbiAuZmFxLWNvbnRhaW4gLmZhcS1pbWFnZSBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluOyB9XG4gICAgLmZhcS1zZWN0aW9uIC5mYXEtY29udGFpbiBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDE4cHggKyAoMjAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyMiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5mYXEtc2VjdGlvbiAuZmFxLWNvbnRhaW4gaDUge1xuICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gLTJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07IH1cblxuLmZhcS1kZXRhaWxzIC5mYXEtbGluay1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAzMHB4OyB9XG4gIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IHVsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZmFxLWRldGFpbHMgLmZhcS1saW5rLWJveCBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDE0NCwgMTc0LCAwLjIzKTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGE6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDA7IH0gfVxuICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGEgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE4IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmZhcS1kZXRhaWxzIC5mYXEtbGluay1ib3ggYSBoNSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuZmFxLWRldGFpbHMgLmZhcS1saW5rLWJveCBhIGg1IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGEgKyBhIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuLmZhcS1oZWFkaW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmZhcS1oZWFkaW5nICsgLmZhcS1oZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDMwcHggKyAoNDUgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmZhcS1oZWFkaW5nIC5mZWF0aGVyIHtcbiAgICB3aWR0aDogY2FsYygyMHB4ICsgKDIyIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5mYXEtaGVhZGluZyAuZmFxLW9wdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDBweCk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5mYXEtaGVhZGluZyAuZmFxLW9wdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5mYXEtaGVhZGluZyAuZmFxLW9wdGlvbiBoMyB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgICAuZmFxLWhlYWRpbmcgLmZhcS1vcHRpb24gaDYge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFJldmlldyBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnJldmlldy1zZWN0aW9uIC5yZXZpZXctYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoMzUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgzMywgMzcsIDQxLCAwLjA4KTtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJldmlldy1zZWN0aW9uIC5yZXZpZXctYm94OmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOyB9XG4gICAgLnJldmlldy1zZWN0aW9uIC5yZXZpZXctYm94OmhvdmVyIC5yZXZpZXctaW1hZ2UgLmZhLXF1b3RlLWxlZnQge1xuICAgICAgb3BhY2l0eTogMC4wNDsgfVxuICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveDpob3ZlciAucmV2aWV3LWltYWdlIC5mYS1xdW90ZS1yaWdodCB7XG4gICAgICBvcGFjaXR5OiAwLjA0OyB9XG4gIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMjdweDtcbiAgICAgIGxlZnQ6IC0xMnB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgZm9udC1zaXplOiAxNzBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTI3cHg7XG4gICAgICByaWdodDogLTEycHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgb3BhY2l0eTogMC4wMztcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTsgfVxuICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIC5yZXZpZXctcHJvZmlsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogY2FsYyg0MHB4ICsgKDUwIC0gNDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDQwcHggKyAoNTAgLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAucmV2aWV3LXByb2ZpbGUgaW1nIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAucmF0aW5nIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIC5yYXRpbmcgLmZhLXN0YXIge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuaW1hZ2UtbmFtZSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYyg1cHggKyAoMTAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNXB4ICsgKDEwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNHB4OyB9XG4gICAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuaW1hZ2UtbmFtZSBwIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LW5hbWUgcCB7XG4gICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBoeXBoZW5zOiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1uYW1lIHAgKyBwIHtcbiAgICAgIG1hcmdpbjogMjBweCAwOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFBvcnRmb2xpbyBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnBvcnRmb2xpbyAucGVyZWdyYXBoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tZGFya2dyZXkpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDkwJTtcbiAgcGFkZGluZzogMTVweCAwOyB9XG4gIC5wb3J0Zm9saW8gLnBlcmVncmFwaCBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuXG4ucG9ydGZvbGlvIC5idXR0b24gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucG9ydGZvbGlvIC5idXR0b24gdWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5wb3J0Zm9saW8gLmJ1dHRvbiB1bCBsaSBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDsgfVxuICAgIC5wb3J0Zm9saW8gLmJ1dHRvbiB1bCBsaS5idG4tc3VibWl0OmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAucG9ydGZvbGlvIC5idXR0b24gdWwgbGkuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAucG9ydGZvbGlvIC5idXR0b24gdWwgbGkuYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cblxuLnBvcnRmb2xpbyAucGFyZW50LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucG9ydGZvbGlvIC5wYXJlbnQtY29udGFpbmVyLXNpemUgLmltYWdlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAucG9ydGZvbGlvIC5wYXJlbnQtY29udGFpbmVyIC5pbWFnZXMge1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucG9ydGZvbGlvIC5wYXJlbnQtY29udGFpbmVyOmhvdmVyIC5vdmVybGF5LWNvbG9yIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5wb3J0Zm9saW8gLnBhcmVudC1jb250YWluZXI6aG92ZXIgLm92ZXJsYXktY29sb3IgLm92ZXJsYXktaWNvbiB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIC5wb3J0Zm9saW8gLnBhcmVudC1jb250YWluZXIgLm92ZXJsYXktY29sb3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgLnBvcnRmb2xpbyAucGFyZW50LWNvbnRhaW5lciAub3ZlcmxheS1jb2xvciAub3ZlcmxheS1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogMC44cyBlYXNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIC5wb3J0Zm9saW8gLnBhcmVudC1jb250YWluZXIgLm92ZXJsYXktY29sb3IgLm92ZXJsYXktaWNvbiBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI1IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnBvcnRmb2xpbyAucGFyZW50LWNvbnRhaW5lciAub3ZlcmxheS1jb2xvciAub3ZlcmxheS1pY29uIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBvcnRmb2xpbyAuY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBCbG9nIFBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDAsIDI0MywgMjQ4LCAwLjUpO1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIHtcbiAgICBtYXJnaW4tbGVmdDogNTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgzNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH0gfVxuICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyBoNSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE5IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIGg1IHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgaDIge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzYgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgaDIge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9IH1cbiAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTYgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogY2FsYygwcHggKyAoMSAtIDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxMHB4ICsgKDEyIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5ibG9nLXByb2ZpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAuYmxvZy1wcm9maWxlIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgLmJsb2ctcHJvZmlsZSAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTcwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMjdweDtcbiAgICAgICAgbGVmdDogLTEycHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05ZGVnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgb3BhY2l0eTogMC4wMztcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgLmJsb2ctcHJvZmlsZSAuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTI3cHg7XG4gICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7IH1cbiAgICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAuYmxvZy1wcm9maWxlIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUgaW1nIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAucmV2aWV3LW5hbWUgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5yZXZpZXctbmFtZSBwICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG5cbi5ibG9nLWNhdGVnb3JpdHkge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgLmJsb2ctY2F0ZWdvcml0eS5ib3gtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gIC5ibG9nLWNhdGVnb3JpdHkgLmJsb2ctaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuYmxvZy1jYXRlZ29yaXR5IC5ibG9nLWltZzphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IHtcbiAgICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gICAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IGg1IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2cHg7IH1cbiAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgICAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtcHJvZmlsZSBpbWcge1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoNiB7XG4gICAgICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAucmV2aWV3LW5hbWUgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IC5yZXZpZXctbmFtZSBwICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG4gIC5ibG9nLWNhdGVnb3JpdHk6aG92ZXIgLmJsb2ctaW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG5cbi5tYXNvbmFyeS1ibG9nLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAucGVyZWdyYXBoIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWRhcmtncmV5KTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogOTAlO1xuICAgIHBhZGRpbmc6IDE1cHggMDsgfVxuICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLnBlcmVncmFwaCBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzdlN2U3ZTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2U7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLmJ1dHRvbiB1bCBsaSBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLmJ1dHRvbiB1bCBsaS5idG4tc3VibWl0OmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpLmFjdGl2ZTphZnRlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyB7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgzMywgMzcsIDQxLCAwLjA4KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nLmJveC1zaGFkb3cge1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDM1LCAzNSwgMzUsIDAuMDgpOyB9XG4gICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuYmctc2l6ZSB7XG4gICAgICB3aWR0aDogMzAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuYmctc2l6ZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIGltZy5pbWFnZS1maXQge1xuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDM1LCAzNSwgMzUsIDAuMDUpOyB9XG4gICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5LXdpZHRoIHtcbiAgICAgICAgd2lkdGg6IDcwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5LnF1b3RlLWJvZHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAucXVvdGUtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygyNXB4ICsgKDQwIC0gMjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgLm1hc29uYXJ5LW5hbWUge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjQgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IGgyLnF1b3RlLWhlYWQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjFweDsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IHAge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlYWVhZWE7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlLmJveC1jZW50ZXIge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgaDMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHNwYW4ge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiByZXZlcnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoNiB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5yZXZpZXctbmFtZSBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgLnJldmlldy1uYW1lIHAgKyBwIHtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMDsgfVxuXG4ucG9wdWxhci1wb3N0IC5wb3B1bGFyLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDM1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG5cbi5wb3B1bGFyLXBvc3QgLnBvcHVsYXItaW1hZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSB7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7IH1cbiAgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItaW1hZ2UgLnBvcHVsYXItY29udGFpbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLWNvbnRhaW4gaDUge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTkgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLWNvbnRhaW4gcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLnBvcHVsYXItcG9zdCAucG9wdWxhci1kZXRhaWxzIHAge1xuICBsaW5lLWhlaWdodDogMS44OyB9XG5cbi5wb3B1bGFyLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgcGFkZGluZzogMTZweCAyMHB4OyB9XG4gIC5wb3B1bGFyLXRpdGxlLm1pbnVzLXNwYWNpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBvcHVsYXItdGl0bGUgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5sZWZ0LXNpZGUge1xuICBwb3NpdGlvbjogc3RpY2t5OyB9XG4gIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucmV2aWV3LWJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbjogMnB4IC0ycHggLTJweCAtMnB4OyB9XG4gICAgICAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnJldmlldy1ib3ggc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luOiAycHg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5yZXZpZXctYm94IHNwYW4gLmZlYXRoZXIge1xuICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnJldmlldy1ib3ggc3BhbiAuZmVhdGhlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSArIC5wb3B1bGFyLWltYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLW51bWJlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgd2lkdGg6IDU1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItaW1hZ2UgLnBvcHVsYXItbnVtYmVyIHtcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLW51bWJlciBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTRweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1udW1iZXIgaDQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLWNvbnRhaW4gaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjNweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWRldGFpbHMgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWRldGFpbHMgLnNvY2lhbC1tZWRpYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWRldGFpbHMgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gICAgICAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItZGV0YWlscyAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1kZXRhaWxzIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveCArIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1kZXRhaWxzIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveCBpIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3gge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94ICsgLmNhdGVnb3J5LWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3g6aG92ZXIge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveDpob3ZlciAuY2F0ZWdvcnktcHJvZHVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94OmhvdmVyIC5jYXRlZ29yeS1wcm9kdWN0IC5jYXRlLXNoYXBlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3g6aG92ZXIgLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtc2hhcGUgaSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveDpob3ZlciAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIGg1IHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94IC5jYXRlZ29yeS1wcm9kdWN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3ggLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtc2hhcGUge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuICAgICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3ggLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtc2hhcGUgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3ggLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtY29udGFpbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveCAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveCAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIGg1IHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94OmhvdmVyIC5jYXRlZ29yeS1wcm9kdWN0IC5jYXRlLXNoYXBlIGkge1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveDpob3ZlciAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIGg1IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLmxlZnQtc2lkZSAudGFnLXNlY3Rpb24gLmJ1dHRvbi10YWdzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAycHggMDsgfVxuXG4uYmxvZy1kZXRhaWxzIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJsb2ctZGV0YWlscyB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctaW1hZ2UtYm94IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctaW1hZ2UtYm94IC5ibG9nLXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3ggLmJsb2ctdGl0bGUge1xuICAgICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuICAgICAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3ggLmJsb2ctdGl0bGUgLmJsb2ctY29udGFpbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWltYWdlLWJveCAuYmxvZy10aXRsZSAuYmxvZy1jb250YWluIGg0IHtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctaW1hZ2UtYm94IC5ibG9nLXRpdGxlIC5ibG9nLWNvbnRhaW4gaDQge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3ggLmJsb2ctdGl0bGUgLmJsb2ctY29udGFpbiBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmJsb2ctZGV0YWlscyAuYmxvZy1kZXRhaWwtY29udGFpbiB7XG4gICAgcGFkZGluZzogMCAwIGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIHNwYW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNyAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtOHB4OyB9XG4gICAgLmJsb2ctZGV0YWlscyAuYmxvZy1kZXRhaWwtY29udGFpbiBwIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4gICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIHAgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIHAuZmlydC1sYXR0ZXI6OmZpcnN0LWxldHRlciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IDc1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIC5ibG9nLXByb2ZpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtcHJvZmlsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtcHJvZmlsZSBpbWcge1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoMyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxN3B4ICsgKDIwIC0gMTcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoNiB7XG4gICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIC5yZXZpZXctbmFtZSBwIHtcbiAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTQgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIC5yZXZpZXctbmFtZSBwICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG5cbi5sZWF2ZS1jb21tZW50cyAuZm9ybS1jb250cm9sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5sZWF2ZS1jb21tZW50cyAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5ibG9jay1zaGFkb3ctc3BhY2Uge1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4MHB4IC0gMTRweCk7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgUGFnaW5hdGlvbiBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5wYWdlLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rIHNwYW4gaSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAgIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSArIC5wYWdlLWl0ZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnBhZ2Utc2VjdGlvbiAucGFnaW5hdGlvbiAucGFnZS1pdGVtICsgLnBhZ2UtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLnBhZ2Utc2VjdGlvbiAucGFnaW5hdGlvbiAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHotaW5kZXg6IDA7IH1cbiAgICAucGFnZS1zZWN0aW9uIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAucGFnZS1zZWN0aW9uIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluazpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQ2FydCBQYWdlIFNjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi53aXNoLWxpc3Qtc2VjdGlvbi50YWJsZS1kYXNoYm9hcmQgdGhlYWQgdHIgdGgge1xuICBwYWRkaW5nOiAxNnB4IDEycHg7IH1cblxuLndpc2gtbGlzdC1zZWN0aW9uLnRhYmxlLWRhc2hib2FyZCB0Ym9keSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDE2cHg7IH1cblxuLndpc2gtbGlzdC1zZWN0aW9uIC5jb3VudC1kb3duIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZDogI2YwZjNmODtcbiAgcGFkZGluZzogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4O1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLndpc2gtbGlzdC1zZWN0aW9uIC5jb3VudC1kb3duIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLndpc2gtbGlzdC1zZWN0aW9uIC5jb3VudC1kb3duIGg1IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC53aXNoLWxpc3Qtc2VjdGlvbiAuY291bnQtZG93biBoNSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi53aXNoLWxpc3Qtc2VjdGlvbi5zaG9wcGluZy1idXR0b24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAud2lzaC1saXN0LXNlY3Rpb24uc2hvcHBpbmctYnV0dG9uIC5mYXMge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4udGFibGUgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci10b3A6IG5vbmU7IH1cblxuLmNhcnQtYnV0dG9ucyB7XG4gIHBhZGRpbmctdG9wOiAzNXB4OyB9XG4gIC5jYXJ0LWJ1dHRvbnMgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogNTlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzOHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAud2lzaGxpc3QtdGFibGUgdGhlYWQgdHIgdGg6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAud2lzaGxpc3QtdGFibGUgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAud2lzaGxpc3QtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLmNvbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4uY2FydC10YWJsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhcnQtdGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmYyZjcgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gIC5jYXJ0LXRhYmxlIHRib2R5IGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmYyZjcgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTRweCA4cHg7IH1cbiAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhLmljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWZmMmY3O1xuICAgICAgICBtYXJnaW46IDAgNXB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIGEuaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhLmljb246aG92ZXIgLmZhcyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhLmljb24gLmZhcyB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMjVweCArICgzNSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMjVweCArICgzNSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhIGltZyB7XG4gICAgICAgIGhlaWdodDogNzBweDsgfVxuICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIHAge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgcCBpbWcge1xuICAgICAgICBoZWlnaHQ6IDkwcHg7IH1cbiAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCAudGQtY29sb3Ige1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpOyB9XG4gICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgaDIge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLnF0eS1ib3gge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLnF0eS1ib3ggLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDZweDsgfVxuICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLmNvbCB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLmNvbCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG4gICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCAubW9iaWxlLWNhcnQtY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCAucXR5LWJveCAuaW5wdXQtZ3JvdXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIC5xdHktYm94IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxudGZvb3QgdHIgdGgge1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxudGZvb3QgdHIgdGQge1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDYzcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQxcHg7IH1cbiAgdGZvb3QgdHIgdGQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIHRmb290IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogODUlO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmxlZnQtc2lkZS1idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5sZWZ0LXNpZGUtYnV0dG9uIGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIC5sZWZ0LXNpZGUtYnV0dG9uIGEgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGVmdC1zaWRlLWJ1dHRvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGVmdC1zaWRlLWJ1dHRvbiAuc2hvcHBpbmctYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmNhcnQtc2VjdGlvbiAuY291bnQtZG93biB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgcGFkZGluZzogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc2VjdGlvbiAuY291bnQtZG93biB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNvdW50LWRvd24gaDUge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtc2VjdGlvbiAuY291bnQtZG93biBoNSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jYXJ0LXNlY3Rpb24gLmNvdW50LWRvd24gaDUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7IH0gfVxuXG4uY2FydC1zZWN0aW9uIC50YWJsZSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG4uY2FydC1zZWN0aW9uIC5jYXJ0LWJ1dHRvbnMge1xuICBwYWRkaW5nLXRvcDogMzVweDsgfVxuICAuY2FydC1zZWN0aW9uIC5jYXJ0LWJ1dHRvbnMgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogNTlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzOHB4OyB9XG5cbi5jYXJ0LXNlY3Rpb24gLmNhcnQtdGFibGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNhcnQtdGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWZmMmY3ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LXRhYmxlIHRoZWFkIHRoOm50aC1sYXN0LWNoaWxkKC1uICsgNCkge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhcnQtc2VjdGlvbiB0Ym9keSBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcnQtc2VjdGlvbiB0Ym9keSB0ci50YWJsZS1vcmRlciB0ZCB7XG4gIG1pbi13aWR0aDogMTUwcHg7IH1cblxuLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M3YzdjNSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMTc1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZDpudGgtbGFzdC1jaGlsZCgtbiArIDQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIGEge1xuICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIGEuaWNvbiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE2OSwgMTY5LCAxNjksIDAuNSk7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIGEgaW1nIHtcbiAgICAgIGhlaWdodDogODBweDsgfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIHAge1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIHAgaW1nIHtcbiAgICAgIGhlaWdodDogOTBweDsgfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC50ZC1jb2xvciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpOyB9XG4gIC5jYXJ0LXNlY3Rpb24gdGJvZHkgdHIgdGQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZCAubW9iaWxlLWNhcnQtY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IC5xdHktYm94IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgICAgLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZCAubW9iaWxlLWNhcnQtY29udGVudCAucXR5LWJveCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHg7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IC5jb2wge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IC5jb2wge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5xdHktYm94IC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5xdHktYm94IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH1cblxuLmNhcnQtc2VjdGlvbiB0Zm9vdCB0ciB0aCB7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uY2FydC1zZWN0aW9uIHRmb290IHRyIHRkIHtcbiAgcGFkZGluZy10b3A6IDM1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nLXJpZ2h0OiA2M3B4O1xuICBwYWRkaW5nLXJpZ2h0OiA0MXB4OyB9XG4gIC5jYXJ0LXNlY3Rpb24gdGZvb3QgdHIgdGQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jYXJ0LXNlY3Rpb24gdGZvb3QgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA4NSU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uY2FydC1zZWN0aW9uIC5sZWZ0LXNpZGUtYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBbZGlyPVwicnRsXCJdIC5jYXJ0LXNlY3Rpb24gLmxlZnQtc2lkZS1idXR0b24gYSBpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jYXJ0LXNlY3Rpb24gLmxlZnQtc2lkZS1idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc2VjdGlvbiAubGVmdC1zaWRlLWJ1dHRvbiAuc2hvcHBpbmctYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLnByb21vLXNlY3Rpb24gLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLnByb21vLXNlY3Rpb24gLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgcGFkZGluZzogMTJweCAyMHB4OyB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2hlY2tvdXQtYnV0dG9uIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIC5jaGVja291dC1idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2hlY2tvdXQtYnV0dG9uIGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2FydC1ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2FydC1ib3ggLmNhcnQtYm94LWRldGFpbHMgLnRvdGFsLWRldGFpbHMgc3BhbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIC5jYXJ0LWJveCAuY2FydC1ib3gtZGV0YWlscyAudG90YWwtZGV0YWlscyBzcGFuIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IC5jYXJ0LWJveC1kZXRhaWxzIC50b3RhbC1kZXRhaWxzIC50b3AtZGV0YWlscyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M3YzdjNTtcbiAgICAgIHBhZGRpbmc6IDIycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IC5jYXJ0LWJveC1kZXRhaWxzIC50b3RhbC1kZXRhaWxzIC50b3AtZGV0YWlscyBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IC5jYXJ0LWJveC1kZXRhaWxzIC50b3RhbC1kZXRhaWxzIC50b3AtZGV0YWlscyBoNiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIC5jYXJ0LWJveCAuY2FydC1ib3gtZGV0YWlscyAudG90YWwtZGV0YWlscyAuYm90dG9tLWRldGFpbHMgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIENoZWNrb3V0IFBhZ2UgU2NzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnlvdXItY2FydC1ib3gge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDEwcHg7IH1cbiAgLnlvdXItY2FydC1ib3ggLmxpc3QtZ3JvdXAgLmxoLWNvbmRlbnNlZCB7XG4gICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAubGgtY29uZGVuc2VkLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWZmMmY3O1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuMTI1KTsgfVxuICAgIC55b3VyLWNhcnQtYm94IC5saXN0LWdyb3VwIC5saC1jb25kZW5zZWQgaDYge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAubGgtY29uZGVuc2VkIHNtYWxsLFxuICAgIC55b3VyLWNhcnQtYm94IC5saXN0LWdyb3VwIC5saC1jb25kZW5zZWQgc3BhbixcbiAgICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAubGgtY29uZGVuc2VkIHN0cm9uZyB7XG4gICAgICBjb2xvcjogIzdlN2U3ZTsgfVxuICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAuY2FyZCB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC55b3VyLWNhcnQtYm94IC5uZXctYmFkZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDsgfVxuICAueW91ci1jYXJ0LWJveCAuY3VzdG9tZS1pbXB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiA2cHggMTJweDsgfVxuXG4uY3VzdG9tZS1mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmc6IDEycHggMjBweDsgfVxuXG4uY2hlY2tvdXQtbGFiZWwge1xuICBwYWRkaW5nLXRvcDogMnB4OyB9XG5cbi5jdXN0b21lLXJhZGlvLWJveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtcmFkaW8tYm94IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmN1c3RvbWUtcmFkaW8tYm94IC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5jdXN0b21lLXJhZGlvLWJveCAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmN1c3RvbWUtcmFkaW8tYm94IC5mb3JtLWNoZWNrLWlucHV0OmFjdGl2ZSB7XG4gICAgICBmaWx0ZXI6IG5vbmU7IH1cbiAgICAuY3VzdG9tZS1yYWRpby1ib3ggLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG5ociB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgT3JkZXIgU3VjY2VzcyBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5zdWNjZXNzLWljb24ge1xuICBwYWRkaW5nOiA3MHB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnN1Y2Nlc3MtaWNvbiB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH0gfVxuICAuc3VjY2Vzcy1pY29uIC5tYWluLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnN1Y2Nlc3MtaWNvbiAubWFpbi1jb250YWluZXIgLmNoZWNrLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIGFuaW1hdGlvbjogbW92ZXIgMXMgaW5maW5pdGUgYWx0ZXJuYXRlOyB9XG4gICAgICAuc3VjY2Vzcy1pY29uIC5tYWluLWNvbnRhaW5lciAuY2hlY2stY29udGFpbmVyIC5jaGVjay1iYWNrZ3JvdW5kIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gcmlnaHQsICMwMDgwMDAsICMwMDgwMDApO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg0KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhbmltYXRpb246IGFuaW1hdGVDb250YWluZXIgMC43NXMgZWFzZS1vdXQgZm9yd2FyZHMgMC43NXM7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAgIC5zdWNjZXNzLWljb24gLm1haW4tY29udGFpbmVyIC5jaGVjay1jb250YWluZXIgLmNoZWNrLWJhY2tncm91bmQgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDgwO1xuICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4MDtcbiAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGVDaGVjayAwLjM1cyBmb3J3YXJkcyAxLjI1cyBlYXNlLW91dDsgfVxuICAgICAgLnN1Y2Nlc3MtaWNvbiAubWFpbi1jb250YWluZXIgLmNoZWNrLWNvbnRhaW5lciAuY2hlY2stc2hhZG93IHtcbiAgICAgICAgYm90dG9tOiBjYWxjKC0xNSUgLSA1cHgpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjbG9zZXN0LXNpZGUsICM0OWRhODMsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgYW5pbWF0aW9uOiBhbmltYXRlU2hhZG93IDAuNzVzIGVhc2Utb3V0IGZvcndhcmRzIDAuNzVzOyB9XG4gIC5zdWNjZXNzLWljb24gLnN1Y2Nlc3MtY29udGFpbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnN1Y2Nlc3MtaWNvbiAuc3VjY2Vzcy1jb250YWluIGg0IHtcbiAgICAgIGNvbG9yOiBncmVlbjtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuc3VjY2Vzcy1pY29uIC5zdWNjZXNzLWNvbnRhaW4gaDUge1xuICAgICAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuc3VjY2Vzcy1pY29uIC5zdWNjZXNzLWNvbnRhaW4gaDYge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4OyB9XG5cbi5vcmRlci1sZWZ0LWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5vcmRlci1sZWZ0LWJveDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7IH1cbiAgLm9yZGVyLWxlZnQtYm94Om50aC1jaGlsZCg0KTo6YWZ0ZXIge1xuICAgIHdpZHRoOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5vcmRlci1sZWZ0LWJveDpudGgtY2hpbGQoMik6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAwOyB9IH1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7IH1cbiAgLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Ym9keSB0ciB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkOm50aC1sYXN0LWNoaWxkKC1uICsgNCkge1xuICAgICAgICBkaXNwbGF5OiByZXZlcnQgIWltcG9ydGFudDsgfSB9XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkOm50aC1jaGlsZCgxKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Ym9keSB0ciB0ZCBoNSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRmb290IHRyIHRkIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDEwcHggMTVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Zm9vdCB0ciB0ZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAub3JkZXItZGV0YWlscy10YWJsZSAudGFibGUgdGZvb3QgdHIgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItZGV0YWlscy10YWJsZSAudGFibGUgdGZvb3QgdHIgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Zm9vdCB0ciB0ZCBoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4ub3JkZXItZGV0YWlscy10YWJsZSAudGFibGUgdGZvb3QgdHIudGFibGUtb3JkZXI6bnRoLWNoaWxkKDMpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7IH1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3Mge1xuICBwYWRkaW5nOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3Mge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIGg0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3MgLm9yZGVyLWRldGFpbHMgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIC5wYXltZW50LW1vZGUgcCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIC5kZWxpdmVyeS1zZWMge1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3MgLmRlbGl2ZXJ5LXNlYyBoMyB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIC5kZWxpdmVyeS1zZWMgaDMgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItZGV0YWlscy10YWJsZSAub3JkZXItc3VjY2VzcyAuZGVsaXZlcnktc2VjIGgzIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3MgLmRlbGl2ZXJ5LXNlYyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PT09XG4gICBEYXNoYm9hcmQgU2NzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGFzaC1maWx0ZXIge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5jdXN0b21lLW5hdi10YWJzIHtcbiAgcGFkZGluZzogMjBweDtcbiAgY29sb3I6IGJsYWNrO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZWZmMmY3OyB9XG4gIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgei1pbmRleDogOTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IC0zMDBweDtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5jdXN0b21lLW5hdi10YWJzLnNob3cge1xuICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY3VzdG9tZS1uYXYtdGFicyAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluayBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbmsgaSB7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgbGVmdDogMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluazpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY3VzdG9tZS1uYXYtdGFicyAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAgICAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgbGVmdDogMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFnZS10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLnBhZ2UtdGl0bGUgYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLmJveC1oZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYm94LWhlYWQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7IH1cbiAgLmJveC1oZWFkIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYm94LWhlYWQgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLmRhc2hib2FyZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gIC5kYXNoYm9hcmQgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjJweCArICgzMiAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5kYXNoYm9hcmQgLnBhZ2UtdGl0bGUgaDIge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzggLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmRhc2hib2FyZCBhZGRyZXNzIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAuZGFzaGJvYXJkIC53ZWxjb21lLW1zZyBwIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmRhc2hib2FyZCAud2VsY29tZS1tc2cgaDYge1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDsgfVxuICAgIC5kYXNoYm9hcmQgLndlbGNvbWUtbXNnIGg2IHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5kYXNoYm9hcmQgLmJveC1hY2NvdW50IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDI1cHggKyAoNDUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuZGFzaGJvYXJkIC5ib3gtYWNjb3VudCAuYm94LWNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgIC5kYXNoYm9hcmQgLmJveC1hY2NvdW50IC5ib3gtY29udGVudCBoNCB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwOyB9XG4gIC5kYXNoYm9hcmQgLmFkZHJlc3MtYm94IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDVweCArICgyMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5kYXNoYm9hcmQgLmJveC10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICBwYWRkaW5nOiBjYWxjKDRweCArICg4IC0gNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDsgfVxuICAgIC5kYXNoYm9hcmQgLmJveC10aXRsZSBoMyB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5kYXNoYm9hcmQgaDYsXG4gIC5kYXNoYm9hcmQgcCB7XG4gICAgbWFyZ2luOiA2cHggMDtcbiAgICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IC0yMHB4O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgb3BhY2l0eTogMC4wNDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWltYWdlIHtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgcmlnaHQ6IHVuc2V0OyB9XG4gIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94OmhvdmVyIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94OmhvdmVyIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWNvbnRhaW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IC5vcmRlci1ib3gtY29udGFpbiBpbWcge1xuICAgICAgd2lkdGg6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IC5vcmRlci1ib3gtY29udGFpbiA+IGRpdiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IC5vcmRlci1ib3gtY29udGFpbiA+IGRpdiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWNvbnRhaW4gPiBkaXYgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7IH1cblxuLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAycHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQge1xuICAgIHdpZHRoOiAyMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfSB9XG4gICAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQgaDYge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5kYXNoYm9hcmQtcHJvZmlsZSAuZGFzaC1wcm9maWxlIGxpIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuZGFzaGJvYXJkLXByb2ZpbGUgLmRhc2gtcHJvZmlsZSBsaSBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IC5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtOyB9XG5cbi5kYXNoYm9hcmQtc2VjdXJpdHkgLnNlY3VyaXR5LWRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4OyB9XG4gIC5kYXNoYm9hcmQtc2VjdXJpdHkgLnNlY3VyaXR5LWRldGFpbHMgaDUgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IC5zZWN1cml0eS1kZXRhaWxzLTEge1xuICBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwLjI4KTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi5zdWNjZXNzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuLmRhbmdlci1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICAuZGFuZ2VyLWJ1dHRvbi5kYW5nZXItY2VudGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZGFuZ2VyLWJ1dHRvbi5kYW5nZXItY2VudGVyIC5mZWF0aGVyIHtcbiAgICAgIHN0cm9rZTogI2ZmZjsgfVxuXG4uc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgcGFkZGluZzogY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscy5zaG93IHtcbiAgICBib3gtc2hhZG93OiAwIDBweCAxMHB4IHJnYmEoMzMsIDM3LCA0MSwgMC4yKTsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5zYXZlLW5hbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscyAuc2F2ZS1uYW1lIGg1IHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5zYXZlLWRldGFpbHMtYm94IC5zYXZlLWRldGFpbHMgLnNhdmUtcG9zaXRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscyAuc2F2ZS1wb3NpdGlvbiB7XG4gICAgICByaWdodDogdW5zZXQ7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscyAuc2F2ZS1wb3NpdGlvbiBoNiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5zYXZlLWFkZHJlc3MgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbjogMCAwIGNhbGMoMnB4ICsgKDUgLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5tb2JpbGUgcC5tb2JpbGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDZweDsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IC01cHg7IH1cbiAgICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5idXR0b24gYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG5cbi5wYXltZW50LWNhcmQtZGV0YWlsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wYXltZW50LWNhcmQtZGV0YWlsOmhvdmVyIC5lZGl0LWNhcmQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLnBheW1lbnQtY2FyZC1kZXRhaWwuYWRkLWNhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbC5hZGQtY2FyZCAuY2FyZC1kZXRhaWxzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEzMHB4O1xuICAgICAgYmFja2dyb3VuZDogI2QyZDJkMjtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLnBheW1lbnQtY2FyZC1kZXRhaWwuYWRkLWNhcmQgLmNhcmQtZGV0YWlscyBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRiNzdhMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDFweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAycHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCkgM3B4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIDRweCksIC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC0yNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgNzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDkwJSk7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzLmNhcmQtdmlzYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3ODc2OyB9XG4gICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscy5kYWJpdC1jYXJkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4NmI4Y2Y7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5jYXJkLW51bWJlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5jYXJkLW51bWJlciBoNCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscyAudmFsaWQtZGV0YWlsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC52YWxpZC1kZXRhaWwgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC52YWxpZC1kZXRhaWwgLnRpdGxlIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscyAudmFsaWQtZGV0YWlsIC5kYXRlIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLnZhbGlkLWRldGFpbCAuZGF0ZSBoMyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC52YWxpZC1kZXRhaWwgLnByaW1hcnkge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLnZhbGlkLWRldGFpbCAucHJpbWFyeSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLnZhbGlkLWRldGFpbCAucHJpbWFyeSBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5uYW1lLWRldGFpbCB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDEwcHggKyAoMjUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscyAubmFtZS1kZXRhaWwgLm5hbWUge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5uYW1lLWRldGFpbCAubmFtZSBoNSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5uYW1lLWRldGFpbCAuY2FyZC1pbWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLm5hbWUtZGV0YWlsIC5jYXJkLWltZyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAucGF5bWVudC1jYXJkLWRldGFpbCAuZWRpdC1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wYXltZW50LWNhcmQtZGV0YWlsIC5lZGl0LWNhcmQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuZWRpdC1jYXJkIGEge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZWRpdC1jYXJkLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmVkaXQtY2FyZC1tb2JpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgIC5lZGl0LWNhcmQtbW9iaWxlIGEge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBPcmRlciBUcmFja2luZyBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udHJhY2tlci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnRyYWNrZXItdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfSB9XG5cbi50cmFja2VyLW51bWJlciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4OyB9XG4gIC50cmFja2VyLW51bWJlciBwIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLnByb2d0cmNrciB7XG4gIG1hcmdpbjogNDBweCAwIDE1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9ndHJja3Ige1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDMwcHggMDsgfSB9XG4gIC5wcm9ndHJja3IgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5wcm9ndHJja3IgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfSB9XG4gICAgLnByb2d0cmNrciBsaSBoNSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnByb2d0cmNrciBsaSBoNSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZ3RyY2tyIGxpIGg1IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgICAucHJvZ3RyY2tyIGxpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnByb2d0cmNrciBsaTpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbGVmdDogLTJweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5wcm9ndHJja3IgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMzJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDsgfSB9XG4gICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbyB7XG4gICAgICBjb2xvcjogI2MwYzBjMDtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5wcm9ndHJja3IgbGkucHJvZ3RyY2tyLXRvZG8ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2MwYzBjMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbyB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICNjMGMwYzA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gICAgICAucHJvZ3RyY2tyIGxpLnByb2d0cmNrci10b2RvOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTExXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgY29sb3I6ICNjMGMwYzA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yZW07IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbzpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZ3RyY2tyIGxpLnByb2d0cmNrci10b2RvOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICByaWdodDogLTE3cHg7IH0gfVxuICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbyBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4OyB9XG4gICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZSB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHNlbGYtc3RhcnQ7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJlbTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyLjJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5wcm9ndHJja3IgbGkucHJvZ3RyY2tyLWRvbmUgaDYge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLm9yZGVyLWxlZnQtaW1hZ2Uge1xuICBtYXJnaW4tdG9wOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5vcmRlci1sZWZ0LWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLm9yZGVyLWxlZnQtaW1hZ2UgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICB3aWR0aDogMzAlOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItbGVmdC1pbWFnZSAudHJhY2tpbmctcHJvZHVjdC1pbWFnZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLm9yZGVyLWxlZnQtaW1hZ2UgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLm9yZGVyLWxlZnQtaW1hZ2UgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAub3JkZXItbGVmdC1pbWFnZSAudHJhY2tpbmctcHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH0gfVxuICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoNXB4ICsgKDEwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtOyB9XG4gICAgICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiBwIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiBwIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5vcmRlci1sZWZ0LWltYWdlIC5vcmRlci1pbWFnZS1jb250YWluIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDEycHggKyAoMjMgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLm9yZGVyLWxlZnQtaW1hZ2UgLm9yZGVyLWltYWdlLWNvbnRhaW4gaDQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9IH1cblxuLm9yZGVyLWFkZHJlc3Mge1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC5vcmRlci1hZGRyZXNzIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAub3JkZXItYWRkcmVzcyBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLm9yZGVyLWFkZHJlc3MgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLm9yZGVyLWFkZHJlc3MgbGkgLmxlZnQtYm94IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWluLXdpZHRoOiAyMTBweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDsgfVxuICAgICAgLm9yZGVyLWFkZHJlc3MgbGkgLmxlZnQtYm94IGg2IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAub3JkZXItYWRkcmVzcyBsaSAubGVmdC1ib3ggaDYge1xuICAgICAgICAgICAgY29sb3I6ICM3ZTdlN2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xM3B4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfSB9XG4gICAgLm9yZGVyLWFkZHJlc3MgbGkgLnJpZ2h0LWJveCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICB3aWR0aDogMTgwcHg7IH1cbiAgICAgIC5vcmRlci1hZGRyZXNzIGxpIC5yaWdodC1ib3ggcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnRyYWNrZXItdGFibGUge1xuICBwYWRkaW5nLXRvcDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC50cmFja2VyLXRhYmxlIC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC50cmFja2VyLXRhYmxlIC50YWJsZSB0aGVhZCB0aCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZjJmNyAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAudHJhY2tlci10YWJsZSAudGFibGUgdGhlYWQgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC50cmFja2VyLXRhYmxlIC50YWJsZSB0Ym9keSBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBjb2xvcjogIzc3Nzc3NztcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZjJmNyAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IGNhbGMoMHB4ICsgKDE2IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg2cHggKyAoMTYgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1pbi13aWR0aDogMTc1cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIC50cmFja2VyLXRhYmxlIC50YWJsZSB0Ym9keSB0ciB0ZCBwIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDsgfVxuICAgICAgLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkOm50aC1jaGlsZChvZGQpIHAge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIGEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgRWxlbWVudCBQYWdlIGNzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmhlYWRlci1pbWFnZS1jb250YWluIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5oZWFkZXItaW1hZ2UtY29udGFpbiAuYmFja2dyb3VuZC1jb250YWluIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4uY3VzdG9tZS1jYXJkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTsgfVxuICAuY3VzdG9tZS1jYXJkIC5jYXJkLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAuY3VzdG9tZS1jYXJkIC5jYXJkLWJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgQWJvdXQgUGFnZSBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuYWJvdXQtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYWJvdXQtZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmFib3V0LWRldGFpbHMgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gIC5hYm91dC1kZXRhaWxzIGgzIHtcbiAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNSAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMS41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5hYm91dC1kZXRhaWxzIGgzIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgLmFib3V0LWRldGFpbHMgcCB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG5cbi5jdXN0b21lLWFjY29yZGlvbiB7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyMjEsIDIyMSwgMjIxLCAwLjUpO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjIxLCAyMjEsIDIyMSwgMC41KTsgfVxuICAgICAgLmN1c3RvbWUtYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNjN2M3YzU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b246YWZ0ZXIge1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpIHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbiAgICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IHAge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIycHg7IH1cbiAgLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciBpbWcge1xuICAgIHdpZHRoOiA0MCU7IH1cbiAgLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciAudGVhbS1kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciAudGVhbS1kZXRhaWxzIHAgc3BhbiB7XG4gICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudGVhbS1jb250YWluLnRlYW0tY2VudGVyIC50ZWFtLWRldGFpbHMgLm1vcmVsZXNzLWJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi50ZWFtLWRldGFpbHMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnRlYW0tZGV0YWlscyBoMyB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLnRlYW0tZGV0YWlscyBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gICAgLnRlYW0tZGV0YWlscyBwIHNwYW4ge1xuICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50ZWFtLWRldGFpbHMgLm1vcmVsZXNzLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi50ZWFtLWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjIwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi50ZWFtLWxlYWRlci1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuXG4ubGVhZGVyLWNvbnRhaW46aG92ZXIgLmxlYWRlci1pbWFnZSAuc29jaWFsLW1lZGlhIHtcbiAgYm90dG9tOiAwO1xuICBvcGFjaXR5OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sZWFkZXItY29udGFpbjpob3ZlciAubGVhZGVyLWltYWdlIC5zb2NpYWwtbWVkaWEge1xuICAgICAgdG9wOiAwO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cblxuLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubGVhZGVyLWNvbnRhaW4gLmxlYWRlci1pbWFnZSAuc29jaWFsLW1lZGlhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTYwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMiAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjI2LCA0NiwgODMsIDAuOCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5sZWFkZXItY29udGFpbiAubGVhZGVyLWltYWdlIC5zb2NpYWwtbWVkaWEge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjYsIDQ2LCA4MywgMC42KTsgfSB9XG4gICAgLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2UgLnNvY2lhbC1tZWRpYSBsaSB7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgd2lkdGg6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGhlaWdodDogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAgIC5sZWFkZXItY29udGFpbiAubGVhZGVyLWltYWdlIC5zb2NpYWwtbWVkaWEgbGk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuNyk7IH1cbiAgICAgICAgLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2UgLnNvY2lhbC1tZWRpYSBsaTpob3ZlciBhIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2UgLnNvY2lhbC1tZWRpYSBsaSBhIHtcbiAgICAgICAgY29sb3I6ICNkZGQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjAgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmxlYWRlci1jb250YWluIC5sZWFkZXItY29udGFpbiB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBwYWRkaW5nOiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sZWFkZXItY29udGFpbiAubGVhZGVyLWNvbnRhaW4gaDMge1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgLmxlYWRlci1jb250YWluIC5sZWFkZXItY29udGFpbiBoNiB7XG4gICAgbWFyZ2luOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDAgMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS42cHg7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWNvbnRhaW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggI2RkZDtcbiAgcGFkZGluZzogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWNvbnRhaW4ge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1jb250YWluIC50ZXh0aW1vbmlhbC1pbWFnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWNvbnRhaW4gLnRleHRpbW9uaWFsLWltYWdlIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M3YzdjNTtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIHtcbiAgbWFyZ2luOiAxNXB4IGF1dG8gMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAudGVzdGltb25pYWwtc2VjdGlvbiAudGVzdGltb25pYWwtZGV0YWlscyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAudGVzdGltb25pYWwtc2VjdGlvbiAudGVzdGltb25pYWwtZGV0YWlscyAuZGV0YWlscy1pbWFnZXMgaSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyBpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWRldGFpbHMgLmRldGFpbHMtaW1hZ2VzIGkuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWRldGFpbHMgLmRldGFpbHMtaW1hZ2VzIGkuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAgIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyBpLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyBpLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAgIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlczo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWRldGFpbHMgaDUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIERhcmsgYW5kIFJUTCBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50aGVtZS1zZXR0aW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMzsgfVxuICBbZGlyPVwicnRsXCJdIC50aGVtZS1zZXR0aW5nIHVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC50aGVtZS1zZXR0aW5nIHVsIGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAudGhlbWUtc2V0dGluZyB1bCBsaSBidXR0b24ge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIC50aGVtZS1zZXR0aW5nIHVsIGxpIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLnRoZW1lLXNldHRpbmcgdWwgbGkuY29sb3ItcGlja2VyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLnRoZW1lLXNldHRpbmcgdWwgbGkuY29sb3ItcGlja2VyIGlucHV0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogeC1sYXJnZTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBEYXJrIGFuZCBSVEwgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGVtby1jb250YWluIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMzMsIDM3LCA0MSwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRlbW8tY29udGFpbiAuZGVtby1pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5kZW1vLWNvbnRhaW4gLmRlbW8taW1hZ2U6aG92ZXIgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0xMDAlICsgNTAwcHgpKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1cyBlYXNlLWluLW91dDsgfVxuICAgIC5kZW1vLWNvbnRhaW4gLmRlbW8taW1hZ2UgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDVzIGVhc2UtaW4tb3V0O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZGVtby1jb250YWluIC5kZW1vLWltYWdlIGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjAwMDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgU2hvcCBwYWdlIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5jdXN0b21lLW5hdi10YWJzIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAxMHB4OyB9XG5cbi5jYXRlZ29yeS1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8qIHdpZHRoICovXG4gIC8qIFRyYWNrICovXG4gIC8qIEhhbmRsZSAqL1xuICAvKiBIYW5kbGUgb24gaG92ZXIgKi8gfVxuICAuY2F0ZWdvcnktc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDVweDsgfVxuICAuY2F0ZWdvcnktc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsgfVxuICAuY2F0ZWdvcnktc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogI2I1YmVjNztcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgLmNhdGVnb3J5LXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODsgfVxuXG4uY3VzdG9tZS1mb3JtLWNoZWNrIHtcbiAgbWluLWhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLWZvcm0tY2hlY2sge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmN1c3RvbWUtZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGhlaWdodDogMTdweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjN2M3YzUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmN1c3RvbWUtZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2NoZWNrLnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7IH1cbiAgICAuY3VzdG9tZS1mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5jdXN0b21lLWZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc2lkZWJhci1pbWFnZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLnNpZGViYXItaW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4uY2F0ZWdvcnktb3B0aW9uIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiA0MHB4O1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5jYXRlZ29yeS1vcHRpb24ge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTMyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDc7XG4gICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogLTMyMHB4OyB9IH1cbiAgLmNhdGVnb3J5LW9wdGlvbi5zaG93IHtcbiAgICBsZWZ0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktb3B0aW9uLnNob3cge1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMDsgfVxuICAuY2F0ZWdvcnktb3B0aW9uIC5idXR0b24tY2xvc2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmJ1dHRvbi1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgICAuY2F0ZWdvcnktb3B0aW9uIC5idXR0b24tY2xvc2UgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuYnV0dG9uLWNsb3NlIGJ1dHRvbiAuZmVhdGhlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktb3B0aW9uIC5idXR0b24tY2xvc2UgYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1yYXRpbmcgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmZvcm0tY2hlY2sge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktcmF0aW5nIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktcmF0aW5nIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5mb3JtLWNoZWNrIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1yYXRpbmcgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmZvcm0tY2hlY2sgcCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1yYXRpbmcgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmZvcm0tY2hlY2sgLnJhdGluZyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCArIC5yYXRpbmctbGlzdCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCAuZmEtc3RhciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjYzNjM2MzOyB9XG4gICAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCAuZmEtc3Rhci50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmEyMDI7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXByaWNlIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIG1hcmdpbjogM3B4IDFweDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1wcmljZSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5maWx0ZXItYWNjb3JkaW9uIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAycHggNnB4OyB9XG4gICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmZpbHRlci1hY2NvcmRpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDMpIGEgLmxhYmVsLXRhZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5maWx0ZXItYWNjb3JkaW9uIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5sYWJlbC10YWcge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uZmlsdGVyLWFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAubGFiZWwtdGFnIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICM3ZjdmN2Y7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmZpbHRlci1hY2NvcmRpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmxhYmVsLXRhZyAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4OyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG1hcmdpbjogLTVweDsgfVxuICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWNvbG9yIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDVweDsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjAwMDA7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgYSBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgYSBpLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDIpIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFiMWEwOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTpudGgtY2hpbGQoMykgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMGFjODQ7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWNvbG9yIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpOm50aC1jaGlsZCg0KSBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOWY0MzsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDUpIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODM5NWE3OyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTpudGgtY2hpbGQoNikgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWIxYTA7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWNvbG9yIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpOm50aC1jaGlsZCg3KSBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEwYWM4NDsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDgpIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY5ZjQzOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTpudGgtY2hpbGQoOSkgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4Mzk1YTc7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7IH0gfVxuICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gKyAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAxcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggNXB4O1xuICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTo6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1idXR0b246Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL21pbnVzLnN2Zyk7XG4gICAgICAgIGZpbHRlcjogaW52ZXJ0KDEpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWJ1dHRvbjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvcGx1cy5zdmcpO1xuICAgICAgICBmaWx0ZXI6IGludmVydCgxKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLmNhdGVnb3J5LW9wdGlvbi0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uLTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9IH1cbiAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24tMSAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gKyAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMTRweCA4cHg7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24tMSAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICAgLmNhdGVnb3J5LW9wdGlvbi0xIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAzcHg7IH1cbiAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMnB4OyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDsgfVxuICAgICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5maWx0ZXItYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuZmlsdGVyLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5maWx0ZXItYnV0dG9uIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZmlsdGVyLWJ1dHRvbiAuZmVhdGhlciB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuZmlsdGVyLWJ1dHRvbiAuZmVhdGhlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmZpbHRlci1idXR0b24gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNweDsgfVxuXG4uaGlkZS1idXR0b24gYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaGlkZS1idXR0b24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5oaWRlLWJ1dHRvbiBidXR0b24gLmZlYXRoZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7IH1cblxuLmhpZGUtYnV0dG9uIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLTNweDsgfVxuXG4uc2hvcnQtbmFtZSB7XG4gIG1hcmdpbjogLTVweDsgfVxuICAuc2hvcnQtbmFtZSAubGFiZWwtdGFnIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4OyB9XG4gICAgLnNob3J0LW5hbWUgLmxhYmVsLXRhZyBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIC5zaG9ydC1uYW1lIC5sYWJlbC10YWcgLmJ0bi1jbG9zZSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5zaG9ydC1uYW1lIC5sYWJlbC10YWcgLmJ0bi1jbG9zZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4uc2VsZWN0LWZlYXR1cmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgY29sb3I6ICM4ZjgzOTc7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5zZWxlY3QtZmVhdHVyZWQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2VmZjJmNztcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHRyYW5zcGFyZW50OyB9XG4gIC5zZWxlY3QtZmVhdHVyZWQgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgICBjb2xvcjogIzhmODM5NztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMi4yNXJlbSAwLjM3NXJlbSAwLjc1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zZWxlY3QtZmVhdHVyZWQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zZWxlY3QtZmVhdHVyZWQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICByaWdodDogMTRweDsgfVxuICAuc2VsZWN0LWZlYXR1cmVkIC5kcm9wZG93bi1tZW51IHtcbiAgICBtaW4td2lkdGg6IDEwMCU7IH1cbiAgICAuc2VsZWN0LWZlYXR1cmVkIC5kcm9wZG93bi1tZW51IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5jdXN0b21lLW9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuY3VzdG9tZS1vZmZjYW52YXMge1xuICAgIHdpZHRoOiAzMDBweDsgfSB9XG5cbi5jdXN0b21lLW9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5jdXN0b21lLW9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlciBoNSB7XG4gICAgbWFyZ2luLXRvcDogLTVweDsgfVxuXG4uY3VzdG9tZS1vZmZjYW52YXMgLm9mZmNhbnZhcy1ib2R5IC5jYXRlZ29yeS1zcGFjaW5nIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmN1c3RvbWUtb2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keSAuY2F0ZWdvcnktc3BhY2luZyAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gKyAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5jdXN0b21lLW9mZmNhbnZhcyAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiB1bnNldDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiB1bnNldDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY3VzdG9tZS1vZmZjYW52YXMgLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAwOyB9IH1cblxuLmltYWdlLXNsaWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pbWFnZS1zbGlkZXIgLmltYWdlLXByb2R1Y3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgIC5pbWFnZS1zbGlkZXIgLmltYWdlLXByb2R1Y3QgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAuaW1hZ2Utc2xpZGVyIC5pbWFnZS1jb250YWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAuaW1hZ2Utc2xpZGVyIC5pbWFnZS1jb250YWluIGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmZpbHRlci1uYW1lIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5maWx0ZXItbmFtZSBoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IGxhcmdlOyB9XG5cbi5maWx0ZXItaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmZpbHRlci1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmNhdGVnb3J5LWZpbHRlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jYXRlZ29yeS1saXN0IHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhdGVnb3J5LWxpc3QgLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMzLCAyMzMsIDIzMywgMC41KTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmNhdGVnb3J5LWxpc3QgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNhdGVnb3J5LWxpc3QgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2F0ZWdvcnktbGlzdCAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWxpc3QgKyAuZHJvcGRvd24tbGlzdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5maWx0ZXItc2hvdy1idXR0b24ge1xuICBwYWRkaW5nOiAxNXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5maWx0ZXItc2hvdy1idXR0b24gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmZpbHRlci1zaG93LWJ1dHRvbiBhIC5mZWF0aGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHdpZHRoOiAyMHB4OyB9XG4gICAgLmZpbHRlci1zaG93LWJ1dHRvbiBhIGg1IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmZpbHRlci1zaG93LWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4udG9wLWZpbHRlci1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBsZWZ0OiAtMzAwcHg7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICB6LWluZGV4OiA1O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA1cHggMCByZ2JhKDc3LCA3NywgNzcsIDAuMjgpO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfSB9XG4gIC50b3AtZmlsdGVyLXNlY3Rpb24uc2hvdyB7XG4gICAgbGVmdDogMDsgfVxuICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAuYmFjay1idG4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmJhY2stYnRuIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW46IDAgMTVweDsgfVxuICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZTpudGgtY2hpbGQoNykge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGU6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlICsgLm9uY2xpY2stdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0OyB9IH1cbiAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgaDYge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgaDYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH0gfVxuICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMC4yOyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IH0gfVxuICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZTpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XG4gICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA1cHggOXB4IDNweCByZ2JhKDMzLCAzNywgNDEsIDAuMTMpO1xuICAgICAgICB6LWluZGV4OiAyOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgLm9uY2xpY2stY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgLm9uY2xpY2stY29udGVudCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZSAub25jbGljay1jb250ZW50IGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIC5vbmNsaWNrLWNvbnRlbnQgLmN1c3RvbS1jb250cm9sIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgIG1pbi13aWR0aDogNjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5maWx0ZXItdGl0bGUgaDYge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAuZmlsdGVyLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZTpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XG4gICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5maWx0ZXItdGl0bGUgLm9uY2xpY2stY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICB0b3A6IDM0cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggOXB4IDNweCByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuODEpOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSAub25jbGljay1jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfSB9XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSAub25jbGljay1jb250ZW50IC5jdXN0b20tY29udHJvbCAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlLnNob3cgLm9uY2xpY2stY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZS5zaG93IC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnRvcC1maWx0ZXItc2VjdGlvbiAuZm9ybS1jaGVjayB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gLmZvcm0tY2hlY2sgKyAuZm9ybS1jaGVjayB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmNhdGVnb3J5LWltYWdlIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmNhdGVnb3J5LWltYWdlIC5lbGVjLWltYWdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS1pbWFnZSAuZWxlYy1pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4gICAgLmNhdGVnb3J5LWltYWdlIC5lbGVjLWltYWdlIGltZyB7XG4gICAgICB3aWR0aDogOTAlOyB9XG4gIC5jYXRlZ29yeS1pbWFnZSAuY2F0ZWdvcnktY29udGFpbiB7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1MHB4KTsgfVxuICAgIC5jYXRlZ29yeS1pbWFnZSAuY2F0ZWdvcnktY29udGFpbiBoMyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4OyB9XG4gICAgLmNhdGVnb3J5LWltYWdlIC5jYXRlZ29yeS1jb250YWluIC5wcm9kdWN0LWxpc3Qge1xuICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxNXB4O1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cbiAgICAgIC5jYXRlZ29yeS1pbWFnZSAuY2F0ZWdvcnktY29udGFpbiAucHJvZHVjdC1saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuY2F0ZWdvcnktaW1hZ2UgLmNhdGVnb3J5LWNvbnRhaW4gLnByb2R1Y3QtbGlzdCBsaSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uZmxpdGVyLW1lbnUgYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDVweCBjYWxjKDEycHggKyAoMjAgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIG1hcmdpbjogNXB4OyB9XG4gIC5mbGl0ZXItbWVudSBidXR0b24gLmZlYXRoZXIge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIHN0cm9rZS13aWR0aDogMXB4OyB9XG5cbi5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHAge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0LXZpZXcucHJvZHVjdC1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5iYWNrIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnJhdGluZy1kZXRhaWxzLFxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsXG4gICAgICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsIFtkaXI9XCJydGxcIl1cbiAgICAgICAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICAgIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSBoMyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9IH1cbiAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAuY2FydC13cmFwIHVsIGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgdWwgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEgc3ZnLFxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSBzdmcsXG4gICAgICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICBoZWlnaHQ6IDEzcHg7IH0gfVxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuYmFjayB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAubGlzdC12aWV3LnNsaWRlLTQge1xuICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG5cbi5saXN0LXZpZXcuc2xpZGUtNCAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC03MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAubGlzdC12aWV3LnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAubGlzdC12aWV3LnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTVweDsgfSB9XG5cbi5saXN0LXZpZXcuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAtNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLmxpc3Qtdmlldy5zbGlkZS00IC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAtMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5saXN0LXZpZXcuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogLTVweDsgfSB9XG5cbi5jb2xsZWN0aW9uLWdyaWQtdmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmNvbGxlY3Rpb24tZ3JpZC12aWV3IHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmNvbGxlY3Rpb24tZ3JpZC12aWV3IHVsIGxpIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzIxMjUyOTsgfVxuICAgICAgLmNvbGxlY3Rpb24tZ3JpZC12aWV3IHVsIGxpIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDVweDsgfVxuICAgICAgICAuY29sbGVjdGlvbi1ncmlkLXZpZXcgdWwgbGkgYnV0dG9uIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA1MCU7IH1cblxuLnJhbmdlLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDA7IH1cbiAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtbGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy1tYXgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2M3YzU7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtaGFuZGxlIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAycHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy10byB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtdG86YmVmb3JlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy1mcm9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy1mcm9tOmJlZm9yZSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmJhbm5lci1kZWF0aWxzIC5iYW5uZXItY29udGFpbiBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTUgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLm1vc3QtcG9wdWxhciB7XG4gIG1hcmdpbjogY2FsYygzNXB4ICsgKDUwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDAgMDsgfVxuICAubW9zdC1wb3B1bGFyIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1vc3QtcG9wdWxhciAudGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VmZjJmNzsgfVxuICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2LFxuICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0zNXB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgcmlnaHQ6IDUwcHg7IH1cbiAgICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAubW9zdC1wb3B1bGFyIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgLm1vc3QtcG9wdWxhciAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4ubGlzdC1zdHlsZSA+IGRpdiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICAgIHBhZGRpbmc6IDE1cHggY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9IH1cbiAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW46IGNhbGMoOHB4ICsgKDE1IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMCAwIDA7IH1cbiAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBzcGFuIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5yYXRpbmctc2hvcCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMucmF0aW5nLXNob3Age1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5yYXRpbmctc2hvcCBoNSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5yYXRpbmctc2hvcCAuc2l6ZS1ib3gge1xuICAgICAgICAgIG1hcmdpbjogNXB4IDA7IH1cbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscyAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQubGlzdGluZy1zaG9wIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQubGlzdGluZy1zaG9wIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLm1haW4tcHJpY2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5tYWluLXByaWNlIGgzIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgMCA4cHg7IH1cbiAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLm1haW4tcHJpY2UgcCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiA4cHggMDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94ICFpbXBvcnRhbnQ7XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtOyB9XG4gICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5tYWluLXByaWNlIGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTNweCArICgyMCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNSAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5tYWluLXByaWNlIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmZpbHRlci1vcHRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZmlsdGVyLW9wdGlvbnMgLnNlbGVjdC1vcHRpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuZmlsdGVyLW9wdGlvbnMgLnNlbGVjdC1vcHRpb25zID4gZGl2ICsgZGl2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5maWx0ZXItb3B0aW9ucyAuc2VsZWN0LW9wdGlvbnMgPiBkaXYgKyBkaXYge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XG4gIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmZpbHRlci1vcHRpb25zIC5ncmlkLW9wdGlvbnMge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLmZpbHRlci1vcHRpb25zIC5ncmlkLW9wdGlvbnMuYXZ0aXZlIGxpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLmZpbHRlci1vcHRpb25zIC5ncmlkLW9wdGlvbnMuYXZ0aXZlIGxpIGEgaW1nIHtcbiAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7IH1cbiAgICAuZmlsdGVyLW9wdGlvbnMgLmdyaWQtb3B0aW9ucyBsaSB7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAgIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIGxpLmFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuZmlsdGVyLW9wdGlvbnMgLmdyaWQtb3B0aW9ucyBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XG5cbi5jYXRlZ29yeS1zaWRlIHtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2U7IH1cbiAgLmNhdGVnb3J5LXNpZGUuc2hvdyB7XG4gICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gICAgd2lkdGg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfSB9XG4gICAgLmNhdGVnb3J5LXNpZGUgLmNhdGVnb3J5LW9wdGlvbiAuY3VzdG9tZS1mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmNhdGVnb3J5LXNpZGUgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDsgfSB9XG4gICAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSArIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgUHJvZHVjdCBQYWdlIENTUyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5wcm8tcG9wdWxhciAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLXByZXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkICFpbXBvcnRhbnQ7IH1cblxuLnByby1wb3B1bGFyIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQgIWltcG9ydGFudDsgfVxuXG4ucmF0aW5nIC5mYS1zdGFyIHtcbiAgcGFkZGluZy1yaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2MzYzNjMyAhaW1wb3J0YW50OyB9XG4gIC5yYXRpbmcgLmZhLXN0YXIudGhlbWUtY29sb3Ige1xuICAgIGNvbG9yOiAjZmZhMjAyICFpbXBvcnRhbnQ7IH1cblxuLnByb2R1Y3QtdGl0bGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gIC5wcm9kdWN0LXRpdGxlLTIge1xuICAgIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgLnByb2R1Y3QtdGl0bGUuaHVycnktdGl0bGUge1xuICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIC5wcm9kdWN0LXRpdGxlLmh1cnJ5LXRpdGxlIHNwYW4ge1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLnNoaXBwaW5nLWluZm8ge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gIC5zaGlwcGluZy1pbmZvIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICM3Nzc3Nzc7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG5cbi5wcm9kdWN0LWljb24ge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wcm9kdWN0LWljb24ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAucHJvZHVjdC1pY29uIC5wcm9kdWN0LXNvY2lhbCB7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1zb2NpYWwgbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfVxuICAgICAgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1zb2NpYWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1zb2NpYWwgbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH1cbiAgICAgIC5wcm9kdWN0LWljb24gLnByb2R1Y3Qtc29jaWFsIGxpIGEge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5hZGRlZC1ub3RpZmljYXRpb24ge1xuICB3aWR0aDogMTgwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAtMTAwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nOiA2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMXB4ICNjZWQ0ZGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLmFkZGVkLW5vdGlmaWNhdGlvbiB7XG4gICAgICByaWdodDogMTJweDsgfSB9XG4gIC5hZGRlZC1ub3RpZmljYXRpb24uc2hvdyB7XG4gICAgdG9wOiAzMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLmFkZGVkLW5vdGlmaWNhdGlvbiBpbWcge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmFkZGVkLW5vdGlmaWNhdGlvbiBoMyB7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uYWRkZWZmZWN0LXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2RkZDsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24uY2FydE1vdmUgLmVycm9yLW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbi5jYXJ0TW92ZSAuc2l6ZS1ib3gge1xuICAgIGFuaW1hdGlvbjogYnV0dG9ucy1zaGFrZSAwLjgycyBjdWJpYy1iZXppZXIoMC4zNiwgMC4wNywgMC4xOSwgMC45NykgYm90aDsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24gLnNpemUtYm94IHtcbiAgICBtYXJnaW46IDEwcHggMDsgfVxuICAgIC5hZGRlZmZlY3Qtc2VjdGlvbiAuc2l6ZS1ib3ggdWwgbGkge1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5hZGRlZmZlY3Qtc2VjdGlvbiAuc2l6ZS1ib3ggdWwgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICAuYWRkZWZmZWN0LXNlY3Rpb24gLnNpemUtYm94IHVsIGxpLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMTI1Mjk7IH1cbiAgICAgICAgLmFkZGVmZmVjdC1zZWN0aW9uIC5zaXplLWJveCB1bCBsaS5hY3RpdmUgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5hZGRlZmZlY3Qtc2VjdGlvbiAuc2l6ZS1ib3ggdWwgbGkgYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAuZXJyb3ItbWVzc2FnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkZGVmZmVjdC1zZWN0aW9uIC5xdHktYm94IC5pbnB1dC1ncm91cCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAucXR5LWJveCAuaW5wdXQtZ3JvdXAgc3BhbiBidXR0b24ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAucXR5LWJveCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGZsZXg6IHVuc2V0OyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAucXR5LWJveCAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICAgIHBhZGRpbmc6IDEycHggMTBweDsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24gLnF0eS1ib3ggLmlucHV0LWdyb3VwIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7IH1cbiAgICAuYWRkZWZmZWN0LXNlY3Rpb24gLnF0eS1ib3ggLmlucHV0LWdyb3VwIGJ1dHRvbiBpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24gLnF0eS1ib3ggLmlucHV0LWdyb3VwIC5pY29uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5wcm9kdWN0LWJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnByb2R1Y3QtYnV0dG9ucyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9kdWN0LWJ1dHRvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEycHggNDVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtYnV0dG9ucyAuYnRuLXNvbGlkICsgLmJ0bi1zb2xpZCB7XG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCArIC5idG4tc29saWQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAucHJvZHVjdC1idXR0b25zIC5idG4tc29saWQge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnByb2R1Y3QtYnV0dG9ucyAuYnRuLXNvbGlkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnByb2R1Y3QtYnV0dG9ucyAuYnRuLXNvbGlkIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucHJvZHVjdC1idXR0b25zIC5idG4tc29saWQuYnRuLWFuaW1hdGlvbiBpIHtcbiAgICAgIGFuaW1hdGlvbjogcmluZyA0cyAwLjdzIGVhc2UtaW4tb3V0IGluZmluaXRlOyB9XG5cbi5zaGlwcGluZy1vcmRlciBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnNoaXBwaW5nLW9yZGVyIGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnNoaXBwaW5nLW9yZGVyIGxpIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOHB4OyB9XG5cbi5wcm9kdWN0LWNvdW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgcGFkZGluZzogMTBweCAxMnB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnByb2R1Y3QtY291bnQgaW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtY291bnQgaW1nIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7IH1cbiAgLnByb2R1Y3QtY291bnQgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IC00cHg7IH1cbiAgICAucHJvZHVjdC1jb3VudCB1bCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICAgIC5wcm9kdWN0LWNvdW50IHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtY291bnQgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTRweDsgfVxuXG4ucmF0aW5nLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5yYXRpbmctc2VjdGlvbiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5yYXRpbmctc2VjdGlvbiBoNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnJhdGluZy1zZWN0aW9uIGg2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5jb2xvci12YXJpYW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuY29sb3ItdmFyaWFudCBsaSB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsgfVxuICAgIC5jb2xvci12YXJpYW50IGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuY29sb3ItdmFyaWFudCBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZTdlNjsgfVxuICAgIC5jb2xvci12YXJpYW50IGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmZiZmJmOyB9XG4gICAgLmNvbG9yLXZhcmlhbnQgbGkuYWN0aXZlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmNvbG9yLXZhcmlhbnQgbGkuYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MCU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3BhY2l0eTogMC44OyB9XG5cbi5wcmljZS1kZXRhaWwge1xuICBmb250LXNpemU6IDI2cHg7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46IDE1cHggMDsgfVxuICAucHJpY2UtZGV0YWlsIGRlbCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjYWFhYWFhO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLnByaWNlLWRldGFpbCBzcGFuIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcmljZS1kZXRhaWwgc3BhbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi5sYWJlbC1zZWN0aW9uIHtcbiAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgLmxhYmVsLXNlY3Rpb24gLmJhZGdlLWdyZXktY29sb3Ige1xuICAgIHBhZGRpbmc6IDZweCAxMXB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiAjOTI5MjkyOyB9XG4gIC5sYWJlbC1zZWN0aW9uIC5sYWJlbC10ZXh0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmxhYmVsLXNlY3Rpb24gLmxhYmVsLXRleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG5cbi5zZXJ2aWNlLWFjY29yaW9uIHtcbiAgcGFkZGluZzogMjhweDsgfVxuICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDsgfVxuICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7IH0gfVxuICAgICAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuc2VydmljZS13cmFwIC5zZXJ2aWNlLWNvbnRlbnQgaDMge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuc2VydmljZS13cmFwIC5zZXJ2aWNlLWNvbnRlbnQgaDMge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDsgfSB9XG4gICAgICAgIC5zZXJ2aWNlLWFjY29yaW9uIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtY29udGVudCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuc2VydmljZS13cmFwIC5zZXJ2aWNlLWNvbnRlbnQgc3BhbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbi5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSAuaW1hZ2Utc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY29sb3ItaW1hZ2UgLmltYWdlLXNlbGVjdCBoNSB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNvbG9yLWltYWdlIC5pbWFnZS1zZWxlY3QgLmltYWdlLXNlY3Rpb24ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSAuaW1hZ2Utc2VsZWN0IC5pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNvbG9yLWltYWdlIC5pbWFnZS1zZWxlY3QgLmltYWdlLXNlY3Rpb24gbGkge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgICAgLmRldGFpbHMtaXRlbXMgLmNvbG9yLWltYWdlIC5pbWFnZS1zZWxlY3QgLmltYWdlLXNlY3Rpb24gbGkuYWN0aXZlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA2cHggcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG5cbi5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmRldGFpbHMtaW1hZ2UgLnByb2R1Y3QtaW1hZ2UtdGFnIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuZGV0YWlscy1pbWFnZSAucHJvZHVjdC1pbWFnZS10YWcgLmxhYmVsLXRhZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDEwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggMCAwIDUwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyAubGFiZWwtdGFnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuZGV0YWlscy1pbWFnZSAucHJvZHVjdC1pbWFnZS10YWcgLmxhYmVsLXRhZyBoNiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyAubGFiZWwtdGFnIGg2IGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBtYXJnaW46IC0xcHggMnB4IDAgMDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyAubGFiZWwtdGFnIGg2IHNwYW4ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7IH1cblxuLmRldGFpbHMtaXRlbXMgLmRlZ3JlZS1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5kZWdyZWUtc2VjdGlvbiAuaW1hZ2UtMzYwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmRlZ3JlZS1zZWN0aW9uIC5pbWFnZS0zNjAudmlkZW9wbGF5LWJveCB7XG4gICAgICBmaWx0ZXI6IGNvbnRyYXN0KDAuNSk7IH1cblxuLmRldGFpbHMtaXRlbXMgLmRldGFpbHMtaW1hZ2Utb3B0aW9uIC5wbGF5LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmRldGFpbHMtaW1hZ2Utb3B0aW9uIC5wbGF5LWljb24gLmZhLXBsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzIxMjUyOTtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cblxuLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmRldGFpbHMtaW1hZ2UtY29uY2VwdCB7XG4gICAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5kZXRhaWxzLWltYWdlLWNvbmNlcHQgaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI1IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucmF0aW5nLW51bWJlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5yYXRpbmctbnVtYmVyIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnJhdGluZy1udW1iZXIgaDUgLmZlYXRoZXIge1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgZmlsbDogI2ZmYTIwMjtcbiAgICAgICAgY29sb3I6ICNmZmEyMDI7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnJhdGluZy1udW1iZXIgaDUgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnByaWNlLXJhdGluZyB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucHJpY2UtcmF0aW5nIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucHJpY2UtcmF0aW5nIGxpOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGNvbG9yOiAjNjk2OTY5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wcmljZS1yYXRpbmcgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgY29sb3I6ICMwMDljMDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuYm9yZGVyLXByb2R1Y3Qge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNkZGQ7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5ib3JkZXItcHJvZHVjdCBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmJvcmRlci1wcm9kdWN0IGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAudGltZXItNSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDEwcHggLTVweCAwOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAudGltZXItNSBoNSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDVweDsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnRpbWVyLTUgLnRpbWVyMSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnRpbWVyLTUgLnRpbWVyMSAuY291bnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC50aW1lci01IC50aW1lcjEgLmNvdW50ZXIgaDUge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wcm9ncmVzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB3aWR0aDogNzAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucHJvZ3Jlc3Mge1xuICAgICAgICB3aWR0aDogNzUlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnByb2dyZXNzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmltYWdlLWJ1bmRsZSAuYnVuZGxlLWltZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuaW1hZ2UtYnVuZGxlIC5idW5kbGUtaW1nIC5pbWFnZS1jb250YWluIGEgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTE1cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMzMsIDM3LCA0MSwgMC4xNSk7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5pbWFnZS1idW5kbGUgLmJ1bmRsZS1pbWcgc3BhbiB7XG4gICAgICBtYXJnaW46IDAgMTVweDsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5pbWFnZS1idW5kbGUgLmNoZWNrYm94LWRldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5pbWFnZS1idW5kbGUgLmNoZWNrYm94LWRldGFpbHMgLmNoZWNrYm94LWxpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLXNpemUgaDUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1zaXplIC5jaG9vc2Utc2l6ZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogLTEwcHg7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1zaXplIC5jaG9vc2Utc2l6ZSBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1zaXplIC5jaG9vc2Utc2l6ZSBsaSBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtc2l6ZSAuY2hvb3NlLXNpemUgbGk6aG92ZXIgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLXRpbWVyIHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC10aW1lciBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLXRpbWVyICN0aW1lLWRhdGUge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtY29sb3IgLmRyb3Bkb3duLWNvbG9yIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogOXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLWNvbG9yIC5kcm9wZG93bi1jb2xvcjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuZHJvcGRvd24tY29sb3Igb3B0aW9uIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLWNvbG9yIC5jb3VudGVyLTEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuY291bnRlci0xIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIG1hcmdpbjogMHB4IDVweDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuY291bnRlci0xIHNwYW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjk2OTY5O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuY291bnRlci0xIHNwYW4gLmZlYXRoZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMi41cHg7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtY29sb3IgLndpc2UtbGlzdCB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtY29sb3IgLndpc2UtbGlzdDpob3ZlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLWNvbG9yIC53aXNlLWxpc3Q6aG92ZXIgLmZlYXRoZXIge1xuICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAzcHg7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAud2lzZS1saXN0IC5mZWF0aGVyIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2FydC1idXR0b24gLmJ1eS1jYXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNiAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTYwMCAtIDMyMCkpKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNhcnQtYnV0dG9uIC5idXktY2FydCAuZmEtc2hvcHBpbmctY2FydCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNhcnQtYnV0dG9uIC5hZGQtY2FydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTYwMCAtIDMyMCkpKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjAwIC0gMzIwKSkpO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jYXJ0LWJ1dHRvbiAuYWRkLWNhcnQgaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wYXktb3B0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucGF5LW9wdGlvbiBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wYXktb3B0aW9uIGxpIGEge1xuICAgICAgICBjb2xvcjogZ3JheTtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuc2hhcmUtaXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5zaGFyZS1pdCBidXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICNjNmM5Y2M7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnNoYXJlLWl0IGJ1dHRvbiAuZmVhdGhlciB7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnNoYXJlLWl0IC5zaGFyZS1vcHRpb24ge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuc2hhcmUtaXQgLnNoYXJlLW9wdGlvbiBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5zaGFyZS1pdCAuc2hhcmUtb3B0aW9uIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnNoYXJlLWl0IC5zaGFyZS1vcHRpb24gbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzY5Njk2OTsgfVxuXG4uY2xvdGgtcmV2aWV3IC5uYXYtdGFicyB7XG4gIGZsZXgtd3JhcDogaW5pdGlhbDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTsgfVxuICAuY2xvdGgtcmV2aWV3IC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jbG90aC1yZXZpZXcgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNsb3RoLXJldmlldyAubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAuY2xvdGgtcmV2aWV3IC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5jbG90aC1yZXZpZXcgLnNoaXBwaW5nLWNoYXJ0IHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZzogMDsgfVxuICAuY2xvdGgtcmV2aWV3IC5zaGlwcGluZy1jaGFydCBsaSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgY29sb3I6ICM2OTY5Njk7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2xvdGgtcmV2aWV3IC50YWItcGFuZSB7XG4gIHBhZGRpbmctdG9wOiAzMHB4OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yZXZpZXctYm94IGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJldmlldy1ib3ggLmN1c3RvbWVyLXNlY3Rpb24ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDIwNiwgMjEyLCAyMTgsIDAuNyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmV2aWV3LWJveCAuY3VzdG9tZXItc2VjdGlvbiAuY3VzdG9tZXItcHJvZmlsZSB7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI4cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJldmlldy1ib3ggLmN1c3RvbWVyLXNlY3Rpb24gLmN1c3RvbWVyLXByb2ZpbGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4OyB9XG4gICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJldmlldy1ib3ggLmN1c3RvbWVyLXNlY3Rpb24gLmN1c3RvbWVyLWRldGFpbHMge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpOyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmV2aWV3LWJveCAuY3VzdG9tZXItc2VjdGlvbiAuY3VzdG9tZXItZGV0YWlscyBoNSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yZXZpZXctYm94IC5jdXN0b21lci1zZWN0aW9uIC5jdXN0b21lci1kZXRhaWxzIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmV2aWV3LWJveCAuY3VzdG9tZXItc2VjdGlvbiAuY3VzdG9tZXItZGV0YWlscyAuZGF0ZS1jdXN0byB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmF0aW5nIC5yYXRpbmctcHJvZ2VzcyB7XG4gICAgbWFyZ2luLXRvcDogMjFweDsgfVxuICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yYXRpbmcgLnJhdGluZy1wcm9nZXNzIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmF0aW5nIC5yYXRpbmctcHJvZ2VzcyBsaSAucHJvZ3Jlc3Mge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7IH1cbiAgICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJhdGluZyAucmF0aW5nLXByb2dlc3MgbGkgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmEyMDI7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yYXRpbmcgLnJhdGluZy1wcm9nZXNzIGxpIGg1IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC50YWJsZS1wYW5lIHRyLmJnLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5wcm8gLnRhYmxlLXBhcnQge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucHJvIC50YWJsZS1wYXJ0IHRyIHtcbiAgICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucHJvIC50YWJsZS1wYXJ0IHRyIHRoIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5wcm8gLnRhYmxlLXBhcnQgdHIgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5wcm8gLnRhYmxlLXBhcnQgdHIgdGQge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5xdWVzdGlvbi1hbnN3ZXIgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucXVlc3Rpb24tYW5zd2VyIHVsIGxpIC5xdWUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5xdWVzdGlvbi1hbnN3ZXIgdWwgbGkgLnF1ZSAuZmEtcXVlc3Rpb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucXVlc3Rpb24tYW5zd2VyIHVsIGxpIC5xdWUgLmZhLXF1ZXN0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5xdWVzdGlvbi1hbnN3ZXIgdWwgbGkgLnF1ZSAucXVlLWRldGFpbHMge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7IH1cbiAgICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnF1ZXN0aW9uLWFuc3dlciB1bCBsaSAucXVlIC5xdWUtZGV0YWlscyBoNiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC45cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnF1ZXN0aW9uLWFuc3dlciB1bCBsaSAucXVlIC5xdWUtZGV0YWlscyBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5zcGVjaS1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyOHB4OyB9XG4gICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnNwZWNpLWxpc3QgaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnNwZWNpLWxpc3QgaDYgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMS44O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5zdWJtaXQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgdGFibGUgdGJvZHkgdHIgdGgge1xuICAgIHBhZGRpbmc6IDEuMnJlbSAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgdGFibGUgdGJvZHkgdHIgdGQge1xuICAgIHBhZGRpbmc6IDEuMnJlbSAwLjVyZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmNsb3RoLXJldmlldyAucmV2aWV3LWJveCAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWZmM2Y3ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnBhcnQge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDBweCArICgyMCAtIDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wYXJ0IC5pbm5lci10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cblxuLmN1c3RvbWUtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gIC5jdXN0b21lLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5jdXN0b21lLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5jdXN0b21lLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5zaGFyZS1pdCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hhcmUtaXQgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hhcmUtaXQgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hhcmUtaXQgbGkgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG4gICAgICAgICAgLmN1c3RvbWUtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnNoYXJlLWl0IGxpIGEgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgLmN1c3RvbWUtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnNoYXJlLWl0IGxpIGEgaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDFweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG5cbi5yZWNlbnRseS1wdXJjaGFzZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm90dG9tOiAtMjAwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHBhZGRpbmc6IDEycHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDc7XG4gIGJveC1zaGFkb3c6IDAgMCA0cHggMCByZ2JhKDMzLCAzNywgNDEsIDAuMik7XG4gIHBhZGRpbmc6IDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTsgfVxuICBbZGlyPVwicnRsXCJdIC5yZWNlbnRseS1wdXJjaGFzZSB7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IDEwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnJlY2VudGx5LXB1cmNoYXNlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IDAgMTNweDsgfSB9XG4gIC5yZWNlbnRseS1wdXJjaGFzZS5zaG93IHtcbiAgICBib3R0b206IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnJlY2VudGx5LXB1cmNoYXNlLnNob3cge1xuICAgICAgICBib3R0b206IDgwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnJlY2VudGx5LXB1cmNoYXNlLnNob3cge1xuICAgICAgICBib3R0b206IDY0cHg7IH0gfVxuICAucmVjZW50bHktcHVyY2hhc2UgaW1nIHtcbiAgICB3aWR0aDogMjIlOyB9XG4gIC5yZWNlbnRseS1wdXJjaGFzZSAuY2xvc2UtcG9wdXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogN3B4O1xuICAgIHRvcDogN3B4O1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnJlY2VudGx5LXB1cmNoYXNlIC5jbG9zZS1wb3B1cCB7XG4gICAgICByaWdodDogdW5zZXQ7XG4gICAgICBsZWZ0OiA3cHg7IH1cbiAgLnJlY2VudGx5LXB1cmNoYXNlIC5tZWRpYS1ib2R5IHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5yZWNlbnRseS1wdXJjaGFzZSAubWVkaWEtYm9keSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5yZWNlbnRseS1wdXJjaGFzZSAubWVkaWEtYm9keSBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNiAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucmVjZW50bHktcHVyY2hhc2UgLm1lZGlhLWJvZHkgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAucmVjZW50bHktcHVyY2hhc2UgLm1lZGlhLWJvZHkgLnByb2R1Y3QtbmFtZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDJweCAwOyB9XG4gICAgLnJlY2VudGx5LXB1cmNoYXNlIC5tZWRpYS1ib2R5IC50aW1lQWdvIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zdGlja3lDYXJ0IHtcbiAgcGFkZGluZy1ib3R0b206IDk0cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnN0aWNreUNhcnQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAuc3RpY2t5Q2FydCAuc3RpY2t5LWJvdHRvbS1jYXJ0IHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAuc3RpY2t5Q2FydCAucmVjZW50bHktcHVyY2hhc2Uuc2hvdyB7XG4gICAgYm90dG9tOiAxMTBweDsgfVxuICAuc3RpY2t5Q2FydCAudGFwLXRvcCB7XG4gICAgYm90dG9tOiAxMTBweDsgfVxuXG4ub3V0bGluZS1idXR0b24ge1xuICBwYWRkaW5nOiAxMnB4IDQ1cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm91dGxpbmUtYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDEycHg7IH0gfVxuXG4uc3RpY2t5LWJvdHRvbS1jYXJ0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IC0xNjBweDtcbiAgd2lkdGg6IDEwMHZ3O1xuICB6LWluZGV4OiA5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLnN0aWNreS1ib3R0b20tY2FydCAuY2FydC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5jYXJ0LWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcDsgfVxuICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2UgLmNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IGg1LFxuICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2UgLmNvbnRlbnQgaDUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAzcHg7IH1cbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiBkZWwge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7IH1cbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtZGVhZnVsdCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5zZWxlY3Rpb24tc2VjdGlvbiAuZm9ybS1jb250cm9sIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWZmMmY3O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnNlbGVjdGlvbi1zZWN0aW9uIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIHdpZHRoOiAxOTBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnN0aWNreS1ib3R0b20tY2FydCAuYWRkLWJ0biBhLndpc2hsaXN0LWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLnN0aWNreS1ib3R0b20tY2FydCAuYWRkLWJ0biBhLndpc2hsaXN0LWJ0bjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIGEud2lzaGxpc3QtYnRuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLmFkZC1idG4gYSArIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIGEgKyBhIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDsgfSB9XG4gIC5zdGlja3ktYm90dG9tLWNhcnQgLmFkZC1idG4gYSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnN0aWNreS1ib3R0b20tY2FydCAuYWRkLWJ0biBhIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7IH1cblxuLnByb2R1Y3QtaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnByb2R1Y3QtaW1hZ2U6aG92ZXIgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgLnByb2R1Y3QtaW1hZ2U6aG92ZXIgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHVsIGxpIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgICAgIC5wcm9kdWN0LWltYWdlOmhvdmVyIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB1bCBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzOyB9XG4gICAgICAucHJvZHVjdC1pbWFnZTpob3ZlciAucHJvZHVjdC1kZXRhaWxzIC5jYXJ0LXdyYXAgdWwgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yczsgfVxuICAgICAgLnByb2R1Y3QtaW1hZ2U6aG92ZXIgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHVsIGxpOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgICAgIC5wcm9kdWN0LWltYWdlOmhvdmVyIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB1bCBsaTpudGgtY2hpbGQoNSkge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzOyB9XG4gIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gIC5wcm9kdWN0LWltYWdlIGltZyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IC40cyBlYXNlOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAgICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHVsIGxpIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTsgfVxuICAgICAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIC5jYXJ0LXdyYXAgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB1bCBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIC5jYXJ0LXdyYXAgdWwgbGkgYSAuZmVhdGhlciB7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIGEge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgYSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbWFyZ2luOiA0cHggMCAwOyB9XG4gICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyBoNCBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIGg0IHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLnByb2R1Y3QtaW1hZ2UgKyAucHJvZHVjdC1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuXG4ud3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM2OTY5Njk7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLndyYXBwZXIgI3RocmVlc2l4dHkge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC53cmFwcGVyIC5idXR0b25zLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAud3JhcHBlciAuYnV0dG9ucy13cmFwcGVyIC5idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgICAgLndyYXBwZXIgLmJ1dHRvbnMtd3JhcHBlciAuYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cblxuLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGgsXG4uY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDEycHggMjBweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZCBwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS44O1xuICBsZXR0ZXItc3BhY2luZzogMC45cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMjUwcHg7IH1cbiAgLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiAuaW1hZ2UtZGV0YWlscyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZC50YWJsZS1pbWFnZS1zZWN0aW9uIC5pbWFnZS1kZXRhaWxzIGg1IHtcbiAgICAgIG1hcmdpbjogOHB4IDA7IH1cbiAgICAuY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZC50YWJsZS1pbWFnZS1zZWN0aW9uIC5pbWFnZS1kZXRhaWxzIHAge1xuICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiAuaW1hZ2UtZGV0YWlscyAuYnRuLXNvbGlkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogN3B4IDI1cHg7IH1cblxuLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gIHdpZHRoOiA1MDBweDsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBDb21pbmcgc29vbiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc3RvcmUtY29udGFpbmVyIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAzMiU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLnN0b3JlLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnN0b3JlLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNjAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnN0b3JlLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogODAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnN0b3JlLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5zdG9yZS1jb250YWluZXIgc3ZnIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAuc3RvcmUtY29udGFpbmVyICN0b2xkbyB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgMS40cyBlYXNlLWluIGZvcndhcmRzOyB9XG4gIC5zdG9yZS1jb250YWluZXIgLmdyYXNzIHtcbiAgICBhbmltYXRpb246IGZhZGVJbiAwLjVzIDEuNnMgZWFzZS1pbiBmb3J3YXJkczsgfVxuICAuc3RvcmUtY29udGFpbmVyICN3aW5kb3cge1xuICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgMS44cyBlYXNlLWluIGZvcndhcmRzOyB9XG4gIC5zdG9yZS1jb250YWluZXIgI2Rvb3Ige1xuICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgMnMgZWFzZS1pbiBmb3J3YXJkczsgfVxuICAuc3RvcmUtY29udGFpbmVyICNzaWduIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA4MzdweCA1OTdweDtcbiAgICBhbmltYXRpb246IHBlbmR1bHVtIDEuNXMgMnMgZWFzZS1pbi1vdXQgYWx0ZXJuYXRlOyB9XG4gIC5zdG9yZS1jb250YWluZXIgLnRyZWVzIHtcbiAgICBhbmltYXRpb246IGZhZGVJbiAwLjVzIDIuMnMgZWFzZS1pbiBmb3J3YXJkczsgfVxuICAuc3RvcmUtY29udGFpbmVyICNicm93c2VyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIGFuaW1hdGlvbjogbW92ZURvd24gMS41cyBjdWJpYy1iZXppZXIoMC43NywgLTAuNSwgMC4zLCAxLjUpIGZvcndhcmRzOyB9XG4gIC5zdG9yZS1jb250YWluZXIgLnN0cm9rZSB7XG4gICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgc3Ryb2tlLXdpZHRoOiA1O1xuICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOyB9XG4gIC5zdG9yZS1jb250YWluZXIgLnJvdW5kLWVuZCB7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kOyB9XG4gIC5zdG9yZS1jb250YWluZXIgI3N0b3JlIHtcbiAgICBhbmltYXRpb246IGZhZGVJbiAwLjhzIGVhc2UtaW47IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAuY2F0IHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMTQ1cHggNjIwcHg7IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAuY2F0LXNoYWRvdyB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTExNXB4IDYyNXB4OyB9XG4gIC5zdG9yZS1jb250YWluZXIgI3N0b3JlOmhvdmVyIC5jYXQge1xuICAgIGFuaW1hdGlvbjogY2F0SGkgM3MgM3MgY3ViaWMtYmV6aWVyKDAuNywgLTAuNSwgMC4zLCAxLjQpOyB9XG4gIC5zdG9yZS1jb250YWluZXIgI3N0b3JlOmhvdmVyIC5jYXQtc2hhZG93IHtcbiAgICBhbmltYXRpb246IGNhdFNoYWRvdyA0cyAycyBjdWJpYy1iZXppZXIoMC43LCAtMC41LCAwLjMsIDEuNCkgYWx0ZXJuYXRlOyB9XG4gIC5zdG9yZS1jb250YWluZXIgLmJveCxcbiAgLnN0b3JlLWNvbnRhaW5lciAucGFyYWNodXRlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA0MzBweCAxMDBweDtcbiAgICBhbmltYXRpb246IG1vdmVCb3ggMTRzIDRzIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTsgfVxuICAuc3RvcmUtY29udGFpbmVyIC5wYXJhY2h1dGUge1xuICAgIGFuaW1hdGlvbjogcGFyYWNodXRlIDE0cyA0cyBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAudHNoaXJ0IHtcbiAgICBhbmltYXRpb246IGZhZGVJbk91dCA0MnMgMTBzIGVhc2UtaW4gZm9yd2FyZHMgaW5maW5pdGU7IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAuY2FwIHtcbiAgICBhbmltYXRpb246IGZhZGVJbk91dCA0MnMgMjRzIGVhc2UtaW4gZm9yd2FyZHMgaW5maW5pdGU7IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAuYmFsbCB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5PdXQgNDJzIDM4cyBlYXNlLWluIGZvcndhcmRzIGluZmluaXRlOyB9XG4gIC5zdG9yZS1jb250YWluZXIgI3RleHQsXG4gIC5zdG9yZS1jb250YWluZXIgI2J1dHRvbiB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgNXMgZWFzZS1pbiBmb3J3YXJkczsgfVxuICAuc3RvcmUtY29udGFpbmVyIC5za3ktY2lyY2xlIHtcbiAgICBhbmltYXRpb246IGZhZGVJbk91dCAxMHMgNXMgZWFzZS1pbiBpbmZpbml0ZTsgfVxuICAuc3RvcmUtY29udGFpbmVyIC5za3ktY2lyY2xlMiB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5PdXQgMTJzIDMwcyBlYXNlLWluIGluZmluaXRlOyB9XG4gIC5zdG9yZS1jb250YWluZXIgLnNreS1jaXJjbGUzIHtcbiAgICBhbmltYXRpb246IGZhZGVJbk91dCA4cyA0MHMgZWFzZS1pbiBpbmZpbml0ZTsgfVxuICAuc3RvcmUtY29udGFpbmVyIC5jbG91ZCB7XG4gICAgYW5pbWF0aW9uOiBjbG91ZHMgNTBzIGxpbmVhciBiYWNrd2FyZHMgaW5maW5pdGU7IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAuY2xvdWQyIHtcbiAgICBhbmltYXRpb246IGNsb3VkcyA0MHMgNDBzIGxpbmVhciBiYWNrd2FyZHMgaW5maW5pdGU7IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAucGxhbmUge1xuICAgIGFuaW1hdGlvbjogY2xvdWRzIDMwcyBsaW5lYXIgYmFja3dhcmRzIGluZmluaXRlO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07IH1cbiAgLnN0b3JlLWNvbnRhaW5lciAjdG9sZG8sXG4gIC5zdG9yZS1jb250YWluZXIgLmdyYXNzLFxuICAuc3RvcmUtY29udGFpbmVyICN3aW5kb3csXG4gIC5zdG9yZS1jb250YWluZXIgI2Rvb3IsXG4gIC5zdG9yZS1jb250YWluZXIgLnRyZWVzLFxuICAuc3RvcmUtY29udGFpbmVyIC5jYXQsXG4gIC5zdG9yZS1jb250YWluZXIgLmNhdC1zaGFkb3csXG4gIC5zdG9yZS1jb250YWluZXIgLmJveCxcbiAgLnN0b3JlLWNvbnRhaW5lciAucGFyYWNodXRlLFxuICAuc3RvcmUtY29udGFpbmVyIC50c2hpcnQsXG4gIC5zdG9yZS1jb250YWluZXIgLmNhcCxcbiAgLnN0b3JlLWNvbnRhaW5lciAuYmFsbCxcbiAgLnN0b3JlLWNvbnRhaW5lciAjdGV4dCxcbiAgLnN0b3JlLWNvbnRhaW5lciAjYnV0dG9uLFxuICAuc3RvcmUtY29udGFpbmVyIC5za3ktY2lyY2xlLFxuICAuc3RvcmUtY29udGFpbmVyIC5za3ktY2lyY2xlMixcbiAgLnN0b3JlLWNvbnRhaW5lciAuc2t5LWNpcmNsZTMge1xuICAgIG9wYWNpdHk6IDA7IH1cblxuLmNvbWluZy1zb29uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNvbWluZy1zb29uLWNvbnRlbnQgaDEge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyNXB4ICsgKDQ1IC0gMjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgLmNvbWluZy1zb29uLWNvbnRlbnQgcCB7XG4gICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1heC13aWR0aDogODAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTZweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLmNvbWluZy1zb29uLWNvbnRlbnQgcCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIC5jb21pbmctc29vbi1jb250ZW50IC5mb3JtLWNvbnRyb2wge1xuICAgIG1heC13aWR0aDogODAlO1xuICAgIG1hcmdpbjogMHB4IGF1dG87IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5jb21pbmctc29vbi1jb250ZW50IC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcmVzcG9uc2l2ZSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5AbWVkaWEgKG1pbi13aWR0aDogMTQzMHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTQwMHB4OyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgUlRMIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbltkaXI9XCJydGxcIl0gb2wsXG5bZGlyPVwicnRsXCJdIHVsIHtcbiAgcGFkZGluZzogMDsgfVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZXIge1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBicmVha3BvaW50IG1peGlucyBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4vLyBtaW4gd2lkdGhcbkBtaXhpbiBtcS1taW4oJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJG1pbi1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJGJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJG1pbi1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC12YWx1ZSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdJbnZhbGlkIGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9Lic7XG4gICAgfVxufVxuXG4vLyBtYXggd2lkdGhcbkBtaXhpbiBtcS1tYXgoJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJG1heC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJGJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJG1heC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAoJGJyZWFrcG9pbnQtdmFsdWUpKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ0ludmFsaWQgYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH0uJztcbiAgICB9XG59XG5cbi8vIG1pbiBhbmQgbWF4XG5AbWl4aW4gbXEtYmV0d2VlbigkbG93ZXIsICR1cHBlcikge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkbWF4LWJyZWFrcG9pbnRzLCAkbG93ZXIpIGFuZCBtYXAtaGFzLWtleSgkbWluLWJyZWFrcG9pbnRzLCAkdXBwZXIpIHtcbiAgICAgICAgJGxvd2VyLWJyZWFrcG9pbnQ6IG1hcC1nZXQoJG1heC1icmVha3BvaW50cywgJGxvd2VyKTtcbiAgICAgICAgJHVwcGVyLWJyZWFrcG9pbnQ6IG1hcC1nZXQoJG1pbi1icmVha3BvaW50cywgJHVwcGVyKTtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGxvd2VyLWJyZWFrcG9pbnQpIGFuZCAobWF4LXdpZHRoOiAoJHVwcGVyLWJyZWFrcG9pbnQgLSAxKSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpZiAobWFwLWhhcy1rZXkoJG1heC1icmVha3BvaW50cywgJGxvd2VyKT09ZmFsc2UpIHtcbiAgICAgICAgICAgIEB3YXJuICdZb3VyIGxvd2VyIGJyZWFrcG9pbnQgd2FzIGludmFsaWQ6ICN7JGxvd2VyfS4nO1xuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChtYXAtaGFzLWtleSgkbWluLWJyZWFrcG9pbnRzLCAkdXBwZXIpPT1mYWxzZSkge1xuICAgICAgICAgICAgQHdhcm4gJ1lvdXIgdXBwZXIgYnJlYWtwb2ludCB3YXMgaW52YWxpZDogI3skdXBwZXJ9Lic7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGtleWZyYW1lcyByb3VuZGVkIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJ1bi1zaG9lcyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGUoMCwgMCk7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgfVxuXG4gICAgNzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgdHJhbnNsYXRlKDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByaXBwbGUge1xuICAgIDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKCRsaWdodC10aGVtZS1jb2xvciwgMC4zKSxcbiAgICAgICAgICAgIDAgMCAwIDFlbSByZ2JhKCRsaWdodC10aGVtZS1jb2xvciwgMC4zKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMWVtIHJnYmEoJGxpZ2h0LXRoZW1lLWNvbG9yLCAwLjMpLFxuICAgICAgICAgICAgMCAwIDAgM2VtIHJnYmEoJGxpZ2h0LXRoZW1lLWNvbG9yLCAwLjMpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByaXBwbGUtMSB7XG4gICAgMCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoJGRlbW8tNCwgMC4zKSwgMCAwIDAgMWVtIHJnYmEoJGRlbW8tNCwgMC4zKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMWVtIHJnYmEoJGRlbW8tNCwgMC4zKSwgMCAwIDAgMS41ZW0gcmdiYSgkZGVtby00LCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmlwcGxlLTIge1xuICAgIDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksIDAgMCAwIDFlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksIDAgMCAwIDEuNWVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1mbG93ZXIge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4ZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBiYWNrIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cblxuICAgIDcwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTNweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByZWdNYXNrIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDBweCwgMTAwcHgpIHNjYWxlKDAuNSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmVnTWFza1Ige1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpIHNjYWxlKDEpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE1MHB4LCAtMTUwcHgpIHNjYWxlKDAuNSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmVnVGFnIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMjUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAyNXB4KSByb3RhdGUoMTEuMjVkZWcpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04OHB4LCA0MHB4KSByb3RhdGUoMjIuNWRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05NnB4LCA4cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlZ1RhZzIge1xuICAgIDAlIHtcbiAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTQwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IC0xcHggcmdiYSgkYmxhY2sxLCAwLjQ1KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggLTFweCByZ2JhKCRibGFjazEsIDApO1xuICAgICAgICBsaW5lLWhlaWdodDogNjhweDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmVnVGFnUiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTZweCwgOHB4KSByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgIDI1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04OHB4LCA0MHB4KSByb3RhdGUoMjIuNWRlZyk7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAyNXB4KSByb3RhdGUoMTEuMjVkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgcm90YXRlKDBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByZWdUYWcyUiB7XG4gICAgMCUge1xuICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAtMXB4IHJnYmEoJGJsYWNrMSwgMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2OHB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggLTFweCByZ2JhKCRibGFjazEsIDAuNDUpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzaGFrZSB7XG5cbiAgICBmcm9tLFxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB9XG5cbiAgICAxMCUsXG4gICAgMzAlLFxuICAgIDUwJSxcbiAgICA3MCUsXG4gICAgOTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgMjAlLFxuICAgIDQwJSxcbiAgICA2MCUsXG4gICAgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJ1dHRvbnMtc2hha2Uge1xuXG4gICAgMTAlLFxuICAgIDkwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTFweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgMjAlLFxuICAgIDgwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTtcbiAgICB9XG5cbiAgICAzMCUsXG4gICAgNTAlLFxuICAgIDcwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgNDAlLFxuICAgIDYwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmluZyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7XG4gICAgfVxuXG4gICAgMSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTVkZWcpO1xuICAgIH1cblxuICAgIDMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xNGRlZyk7XG4gICAgfVxuXG4gICAgNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTdkZWcpO1xuICAgIH1cblxuICAgIDclIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xNmRlZyk7XG4gICAgfVxuXG4gICAgOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTVkZWcpO1xuICAgIH1cblxuICAgIDExJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTRkZWcpO1xuICAgIH1cblxuICAgIDEzJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWigxM2RlZyk7XG4gICAgfVxuXG4gICAgMTUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xMmRlZyk7XG4gICAgfVxuXG4gICAgMTclIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDEyZGVnKTtcbiAgICB9XG5cbiAgICAxOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTEwZGVnKTtcbiAgICB9XG5cbiAgICAyMSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooOWRlZyk7XG4gICAgfVxuXG4gICAgMjMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC04ZGVnKTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooN2RlZyk7XG4gICAgfVxuXG4gICAgMjclIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC01ZGVnKTtcbiAgICB9XG5cbiAgICAyOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooNWRlZyk7XG4gICAgfVxuXG4gICAgMzElIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC00ZGVnKTtcbiAgICB9XG5cbiAgICAzMyUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooM2RlZyk7XG4gICAgfVxuXG4gICAgMzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0yZGVnKTtcbiAgICB9XG5cbiAgICAzNyUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMWRlZyk7XG4gICAgfVxuXG4gICAgMzklIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xZGVnKTtcbiAgICB9XG5cbiAgICA0MSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMWRlZyk7XG4gICAgfVxuXG4gICAgNDMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVDb250YWluZXIge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggNjVweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQsXG4gICAgICAgICAgICAwcHggMHB4IDBweCA2NXB4IHJnYmEoJHdoaXRlLCAwLjI1KSBpbnNldDtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggNjVweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQ7XG4gICAgfVxuXG4gICAgNDMuNzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggNDMuMzM0cHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggNjVweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQ7XG4gICAgfVxuXG4gICAgNjIuNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggMjEuNjY3cHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0O1xuICAgIH1cblxuICAgIDgxLjI1JSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQsXG4gICAgICAgICAgICAwcHggMHB4IDBweCAwcHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggMHB4IHJnYmEoJHdoaXRlLCAwLjI1KSBpbnNldDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZUNoZWNrIHtcbiAgICBmcm9tIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDgwO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVTaGFkb3cge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTUlO1xuICAgIH1cblxuICAgIDI1JSB7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgfVxuXG4gICAgNDMuNzUlIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgaGVpZ2h0OiA3JTtcbiAgICAgICAgb3BhY2l0eTogMC4zNTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgaGVpZ2h0OiAxNSU7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmVyIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmbG9hdGluZyB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTg3JSk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlRG93biB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBwZW5kdWx1bSB7XG4gICAgMjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MGRlZyk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICAgIH1cblxuICAgIDgwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgY2F0SGkge1xuXG4gICAgMCUsXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB9XG5cbiAgICAxMCUsXG4gICAgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgY2F0U2hhZG93IHtcblxuICAgIDAlLFxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MHB4LCAtMzVweCkgc2NhbGUoMC4zKTtcbiAgICB9XG5cbiAgICAxMCUsXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTVweCwgMTBweCkgc2NhbGUoMC41KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlQm94IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xNTBweCkgcm90YXRlKDIwZGVnKTtcbiAgICB9XG5cbiAgICAxNSUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDBweCkgcm90YXRlKC0xNWRlZyk7XG4gICAgfVxuXG4gICAgMjUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMjUwcHgpIHJvdGF0ZSgxMGRlZyk7XG4gICAgfVxuXG4gICAgMzAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMzUwcHgpIHJvdGF0ZSgtNWRlZyk7XG4gICAgfVxuXG4gICAgMzUlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNTcwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA0NSUsXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDU3MHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcGFyYWNodXRlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xNTBweCkgcm90YXRlKDIwZGVnKSBzY2FsZSgwLjgpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDE1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMHB4KSByb3RhdGUoLTE1ZGVnKSBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAyNTBweCkgcm90YXRlKDEwZGVnKTtcbiAgICB9XG5cbiAgICAzMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAzNTBweCkgcm90YXRlKC01ZGVnKTtcbiAgICB9XG5cbiAgICAzMyUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0NjBweCkgcm90YXRlKDBkZWcpIHNjYWxlKDAuOSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgNDUlLFxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0ODBweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbk91dCB7XG5cbiAgICA1JSxcbiAgICAxMiUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDIwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3VkcyB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE1MCUsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3VuZCB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcmVzZXQgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG5zZWN0aW9uLFxuLnNlY3Rpb24tdC1zcGFjZSB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICB9XG59XG5cbi5zZWN0aW9uLWItc3BhY2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxufVxuXG4ubWVkaWEge1xuICAgIC5tZWRpYS1ib2R5IHtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG59XG5cbi5yYXRpbmcge1xuICAgIGxpIHtcbiAgICAgICAgaS5vcmFuZ2Uge1xuICAgICAgICAgICAgY29sb3I6ICRyYXRpbmctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5nLTE4IHtcbiAgICBtYXJnaW46IC0xOHB4O1xuXG4gICAgPmRpdiB7XG4gICAgICAgIHBhZGRpbmc6IDE4cHg7XG4gICAgfVxufVxuXG4uY3VzdG9tLWd5LTUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTE2cHggKyAoLTIwIC0gLTE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xNnB4ICsgKC0yMCAtIC0xNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICA+ZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNnB4ICsgKDIwIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxufVxuXG4ubGlnaHQtZ3JheS1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG59XG5cbkBpbmNsdWRlIG1xLW1pbih4bCkge1xuICAgIC5jdXN0b20tY29sIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlICsgNC4xNiUpO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdHlwb2dyYXBoeSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF8wLCAkZm9udF8xO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAuYmctb3ZlcmxheSB7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG51bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5wIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG59XG5cbmEge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbmJ1dHRvbiB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxufVxuXG4uYnRuLWNsb3NlIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG59XG5cbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDQwcHggKyAoNzAgLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDI4IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5oMyB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaDQge1xuICAgIGZvbnQtc2l6ZTogY2FsYygxN3B4ICsgKDE4IC0gMTcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbmg1IHtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5oNiB7XG4gICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udGhlbWUtY29sb3Ige1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLnRoZW1lLWJnLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJ1dHRvbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDEzIC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAmLXN1Ym1pdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICYtc3BhY2luZyB7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoNXB4ICsgKDE0IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg4cHggKyAoMzAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB9XG59XG5cbi5idG4tc20ge1xuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5kZWZhdWx0IHtcbiAgICAmLXdoaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgICYtbGlnaHQge1xuICAgICAgICBjb2xvcjogJGxpZ2h0c2lsdmVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDZweCArICgxNCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4xNTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbGlnaHQxIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjExO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjExO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1saWdodC10aGVtZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoNnB4ICsgKDE0IC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdGhlbWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi10aGVtZS0yIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAyNXB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgICYtdGhlbWUtMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LWRlbW8tNywgMC42KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBvcGFjaXR5OiAwLjExO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMTE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tbGlnaHQtd2hpdGUge1xuICAgIHBhZGRpbmc6IDZweCAyMHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuMSk7XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnRuLXdoaXRlIHtcbiAgICBwYWRkaW5nOiA2cHggMjBweDtcbiAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBhbGVydCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYWxlcnQtaW5mbyB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB9XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG59XG5cbltkYXRhLW5vdGlmeT1cInByb2dyZXNzYmFyXCJdIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDVweDtcbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBsYWJlbCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ubGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgcGFkZGluZzogNHB4IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgIH1cblxuICAgICYtYmxvY2sge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgJi1ibGFjayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi10aGVtZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHRhYiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFiLXdyYXAge1xuICAgIC5uYXYtdGFicyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGRlbW8xLWJnO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGRyb3Bkb3duIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbiVmb3ItYW5pbWF0ZWQtaG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgkYmxhY2ssIDAuMDcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICByaWdodDogMDtcbn1cblxuLm9uaG92ZXItZGl2IHtcbiAgICB0b3A6IDcwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbiAgICBtaW4td2lkdGg6IDI4MHB4O1xuICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgkYmxhY2ssIDAuMDcpO1xuXG4gICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIHRvcDogLTdweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vbmhvdmVyLWRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5vbmhvdmVyLWRpdiB7XG4gICAgICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcnQtZHJvcGRvd24ge1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdGltZXIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnRpbWVyIHtcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuOCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgkZm9udC1saWdodCwgMC40KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRmb250LWxpZ2h0LCAwLjQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEycHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aW1lci1zdHlsZS0yIHtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogY2FsYygtNXB4ICsgKC0xNSAtIC01KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDE1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTJweCArICgyMCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjggLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aW1lci1zdHlsZS0zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRlbW8tNCwgLjgpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigycHgpO1xuICAgIHdpZHRoOiA4MCU7XG5cbiAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoNXB4ICsgKDUgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDVweCArICg1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxMnB4ICsgKDIwIC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAkYWxwaGE6IDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDI4IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBUYXAgdG8gdG9wIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50YXAtdG8tdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMTVweDtcbiAgICByaWdodDogLTYwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBib3gtc2hhZG93OiAwIDNweCA4cHggcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuMzUpO1xuICAgIHotaW5kZXg6IDM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogLTYwcHg7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2sxO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgYm90dG9tOiA3NXB4O1xuICAgIH1cblxuICAgICYuc2hvdyB7XG4gICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDM1cHggKyAoNDAgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGhlaWdodDogY2FsYygzNXB4ICsgKDQwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHotaW5kZXg6IDM7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICBib3R0b206IDc1cHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgTW9kYWwgY3NzIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLy8gTmV3bGV0dGVyIE1kb2FsIFN0YXJ0XG4ubmV3bGV0dGVyLW1vZGFsIHtcbiAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDdweCAxMXB4IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjUpO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBWaWRlbyBQbGF5IE1vZGFsIFN0YXJ0XG4udmlkZW8tcGxheS1tb2RhbCB7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ29tcGFyZSBUYWJsZSBTZWN0aW9uIFN0YXJ0XG4uY29tcGFyZW1vZGFsLWJvZHkge1xuICAgIC50YWJsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgJi50YWJsZS1zdHJpcGVkLTEge1xuICAgICAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICAmLnRhYmxlLXByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRhYmxlLWNhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJi5idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI3MHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgICYubGlzdC1kZXRhaWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjJweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNoYWRlLWdyYXk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFNoaXBwaW5nIE1kb2FsIFN0YXJ0XG4ubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5idG4tY2xvc2Uge1xuICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICByaWdodDogLTE0cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zaGlwcGluZy1tb2RhbCB7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoNDAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAubW9kYWwtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5lcm87XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjptYXJrZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIENhcnQgTW9kYWwgU3RhcnRcbi5jYXJ0LW1vZGFsIHtcbiAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgLm1vZGFsLW1lc3NhZ2VzIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZWVuLWRhcms7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZhLWNoZWNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuLWRhcms7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9kYWwtcHJvZHVjdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1vZGFsLWNvbnRhaW4taW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDEwcHggKyAoMTggLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubW9kYWwtY29udGFpbi1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1vZGFsLWNvbnRhaW4taW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzUlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LXRvdGFsIHtcbiAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zaG9wLWNhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAtOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRpLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKDNweCArICg4IC0gMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTBweCArICgyNSAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gc2l6ZSBtb2RhbCBzdGFydFxuLm1vZGFsLXNpemUge1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgIC5mYS10aW1lcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIHNpemUgbW9kYWwgZW5kXG4ucXVpY2stdmlldy1tb2RhbCB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIH1cblxuICAgIC5xdWljay12aWV3LWltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucXVpY2stbmF2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc2xpY2stY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1yaWdodCB7XG4gICAgICAgICYudmVnLXByb2R1Y3QtcmlnaHQge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtYnRucyB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jdXN0b21lLWZvcm0tY2hlY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDhweCAxNXB4IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYW1lcmljYW4tZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTBweCByZ2JhKCRibGFjazEsICRhbHBoYTogMC4xKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmVnLWRldGFpbHMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29sb3ItdHlwZXMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICAgJi52ZWctZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaXplLWRldGFpbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtYnRucyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBSZXNlcnQgUGFzc3dvcmQgTW9kYWwgU3RhcnRcbi5yZXNldC1lbWFpbC1tb2RhbCB7XG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAmLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERlbGV0ZSBBY2NvdW50IE1vZGFsIFN0YXJ0XG4uZGVsZXRlLWFjY291bnQtbW9kYWwge1xuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICYubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQWRkIFBheW1lbnQgTW9kYWwgU3RhcnRcbi5wYXltZW50LW1vZGFsIHtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAmLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEFkZCBQYXltZW50IE1vZGFsIFN0YXJ0XG4uYWRkLWFkZHJlc3MtbW9kYWwge1xuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICYubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdGl0bGUgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG4udGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg1MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICYudGl0bGUxIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzUgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxLjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50aXRsZS1lZmZlY3Qge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRpdGxlLTEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgfVxufVxuXG4udGl0bGUtMiB7XG4gICAgY29sb3I6ICRibGFjazE7XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgIH1cbn1cblxuLnRpdGxlLTMge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg1MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICYudGl0bGUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkZW1vMS1iZztcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbn1cblxuLmdyYWRpZW50LXRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTAwZGVnLCByZ2JhKDYxLCA2MSwgNjEsIDEpLCB2YXIoLS10aGVtZS1jb2xvcikpO1xuICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYtMSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsIHJnYmEoJHdoaXRlLCAxKSwgdmFyKC0tdGhlbWUtY29sb3IpKTtcbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHJhdGlvIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5yYXRpb18zMCB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzAlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW9fMzUge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1JTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvXzQwIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb180NSB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDUlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW8yXzEge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvXzU1IHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1NSU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb181OSB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTklO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW8yXzMge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvM18yIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2Ni42NiU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb185MCB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOTMlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW9fbGFuZHNjYXBlIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NSU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb192ZWcge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDExMyU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb19zcXVhcmUge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb19hc29zIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMjcuNzc3Nzc3OCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb19zbWFsbCB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTE4JTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvX21lZGl1bSB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTM4JTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvX3BvcnRyYWl0IHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNTAlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW8yXzIge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1NC43Nzc3NzglO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW9fMiB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTYzJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvMV8yIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMDAlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBmb3JtIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmZvcm0tY29udHJvbCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgJi5zdWJzY3JpYmUtaW5wdXQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgIH1cbn1cblxuLmZvcm0tc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgfVxufVxuXG4uaW5wdXQtZ3JvdXAge1xuICAgIC5idG4ge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbn1cblxuLmNoZWNrYm94X2FuaW1hdGVkIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC40NSwgMS44LCAwLjUsIDAuNzUpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAsIDApO1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xuICAgICAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMjFweDtcbiAgICAgICAgaGVpZ2h0OiAyMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRncmF5LWxpZ2h0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgxLCAxKTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgc2xpZGVyIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3BhY2luZy1zbGlkZXIge1xuICAgICYuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luOiAwIC0xMnB4O1xuXG4gICAgICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTJweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC02cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xpY2stZG90dGVkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1zbGlkZXIge1xuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC0xMnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC02cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEycHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNsaWNrLWRvdHRlZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uc2xpZGUtNiB7XG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uY2xhc3NpYy1hcnJvdyB7XG4gICAgLmN1c3RvbS1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBib3R0b206IDkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAxcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJldiB7XG4gICAgICAgICAgICByaWdodDogMjAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNSU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUzJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEyJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEyJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICByaWdodDogMTMlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEzJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDExJTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE2JTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTYlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMjAlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogMyU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKCRibGFjaywgMC4xKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjhweDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNsYXNzaWMtYXJyb3ctMSB7XG4gICAgLmN1c3RvbS1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IDFweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICAgIHJpZ2h0OiAyMCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUxJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICByaWdodDogMTMlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjEpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yOHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjhweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0NCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saWdodC1hcnJvdyxcbi53aGl0ZS1hcnJvdyB7XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlnaHQtYXJyb3cge1xuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ib3R0b20tc3BhY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG59XG5cbi53aGl0ZS1hcnJvdyB7XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXRlZ29yeS1zbGlkZXIge1xuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogLTEyMHB4O1xuICAgIH1cblxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAtODBweDtcbiAgICB9XG59XG5cbi5icmFuZC1pbWFnZSB7XG4gICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuXG4uZG90LWRhcmsge1xuICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiB1bnNldDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDVweDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmltYWdlLXNob3cge1xuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbn1cblxuLnBvc3Rlci1zZWN0aW9uLTYsXG4ucG9zdGVyLXNlY3Rpb24ge1xuICAgIC5pbWFnZS1zaG93IHtcbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1sZy1zcGFjZSB7XG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICBtYXJnaW46IC01cHggLTE4cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBtYXJnaW46IC01cHggLTEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMThweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsYWNrLXNsaWRlIHtcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgLnBsYXktaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuZmEtcGxheSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSkgYmx1cigxcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZhLXBsYXkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDIwJSkgYmx1cigxcHgpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zbGljay1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnBsYXktaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuZmEtcGxheSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBUb3VjaHNwaW4gIENTUyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5ib290c3RyYXAtdG91Y2hzcGluIHtcbiAgICBpbnB1dCB7XG4gICAgICAgICYudG91Y2hzcGluIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCAuYnRuIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDEuNzVyZW07XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250XzAsICRmb250XzE7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b3VjaHNwaW4tdmVydGljYWwtdGFiIHtcbiAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgd2lkdGg6IHVuc2V0O1xuXG4gICAgLnRvdWNoc3Bpbi12ZXJ0aWNhbCB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIC5pbnB1dC1ncm91cC1idG4tdmVydGljYWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcblxuICAgICAgICAgICAgLmJvb3RzdHJhcC10b3VjaHNwaW4tZG93biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPi5idG4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA5cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgTGF6eSBMb2FkIGNzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5ibHVyLXVwIHtcbiAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgNDAwbXMsIC13ZWJraXQtZmlsdGVyIDQwMG1zO1xuXG4gICAgJi5sYXp5bG9hZGVkIHtcbiAgICAgICAgZmlsdGVyOiBibHVyKDApO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgQnJlYWRjcnVtYiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYnJlYWRjcnVtYi1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjYgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxuXG4gICAgJi0xIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXJlZC1zaGFkZTtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAuY2lyY2xlcyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGUgMjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTE1MHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMC4yICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMnM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogNHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxOHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA2NSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogM3M7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxOSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA3cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxNXM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA0NXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzNXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEwKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogODUlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGFuaW1hdGUge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwMHB4KSByb3RhdGUoNzIwZGVnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGhlYWRlciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBtaXhpbiBoZWFkZXJfY29tbW9uIHtcbiAgICAuY29udGFpbmVyLWZsdWlkLWxnIHtcbiAgICAgICAgcGFkZGluZzogMCAxMTJweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhlYWRlciB7XG4gICAgICAgIC5zZWFyY2gtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS05MDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmF2LWRvd24ge1xuICAgICAgICAgICAgJi5uYXYtdXAge1xuICAgICAgICAgICAgICAgIC5uYXZiYXItc2VhcmNoYmFyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tYWluLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2YmFyLXNlYXJjaGJhciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAxMHB4IHJnYmEoMjMsIDMyLCA5MCwgMC4xNSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1zdWdnZXN0aW9uIHtcbiAgICAgICAgICAgIGhlaWdodDogMHB4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgdG9wOiA2OHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEwMDBtcyBjdWJpYy1iZXppZXIoMC4yNywgMC43LCAwLCAwLjk5KTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRvcDogNTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0xMHB4O1xuXG4gICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWNhcnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lZGlhLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucmF0aW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm9uaG92ZXItZGl2IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndpc2xpc3QtZHJvcGRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJ0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5vbmhvdmVyLWRpdiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vbmhvdmVyLWRpdiB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRkZW1vMS1iZztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTI5MHB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLm9uaG92ZXItZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1tZW51IHtcbiAgICAgICAgICAgIC5jYXJ0LXRpdGxlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lZGlhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tZWRpYS1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5xdHktd2l0aC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1idG4ge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud2lzbGlzdC1lbXB0eSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1mdWxsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVtbzEtYmc7XG5cbiAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jbG9zZS1zZWFyY2gge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHpvb21JbiAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICAuc2VhcmNoLXN1Z2dlc3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogLXdlYmtpdC1tYXgtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAtbW96LW1heC1jb250ZW50O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuMjcsIDAuNywgMCwgMC45OSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1ib3gxIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHdpdHRlci10eXBlYWhlYWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR0LW1lbnUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICAgICAgdG9wOiA1NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwO1xuXG4gICAgICAgICAgICAgICAgLnR0LWRhdGFzZXQtc3RhdGVzIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC50dC1zZWxlY3RhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb24tc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiB6b29tSW4gMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLnNlYXJjaC1zdWdnZXN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEwMDBtcyBjdWJpYy1iZXppZXIoMC4yNywgMC43LCAwLCAwLjk5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2ZpbGUtZHJvcGRvd24ge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNjBweDtcblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmFuZC1sb2dvIHtcbiAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogc3Bpbm5lcjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICAgICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5maWxsLWNvbG9yIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIHNwaW5uZXIge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMzYwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeS1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jbG9zZS1idG4ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gbW9iaWxlIG1lbnVcbiAgICAubW9iaWxlLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggN3B4IDNweCByZ2JhKDE2OCwgMTY4LCAxNjgsIDAuMik7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRmb250LWRhcmssIDAuNCk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgdG9wOiA3MHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuM3M7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAzLjM0NnB4IDMuNzE2cHggMjIuNXB4IHJnYmEoJGJsYWNrLCAwLjA3KTtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LW1lZ2EtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA5NSU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgkYmxhY2ssIDAuMDcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktY2hpbGRtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aXRsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAmLnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LW1lZ2EtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWluKHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNzIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWluKDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDg1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpdGxlLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zMDBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgICAgICAuY2F0ZWdvcnktZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hY2NvcmRpbmctbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LWNoaWxkbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGl0bGUtY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktYmFubmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGVyXzEge1xuICAgIGhlYWRlciB7XG4gICAgICAgIC50b3AtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcblxuICAgICAgICAgICAgJi1ibGFjayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LTkwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXdoaXRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYm9yZGVyLWxpc3Qge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC4xNSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuMTUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudG9wLWhlYWRlci1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1tZW51IHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgLm1lbnUtbGVmdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1yaWdodCB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlYXJjaC1ib3gge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAmLmJsYWNrLXNlYXJjaC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID51bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2FydC1tZWRpYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAuY2FydC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG5hdiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1tZW51IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA5cHggMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGVyXzIge1xuICAgIC5oZWFkZXItc3R5bGUtMiB7XG4gICAgICAgICYuYmxhY2stYmFja2dyb3VuZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBuYXYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51LWxlZnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1yaWdodCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53aXNsaXN0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wZS0yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LW1lZGlhIHtcbiAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC05cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGVyXzMge1xuICAgIGhlYWRlciB7XG4gICAgICAgIC5oZWFkZXItc3R5bGUtMyB7XG4gICAgICAgICAgICAudG9wLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmLnRvcC1jb21tYW4taGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYm9yZGVyLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAwLjE1KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC4xNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgJi5jb21tb24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICAubmF2aWdhdGlvbmJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zZWFyY2gtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LW1lZGlhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FydC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhcnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbmF2IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1yaWdodCB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYucHJpY2UtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53aXNsaXN0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wZS0yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LW1lZGlhIHtcbiAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgbmF2IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuaGVhZGVyIHtcbiAgICAubWFpbi1uYXZiYXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLm5hdi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnRsKHRleHQtYWxpZ24sIGxlZnQsIHJpZ2h0KTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bChmbG9hdCwgbGVmdCwgcmlnaHQpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC44cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm5hdi1zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA1cHggMCByZ2JhKDkwLCA5MCwgOTAsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAyNXB4IDNweCA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCA0MHB4IDNweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAxNXB4IC04cHggdmFyKC0tYmFkZ2UtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRyZW4tYnVkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYudG9wLWJ1ZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5tZW51LXRpdGxlLWxldmVsMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnN1Ym1lbnUtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmFycm93LWNscyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtc3ViLWNoaWxkbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDFweCAwICRncmF5LTUwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCAwIHJnYmEoOTAsIDkwLCA5MCwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICYucG9zdGVyLWJnLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdm94by5wbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZsb2F0aW5nLWltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjB2aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZsb2F0aW5nIDExMHMgbGluZWFyIGluZmluaXRlIHJldmVyc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubWVnYS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2JTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmstc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIyNiwgMzYsIDg0LCAwLjA3KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggLThweCB2YXIoLS1iYWRnZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRyZW4tYnVkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRvcC1idWRnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5tZWdhbWVudS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaGlnaGxpZ2h0LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKy5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubWVnYS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHVuc2V0O1xuXG4gICAgICAgICAgICAgICAgICAgICYuaG9tZS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVnYS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGluay1zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhbWVudS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYmx1cigwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVnYW1lbnUtaW1hZ2UtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnJlc3BvbnNpdmUtYnRuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBoZWFkZXIge1xuICAgICAgICAubWFpbi1uYXZiYXIge1xuICAgICAgICAgICAgLm5hdi1tZW51IHtcbiAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICAubmF2LXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWItYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGV2ZWwxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZXZlbDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGV2ZWwzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZXZlbDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGV2ZWwyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZXZlbDEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3ViLWFycm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubWVudS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubmF2LXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudG9nZ2xlLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1iYWNrIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgaGVhZGVyIHtcbiAgICAgICAgLm1haW4tbmF2YmFyIHtcbiAgICAgICAgICAgIC5uYXYtbWVudSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTU1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0zMDBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAmLm9wZW5uYXYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFjay1idG4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5tb2JpbGUtYmFjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuICsgMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGdyYXktbGlnaHQsICRhbHBoYTogLjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWItYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIrXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubmF2LXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtc3ViLWNoaWxkbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuc3VibWVudS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubGV2ZWwyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxldmVsMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYub3BlbnN1YmNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lZ2EtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmstc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJtZW51LXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS45O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW5zdWJtZWdhbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1vYmlsZS1wb3N0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC00MTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5tb2JpbGUtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA3cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgIG5hdiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lZ2EtYm94IHtcbiAgICAgICAgLmxpbmstc2VjdGlvbiB7XG4gICAgICAgICAgICAuZGVtbyB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZWdhLWJveCB7XG4gICAgICAgICYuY29sIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBob21lIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1peGluIGhvbWVfY29tbW9uIHtcbiAgICAuaG9tZS1zZWN0aW9uIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuaG9tZS1zbGlkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDczNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS13cmFwIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDExOTkgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE2IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogODklO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRpc2NvdmVyLWJsb2NrIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZC1mbGV4IHtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucGxheS1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzBweCArICg1MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDMwcHggKyAoNTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRpc2NvdmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXNvY2lhbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBob21lXzEge1xuICAgIC5ob21lLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAwIDEwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXdyYXAge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAxMDBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm9mZmVyLXdyYXAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDMwcHggKyAoOTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaG9tZS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygzMnB4ICsgKDQwIC0gMzIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDMycHggKyAoNDAgLSAzMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjhweCArICgzMCAtIDI4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTE5OSAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRleHQtZGVjb3JhdGlvbi1saW5lLXRocm91Z2gge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjQgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxMTk5IC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1pbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS1zb2NpYWwge1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmdyb3VwLWJ0biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoNDAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGFyay1jb2xvcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaG9tZV8yIHtcbiAgICAuaG9tZS1zdHlsZS0yIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5zZWxlY3Rpb24td3JhcCB7XG4gICAgICAgICAgICBtYXJnaW46IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgLmRhcmstc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMHB4ICsgKDE1IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygxMHB4ICsgKDE1IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC1idG4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tc29saWQtZGVmYXVsdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNoYXJlLWljb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS1sZWZ0LXdyYXBwZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIGNhbGMoMjBweCArICg4MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDYwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjYwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCBjYWxjKDE1cHggKyAoNDAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE0NjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjRweCArICg0MiAtIDI0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5yYXRpbmctc3RhciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDM2IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXNsaWRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDg3MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDQwMHB4ICsgKDc1MCAtIDQwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE2NjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyg0NDBweCArICg2ODAgLSA0NDApICogKCgxMDB2dyAtIDMyMHB4KSAvICg5OTEgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygzNjBweCArICg0NzAgLSAzNjApICogKCgxMDB2dyAtIDMyMHB4KSAvICg0ODAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgIC5ob21lLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDgwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIGNhbGMoMjBweCArICg2MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTY2MCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNDYwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDMwcHggKyAoNDAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDU3NSAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICA+aDYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay0yIHtcbiAgICAgICAgICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXdyYXAge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaG9tZV8zIHtcbiAgICAuc2xpZGVyLWFycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTg1cHg7XG4gICAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgLmxlZnQtYXJyb3csXG4gICAgICAgIC5yaWdodC1hcnJvdyB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1hcnJvdyB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCByZ2JhKCRibGFjazEsIDAuMSk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWFycm93IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZXItYXJyb3ctMiB7XG5cbiAgICAgICAgLmxlZnQtYXJyb3csXG4gICAgICAgIC5yaWdodC1hcnJvdyB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyMnB4ICsgKDUwIC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHB4ICsgKDE2MCAtIDEwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sZWZ0LWFycm93IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWFycm93IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlci1hcnJvdy0zIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIGJvdHRvbTogNjBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAubGVmdC1hcnJvdyxcbiAgICAgICAgLnJpZ2h0LWFycm93IHtcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1hcnJvdyB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodC1hcnJvdyB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlci1kb3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgIHJpZ2h0OiA3MHB4O1xuXG4gICAgICAgIC5kb3Qge1xuICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jaGFuZ2UtY29sb3Ige1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAuZG90LTEsXG4gICAgICAgIC5kb3QtMixcbiAgICAgICAgLmRvdC0zIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgIC5pbi1kb3QtMSxcbiAgICAgICAgICAgIC5pbi1kb3QtMixcbiAgICAgICAgICAgIC5pbi1kb3QtMyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3QtMSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRvcmFuZ2UxO1xuXG4gICAgICAgICAgICAuaW4tZG90LTEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3QtMiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrMSwgMC4xNSk7XG5cbiAgICAgICAgICAgIC5pbi1kb3QtMiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3QtMyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHRoZW1lLWNvbG9yMSwgMC4yKTtcblxuICAgICAgICAgICAgLmluLWRvdC0zIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBvc3RlciB7XG4gICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1iZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmctdGV4dCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyg0MnB4ICsgKDI0MCAtIDQyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCAkZm9udF8xO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iZy1jaXJjbGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHB4ICsgKDYwMCAtIDEwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHB4ICsgKDYwMCAtIDEwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvci1ncmFkaWVudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3VuZGVkIDE1cyBpbmZpbml0ZSBsaW5lYXI7XG5cbiAgICAgICAgICAgICAgICAmLmdyYWRpZW50LXB1cnBsZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwdXJwbGUtZ3JhZGllbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5ncmFkaWVudC1ibHVlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsdWUtZ3JhZGllbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5yZWQtZ3JhZGllbnQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkLWdyYWRpZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob2VzLTEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE1MHB4ICsgKDgwMCAtIDE1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcnVuLXNob2VzIDE1cyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3VnZXN0aW9uLXByb2R1Y3Qge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAgIHRvcDogNjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDAgMTVweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zbGlkZXItc2hvZXMtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLnJlbGF0aXZlLXNob2VzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNob2VzLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxOCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlLW51bWJlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDYwcHg7XG4gICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA4MHB4IDAgMzBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2NXB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDQ1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDMwIC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2xvci1jaGFuZ2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyNSAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkLTQwO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg2cHggKyAoMTAgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1yaWdodC1kZXRhaWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDE1cHggNTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxhYmVscyB7XG4gICAgICAgICAgICAgICAgLmxhYmVsLTE1IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub2ZmZXItYm94IHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGhvbWVfNCB7XG4gICAgLnBvc3Rlci1zZWN0aW9uIHtcbiAgICAgICAgaGVpZ2h0OiA4NTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9mdXJuaXR1cmUtaW1hZ2VzL3Bvc3Rlci9iYWNrLmpwZyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDc1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmV2IHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogOS41JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjIlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEzJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjYlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNzYlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMjYlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICByaWdodDogNSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE5JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjIlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDQlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDI2JTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDg2JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDI2JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjElO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDQ1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDIxJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9zdGVyLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNSUgMTMwcHggMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ3MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDUlIGF1dG8gMCAxMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1JSBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1uYXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogOTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICArZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBvc3Rlci1pbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm92ZXJsYXktY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vLTQsICRhbHBoYTogMC43KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBsdXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTIlO1xuICAgICAgICBsZWZ0OiAzOCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgdG9wOiAxMSU7XG4gICAgICAgICAgICBsZWZ0OiAzNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYS1wbHVzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJpcHBsZS0yIDAuN3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxlZnQtc2lkZS1jb250YWluIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgbGVmdDogOTBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIGxlZnQ6IDc1cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICBsZWZ0OiA2NXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICB3aWR0aDogMjMlO1xuICAgICAgICAgICAgbGVmdDogNTBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgbGVmdDogOTBweDtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1sZWZ0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRlbW8tNCwgMC43KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDQwcHggKyAoMjggLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIzcHggKyAoNzAgLSAyMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoNDUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTdweCArICgzMiAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucG9zdGVyLWRldGFpbHMge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sb3ItY2hhbmdlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjUgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJpZ2h0LXNpZGUtY29udGFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICByaWdodDogOTBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDc1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICArLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGhvbWVfNSB7XG4gICAgLnBvc3Rlci1zZWN0aW9uLTUge1xuICAgICAgICBoZWlnaHQ6IDc1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Zsb3dlci9iYWNrLmpwZyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA2MjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA1NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJldiB7XG4gICAgICAgICAgICByaWdodDogMTElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3R0b206IDUwJTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA0MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogOSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDMwJTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3MSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMTElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOCU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjYlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzglO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNDIlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNTElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzNiU7XG4gICAgICAgICAgICAgICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICByaWdodDogNSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvdHRvbTogNTAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDQwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE4JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzAlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDgxJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMTQwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMTglICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzglO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQ3JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNDElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNDIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzYlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhY2tncm91bmQtY2lyY2xlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC00JTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3VuZGVkIDIwcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmxvd2VyLWltYWdlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbG93ZXItMSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTcwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbG93ZXItMiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTcwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC03MHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBvc3Rlci1pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0JTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMDBweDtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJvdGF0ZS1mbG93ZXIgNDVzIGluZmluaXRlIGxpbmVhcjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4NTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzc1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ3MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA3JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM1JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNjVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGVyLW5hdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDkwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgK2RpdiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3N0ZXItaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBsdXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTIlO1xuICAgICAgICBsZWZ0OiAzOCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgdG9wOiAxMSU7XG4gICAgICAgICAgICBsZWZ0OiAzNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiA3NXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgbGVmdDogNjVweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogNjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgbGVmdDogNTRweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogNTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE3MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMywgNjYsIDcwLCAwLjcpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgyOCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDIwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyM3B4ICsgKDcwIC0gMjMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoNDUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE3cHggKyAoMzIgLSAxNykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3N0ZXItZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKDVweCArICgyMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbG9yLWNoYW5nZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI1IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE4cHggKyAoMzAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJpZ2h0LXNpZGUtY29udGFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICByaWdodDogOTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgKy5zb2NpYWwtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaG9tZV82IHtcbiAgICAucG9zdGVyLXNlY3Rpb24tNiB7XG4gICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdmVnZXRhYmxlL3BlcmNlbnRhZ2UuanBnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgIGhlaWdodDogNzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIxcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnByZXYge1xuICAgICAgICAgICAgcmlnaHQ6IDExJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm90dG9tOiAzMyU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDYlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzglO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA4MSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDglICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDE3JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDclICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOSU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMjElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDE4JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMjUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiA1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm90dG9tOiAzMyU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEyJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyNCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE2JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxNyU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDYlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE4JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzklO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDglICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDE4JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMjUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFja2dyb3VuZC1jaXJjbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGhvcml6b250YWwpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTUlO1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3VuZGVkIDIwcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9zdGVyLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUtZmxvd2VyIDQ1cyBpbmZpbml0ZSBsaW5lYXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDc3NXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MzBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNyU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1uYXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucG9zdGVyLWltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHZlZzEsICRhbHBoYTogMC43KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTIgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBsdXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTIlO1xuICAgICAgICBsZWZ0OiAzOCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgdG9wOiAxMSU7XG4gICAgICAgICAgICBsZWZ0OiAzNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBsZWZ0OiA3NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNyU7XG4gICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzNSU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1sZWZ0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHZlZzEsIDAuNyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDI4IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIzcHggKyAoNzAgLSAyMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoNDUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE3cHggKyAoMzIgLSAxNykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYW5uZXItYnRuLWdydXAge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBvc3Rlci1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDIwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbG9yLWNoYW5nZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI1IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDE4cHggKyAoMzAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmlnaHQtc2lkZS1jb250YWluIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMHB4O1xuICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgIHJpZ2h0OiA5MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsLWltYWdlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICArLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09XG4gICAgU2xpY2sgU0xpZGVyIENTUyBTdGFydCBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1peGluIHNsaWRlcl9jb21tb24ge1xuICAgIC5ib3gtYXJyb3cge1xuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDVweCArICgyNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjMwYVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYzMGJcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdhaW5zYm9ybztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc2xpZGVyXzEge1xuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xMDBweDtcbiAgICAgICAgbGVmdDogODAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgdG9wOiAtODhweDtcbiAgICAgICAgICAgIGxlZnQ6IDgwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgIHRvcDogLTg4cHg7XG4gICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHRvcDogLTg4cHg7XG4gICAgICAgICAgICBsZWZ0OiA2OCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICBsZWZ0OiA4MCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICBsZWZ0OiA3MyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHRvcDogLTY3cHg7XG4gICAgICAgICAgICBsZWZ0OiA2MyU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby00O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICByaWdodDogMCU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICB0b3A6IC04OHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICB0b3A6IC03NXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHRvcDogLTY3cHg7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldjpob3ZlcixcbiAgICAuc2xpY2stcHJldjpmb2N1cyxcbiAgICAuc2xpY2stbmV4dDpob3ZlcixcbiAgICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRxdWljay1zaWx2ZXI7XG4gICAgfVxufVxuXG5AbWl4aW4gc2xpZGVyXzIge1xuICAgIC5yb3VuZC1hcnJvdyB7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogODVweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTkwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDg1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTgwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTY4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDg1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC05MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC04MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC02OHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yb3VuZC1hcnJvdzEge1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNzdweDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDg1cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC03NHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA4NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNjhweDtcbiAgICAgICAgICAgICAgICByaWdodDogODVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNThweDtcbiAgICAgICAgICAgICAgICByaWdodDogNzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC00NXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA2MXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNzdweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA4NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNzRweDtcbiAgICAgICAgICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTY4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTY1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHRvcDogLTU4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzbGlkZXJfMyB7XG4gICAgLndoaXRlLWFycm93IHtcbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBsZWZ0OiAtNzBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtODBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTgwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNThweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIGxlZnQ6IC03MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICByaWdodDogLTgwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB0b3A6IC04MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIHRvcDogLTU4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIHNlcnZpY2Ugc2VjdGlvbiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBtaXhpbiBzZXJ2aWNlX2NvbW1vbiB7XG4gICAgLnNlcnZpY2Utc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VydmljZS13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuc2VydmljZS1pY29uIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VydmljZS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFib3V0LXBhZ2Uge1xuICAgICAgICAgICAgLnNlcnZpY2Utd3JhcCB7XG4gICAgICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHNlcnZpY2Vfc3R5bGVfMSB7XG4gICAgLnNlcnZpY2Utc2VjdGlvbiB7XG4gICAgICAgIC5zZXJ2aWNlLXdyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzZXJ2aWNlX3N0eWxlXzIge1xuICAgIC5zZXJ2aWNlLXN0eWxlLTIge1xuICAgICAgICAuc2VydmljZS13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcblxuICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgK2RpdiB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc2VydmljZV9zdHlsZV8zIHtcbiAgICAuc2VydmljZXMtc2VjdGlvbiB7XG4gICAgICAgIC5zZXJ2aWNlLWRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1NXB4ICsgKDYwIC0gNTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN1c3RvbWUtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjIgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LXRleHQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJhbm5lciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBtaXhpbiBiYW5uZXJfY29tbW9uIHtcbiAgICAudGltZXItYmFubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5jb2xsZWN0aW9uLWJhbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5jb2xsZWN0aW9uLWNvbnRhaW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjcpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDNweCk7XG5cbiAgICAgICAgICAgICAgICBoNixcbiAgICAgICAgICAgICAgICBoMixcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhaW4tYmFubmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICYuY29udGFpbi1jZW50ZXIge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQ1cHggODBweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc3BhY2luZy1iYW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYud2l0aC1iZyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuOTMpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLndpdGgtYmlnIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC44NSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi50LXRvcCB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLnAtY2VudGVyIHtcblxuICAgICAgICAgICAgLmNvbnRhaW4tYmFubmVyLFxuICAgICAgICAgICAgLmJhbm5lci10ZXh0IHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucC1yaWdodCB7XG5cbiAgICAgICAgICAgIC5jb250YWluLWJhbm5lcixcbiAgICAgICAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC05cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNwYW4tdG9wIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wLWxlZnQge1xuXG4gICAgICAgICAgICAuY29udGFpbi1iYW5uZXIsXG4gICAgICAgICAgICAuYmFubmVyLXRleHQge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wLWJvdHRvbSB7XG4gICAgICAgICAgICAuY29udGFpbi1iYW5uZXIge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudC10b3Age1xuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYygycHggKyAoMjAgLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDQ2IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMzIgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICAgICYuaC1ib3R0b20ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDJweCArICgyMCAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci10aXRsZSB7XG4gICAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NiU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zcGFjaW5nLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sbGVjdGlvbi1jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogY2FsYygyMHB4ICsgKDYwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgzMiAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDJweCArICgxNSAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMHB4ICsgKC02IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHRpbWVyX2Jhbm5lciB7XG4gICAgLnRpbWVyLWJhbm5lciB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLnJvdW5kLWNpcmNsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBhbmltYXRpb246IHJvdW5kZWQgMTBzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZlZy1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3cml0aW5nLW1vZGU6IGhvcml6b250YWwtdGI7XG4gICAgICAgICAgICAgICAgdG9wOiB1bnNldDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc29jaWFsLWljb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgKy5zb2NpYWwtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYmctc2l6ZSB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNTglO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNjQlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDk0JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cG9uLWNvZGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGhvcml6b250YWwpO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGltZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA1MHB4O1xuXG4gICAgICAgICAgICAgICAgJi5saWdodC1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE1MiwgNjAsIDAuNyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTQycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTI4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMThweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LW9mZmVyIHtcbiAgICAgICAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gICAgICAgICAgICB0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgICAgICB3cml0aW5nLW1vZGU6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHRvcDogMTVweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud2lzaGxpc3QtaWNvbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDdweCA4cHggNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweCA0cHggOHB4IDdweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggNHB4IDJweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc21hbGwtYmFubmVyIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJnLXNpemUge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNzQlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDg2JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXItYnRuLWdydXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICArYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHRpbWVyX2Jhbm5lcl9zdHlsZV8yIHtcbiAgICAudGltZXItYmFubmVyLXN0eWxlLTIge1xuICAgICAgICAudGltZXItdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDI4cHggKyAoNDYgLSAyOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zMjtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFydC13aXNobGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lci1iZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAmLWNlbnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIC5jb3VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogOTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJhbm5lcl8yIHtcbiAgICAuYmFubmVyLXN0eWxlLTIge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAuYmFubmVyLWltZyB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzkwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1kZXRhaWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZvbnQtZGFyay0zMCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhlYXJ0LXdpc2hsaXN0IHtcbiAgICAgICAgICAgICAgICAgICAgLmZhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC42KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250YWluLWJhbm5lciB7XG4gICAgICAgICAgICAgICAgdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICBib3R0b206IDYwcHg7XG5cbiAgICAgICAgICAgICAgICAmLmNvbnRhaW4tY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5iYW5uZXItY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucmF0aW8yXzEge1xuICAgICAgICAgICAgICAgIC5iZy1zaXplIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmNvbnRhaW4tYmFubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYmFubmVyLWNlbnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYud2l0aC1iZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLndpdGgtYmlnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJhbm5lci1kZXRhaWwge1xuICAgICAgICAgICAgICAgICAgICAuaGVhcnQtd2lzaGxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZm9udC1kYXJrLTMwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5vZmZlci1iYW5uZXIge1xuICAgICAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIHtcbiAgICAgICAgICAgICAgICAuYmFubmVyLWltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250YWluLWJhbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJhbm5lcl8zIHtcbiAgICAuYmFubmVyLXNlY3Rpb24ge1xuICAgICAgICAuYmFubmVyLWltYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmJhbm5lci1zaG9wIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYW5uZXItZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgLmhlYXJ0LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByaXBwbGUtMSAwLjdzIGxpbmVhciBpbmZpbml0ZTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRkZW1vLWxpZ2h0LTQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRkZW1vLWxpZ2h0LTQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxOCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJhbm5lci1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjggLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1zaG9wIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vLTQsICRhbHBoYTogMC44KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDAlO1xuICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHByb2R1Y3QgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG5AbWl4aW4gcHJvZHVjdF9jb21tb24ge1xuICAgIC5yYXRpbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJi50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkeWVsbG93ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYXJ0LXdpc2hsaXN0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gICAgICAgIC5mYXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2stbGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhlYXJ0LWNvbG9yIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIC5zaGFyZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAmLW9wYWNpdHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zaGFyZS1wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaG92ZXItaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zcXVyZS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2lyY2xlLXNoYXBlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFja2dyb3VuZC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJi5ob3Zlci1pbWFnZSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9lZmZlY3QxLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zcXVyZS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9lZmZlY3QucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2lyY2xlLXNoYXBlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGVtby00LCAkYWxwaGE6IDAuMDQpO1xuICAgICAgICAgICAgICAgIHRvcDogLTgwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTgwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4NyU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAmLTEge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzkwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzkwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuMDQpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMzBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEzMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNnMgZWFzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYWNrZ3JvdW5kLXRleHQge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgICAgICB0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjhweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuMSk7XG4gICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktaXRlbSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvIDZweCBhdXRvO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2l6ZS1ib3gge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTFweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdlZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLTIge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcblxuICAgICAgICAgICAgICAgICYucmF0aW5nLTIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgJi1kYXJrIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsKGZsb2F0LCByaWdodCwgbGVmdCk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtdGhlbWUge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bChmbG9hdCwgbGVmdCwgcmlnaHQpO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgNDAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDYwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA4MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMTAwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAucHJvZHVjdC13cmFwcGVyIHtcbiAgICAgICAgJi0xIHtcbiAgICAgICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNsaWNrLXNsaWRlciB7XG4gICAgICAgICAgICAmLnNsaWNrLWRvdHRlZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWJhbm5lciB7XG4gICAgICAgICYtY2lyY2xlIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sYWJlbC1ibG9jayB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICB+YSB7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmZXItZW5kIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAwLjgpO1xuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAmLWRlbW80IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vLTQsICRhbHBoYTogMC44KTtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5zdGFncmFtLXdyYXAge1xuICAgICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE5NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNoYXJlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vcmllbnRhdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1vcGFjaXR5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNoYXJlLXBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYmFjay1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KC5zaGFyZS1wbHVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluc3RhLWhvdmVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICYtZ3JhZGllbnQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjM2LCAxMjIsIDMxKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzOGRlZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDIzNiwgMTIyLCAzMSwgMSkgMCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgyMjcsIDk4LCAxMjMsIDEpIDUwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDE2MCwgMTE4LCAxNDIsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDY1cHggKyAoODAgLSA2NSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgICAgICAgICAgICAgICYudGV4dC1oaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmJyYW5kLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMzUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmluc3RhLWhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgICAgICAgICAgICAgICAgICYtZ3JhZGllbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDIzNiwgMTIyLCAzMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDIzNiwgMTIyLCAzMSwgMSkgMCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMjI3LCA5OCwgMTIzLCAxKSA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMTYwLCAxMTgsIDE0MiwgMSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIHF1aWNrIHZpZXcgbW9kYWwgY3NzXG4gICAgLmNvbG9yLXZhcmlhbnQge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTYpLFxuICAgICAgICAgICAgICAgICAgICAwIDVweCAxNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJnLWhhbGYtbGlnaHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAuaGFsZi1ibGFjayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmctYmx1ZTEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRvZGdlci1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJnLWxpZ2h0MSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctYmxhY2sxIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sYWJlbC1wcmljZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxufVxuXG5AbWl4aW4gcHJvZHVjdF9zdHlsZV8xIHtcbiAgICAucHJvZHVjdC1zdHlsZS0xIHtcbiAgICAgICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICYucHJvZHVjdC1ib3gxIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcmVkLXNoYWRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJnLWltYWdlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9wZXJjZW50YWdlLmpwZyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi00IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby03O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucm91bmQtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJvdW5kZWQgMTBzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJnLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEudGV4dC1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDExNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRvcC13aXNobGlzdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgICAgICAmLnByb2R1Y3QtY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWxpc3Qge1xuICAgICAgICAgICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDkwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDcwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGV4dC1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYub2ZmZXItd3JhcCB7XG4gICAgICAgICAgICAucHJvZHVjdC1iYW5uZXIge1xuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgICAgICAgICAgICAgIC5pbWctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTk4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pbnN0YWdyYW0tMiB7XG4gICAgICAgICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAudG9wLXdpc2hsaXN0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbWctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbnN0YS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMzBweCArICg3MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAmLmluc3RhLXNwYWNpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYygzNXB4ICsgKDcwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gcHJvZHVjdF9zdHlsZV8yIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yIHtcbiAgICAgICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgICAgIC5pbWctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuXG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnJhdGluZy1kZXRhaWxzLFxuICAgICAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgICAgICYubWFpbi1zaG9wIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsKHRleHQtYWxpZ24sIGxlZnQsIHJpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcnQtd3JhcCB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSxcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGlkZS00IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNzBweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC03MHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHByb2R1Y3Rfc3R5bGVfMyB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgICAgICAmLnByb2R1Y3Qtc3R5bGUtY2hhaXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC10aXRsZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTggLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1wcmljZSB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTNweCArICgxOCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyOCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgfVxuXG4gICAgICAgICsucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE4IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBwcm9kdWN0X3N0eWxlXzQge1xuICAgIC5wcm9kdWN0LXN0eWxlLTQge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5ibG9nLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgLmJsb2ctaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAuYmxvZy1kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG9yYW5nZTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLFxuICAgICAgICAgICAgICAgICAgICAkb3JhbmdlMSAwJSxcbiAgICAgICAgICAgICAgICAgICAgJGxpZ2h0LXJlZCA1MCUsXG4gICAgICAgICAgICAgICAgICAgICRsaWdodC1wdXJwbGUgMTAwJSk7XG5cbiAgICAgICAgICAgIC5ibG9nLWltYWdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAuYmxvZy1kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICYuZ3JhZGllbnQtY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigxNjEsIDI0NSwgMTYxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTI5ZGVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgxNjEsIDI0NSwgMTYxLCAxKSAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMzgsIDEwNiwgMTEsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG9yYW5nZTE7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkb3JhbmdlMSAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0LXJlZCA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRsaWdodC1wdXJwbGUgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZGF0ZS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICR3aGl0ZSwgJGFscGhhOiAwLjMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoNDUgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMjMgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy1mb290ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNzBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxM3B4ICsgKDIwIC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogY2FsYyg1NHB4ICsgKDU4IC0gNTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMjAgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gcHJvZHVjdF9zdHlsZV81IHtcbiAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcblxuICAgICAgICAgICAgJi5iZy10cmFucyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mcm9udC1pbWcge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LWluZm8ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgLmNhcnQtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMwcHggKyAoNDAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygzMHB4ICsgKDQwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydF9xdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAuY2FydC1ib3gge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTQ1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDZweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVnMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnF1YW50aXR5LWxlZnQtbWludXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5xdWFudGl0eS1yaWdodC1wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5kZXRhaWwtcHJpY2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIC5sYWJlbHMge1xuICAgICAgICAgICAgICAgICAgICAubGFiZWwtMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC43cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA1MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDcwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgOTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMTAwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhcnRfcXR5IHtcbiAgICAgICAgICAgICAgICAgICAgLmNhcnQtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnByb2R1Y3QtYm94NiB7XG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB1bnNldDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby02O1xuXG4gICAgICAgICAgICAgICAgLmxhYmVscyB7XG4gICAgICAgICAgICAgICAgICAgIC5sYWJlbC03IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjdzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1kZXRhaWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLmRldGFpbC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAubGFiZWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbC03IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FydC1jb250YWluIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFiLXNlY3Rpb24ge1xuICAgIC5wcm9kdWN0LXN0eWxlLTEge1xuICAgICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5tYWluLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBjYXRlZ29yeSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBpbXBvcnQgXCIuLi91dGlscy9taXhpbi9jYXRlZ29yeVwiO1xuXG5AbWl4aW4gY2F0ZWdvcnlfY29tbW9uIHtcbiAgICAuY2F0ZWdvcnktc2VjdGlvbiB7XG4gICAgICAgICYucmF0aW9fNDAge1xuICAgICAgICAgICAgLmJnLXNpemUge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LXdyYXAge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jYXRlZ29yeS1jb2xvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY2F0ZWdvcnktcGFkZGluZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudGhlbWUtYmctY29sb3Ige1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgLmxpZ2h0LXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogOTZweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4wODtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgICAgICYudG9wLXNwYWNpbmcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoMnB4ICsgKDggLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LXRleHQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgyNCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTggLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtMSB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY2F0ZWdvcnktc3BhY2luZyB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnQtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgyNCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNhdGVnb3J5XzEge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0xIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aGVtZS1iZy1jb2xvciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAubGlnaHQtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjQgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY2F0ZWdvcnktc3BhY2luZyB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNhdGVnb3J5XzIge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0yIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aGVtZS1iZy1jb2xvciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAubGlnaHQtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LXNwYWNpbmcge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNhdGVnb3J5XzMge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0zIHtcbiAgICAgICAgLmNhdGVnb3J5LWltYWdlLWZydWl0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktY29udGFpbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktdGV4dCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjUgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBjYXRlZ29yeSBtaXhpbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1peGluIGNhdGVnb3J5XzEge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0xIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aGVtZS1iZy1jb2xvciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAubGlnaHQtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjQgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY2F0ZWdvcnktc3BhY2luZyB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgZm9vdGVyIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbmZvb3RlciB7XG4gICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYWluLWZvb3RlciB7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkZGVtbzEtYmc7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZGVtbzEtYmc7XG4gICAgICAgIHBhZGRpbmc6IDgwcHggMDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgPmRpdiB7XG5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkLFxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IC0xO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLWNvbnRhY3Qge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJyYW5kLWxvZ28ge1xuICAgICAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZpbGwtY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1sb2dvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3QtbGlzdHMge1xuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgICAgICAgICAgICAgICAgIGIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1saW5rcyB7XG4gICAgICAgIC5mb290ZXItdGl0bGUge1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzdcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC5mb250LWRhcmsge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLW5ld3NsZXR0ZXIge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjAzZW07XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWRhcms7XG5cbiAgICAgICAgICAgICAgICAmLmNvbG9yLTQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcmVkLXNoYWRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxNnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItbnVtYmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuZm9vdGVyLW51bWJlci1pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtdGhlbWUtY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItbnVtYmVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Yi1mb290ZXIge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3Rlci1zbS1zcGFjZSB7XG4gICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIENvb2tpZSBzZWN0aW9uIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbkBtaXhpbiBjb29raWUtYmFyLTEge1xuICAgIC5jb29raWUtYmFyLXNlY3Rpb24ge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIG1heC13aWR0aDogMzY1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ibHVlO1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBib3gtc2hhZG93OiAxcHggN3B4IDE0cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCA3cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjVzIGVhc2U7XG5cbiAgICAgICAgJi5jb29raWViYXItbGVmdC1zZWN0aW9uIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jaGFpci1jb29raWViYXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXJlZC1zaGFkZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNDBweCArICg2MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OnNlbGVjdGlvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXllbGxvdztcbiAgICAgICAgfVxuXG4gICAgICAgICYuaGlkZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAtMzUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMiAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYyg4cHggKyAoMTIgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9ucyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNvb2tpZS1iYXItMiB7XG4gICAgLmNvb2tpZS1iYXItc2VjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXJlZC1zaGFkZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBib3R0b206IDIwcHg7QGluY2x1ZGUgY2VudGVyKGhvcml6b250YWwpO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDdweCByZ2JhKCRibGFjazEsIDAuMTUpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGJvdHRvbTogOHB4O1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgd2lkdGg6IDMxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZsb3dlci1jb29raXJiYXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAmLnZlZy1jb29raWViYXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNztcbiAgICAgICAgfVxuXG4gICAgICAgICYuaGlkZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAtMzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMThweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb29raWUtYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIFN1YnNyaWJlIGNzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuLnN1YnNjcmliZS1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtdGhlbWUtY29sb3I7XG5cbiAgICAmLWxpZ2h0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNjtcbiAgICB9XG5cbiAgICAuc3Vic2NyaWJlLWRldGFpbHMge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMzAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3Vic3JpYmUtaW5wdXQge1xuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBvZmZlciBzZWN0aW9uIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuQG1peGluIG9mZmVyX2NvbW1vbiB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtdGhlbWUtY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg1MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDMwcHggKyAoMTAwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5kaXNjb3VudC1zcGFjaW5nIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoNTBweCArICgxODAgLSA1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LWltYWdlcyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDgwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRoZW1lLWNpcmNsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDUwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDExNywgNDIsIDIyMSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMTE3LCA0MiwgMjIxLCAxKSAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoODcsIDQ2LCAxNDcsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzQwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hvZXMtaW1hZ2VzLTEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDE4JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1OXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM0ZGVnKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMjQlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDMlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDMzJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJ1bi1zaG9lcyAxNXMgaW5maW5pdGUgbGluZWFyO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob2VzLWltYWdlcy0yIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDQzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZykgcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzc1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogOTVweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oZWFydC1idXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1saWdodC1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgJi0yIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8tbGlnaHQtMiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtby1saWdodC01O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mYS1oZWFydCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRlYWwtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoNDUgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gb2ZmZXJfMSB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1kZW1vLTQ7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg1MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDMwcHggKyAoMTAwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNjb3VudC1pbWFnZXMge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGhlbWUtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtby1saWdodC00O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTcwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTkwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MjBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob2VzLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzclO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNSUpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBydW4tc2hvZXMgMTVzIGluZmluaXRlIGxpbmVhcjtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LXNob3Age1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxNyU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTNweCArICgyNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtby1saWdodC00O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZWFsLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDQ1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIG9mZmVyXzIge1xuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtdGhlbWUtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNjAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAuZGlzY291bnQtaW1hZ2VzIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogODBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsb3dlci1pbWFnZXMtMSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTIxNXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC03MGRlZyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUzJTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE1MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsb3dlci1pbWFnZXMtMiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTI1MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDY3JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNzVkZWcpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xNjBweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0yMzVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYyJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMTYwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjM1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJ1bi1zaG9lcyAxNXMgaW5maW5pdGUgbGluZWFyO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LXNob3Age1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMjUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICg1IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg4cHggKyAoMTUgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNjdW50LWRldGFpbHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAmLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8tbGlnaHQtNTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGVhbC10ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICg0NSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJyYW5kIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJyYW5kLXNsaWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTdweDtcbn1cblxuLnppLTEge1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5ibG9nLXByb2ZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC13ZWlnaHQge1xuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXlpc2gtYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoLXNlY3Rpb24ge1xuICAgIC5zZWFyY2gtYmFyIHtcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW46IDI2cHggYXV0byAxMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3JzKTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBTb2NpYWwgbWVkaWEgY3NzIHN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc29jaWFsLW1lZGlhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJi5tZWRpYS1jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgK2Ege1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoOHB4ICsgKDE1IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyg4cHggKyAoMTUgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgICAgICB3aWR0aDogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHt9XG5cbiAgICAgICAgKy5zb2NpYWwtbWVpZGEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNnB4ICsgKDE1IC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNvY2lhbC1jb2xvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBMb2FkIG1vcmUgY3NzIHN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ubG9hZC1tb3JlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgICB3aWR0aDogMjgwcHg7XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1sb2FkLW1vcmUge1xuICAgIC5jb2wtZ3JpZC1ib3gge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgTG9nIEluIHBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ubG9naW4tc2VjdGlvbiB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICRkZW1vMS1iZztcbiAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICBwYWRkaW5nOiBjYWxjKDMwcHggKyAoNTAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAubWF0ZXJpYWxDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXG4gICAgICAgIC5ib3gge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTBweCArICgzMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuXG4gICAgICAgICAgICAmLmJhY2sge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgJGFscGhhOiAwLjYpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dpbi10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICgyIC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKC0xMHB4ICsgKC0xMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoLTEwcHggKyAoLTEwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyN3B4ICsgKDI4IC0gMjcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwcHggKyAoMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IGNhbGMoMTBweCArICgyNSAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGdyYXksICRhbHBoYTogMC42KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoOCUgKyAoMTggLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mYi1tZWRpYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmx1ZTtcblxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5nb29nbGUtbWVkaWEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuNCk7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTdweCArICgyMyAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICYucGFzcy1vciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg0cHggKyAoMTIgLSA0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGlucHV0LFxuICAgICAgICAgICAgLnNwaW4ge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cbiAgICAgICAgICAgIGJ1dHRvbiAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGUge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLmxvZ2luIGJ1dHRvbiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGVyaWFsLWJ1dHRvbixcbiAgICAgICAgLmFsdC0yLFxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZSxcbiAgICAgICAgLmFsdC0yIC5zaGFwZSxcbiAgICAgICAgLmJveCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICAuc3BpbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsICRmb250XzE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgJGZvbnRfMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAwLjgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICAgICAgICAgICAmLmVtYWlsLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMjQgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAkZm9udF8xO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAwLjgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjazEsICRhbHBoYTogMC4xNSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNwaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm92ZXJib3ggLmlucHV0IHtcbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgJi5idXR0b24tMSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5sb2dpbiB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjazEsIDAuMSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgMC4yKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxvZ2luIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpLmZhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkuZmEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhc3MtZm9yZ290IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuNCk7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvIDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2lnbi1jYXRlZ29yeSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRibGFjazEsICRhbHBoYTogMC40KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE4IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjIpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm92ZXJib3gge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNjBweCA1MHB4IDQwcHggNTBweDtcblxuICAgICAgICAgICAgLmxvZ2luLXRpdGxlLFxuICAgICAgICAgICAgLmJ1dHRvbixcbiAgICAgICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTExO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ2luLXRpdGxlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWF0ZXJpYWwtYnV0dG9uLFxuICAgICAgICAgICAgLmFsdC0yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYXRlcmlhbC1idXR0b24sXG4gICAgICAgIC5hbHQtMiB7XG4gICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA0MHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC03MHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tYXRlcmlhbC1idXR0b24sXG4gICAgICAgIC5hbHQtMiB7XG4gICAgICAgICAgICAuc2hhcGUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsXG4gICAgICAgIC5hbHQtMiAuc2hhcGU6YmVmb3JlLFxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlcixcbiAgICAgICAgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsXG4gICAgICAgIC5hbHQtMiAuc2hhcGU6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlcixcbiAgICAgICAgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGVyaWFsLWJ1dHRvbi5hY3RpdmUsXG4gICAgICAgIC5hbHQtMi5hY3RpdmUge1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIDQwNCBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnBhZ2Utbm90LWZvdW5kIHtcbiAgICAucGFnZS1pbWFnZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYygwcHggKyAoNTAgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDI1cHggKyAoMzUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBDb250YWN0IFBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uY29udGFjdC1zZWN0aW9uIHtcbiAgICAubWF0ZXJpYWxDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXG4gICAgICAgIC5tYXRlcmlhbC1kZXRhaWxzIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmVybXVkYS1ncmV5O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm94IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQge1xuXG4gICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgJGZvbnRfMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgMC44KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsICRmb250XzE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgMC44KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgICAgICAgICAgICAgJi5lbWFpbC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgLnNwaW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2sxLCAwLjEpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCBsYWJlbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgY29sb3I6ICRiZXJtdWRhLWdyZXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubG9jYXRpb24tbWFwIHtcbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDIwMHB4ICsgKDM0MCAtIDIwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtZGV0YWlscyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjFweCArICgzMCAtIDIxKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3QtYm94IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIC5jb250YWN0LXRpdGxlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg4MCUgLSA4MHB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcblxuICAgICAgICAgICAgICAgICAgICArcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRhY3QtaWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBGQVEgUGFnZSBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5zZWFyY2gtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMzBweCArICg1MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygzMHB4ICsgKDUwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuLmZhcS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAtMTYwcHg7XG5cbiAgICAuZmFxLWNvbnRhaW4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg0MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggNDBweCAwIHJnYmEoJGJsYWNrMSwgMC4xKTtcblxuICAgICAgICAuZmFxLWltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxOHB4ICsgKDIwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjIgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gLTJweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEtZGV0YWlscyB7XG4gICAgLmZhcS1saW5rLWJveCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IDMwcHg7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTQ0LCAxNzQsIDAuMjMpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE2IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgK2Ege1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEtaGVhZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICsuZmFxLWhlYWRpbmcge1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDMwcHggKyAoNDUgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxuXG4gICAgLmZlYXRoZXIge1xuICAgICAgICB3aWR0aDogY2FsYygyMHB4ICsgKDIyIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgfVxuXG4gICAgLmZhcS1vcHRpb24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDBweCk7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBSZXZpZXcgUGFnZSBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5yZXZpZXctc2VjdGlvbiB7XG4gICAgLnJldmlldy1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgzNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoJGJsYWNrMSwgMC4wOCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEycHggcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuXG4gICAgICAgICAgICAucmV2aWV3LWltYWdlIHtcbiAgICAgICAgICAgICAgICAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4wNDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmV2aWV3LWltYWdlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNzBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjdweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTJweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IC0yN3B4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJldmlldy1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgICAgIC5mYS1zdGFyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlLW5hbWUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDVweCArICgxMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyg1cHggKyAoMTAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDRweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXctbmFtZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIGh5cGhlbnM6IGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBQb3J0Zm9saW8gUGFnZSBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5wb3J0Zm9saW8ge1xuICAgIC5wZXJlZ3JhcGgge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrZ3JleSk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5idG4tc3VibWl0IHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhcmVudC1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi1zaXplIHtcbiAgICAgICAgICAgIC5pbWFnZXMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2VzIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAub3ZlcmxheS1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAub3ZlcmxheS1pY29uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuOHMgZWFzZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQmxvZyBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJsb2ctc2VjdGlvbiB7XG4gICAgLmJsb2ctaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vMS1iZywgJGFscGhhOiAwLjUpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLWRldGFpbHMge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgzNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTkgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzNiAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICgxIC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxMHB4ICsgKDEyIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmxvZy1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZhLXF1b3RlLWxlZnQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTI3cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTI3cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmltYWdlLXByb2ZpbGUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheWlzaC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmV2aWV3LW5hbWUge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXlpc2gtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxvZy1jYXRlZ29yaXR5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAmLmJveC1ib3R0b20ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgIH1cblxuICAgIC5ibG9nLWltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLXByb2ZpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmV2aWV3LW5hbWUge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheWlzaC1ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgK3Age1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgLmJsb2ctaW1nIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYXNvbmFyeS1ibG9nLXNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLnBlcmVncmFwaCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmtncmV5KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmJ0bi1zdWJtaXQge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYXNvbmFyeS1ibG9nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjA4KTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICYuYm94LXNoYWRvdyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMzUsIDM1LCAzNSwgMC4wOCk7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctc2l6ZSB7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgJi5pbWFnZS1maXQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDM1LCAzNSwgMzUsIDAuMDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoMjUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICYtd2lkdGgge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnF1b3RlLWJvZHkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnF1b3RlLWltYWdlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjVweCArICg0MCAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWFzb25hcnktbmFtZSB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICYucXVvdGUtaGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2ctcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZGVtby00O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAmLmJveC1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW1hZ2UtcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmltYWdlLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiByZXZlcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheWlzaC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmV2aWV3LW5hbWUge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXlpc2gtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9wdWxhci1wb3N0IHtcbiAgICAucG9wdWxhci10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgyNCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzNSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3B1bGFyLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvcHVsYXItY29udGFpbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE5IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucG9wdWxhci1kZXRhaWxzIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9wdWxhci10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XG5cbiAgICAmLm1pbnVzLXNwYWNpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbn1cblxuLmxlZnQtc2lkZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcblxuICAgIC8vUG9wdWxhciBwb3N0IHNlY3Rpb24gU3RhcnRcbiAgICAucG9wdWxhci1wb3N0IHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgLnJldmlldy1ib3gge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBtYXJnaW46IDJweCAtMnB4IC0ycHggLTJweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMnB4O1xuXG4gICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBvcHVsYXItaW1hZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICArLnBvcHVsYXItaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3B1bGFyLW51bWJlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3B1bGFyLWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNSAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuM3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3B1bGFyLWRldGFpbHMge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc29jaWFsLWljb24tYm94IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgICAgICArLnNvY2lhbC1pY29uLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBvcHVsYXIgcG9zdCBzZWN0aW9uIGVuZFxuXG4gICAgLy8gY2F0ZWdvcnkgc2VjdGlvbiBTdGFydFxuICAgIC5jYXRlZ29yeS1zZWN0aW9uIHtcbiAgICAgICAgLmNhdGVnb3J5LWJveCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICArLmNhdGVnb3J5LWJveCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1wcm9kdWN0IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jYXRlLXNoYXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhdGUtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhdGVnb3J5LXByb2R1Y3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgLmNhdGUtc2hhcGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhdGUtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1wcm9kdWN0IHtcbiAgICAgICAgICAgICAgICAgICAgLmNhdGUtc2hhcGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYXRlLWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjYXRlZ29yeSBzZWN0aW9uIGVuZFxuXG4gICAgLy8gVGFncyBzZWN0aW9uIHN0YXJ0XG4gICAgLnRhZy1zZWN0aW9uIHtcbiAgICAgICAgLmJ1dHRvbi10YWdzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMnB4IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUYWdzIHNlY3Rpb24gZW5kXG59XG5cbi5ibG9nLWRldGFpbHMge1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIC5ibG9nLWltYWdlLWJveCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy10aXRsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2ctY29udGFpbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLWRldGFpbC1jb250YWluIHtcbiAgICAgICAgcGFkZGluZzogMCAwIGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjcgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG5cbiAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmlydC1sYXR0ZXI6OmZpcnN0LWxldHRlciB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3NXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLXByb2ZpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTdweCArICgyMCAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE1IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXctbmFtZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjdweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICArcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxlYXZlLWNvbW1lbnRzIHtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxvY2stc2hhZG93LXNwYWNlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4MHB4IC0gMTRweCk7XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFBhZ2luYXRpb24gQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ucGFnZS1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAucGFnZS1pdGVtIHtcbiAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsucGFnZS1pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBDYXJ0IFBhZ2UgU2NzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLndpc2gtbGlzdC1zZWN0aW9uIHtcbiAgICAmLnRhYmxlLWRhc2hib2FyZCB7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb3VudC1kb3duIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGRlbW8xLWJnO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3BwaW5nLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5mYXMge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFibGUge1xuICAgIHRib2R5IHtcbiAgICAgICAgKyB7XG4gICAgICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcnQtYnV0dG9ucyB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG5cbiAgICA+ZGl2IHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTlweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53aXNobGlzdC10YWJsZSB7XG4gICAgdGhlYWQge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGJvZHkge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1vYmlsZS1jYXJ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJ0LXRhYmxlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNoYWRlLWdyYXk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCA4cHg7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICYuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDI1cHggKyAoMzUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDI1cHggKyAoMzUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTQgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRkLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9iaWxlLWNhcnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5xdHktYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucXR5LWJveCB7XG4gICAgICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG50Zm9vdCB7XG4gICAgdHIge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjNweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQxcHg7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGVmdC1zaWRlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuc2hvcHBpbmctYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcnQtc2VjdGlvbiB7XG4gICAgLmNvdW50LWRvd24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjFweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICArIHtcbiAgICAgICAgICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcnQtYnV0dG9ucyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuXG4gICAgICAgID5kaXYge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1OXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC10YWJsZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbiArIDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICAmLnRhYmxlLW9yZGVyIHtcblxuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTc1cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbiArIDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICYuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE2OSwgMTY5LCAxNjksIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRkLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2JpbGUtY2FydC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnF0eS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnF0eS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGZvb3Qge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjNweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MXB4O1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdC1zaWRlLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNob3BwaW5nLWJ1dHRvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC1jaGVja291dC1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgICAucHJvbW8tc2VjdGlvbiB7XG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNoZWNrb3V0LWJ1dHRvbiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1ib3gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcnQtYm94LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIC50b3RhbC1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAudG9wLWRldGFpbHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5ib3R0b20tZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBDaGVja291dCBQYWdlIFNjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi55b3VyLWNhcnQtYm94IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMTBweDtcblxuICAgIC5saXN0LWdyb3VwIHtcbiAgICAgICAgLmxoLWNvbmRlbnNlZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrMSwgMC4xMjUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNtYWxsLFxuICAgICAgICAgICAgc3BhbixcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5ldy1iYWRnZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgIH1cblxuICAgIC5jdXN0b21lLWltcHV0LWdyb3VwIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmN1c3RvbWUtZm9ybS1zZWxlY3Qge1xuICAgIHBhZGRpbmc6IDEycHggMjBweDtcbn1cblxuLmNoZWNrb3V0LWxhYmVsIHtcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4uY3VzdG9tZS1yYWRpby1ib3gge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIE9yZGVyIFN1Y2Nlc3MgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc3VjY2Vzcy1pY29uIHtcbiAgICBwYWRkaW5nOiA3MHB4IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICB9XG5cbiAgICAubWFpbi1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmNoZWNrLWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbW92ZXIgMXMgaW5maW5pdGUgYWx0ZXJuYXRlO1xuXG4gICAgICAgICAgICAuY2hlY2stYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAkZ3JlZW4tZGFyaywgJGdyZWVuLWRhcmspO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCxcbiAgICAgICAgICAgICAgICAgICAgMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44NCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZUNvbnRhaW5lciAwLjc1cyBlYXNlLW91dCBmb3J3YXJkcyAwLjc1cztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDgwO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogODA7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZUNoZWNrIDAuMzVzIGZvcndhcmRzIDEuMjVzIGVhc2Utb3V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNoZWNrLXNoYWRvdyB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiBjYWxjKC0xNSUgLSA1cHgpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjbG9zZXN0LXNpZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDczLCAyMTgsIDEzMSwgMSksXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCk7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBhbmltYXRlU2hhZG93IDAuNzVzIGVhc2Utb3V0IGZvcndhcmRzIDAuNzVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Y2Nlc3MtY29udGFpbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBjb2xvcjogZ3JlZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcmRlci1sZWZ0LWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCkge1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUge1xuICAgIC50YWJsZSB7XG4gICAgICAgIHRib2R5IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcblxuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uICsgNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHJldmVydCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Zm9vdCB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi50YWJsZS1vcmRlciB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1zdWNjZXNzIHtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm9yZGVyLWRldGFpbHMge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYXltZW50LW1vZGUge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZWxpdmVyeS1zZWMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09PT1cbiAgIERhc2hib2FyZCBTY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5kYXNoLWZpbHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLTMwMHB4O1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazEgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwMVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFnZS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIH1cbn1cblxuLmJveC1oZWFkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXNoYm9hcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuXG4gICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIycHggKyAoMzIgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzggLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRyZXNzIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndlbGNvbWUtbXNnIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJveC1hY2NvdW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygyNXB4ICsgKDQ1IC0gMjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgIC5ib3gtY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFkZHJlc3MtYm94IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB9XG5cbiAgICAuYm94LXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoNHB4ICsgKDggLSA0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoNixcbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiA2cHggMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICB9XG59XG5cbi5vcmRlci1ib3gtY29udGFpbiB7XG4gICAgLm9yZGVyLWJveCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4wNDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMjU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmRlci1ib3gtY29udGFpbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg0MHB4ICsgKDUwIC0gNDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXNoYm9hcmQtcHJvZmlsZSB7XG4gICAgLmRhc2gtcHJvZmlsZSB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjIwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IHtcbiAgICAucGFnZS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgfVxuXG4gICAgLnNlY3VyaXR5LWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdXJpdHktZGV0YWlscy0xIHtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoJGJsYWNrLCAwLjI4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cbn1cblxuLnN1Y2Nlc3MtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZGFuZ2VyLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAmLmRhbmdlci1jZW50ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zYXZlLWRldGFpbHMtYm94IHtcbiAgICAuc2F2ZS1kZXRhaWxzIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwcHggMTBweCByZ2JhKCRibGFjazEsICRhbHBoYTogMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zYXZlLW5hbWUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNhdmUtcG9zaXRpb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNhdmUtYWRkcmVzcyB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgY2FsYygycHggKyAoNSAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vYmlsZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogLTVweDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGF5bWVudC1jYXJkLWRldGFpbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5lZGl0LWNhcmQge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hZGQtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1zaGFkZS1ncmF5O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmNhcmQtZGV0YWlscyB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrLXNoYWRlLWdyYXk7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWRldGFpbHMge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1vbm9jaHJvbWF0aWM7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAycHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KSAzcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSA0cHgpLFxuICAgICAgICAgICAgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTI0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA0MCUsIHJnYmEoMjU1LFxuICAgICAgICAgICAgICAgICAgICAyNTUsXG4gICAgICAgICAgICAgICAgICAgIDI1NSxcbiAgICAgICAgICAgICAgICAgICAgMC4yKSA3MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgOTAlKTtcblxuICAgICAgICAmLmNhcmQtdmlzYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Ftb3VmbGFnZS1ncmVlbjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGFiaXQtY2FyZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFsZi1iYWtlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLW51bWJlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC52YWxpZC1kZXRhaWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjcpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpbWFyeSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUtZGV0YWlsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTBweCArICgyNSAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAubmFtZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcmQtaW1nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lZGl0LWNhcmQge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5lZGl0LWNhcmQtbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIE9yZGVyIFRyYWNraW5nIGNzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50cmFja2VyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxufVxuXG4udHJhY2tlci1udW1iZXIge1xuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2d0cmNrciB7XG4gICAgbWFyZ2luOiA0MHB4IDAgMTVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0zMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wcm9ndHJja3ItdG9kbyB7XG4gICAgICAgICAgICBjb2xvcjogJHNpbHZlcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkc2lsdmVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkc2lsdmVyO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICRzaWx2ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjExMVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNpbHZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xN3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZ3RyY2tyLWRvbmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHNlbGYtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyLjJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3JkZXItbGVmdC1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICAgIHdpZHRoOiAzMCU7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3JkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDVweCArICgxMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTJweCArICgyMyAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3JkZXItYWRkcmVzcyB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxlZnQtYm94IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTNweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLXNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQtYm94IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIHdpZHRoOiAxODBweDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udHJhY2tlci10YWJsZSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzBweCArICg2MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAudGFibGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMHB4ICsgKDE2IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg2cHggKyAoMTYgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNzVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIEVsZW1lbnQgUGFnZSBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5oZWFkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgLmJhY2tncm91bmQtY29udGFpbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cbi5jdXN0b21lLWNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgQWJvdXQgUGFnZSBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5hYm91dC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uYWJvdXQtZGV0YWlscyB7XG4gICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjUgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgIH1cbn1cblxuLmN1c3RvbWUtYWNjb3JkaW9uIHtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWxpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRncmF5LWxpZ2h0LCAkYWxwaGE6IDAuNSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkZ3JheS1saWdodCwgJGFscGhhOiAwLjUpO1xuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjNweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlYW0tY29udGFpbiB7XG4gICAgJi50ZWFtLWNlbnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGVhbS1kZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb3JlbGVzcy1idXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlYW0tZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb3JlbGVzcy1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB9XG59XG5cbi50ZWFtLWltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4udGVhbS1sZWFkZXItc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG59XG5cbi5sZWFkZXItY29udGFpbiB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5sZWFkZXItaW1hZ2Uge1xuICAgICAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZWFkZXItaW1hZ2Uge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuc29jaWFsLW1lZGlhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtNjBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDEyIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyNiwgNDYsIDgzLCAwLjgpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjYsIDQ2LCA4MywgMC42KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuNyk7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjAgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxlYWRlci1jb250YWluIHtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE1IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYyg2cHggKyAoMTAgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwIDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS42cHg7XG4gICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50ZXN0aW1vbmlhbC1zZWN0aW9uIHtcbiAgICAudGVzdGltb25pYWwtY29udGFpbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDhweCAkZ3JheS1saWdodDtcbiAgICAgICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0aW1vbmlhbC1pbWFnZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGVzdGltb25pYWwtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbjogMTVweCBhdXRvIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzLWltYWdlcyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZhLXF1b3RlLWxlZnQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBEYXJrIGFuZCBSVEwgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGhlbWUtc2V0dGluZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgei1pbmRleDogMztcblxuICAgIHVsIHtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY29sb3ItcGlja2VyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHgtbGFyZ2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBEYXJrIGFuZCBSVEwgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGVtby1jb250YWluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgkYmxhY2sxLCAwLjMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZGVtby1pbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtMTAwJSArIDUwMHB4KSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBTaG9wIHBhZ2UgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxMHB4O1xufVxuXG4uY2F0ZWdvcnktc2Nyb2xsIHtcbiAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgIC8qIHdpZHRoICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgIH1cblxuICAgIC8qIFRyYWNrICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodDtcbiAgICB9XG5cbiAgICAvKiBIYW5kbGUgKi9cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzaWx2ZXItbGlnaHQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG5cbiAgICAvKiBIYW5kbGUgb24gaG92ZXIgKi9cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG59XG5cbi5jdXN0b21lLWZvcm0tY2hlY2sge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTdweDtcbiAgICAgICAgaGVpZ2h0OiAxN3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXkgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpjaGVja2VkW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2NoZWNrLnN2Zyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4uc2lkZWJhci1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG59XG5cbi5jYXRlZ29yeS1vcHRpb24ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiA0MHB4O1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0zMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB6LWluZGV4OiA3O1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMzIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeS1uYW1lIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LXJhdGluZyB7XG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yYXRpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmF0aW5nLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy5yYXRpbmctbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZhLXN0YXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRoZW1lLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jYXRlZ29yeS1wcmljZSB7XG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogM3B4IDFweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5maWx0ZXItYWNjb3JkaW9uIHtcbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1kYXJrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE1IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcblxuICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC01cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1vcmFuZ2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4tMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctZGFyaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXNoYWRlLXNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1vcmFuZ2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4tMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctZGFyaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXNoYWRlLXNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDFweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbWludXMuc3ZnKTtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9wbHVzLnN2Zyk7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAzcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuZmVhdGhlciB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICB9XG59XG5cbi5oaWRlLWJ1dHRvbiB7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICB9XG59XG5cbi5zaG9ydC1uYW1lIHtcbiAgICBtYXJnaW46IC01cHg7XG5cbiAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VsZWN0LWZlYXR1cmVkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTtcbiAgICBjb2xvcjogJGdyYXktZGFyay0xO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWJsdWU7XG4gICAgICAgIGNvbG9yOiAkZ3JheS1kYXJrLTE7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAyLjI1cmVtIDAuMzc1cmVtIDAuNzVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICByaWdodDogMTRweDtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jdXN0b21lLW9mZmNhbnZhcyB7XG4gICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgfVxuXG4gICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgLmNhdGVnb3J5LXNwYWNpbmcge1xuICAgICAgICAgICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgKy5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IHVuc2V0O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW1hZ2Utc2xpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmltYWdlLXByb2R1Y3Qge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2UtY29udGFpbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLW5hbWUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogbGFyZ2U7XG4gICAgfVxufVxuXG4uZmlsdGVyLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uY2F0ZWdvcnktZmlsdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNhdGVnb3J5LWxpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmRyb3Bkb3duIHtcbiAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMzLCAyMzMsIDIzMywgMC41KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLmRyb3Bkb3duLWxpc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgKy5kcm9wZG93bi1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLXNob3ctYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxufVxuXG4udG9wLWZpbHRlci1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiAtMzAwcHg7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDE1cHggNXB4IDAgcmdiYSg3NywgNzcsIDc3LCAwLjI4KTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYWNrLWJ0biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTggLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub25jbGljay10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgKy5vbmNsaWNrLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKC1uICsgMykge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub25jbGljay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggNXB4IDlweCAzcHggcmdiYSgzMywgMzcsIDQxLCAuMTMpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNoaW5lc2Utc2lsdmVyLTE7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDYwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMzRweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMXB4IDlweCAzcHggcmdiYSgyMjgsIDIyOCwgMjI4LCAwLjgxKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub25jbGljay10aXRsZSB7XG4gICAgICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgICAgIC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmlsdGVyLXRpdGxlIHtcbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLm9uY2xpY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICsuZm9ybS1jaGVjayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2F0ZWdvcnktaW1hZ2Uge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmVsZWMtaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktY29udGFpbiB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMTVweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mbGl0ZXItbWVudSB7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDVweCBjYWxjKDEycHggKyAoMjAgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWxpZ2h0O1xuICAgICAgICBtYXJnaW46IDVweDtcblxuICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1ib3gge1xuICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAubWFpbi1wcmljZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGlzdGluZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlzdC12aWV3IHtcbiAgICAmLnByb2R1Y3QtYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG5cbiAgICAgICAgICAgIC5yYXRpbmctZGV0YWlscyxcbiAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwodGV4dC1hbGlnbiwgbGVmdCwgcmlnaHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1haW4tcHJpY2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJ0LXdyYXAge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAuYmFjayB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zbGlkZS00IHtcbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTcwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtNzBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb2xsZWN0aW9uLWdyaWQtdmlldyB7XG4gICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrMTtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYW5nZS1zbGlkZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAuaXJzLS1mbGF0IHtcbiAgICAgICAgLmlycy1saW5lIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlycy1tYXgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pcnMtYmFyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pcnMtaGFuZGxlIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pcnMtdG8ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlycy1mcm9tIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1kZWF0aWxzIHtcbiAgICAuYmFubmVyLWNvbnRhaW4ge1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNSAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vc3QtcG9wdWxhciB7XG4gICAgbWFyZ2luOiBjYWxjKDM1cHggKyAoNTAgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMCAwO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qtc2xpZGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTtcblxuICAgICAgICAuc2xpY2stcHJldixcbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0zNXB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpc3Qtc3R5bGUge1xuICAgID5kaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYXRpbmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDAgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYXRpbmctZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJi5yYXRpbmctc2hvcCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNpemUtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICAubGlzdGluZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5saXN0aW5nLXNob3Age1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxM3B4ICsgKDIwIC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNSAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maWx0ZXItb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLnNlbGVjdC1vcHRpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICtkaXYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ3JpZC1vcHRpb25zIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYuYXZ0aXZlIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogaW52ZXJ0KDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhdGVnb3J5LXNpZGUge1xuICAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xuXG4gICAgJi5zaG93IHtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAuY3VzdG9tZS1mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBQcm9kdWN0IFBhZ2UgQ1NTIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnByby1wb3B1bGFyIHtcbiAgICAucHJvZHVjdC1zbGlkZXIge1xuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGluZyB7XG4gICAgLmZhLXN0YXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuXG4gICAgICAgICYudGhlbWUtY29sb3Ige1xuICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3cgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2R1Y3QtdGl0bGUge1xuICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDtcblxuICAgICYtMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgfVxuXG4gICAgJi5odXJyeS10aXRsZSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNoaXBwaW5nLWluZm8ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qtc29jaWFsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZGRlZC1ub3RpZmljYXRpb24ge1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAtMTAwcHg7XG4gICAgcmlnaHQ6IDMwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IDFweCAkYm9yZGVyLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgei1pbmRleDogOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgfVxuXG4gICAgJi5zaG93IHtcbiAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4uYWRkZWZmZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGdyYXktbGlnaHQ7XG5cbiAgICAmLmNhcnRNb3ZlIHtcbiAgICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuc2l6ZS1ib3gge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBidXR0b25zLXNoYWtlIDAuODJzIGN1YmljLWJlemllcigwLjM2LCAwLjA3LCAwLjE5LCAwLjk3KSBib3RoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpemUtYm94IHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICB9XG5cbiAgICAucXR5LWJveCB7XG4gICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgICAgIGZsZXg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0LWJ1dHRvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICB9XG5cbiAgICAuYnRuLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDQ1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgKy5idG4tc29saWQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5idG4tYW5pbWF0aW9uIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmluZyA0cyAwLjdzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2hpcHBpbmctb3JkZXIge1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2R1Y3QtY291bnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgIHBhZGRpbmc6IDEwcHggMTJweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTRweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW5nLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIGg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb2xvci12YXJpYW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgbGkge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcblxuICAgICAgICArbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpc3BlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXItb3JpZ2luYWw7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcmljZS1kZXRhaWwge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBjb2xvcjogJGJsYWNrMTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbjogMTVweCAwO1xuXG4gICAgZGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogJHNpbHZlci1zYXR1cmF0ZWQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGFiZWwtc2VjdGlvbiB7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAuYmFkZ2UtZ3JleS1jb2xvciB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMXB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LXNhdHVyYXRlZDtcbiAgICB9XG5cbiAgICAubGFiZWwtdGV4dCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VydmljZS1hY2NvcmlvbiB7XG4gICAgcGFkZGluZzogMjhweDtcblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgIC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc2VydmljZS13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VydmljZS1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlcnZpY2UtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRldGFpbHMtaXRlbXMge1xuICAgIC5jb2xvci1pbWFnZSB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Utc2VsZWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlscy1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAucHJvZHVjdC1pbWFnZS10YWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggMCAwIDUwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTFweCAycHggMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVncmVlLXNlY3Rpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmltYWdlLTM2MCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgJi52aWRlb3BsYXktYm94IHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlscy1pbWFnZS1vcHRpb24ge1xuICAgICAgICAucGxheS1pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLmZhLXBsYXkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xvdGgtZGV0YWlscy1zaXplIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMtaW1hZ2UtY29uY2VwdCB7XG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJhdGluZy1udW1iZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRjb2xvcjogJGJsYWNrLCAkYWxwaGE6IDAuMSk7XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlLXJhdGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm9yZGVyLXByb2R1Y3Qge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAkZ3JheS1saWdodDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lci01IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IC01cHggMDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpbWVyMSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAuY291bnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1idW5kbGUge1xuICAgICAgICAgICAgLmJ1bmRsZS1pbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5pbWFnZS1jb250YWluIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKCRibGFjazEsICRhbHBoYTogMC4xNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2hlY2tib3gtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMThweDtcblxuICAgICAgICAgICAgICAgIC5jaGVja2JveC1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNsb3RoLXNpemUge1xuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNob29zZS1zaXplIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMTBweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjIpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvdGgtdGltZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1kZW1vLTQ7XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3RpbWUtZGF0ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjIpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvdGgtY29sb3Ige1xuICAgICAgICAgICAgLmRyb3Bkb3duLWNvbG9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGNvbG9yOiAkYmxhY2ssICRhbHBoYTogMC4yKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3VudGVyLTEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAyLjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndpc2UtbGlzdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1idXR0b24ge1xuICAgICAgICAgICAgLmJ1eS1jYXJ0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTYgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE2MDAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAuZmEtc2hvcHBpbmctY2FydCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWRkLWNhcnQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTYwMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjEpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjAwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBheS1vcHRpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNoYXJlLWl0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjaGluZXNlLXNpbHZlcjtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyaWdodC1zaWx2ZXItMTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hhcmUtb3B0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2xvdGgtcmV2aWV3IHtcbiAgICAubmF2LXRhYnMge1xuICAgICAgICBmbGV4LXdyYXA6IGluaXRpYWw7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hpcHBpbmctY2hhcnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmtzaWx2ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWItcGFuZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuXG4gICAgICAgIC5jdXN0b21lci1yZXZpZXctYm94IHtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdXN0b21lci1zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkYm9yZGVyLWNvbG9yLCAkYWxwaGE6IDAuNyk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG5cbiAgICAgICAgICAgICAgICAuY3VzdG9tZXItcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdXN0b21lci1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuXG4gICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZGF0ZS1jdXN0byB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmN1c3RvbWVyLXJhdGluZyB7XG4gICAgICAgICAgICAucmF0aW5nLXByb2dlc3Mge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIxcHg7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnByb2dyZXNzLWJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1wYW5lIHtcbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAmLmJnLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBybyB7XG4gICAgICAgICAgICAudGFibGUtcGFydCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5xdWVzdGlvbi1hbnN3ZXIge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgIC5xdWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mYS1xdWVzdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnF1ZS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC45cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNwZWNpLWxpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1Ym1pdC1idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS4ycmVtIDAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZXZpZXctYm94IHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRsaWdodC10aGVtZS1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYXJ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDBweCArICgyMCAtIDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgLmlubmVyLXRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG59XG5cbi5jdXN0b21lLW1vZGFsIHtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAuc2hhcmUtaXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlY2VudGx5LXB1cmNoYXNlIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3R0b206IC0yMDBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgei1pbmRleDogNztcbiAgICBib3gtc2hhZG93OiAwIDAgNHB4IDAgcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuMik7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC42cyBlYXNlO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW46IDAgMTNweDtcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjZzIGVhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBib3R0b206IDgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgIGJvdHRvbTogNjRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyMiU7XG4gICAgfVxuXG4gICAgLmNsb3NlLXBvcHVwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogN3B4O1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lZGlhLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTYgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMnB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudGltZUFnbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0aWNreUNhcnQge1xuICAgIHBhZGRpbmctYm90dG9tOiA5NHB4O1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5zdGlja3ktYm90dG9tLWNhcnQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgfVxuXG4gICAgLnJlY2VudGx5LXB1cmNoYXNlIHtcbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIGJvdHRvbTogMTEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFwLXRvcCB7XG4gICAgICAgIGJvdHRvbTogMTEwcHg7XG4gICAgfVxufVxuXG4ub3V0bGluZS1idXR0b24ge1xuICAgIHBhZGRpbmc6IDEycHggNDVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgIH1cbn1cblxuLnN0aWNreS1ib3R0b20tY2FydCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogLTE2MHB4O1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICB6LWluZGV4OiA5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuXG4gICAgLmNhcnQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSxcbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuXG4gICAgICAgICAgICAgICAgZGVsIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlbGVjdGlvbi1zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFkZC1idG4ge1xuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi53aXNobGlzdC1idG4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICthIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogN3B4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0LWltYWdlIHtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAgICAgLmNhcnQtd3JhcCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zcztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNHM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDRweCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICArLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbn1cblxuLy8gMzYwIERlZ3JlZSBTdGFydFxuLndyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJGRhcmtzaWx2ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICN0aHJlZXNpeHR5IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgIC5idXR0b25zLXdyYXBwZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ29tcGFyZSBTZWN0aW9uIFN0YXJ0XG4uY29tcGFyZS10YWJsZSB7XG4gICAgdGJvZHkge1xuICAgICAgICB0ciB7XG5cbiAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudGFibGUtaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbWFnZS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuLXNvbGlkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgQ29taW5nIHNvb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG4uc3RvcmUtY29udGFpbmVyIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDMyJTtcblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgI3RvbGRvIHtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgMS40cyBlYXNlLWluIGZvcndhcmRzO1xuICAgIH1cblxuICAgIC5ncmFzcyB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgMS42cyBlYXNlLWluIGZvcndhcmRzO1xuICAgIH1cblxuICAgICN3aW5kb3cge1xuICAgICAgICBhbmltYXRpb246IGZhZGVJbiAwLjVzIDEuOHMgZWFzZS1pbiBmb3J3YXJkcztcbiAgICB9XG5cbiAgICAjZG9vciB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgMnMgZWFzZS1pbiBmb3J3YXJkcztcbiAgICB9XG5cbiAgICAjc2lnbiB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDgzN3B4IDU5N3B4O1xuICAgICAgICBhbmltYXRpb246IHBlbmR1bHVtIDEuNXMgMnMgZWFzZS1pbi1vdXQgYWx0ZXJuYXRlO1xuICAgIH1cblxuICAgIC50cmVlcyB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgMi4ycyBlYXNlLWluIGZvcndhcmRzO1xuICAgIH1cblxuICAgICNicm93c2VyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgYW5pbWF0aW9uOiBtb3ZlRG93biAxLjVzIGN1YmljLWJlemllcigwLjc3LCAtMC41LCAwLjMsIDEuNSkgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgLnN0cm9rZSB7XG4gICAgICAgIHN0cm9rZTogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDU7XG4gICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcbiAgICB9XG5cbiAgICAucm91bmQtZW5kIHtcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIH1cblxuICAgICNzdG9yZSB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuOHMgZWFzZS1pbjtcbiAgICB9XG5cbiAgICAuY2F0IHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTE0NXB4IDYyMHB4O1xuICAgIH1cblxuICAgIC5jYXQtc2hhZG93IHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTExNXB4IDYyNXB4O1xuICAgIH1cblxuICAgICNzdG9yZTpob3ZlciAuY2F0IHtcbiAgICAgICAgYW5pbWF0aW9uOiBjYXRIaSAzcyAzcyBjdWJpYy1iZXppZXIoMC43LCAtMC41LCAwLjMsIDEuNCk7XG4gICAgfVxuXG4gICAgI3N0b3JlOmhvdmVyIC5jYXQtc2hhZG93IHtcbiAgICAgICAgYW5pbWF0aW9uOiBjYXRTaGFkb3cgNHMgMnMgY3ViaWMtYmV6aWVyKDAuNywgLTAuNSwgMC4zLCAxLjQpIGFsdGVybmF0ZTtcbiAgICB9XG5cbiAgICAuYm94LFxuICAgIC5wYXJhY2h1dGUge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA0MzBweCAxMDBweDtcbiAgICAgICAgYW5pbWF0aW9uOiBtb3ZlQm94IDE0cyA0cyBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgLnBhcmFjaHV0ZSB7XG4gICAgICAgIGFuaW1hdGlvbjogcGFyYWNodXRlIDE0cyA0cyBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgLnRzaGlydCB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluT3V0IDQycyAxMHMgZWFzZS1pbiBmb3J3YXJkcyBpbmZpbml0ZTtcbiAgICB9XG5cbiAgICAuY2FwIHtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5PdXQgNDJzIDI0cyBlYXNlLWluIGZvcndhcmRzIGluZmluaXRlO1xuICAgIH1cblxuICAgIC5iYWxsIHtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5PdXQgNDJzIDM4cyBlYXNlLWluIGZvcndhcmRzIGluZmluaXRlO1xuICAgIH1cblxuICAgICN0ZXh0LFxuICAgICNidXR0b24ge1xuICAgICAgICBhbmltYXRpb246IGZhZGVJbiAxcyA1cyBlYXNlLWluIGZvcndhcmRzO1xuICAgIH1cblxuICAgIC5za3ktY2lyY2xlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5PdXQgMTBzIDVzIGVhc2UtaW4gaW5maW5pdGU7XG4gICAgfVxuXG4gICAgLnNreS1jaXJjbGUyIHtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5PdXQgMTJzIDMwcyBlYXNlLWluIGluZmluaXRlO1xuICAgIH1cblxuICAgIC5za3ktY2lyY2xlMyB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluT3V0IDhzIDQwcyBlYXNlLWluIGluZmluaXRlO1xuICAgIH1cblxuICAgIC5jbG91ZCB7XG4gICAgICAgIGFuaW1hdGlvbjogY2xvdWRzIDUwcyBsaW5lYXIgYmFja3dhcmRzIGluZmluaXRlO1xuICAgIH1cblxuICAgIC5jbG91ZDIge1xuICAgICAgICBhbmltYXRpb246IGNsb3VkcyA0MHMgNDBzIGxpbmVhciBiYWNrd2FyZHMgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgLnBsYW5lIHtcbiAgICAgICAgYW5pbWF0aW9uOiBjbG91ZHMgMzBzIGxpbmVhciBiYWNrd2FyZHMgaW5maW5pdGU7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgfVxuXG4gICAgI3RvbGRvLFxuICAgIC5ncmFzcyxcbiAgICAjd2luZG93LFxuICAgICNkb29yLFxuICAgIC50cmVlcyxcbiAgICAuY2F0LFxuICAgIC5jYXQtc2hhZG93LFxuICAgIC5ib3gsXG4gICAgLnBhcmFjaHV0ZSxcbiAgICAudHNoaXJ0LFxuICAgIC5jYXAsXG4gICAgLmJhbGwsXG4gICAgI3RleHQsXG4gICAgI2J1dHRvbixcbiAgICAuc2t5LWNpcmNsZSxcbiAgICAuc2t5LWNpcmNsZTIsXG4gICAgLnNreS1jaXJjbGUzIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG59XG5cbi5jb21pbmctc29vbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMjVweCArICg0NSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMTZweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgIG1hcmdpbjogMHB4IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICByZXNwb25zaXZlIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNDMwcHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIFJUTCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5bZGlyPVwicnRsXCJdIHtcblxuICAgIG9sLFxuICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgfVxuXG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxufSJdfQ== */
/*# sourceMappingURL=demo2.css.map */
