@-webkit-keyframes menuOpen {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-moz-keyframes menuOpen {
  from {
    -moz-transform: translateX(-100%);
         transform: translateX(-100%);
  }
  to {
    -moz-transform: translateX(0);
         transform: translateX(0);
  }
}
@keyframes menuOpen {
  from {
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes menuClose {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-moz-keyframes menuClose {
  from {
    -moz-transform: translateX(0);
         transform: translateX(0);
  }
  to {
    -moz-transform: translateX(-100%);
         transform: translateX(-100%);
  }
}
@keyframes menuClose {
  from {
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes menuOverlayImagesOpen {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
}
@-moz-keyframes menuOverlayImagesOpen {
  from {
    -moz-transform: translateX(-100%);
         transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
  }
  to {
    -moz-transform: translateX(0);
         transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes menuOverlayImagesOpen {
  from {
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
            transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
  }
  to {
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
}
@-webkit-keyframes menuOverlayImagesClose {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
  }
}
@-moz-keyframes menuOverlayImagesClose {
  from {
    -moz-transform: translateX(0);
         transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
  to {
    -moz-transform: translateX(-100%);
         transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes menuOverlayImagesClose {
  from {
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
  to {
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
            transform: translateX(-100%);
    opacity: 0;
    visibility: hidden;
  }
}
.hole-stats-wrapper {
  position: absolute;
  bottom: 0;
  z-index: 120;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .hole-stats-wrapper {
    bottom: -94px;
  }
}

.hole-stats {
  position: relative;
  margin-bottom: 60px;
}
@media only screen and (max-width: 768px) {
  .hole-stats {
    display: none;
  }
}

.hole-stats__name {
  font-size: 30px;
  font-size: 1.7647058824rem;
  margin-bottom: 0;
  line-height: 1;
  color: #fff;
}

.hole-stats__figures {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 5px;
}
.hole-stats__figures span {
  font-size: 18px;
  font-size: 1.0588235294rem;
  letter-spacing: 0.03515625em;
  text-transform: uppercase;
  font-family: var(--font--sans-serif-two);
  font-weight: 500;
  display: inline-block;
  color: #fff;
}
.hole-stats__figures span:not(:last-child) {
  margin-right: 3px;
}

.hole__stats--more-info {
  -webkit-animation: glow 3s linear infinite;
     -moz-animation: glow 3s linear infinite;
          animation: glow 3s linear infinite;
  font-size: 16px;
  font-size: 0.9411764706rem;
  letter-spacing: 0.03125em;
  text-transform: uppercase;
  margin-left: auto;
  font-family: var(--font--sans-serif-two);
  font-weight: 500;
}
@-webkit-keyframes glow {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
}
@-moz-keyframes glow {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
}
@keyframes glow {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
}
.hole__stats--more-info .icon {
  width: 17px;
  height: 10px;
}
.hole-stats-wrapper .hole__stats--more-info, .hole-stats-wrapper .hole__stats--more-info:hover {
  color: #fff;
}

.hole__stats--more-info-panel {
  -webkit-animation: glow 3s linear infinite;
     -moz-animation: glow 3s linear infinite;
          animation: glow 3s linear infinite;
  font-size: 20px;
  font-size: 1.1764705882rem;
  position: absolute;
  bottom: 60px;
  right: 60px;
  z-index: 120;
  color: #fff;
}
@keyframes glow {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
}
.hole__stats--more-info-panel:hover {
  color: #fff;
}
.hole__stats--more-info-panel > span {
  vertical-align: middle;
  cursor: pointer;
}
.hole__stats--more-info-panel .icon-wrapper {
  position: relative;
  display: inline-block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  width: 40px;
  height: 40px;
  border-width: 2px;
  border-style: solid;
  border-color: #fff;
  border-radius: 50%;
  background-color: transparent;
  display: inline-block;
  margin-right: 20px;
}
.hole__stats--more-info-panel .icon-wrapper .icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.hole__stats--more-info-panel .icon-wrapper .icon {
  width: 18px;
  height: 18px;
}
@media only screen and (max-width: 1280px) {
  .hole__stats--more-info-panel {
    font-size: 18px;
    font-size: 1.0588235294rem;
  }
  .hole__stats--more-info-panel .icon-wrapper {
    width: 30px;
    height: 30px;
    margin-right: 10px;
  }
  .hole__stats--more-info-panel .icon-wrapper .icon {
    width: 12px;
    height: 12px;
  }
}
@media only screen and (max-width: 768px) {
  .hole__stats--more-info-panel {
    top: -45px;
    bottom: auto;
    right: 20px;
  }
}
@media only screen and (max-width: 550px) {
  .hole__stats--more-info-panel {
    font-size: 16px;
    font-size: 0.9411764706rem;
    top: -42px;
  }
  .hole__stats--more-info-panel .icon-wrapper {
    width: 20px;
    height: 20px;
    margin-right: 3px;
  }
  .hole__stats--more-info-panel .icon-wrapper .icon {
    width: 8px;
    height: 8px;
  }
}

.hole__video-btn-wrapper {
  position: absolute;
  bottom: 10px;
  right: 20px;
  z-index: 120;
}
.hole__video-btn-wrapper.tablet--show {
  bottom: 15px;
}

.btn--hole-play-video {
  -webkit-transition: opacity;
  -moz-transition: opacity;
  transition: opacity;
  -webkit-transition-duration: 0.15s;
     -moz-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
     -moz-transition-timing-function: ease;
          transition-timing-function: ease;
  font-size: 18px;
  font-size: 1.0588235294rem;
  letter-spacing: 0.03515625em;
  text-transform: uppercase;
  padding-left: 40px;
  color: #fff;
  opacity: 1;
}
.btn--hole-play-video .icon {
  position: absolute;
  top: -6px;
  left: 0;
  width: 30px;
  height: 30px;
}
.btn--hole-play-video:hover {
  color: #fff;
  opacity: 0.7;
}
.btn--hole-play-video.hide {
  opacity: 0;
  visibility: hidden;
}

.hole__map {
  position: relative;
  top: -20px;
}
@media only screen and (max-width: 960px) {
  .hole__map {
    top: 0;
    display: block;
    margin: 20px auto;
  }
}

.hole__map-zoom {
  position: relative;
  max-width: 300px;
  margin: auto;
}
.hole__map-zoom * {
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}
.hole__map-zoom img {
  display: block;
}
.hole__map-zoom:hover .hole__map-zoom-image {
  border-color: #d2d2d2;
}
.hole__map-zoom::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: none;
  width: 105%;
  height: 100%;
}
@media only screen and (max-width: 550px) {
  .hole__map-zoom .hole__map-zoom-info {
    display: none;
  }
  .hole__map-zoom .hole__map-zoom-image {
    border-color: #fff;
  }
  .hole__map-zoom::before {
    display: block;
  }
}

.hole__map-zoom-info {
  font-size: 16px;
  font-size: 0.9411764706rem;
  letter-spacing: 0.03125em;
  text-transform: uppercase;
  position: absolute;
  z-index: 1;
  padding: 10px 45px 10px 15px;
  color: #7d7d7d;
  background-color: rgba(255, 255, 255, 0.3);
  -webkit-transform: rotate(-90deg);
     -moz-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transform-origin: 50% 266% 0;
     -moz-transform-origin: 50% 266% 0;
      -ms-transform-origin: 50% 266% 0;
          transform-origin: 50% 266% 0;
}
.hole__map-zoom-info::before {
  width: 27px;
  height: 28px;
  background-image: url(/wp-content/themes/awsite/build/img/zoom-ico@1x-bf55ec.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 9px;
  right: 13px;
  display: block;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .hole__map-zoom-info::before {
    background-image: url(/wp-content/themes/awsite/build/img/zoom-ico@2x-1cf486.png);
  }
}

.hole__map-zoom-image {
  -webkit-transition: border-color;
  -moz-transition: border-color;
  transition: border-color;
  -webkit-transition-duration: 300ms;
     -moz-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease;
     -moz-transition-timing-function: ease;
          transition-timing-function: ease;
  display: inline-block;
  width: 100%;
  height: auto;
  border: 1px solid #fff;
}

.hole__tip {
  color: var(--brand-color--one);
}

.hole__pro {
  position: relative;
}

.hole__pro-image {
  display: block;
  border-radius: 50%;
  margin: 5px 0 12px;
}

.hole__pro-details-wrapper div {
  font-size: 17px;
  font-size: 1rem;
}
.hole__pro-details-wrapper div:first-child {
  font-weight: 600;
  color: var(--brand-color--two);
}
.hole__pro-details-wrapper div:last-child {
  font-size: 17px;
  font-size: 1rem;
  letter-spacing: 0.033203125em;
  text-transform: uppercase;
  color: #858585;
}

.hole__sponsor h5 {
  font-size: 18px;
  font-size: 1.0588235294rem;
  color: var(--brand-color--one);
}
.hole__sponsor img {
  display: block;
  margin-bottom: 10px;
}

.hole__sponsor-text {
  margin-top: 30px;
}
.hole__sponsor-text p {
  font-size: 15px;
  font-size: 0.8823529412rem;
  color: #707070;
}
.hole__sponsor-text p:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .slideshow--hole {
    overflow: visible;
    margin-bottom: 94px;
  }
  .slideshow--hole .slideshow__item::before {
    height: 50px;
  }
}
.slideshow--hole .swiper-wrapper {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
}
.slideshow--hole .slideshow__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slideshow--hole .swiper-pagination {
  display: none;
}
@media only screen and (max-width: 768px) {
  .slideshow--hole .swiper-pagination {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
       -moz-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    max-width: 70%;
    left: 0;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
            transform: none;
    bottom: 20px;
  }
}
.slideshow--hole[data-progress-bar=true] .swiper-progress {
  -webkit-transition: opacity;
  -moz-transition: opacity;
  transition: opacity;
  -webkit-transition-duration: 600ms;
     -moz-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease;
     -moz-transition-timing-function: ease;
          transition-timing-function: ease;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 4px;
  background-color: #fff;
  z-index: 119;
  display: block;
  opacity: 0;
}
.slideshow--hole[data-progress-bar=true] .swiper-progress.animate {
  opacity: 1;
  -webkit-animation-name: progress;
     -moz-animation-name: progress;
          animation-name: progress;
  -webkit-animation-timing-function: linear;
     -moz-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
     -moz-animation-iteration-count: 1;
          animation-iteration-count: 1;
}
.slideshow--hole .swiper-progress {
  display: none;
}
@-webkit-keyframes progress {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@-moz-keyframes progress {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes progress {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

.hole__heading {
  margin-bottom: 20px;
  text-align: center;
}
.hole__heading .hole-stats__figures {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.hole__heading h1 {
  font-size: 28px;
  font-size: 1.6470588235rem;
  color: var(--brand-color--one);
  display: block;
  margin: 0;
}
.hole__heading .hole-stats__figures span {
  color: var(--brand-color--blue);
}

.hole-top-navigation {
  position: absolute;
  top: 87px;
  z-index: 1;
  width: 100%;
}
.hole-top-navigation a {
  font-size: 19px;
  font-size: 1.1176470588rem;
  letter-spacing: 0.037109375em;
  text-transform: uppercase;
  font-family: var(--font--sans-serif-two);
  font-weight: 500;
  position: absolute;
  line-height: 1;
  color: var(--brand-color--one);
}
.hole-top-navigation a .icon {
  -webkit-transition: left, right;
  -moz-transition: left, right;
  transition: left, right;
  -webkit-transition-duration: 0.15s;
     -moz-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
     -moz-transition-timing-function: ease;
          transition-timing-function: ease;
  top: 2px;
  width: 16px;
  height: 16px;
}
.hole-top-navigation a:hover {
  color: var(--brand-color--two);
}
.hole-top-navigation .prev-hole-link {
  left: 0;
  padding-left: 20px;
}
.hole-top-navigation .prev-hole-link .icon {
  left: -10px;
}
.hole-top-navigation .prev-hole-link:hover .icon {
  left: -17px;
}
.hole-top-navigation .next-hole-link {
  right: 0;
  padding-right: 20px;
}
.hole-top-navigation .next-hole-link .icon {
  right: -10px;
}
.hole-top-navigation .next-hole-link:hover .icon {
  right: -17px;
}

.hole-bottom-navigation {
  position: relative;
}
.hole-bottom-navigation .btn:last-child {
  float: right;
}
@media only screen and (max-width: 550px) {
  .hole-bottom-navigation .btn {
    float: none;
    display: block;
    width: 100%;
  }
  .hole-bottom-navigation .btn:not(:last-child) {
    margin-bottom: 10px;
  }
}

.scorecard-accordion {
  padding: 12px 0 0;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Nzcy9saWIvX2FuaW1hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zY3NzL3BhZ2VzL19ob2xlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9faG9sZS1zdGF0cy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zY3NzL2xpYi9fc2V0dGluZ3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Nzcy9saWIvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2hvbGUtbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9faG9sZS1wcm8tdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9faG9sZS1zcG9uc29yLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0lBO0VBQ0U7SUFDRTtZQUFBO0VDdklGO0VENElBO0lBQ0U7WUFBQTtFQzFJRjtBQUNGO0FEaUlBO0VBQ0U7SUFDRTtTQUFBO0VDdklGO0VENElBO0lBQ0U7U0FBQTtFQzFJRjtBQUNGO0FEaUlBO0VBQ0U7SUFDRTtPQUFBO1lBQUE7RUN2SUY7RUQ0SUE7SUFDRTtPQUFBO1lBQUE7RUMxSUY7QUFDRjtBRCtJQTtFQUNFO0lBQ0U7WUFBQTtFQzdJRjtFRGtKQTtJQUNFO1lBQUE7RUNoSkY7QUFDRjtBRHVJQTtFQUNFO0lBQ0U7U0FBQTtFQzdJRjtFRGtKQTtJQUNFO1NBQUE7RUNoSkY7QUFDRjtBRHVJQTtFQUNFO0lBQ0U7T0FBQTtZQUFBO0VDN0lGO0VEa0pBO0lBQ0U7T0FBQTtZQUFBO0VDaEpGO0FBQ0Y7QURxSkE7RUFDRTtJQUNFO1lBQUE7SUFDQTtJQUNBO0VDbkpGO0VEcUpBO0lBQ0U7WUFBQTtJQUNBO0lBQ0E7RUNuSkY7QUFDRjtBRHlJQTtFQUNFO0lBQ0U7U0FBQTtJQUNBO0lBQ0E7RUNuSkY7RURxSkE7SUFDRTtTQUFBO0lBQ0E7SUFDQTtFQ25KRjtBQUNGO0FEeUlBO0VBQ0U7SUFDRTtPQUFBO1lBQUE7SUFDQTtJQUNBO0VDbkpGO0VEcUpBO0lBQ0U7T0FBQTtZQUFBO0lBQ0E7SUFDQTtFQ25KRjtBQUNGO0FEc0pBO0VBQ0U7SUFDRTtZQUFBO0lBQ0E7SUFDQTtFQ3BKRjtFRHNKQTtJQUNFO1lBQUE7SUFDQTtJQUNBO0VDcEpGO0FBQ0Y7QUQwSUE7RUFDRTtJQUNFO1NBQUE7SUFDQTtJQUNBO0VDcEpGO0VEc0pBO0lBQ0U7U0FBQTtJQUNBO0lBQ0E7RUNwSkY7QUFDRjtBRDBJQTtFQUNFO0lBQ0U7T0FBQTtZQUFBO0lBQ0E7SUFDQTtFQ3BKRjtFRHNKQTtJQUNFO09BQUE7WUFBQTtJQUNBO0lBQ0E7RUNwSkY7QUFDRjtBQ25DQTtFQUNFO0VBQ0E7RUFDQSxZQ2dFbUI7RUQvRG5CO0FEcUNGO0FHcEJRO0VGckJSO0lBT0k7RURzQ0Y7QUFDRjs7QUNuQ0E7RUFDRTtFQUNBO0FEc0NGO0FHOUJRO0VGVlI7SUFLSTtFRHVDRjtBQUNGOztBQ3BDQTtFRWlMRSxlQUxVO0VBTVYsMEJBTFU7RUYxS1Y7RUFDQTtFQUNBLFdDaUZNO0FGMUNSOztBQ3BDQTtFQUNFO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFDQTtBRHVDRjtBQ3JDRTtFRXFLQSxlQUxVO0VBTVYsMEJBTFU7RUFxQlY7RUFDQTtFRnBMRSx3Q0MwQ21CO0VEekNuQixnQkM4Q2tCO0VEM0NsQjtFQUNBLFdDa0VJO0FGM0JSO0FDckNJO0VBQ0U7QUR1Q047O0FDL0JBO0VGc0NFO0tBQUE7VUFBQTtFSTRHQSxlQUxVO0VBTVYsMEJBTFU7RUFxQlY7RUFDQTtFRi9KQTtFQUNBLHdDQ29CcUI7RURuQnJCLGdCQ3dCb0I7QUZXdEI7QURWRTtFQUNFO0lBQUs7RUNhUDtFRFpFO0lBQU07RUNlUjtFRGRFO0lBQU07RUNpQlI7QUFDRjtBRHJCRTtFQUNFO0lBQUs7RUNhUDtFRFpFO0lBQU07RUNlUjtFRGRFO0lBQU07RUNpQlI7QUFDRjtBRHJCRTtFQUNFO0lBQUs7RUNhUDtFRFpFO0lBQU07RUNlUjtFRGRFO0lBQU07RUNpQlI7QUFDRjtBQzVDRTtFQUNFO0VBQ0E7QUQ4Q0o7QUN6Q0k7RUFFRSxXQ3FDRTtBRktSOztBQ2xDQTtFRllFO0tBQUE7VUFBQTtFSTRHQSxlQUxVO0VBTVYsMEJBTFU7RUZoSFY7RUFDQTtFQUNBO0VBQ0EsWUNqQm1CO0VEa0JuQixXQ3FCTTtBRmdCUjtBRHZDRTtFQUNFO0lBQUs7RUMwQ1A7RUR6Q0U7SUFBTTtFQzRDUjtFRDNDRTtJQUFNO0VDOENSO0FBQ0Y7QUM5Q0U7RUFDRSxXQ2tCSTtBRjhCUjtBQzVDRTtFQUNFO0VBQ0E7QUQ4Q0o7QUMzQ0U7RUU4VEE7RUFDQTtFQUNBO0tBQUE7VUFBQTtFQUNBLFdGaFUrQjtFRWlVL0IsWUZqVStCO0VFa1UvQixpQkZsVWtEO0VFbVVsRDtFQUNBLGtCRDVUTTtFQzZUTjtFQUNBLDZCRnRVcUM7RUFFbkM7RUFDQTtBRHFESjtBR2dSRTtFQXZXQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUgwRkY7QUMzREk7RUFDRTtFQUNBO0FENkROO0FHakpRO0VGd0RSO0lFd0hFLGVBTFU7SUFNViwwQkFMVTtFSHRCVjtFQzNERTtJQUNFO0lBQ0E7SUFDQTtFRDZESjtFQzNESTtJQUNFO0lBQ0E7RUQ2RE47QUFDRjtBR2hLUTtFRndEUjtJQWdESTtJQUNBO0lBQ0E7RUQ0REY7QUFDRjtBR3ZLUTtFRndEUjtJRXdIRSxlQUxVO0lBTVYsMEJBTFU7SUY1RFI7RUQ2REY7RUMzREU7SUFDRTtJQUNBO0lBQ0E7RUQ2REo7RUMzREk7SUFDRTtJQUNBO0VENkROO0FBQ0Y7O0FDckRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWUN4Rm1CO0FGZ0pyQjtBQ3RERTtFQUNFO0FEd0RKOztBQ3BEQTtFRjNKRSwyQkU0SjRCO0VGNUo1Qix3QkU0SjRCO0VGNUo1QixtQkU0SjRCO0VGM0o1QixrQ0d1VjRCO0tIdlY1QiwrQkd1VjRCO1VIdlY1QiwwQkd1VjRCO0VIdFY1Qix3Q0dxVm1DO0tIclZuQyxxQ0dxVm1DO1VIclZuQyxnQ0dxVm1DO0VDekpuQyxlQUxVO0VBTVYsMEJBTFU7RUFxQlY7RUFDQTtFRmhEQTtFQUNBLFdDOURNO0VEK0ROO0FEMERGO0FDdkRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHlESjtBQ3RERTtFQUNFLFdDM0VJO0VENEVKO0FEd0RKO0FDckRFO0VBQ0U7RUFDQTtBRHVESjs7QUlsUEE7RUFDRTtFQUNBO0FKcVBGO0FHbE9RO0VDckJSO0lBS0k7SUFDQTtJQUNBO0VKc1BGO0FBQ0Y7O0FJaFBBO0VBQ0U7RUFDQTtFQUNBO0FKbVBGO0FJalBFO0VBQ0U7RUFBQTtFQUFBO0FKbVBKO0FJaFBFO0VBQ0U7QUprUEo7QUk5T0k7RUFDRTtBSmdQTjtBSTNPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUo2T0o7QUdsUVE7RUN5Qko7SUFDRTtFSjRPSjtFSXpPRTtJQUNFLGtCRnVERTtFRm9MTjtFSXZPRTtJQUFZO0VKME9kO0FBQ0Y7O0FJdk9BO0VEMElFLGVBTFU7RUFNViwwQkFMVTtFQXFCVjtFQUNBO0VDeEpBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO01BQUE7VUFBQTtFQUNBO0tBQUE7TUFBQTtVQUFBO0FKMk9GO0FJek9FO0VEb0RBLFdDbkQ0QztFRG9ENUMsWUNwRGtEO0VEcURsRDtFQUNBO0VBQ0E7RUNyREU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSjhPSjtBR3ZTUTtFQ2tETjtJRDJERTtFSDhMRjtBQUNGOztBSS9PQTtFTC9ERSxnQ0tnRW9CO0VMaEVwQiw2QktnRW9CO0VMaEVwQix3QktnRW9CO0VML0RwQixrQ0srRGtDO0tML0RsQywrQksrRGtDO1VML0RsQywwQksrRGtDO0VMOURsQyx3Q0d5VW1DO0tIelVuQyxxQ0d5VW1DO1VIelVuQyxnQ0d5VW1DO0VFelFuQztFQUNBO0VBQ0E7RUFDQTtBSm1QRjs7QUszVUE7RUFDRSw4Qkg4R2lCO0FGZ09uQjs7QUt4VUE7RUFDRTtBTDJVRjs7QUt4VUE7RUFDRTtFQUNBO0VBQ0E7QUwyVUY7O0FLdlVFO0VGbUxBLGVBTFU7RUFNVixlQUxVO0FINkpaO0FLelVJO0VBQ0UsZ0JINkRrQjtFRzVEbEIsOEJIeUZhO0FGa1BuQjtBS3hVSTtFRjJLRixlQUxVO0VBTVYsZUFMVTtFQXFCVjtFQUNBO0VFekxJO0FMMlVOOztBTXhXRTtFSG9NQSxlQUxVO0VBTVYsMEJBTFU7RUc3TFIsOEJKMkdlO0FGZ1FuQjtBTXhXRTtFQUNFO0VBQ0E7QU4wV0o7O0FNdFdBO0VBQ0U7QU55V0Y7QU12V0U7RUhxTEEsZUFMVTtFQU1WLDBCQUxVO0VHOUtSO0FOeVdKO0FNdldJO0VBQ0U7QU55V047O0FHMVdRO0VISFI7SUFFSTtJQUVBLG1CRW1XNEI7RUZZOUI7RUEzV0k7SUFDRTtFQTZXTjtBQUNGO0FBeldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTJXSjtBQXZXSTtFQUNFO0VBQ0E7RUFDQTtLQUFBO0FBeVdOO0FBcldFO0VBQ0U7QUF1V0o7QUduWVE7RUgyQk47SUFJSTtJQUFBO0lBQUE7SUFBQTtJQUFBO0lBQ0E7SUFBQTtPQUFBO1FBQUE7WUFBQTtJQUNBO0lBQ0E7SUFDQTtPQUFBO1FBQUE7WUFBQTtJQUNBO0VBd1dKO0FBQ0Y7QUFwV0k7RUQzQ0YsMkJDNEN3QjtFRDVDeEIsd0JDNEN3QjtFRDVDeEIsbUJDNEN3QjtFRDNDeEIsa0NDMkNtQztLRDNDbkMsK0JDMkNtQztVRDNDbkMsMEJDMkNtQztFRDFDbkMsd0NHeVVtQztLSHpVbkMscUNHeVVtQztVSHpVbkMsZ0NHeVVtQztFRjlSL0I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCRXFDRTtFRnBDRjtFQUNBO0VBQ0E7QUF3V047QUF0V007RUFDRTtFQUNBO0tBQUE7VUFBQTtFQUNBO0tBQUE7VUFBQTtFQUNBO0tBQUE7VUFBQTtBQXdXUjtBQXBXRTtFQUNFO0FBc1dKO0FBbldFO0VBQ0U7SUFBSTtFQXNXTjtFQXJXRTtJQUFNO0VBd1dSO0FBQ0Y7QUEzV0U7RUFDRTtJQUFJO0VBc1dOO0VBcldFO0lBQU07RUF3V1I7QUFDRjtBQTNXRTtFQUNFO0lBQUk7RUFzV047RUFyV0U7SUFBTTtFQXdXUjtBQUNGOztBQWxXQTtFQUNFO0VBQ0E7QUFxV0Y7QUFuV0U7RUFDRTtFQUFBO0tBQUE7TUFBQTtVQUFBO0FBcVdKO0FBbFdFO0VHOEZBLGVBTFU7RUFNViwwQkFMVTtFSHhGUiw4QkVNZTtFRkxmO0VBQ0E7QUFxV0o7QUFqV0k7RUFDRSwrQkVDZTtBRmtXckI7O0FBM1ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUE4VkY7QUE1VkU7RUd1RUEsZUFMVTtFQU1WLDBCQUxVO0VBcUJWO0VBQ0E7RUh0RkUsd0NFcERtQjtFRnFEbkIsZ0JFaERrQjtFRmtEbEI7RUFDQTtFQUNBLDhCRXZCZTtBRnNYbkI7QUE3Vkk7RURqSUYsK0JDa0lnQztFRGxJaEMsNEJDa0lnQztFRGxJaEMsdUJDa0lnQztFRGpJaEMsa0NHdVY0QjtLSHZWNUIsK0JHdVY0QjtVSHZWNUIsMEJHdVY0QjtFSHRWNUIsd0NHcVZtQztLSHJWbkMscUNHcVZtQztVSHJWbkMsZ0NHcVZtQztFRm5OL0I7RUFDQTtFQUNBO0FBZ1dOO0FBN1ZJO0VBQ0UsOEJFakNhO0FGZ1luQjtBQTFWRTtFQUNFO0VBQ0E7QUE0Vko7QUExVkk7RUFBUTtBQTZWWjtBQTFWTTtFQUFRO0FBNlZkO0FBeFZFO0VBQ0U7RUFDQTtBQTBWSjtBQXhWSTtFQUFRO0FBMlZaO0FBeFZNO0VBQVE7QUEyVmQ7O0FBblZBO0VBQ0U7QUFzVkY7QUFuVkk7RUFDRTtBQXFWTjtBR3RmUTtFSHNLSjtJQUNFO0lBQ0E7SUFDQTtFQW1WSjtFQWpWSTtJQUNFO0VBbVZOO0FBQ0Y7O0FBMVVBO0VBQ0U7QUE2VUYsQyIsImZpbGUiOiJjc3MvaG9sZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQU5JTUFUSU9OXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBEZWZhdWx0IHRyYW5zaXRpb25cbi8vIE1vZGlmeSBwcm9wZXJ0aWVzIGluIGBfc2V0dGluZ3Muc2Nzc2BcbkBtaXhpbiBkZWZhdWx0LXRyYW5zaXRpb24oJHByb3BlcnRpZXMpIHtcbiAgQGlmICRwcm9wZXJ0aWVzID09ICdhbGwnIHtcbiAgICBAZXJyb3IgJ1BsZWFzZSBzcGVjaWZ5IGFuaW1hdGlvbiBwcm9wZXJ0aWVzIGluZGl2aWR1YWxseS4nO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogJHByb3BlcnRpZXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjtcbn1cblxuLy8gQ3VzdG9tIHRyYW5zaXRpb25cbi8vIERlZmF1bHQgdmFsdWVzIGluIGBfc2V0dGluZ3Muc2Nzc2BcbkBtaXhpbiB0cmFuc2l0aW9uKCRwcm9wZXJ0aWVzLCAkdHJhbnNpdGlvbi10aW1lOiAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uLCAkdHJhbnNpdGlvbi1mdW5jdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pIHtcbiAgQGlmICRwcm9wZXJ0aWVzID09ICdhbGwnIHtcbiAgICBAZXJyb3IgJ1BsZWFzZSBzcGVjaWZ5IGFuaW1hdGlvbiBwcm9wZXJ0aWVzIGluZGl2aWR1YWxseS4nO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogJHByb3BlcnRpZXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLXRpbWU7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdHJhbnNpdGlvbi1mdW5jdGlvbjtcbn1cblxuLy8gTG9uZ2VyIHRyYW5zaXRpb25cbi8vIE1vZGlmeSBwcm9wZXJ0aWVzIGluIGBfc2V0dGluZ3Muc2Nzc2BcbkBtaXhpbiBsb25nLXRyYW5zaXRpb24oJHByb3BlcnRpZXMpIHtcbiAgQGlmICRwcm9wZXJ0aWVzID09ICdhbGwnIHtcbiAgICBAZXJyb3IgJ1BsZWFzZSBzcGVjaWZ5IGFuaW1hdGlvbiBwcm9wZXJ0aWVzIGluZGl2aWR1YWxseS4nO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogJHByb3BlcnRpZXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRsb25nLXRyYW5zaXRpb24tZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkbG9uZy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjtcbn1cblxuLy8gTG9uZyBlYXNlIHRyYW5zaXRpb25cbi8vQG1peGluIHRyYW5zaXRpb24tZWFzZSB7XG4vLyAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGN1YmljLWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCk7XG4vL31cbi8vIHVzZSB0aGlzIGluc3RlYWQgQGluY2x1ZGUgZGVmYXVsdC10cmFuc2l0aW9uKCh3aWR0aCksIDQwMG1zLCBjdWJpYy1iZXppZXIoLjI1MCwgLjQ2MCwgLjQ1MCwgLjk0MCkpO1xuXG4vLyBGYWRlLWluIHRyYW5zaXRpb25cbkBtaXhpbiBmYWRlLWluIHtcbiAgQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICAgIHRvIHsgb3BhY2l0eTogMTsgfVxuICB9XG5cbiAgYW5pbWF0aW9uOiBmYWRlLWluIDFzO1xufVxuXG4vLyBGYWRlLWluLXVwIHRyYW5zaXRpb25cbkBtaXhpbiBmYWRlLWluLXVwIHtcbiAgQGtleWZyYW1lcyBmYWRlLWluLXVwIHtcbiAgICBmcm9tIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGUtaW4tdXA7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuQG1peGluIGZhZGUtb3V0IHtcbiAgQGtleWZyYW1lcyBmYWRlLW91dCB7XG4gICAgZnJvbSB7IG9wYWNpdHk6IDE7IH1cbiAgICB0byB7IG9wYWNpdHk6IDA7IH1cbiAgfVxuXG4gIGFuaW1hdGlvbjogZmFkZS1vdXQgMXM7XG59XG5cblxuLy8gR2xvdy9wdWxzZSB0cmFuc2l0aW9uXG5AbWl4aW4gZ2xvdyB7XG4gIEBrZXlmcmFtZXMgZ2xvdyB7XG4gICAgMCUgeyBvcGFjaXR5OiAxOyB9XG4gICAgMzAlIHsgb3BhY2l0eTogMTsgfVxuICAgIDcwJSB7IG9wYWNpdHk6IDA7IH1cbiAgfVxuXG4gIGFuaW1hdGlvbjogZ2xvdyAzcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi8vIFZlcnRpY2FsIHNsaWRlIGFuaW1hdGlvblxuQG1peGluIHZlcnRpY2FsLXNsaWRlKCRzcGVlZCkge1xuXG4gICRkdXJhdGlvbjogMC42cztcblxuICBAaWYgJHNwZWVkID09ICdub3JtYWwnIHtcbiAgICAkZHVyYXRpb246IDEuMnM7XG4gIH1cblxuICBAaWYgJHNwZWVkID09ICdmYXN0JyB7XG4gICAgJGR1cmF0aW9uOiAwLjZzO1xuICB9XG5cbiAgQGtleWZyYW1lcyB2ZXJ0aWNhbC1zbGlkZSB7XG4gICAgMCUgeyBib3R0b206IDA7IH1cbiAgICA1MCUgeyBib3R0b206IDhweDsgfVxuICAgIDEwMCUgeyBib3R0b206IDA7IH1cbiAgfVxuXG4gIGFuaW1hdGlvbi1uYW1lOiB2ZXJ0aWNhbC1zbGlkZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4vLyBSb3RhdGlvblxuQG1peGluIHJvdGF0aW9uKCRkdXJhdGlvbjogMXMpIHtcbiAgYW5pbWF0aW9uOiByb3RhdGlvbiAkZHVyYXRpb24gbGluZWFyIGluZmluaXRlO1xuXG4gIEBrZXlmcmFtZXMgcm90YXRpb24ge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZW51T3BlbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgLy8gb3BhY2l0eTogMDtcbiAgICAvLyB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC8vIG9wYWNpdHk6IDE7XG4gICAgLy8gdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1lbnVDbG9zZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAvLyBvcGFjaXR5OiAxO1xuICAgIC8vIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAvLyBvcGFjaXR5OiAwO1xuICAgIC8vIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1lbnVPdmVybGF5SW1hZ2VzT3BlbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtZW51T3ZlcmxheUltYWdlc0Nsb3NlIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIT0xFIFBBR0Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgXCIuLi9saWIvc2V0dGluZ3NcIjtcbkBpbXBvcnQgXCIuLi9saWIvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi4vbGliL21peGluc1wiO1xuQGltcG9ydCBcIi4uL2xpYi9hbmltYXRpb25cIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvaG9sZS1zdGF0c1wiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvaG9sZS1tYXBcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2hvbGUtcHJvLXRpcFwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvaG9sZS1zcG9uc29yXCI7XG5cbi8vXG4vLyBTbGlkZXNob3dcbi8vXG4vLyAxLiBBbGxvd3MgaG9sZSBuYXZpZ2F0aW9uIGJlIHZpc2libGVcbi8vIDIuIEFwcGxpZXMgaGVhZGVyIG5hdmlnYXRpb24gZ3V0dGVyXG4vLyAzLiBBcHBsaWVzIGhvbGUgbmF2aWdhdGlvbiBndXR0ZXJcbi8vXG4uc2xpZGVzaG93LS1ob2xlIHtcbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkodGFibGV0KSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFsxXVxuICAgIC8vbWFyZ2luLXRvcDogJGhlYWRlci1uYXYtaGVpZ2h0LXNtYWxsOyAvLyBbMl1cbiAgICBtYXJnaW4tYm90dG9tOiAkaG9sZS1uYXZpZ2F0aW9uLW1vYmlsZS1oZWlnaHQ7IC8vIFszXVxuXG4gICAgLy8gR3JhZGllbnRcbiAgICAuc2xpZGVzaG93X19pdGVtIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG5cbiAgLnNsaWRlc2hvd19faXRlbSB7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG5cbiAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnkodGFibGV0KSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1wcm9ncmVzcy1iYXI9XCJ0cnVlXCJdIHtcbiAgICAuc3dpcGVyLXByb2dyZXNzIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKG9wYWNpdHkpLCA2MDBtcyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHotaW5kZXg6ICR6LWluZGV4LS1zbGlkZXNob3cgLSAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAmLmFuaW1hdGUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBhbmltYXRpb24tbmFtZTogcHJvZ3Jlc3M7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN3aXBlci1wcm9ncmVzcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3Mge1xuICAgIDAlIHt3aWR0aDogMDt9XG4gICAgMTAwJSB7d2lkdGg6MTAwJTt9XG4gIH1cbn1cblxuLy9cbi8vIFBhZ2UgSGVhZGluZ1xuLy9cbi5ob2xlX19oZWFkaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC5ob2xlLXN0YXRzX19maWd1cmVzIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIGgxIHtcbiAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDI4cHgpO1xuICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLW9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaG9sZS1zdGF0c19fZmlndXJlcyB7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS10aHJlZTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIEhvbGUgdG9wIG5hdmlnYXRpb24gKG9uIHNpZGVzKVxuLy9cbi5ob2xlLXRvcC1uYXZpZ2F0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDg3cHg7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGEge1xuICAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMTlweCk7XG4gICAgQGluY2x1ZGUgYWxsLWNhcHMoMTlweCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LS1zYW5zLXNlcmlmLXR3bztcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1tZWRpdW07XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvci0tb25lO1xuXG4gICAgLmljb24ge1xuICAgICAgQGluY2x1ZGUgZGVmYXVsdC10cmFuc2l0aW9uKChsZWZ0LCByaWdodCkpO1xuXG4gICAgICB0b3A6IDJweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tdHdvO1xuICAgIH1cbiAgfVxuXG4gIC8vIGBQcmV2aW91c2AgbGlua1xuICAucHJldi1ob2xlLWxpbmsge1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuXG4gICAgLmljb24geyBsZWZ0OiAtMTBweDsgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAuaWNvbiB7IGxlZnQ6IC0xN3B4OyB9XG4gICAgfVxuICB9XG5cbiAgLy8gYE5leHRgIGxpbmtcbiAgLm5leHQtaG9sZS1saW5rIHtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgLmljb24geyByaWdodDogLTEwcHg7IH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLmljb24geyByaWdodDogLTE3cHg7IH1cbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIEhvbGUgYm90dG9tIG5hdmlnYXRpb25cbi8vXG4uaG9sZS1ib3R0b20tbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuYnRuIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KG1vYmlsZSkge1xuICAgIC5idG4ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gU2NvcmVjYXJkIGFjY29yZGlvblxuLy8gT3ZlcnJpZGVzIHBhZGRpbmcgZm9yIHNjb3JlY2FyZCBzaG9ydGNvZGUgb3V0cHV0XG4vL1xuLnNjb3JlY2FyZC1hY2NvcmRpb24ge1xuICBwYWRkaW5nOiAxMnB4IDAgMDtcbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIT0xFIFNUQVRTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uaG9sZS1zdGF0cy13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6ICR6LWluZGV4LS1zbGlkZXNob3c7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KHRhYmxldCkge1xuICAgIGJvdHRvbTogLSAkaG9sZS1uYXZpZ2F0aW9uLW1vYmlsZS1oZWlnaHQ7XG4gIH1cbn1cblxuLmhvbGUtc3RhdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkodGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaG9sZS1zdGF0c19fbmFtZSB7XG4gIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMzBweCk7XG5cbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5ob2xlLXN0YXRzX19maWd1cmVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gIHNwYW4ge1xuICAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMThweCk7XG4gICAgQGluY2x1ZGUgYWxsLWNhcHMoMThweCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LS1zYW5zLXNlcmlmLXR3bztcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1tZWRpdW07XG5cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gQnV0dG9uc1xuLy9cbi5ob2xlX19zdGF0cy0tbW9yZS1pbmZvIHtcbiAgQGluY2x1ZGUgZ2xvdygpO1xuICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDE2cHgpO1xuICBAaW5jbHVkZSBhbGwtY2FwcygxNnB4KTtcblxuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZm9udC1mYW1pbHk6ICRmb250LS1zYW5zLXNlcmlmLXR3bztcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tbWVkaXVtO1xuXG4gIC5pY29uIHtcbiAgICB3aWR0aDogMTdweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gIH1cblxuICAvLyBTcGVjaWZpZXMgcGFyZW50IGVsZW1lbnQgdG8gb3ZlcnJpZGUgZGVmYXVsdCA8YT4gc3R5bGVcbiAgLmhvbGUtc3RhdHMtd3JhcHBlciAmIHtcbiAgICAmLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFNpZGUgcGFuZWwgYnV0dG9uXG4vL1xuLmhvbGVfX3N0YXRzLS1tb3JlLWluZm8tcGFuZWwge1xuICBAaW5jbHVkZSBnbG93KCk7XG4gIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMjBweCk7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDYwcHg7XG4gIHJpZ2h0OiA2MHB4O1xuICB6LWluZGV4OiAkei1pbmRleC0tc2xpZGVzaG93O1xuICBjb2xvcjogJHdoaXRlO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAvLyBJY29uIGFuZCB0ZXh0XG4gID4gc3BhbiB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAuaWNvbi13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBpY29uLWNpcmNsZS13cmFwcGVyKDQwcHgsIHRyYW5zcGFyZW50LCAycHgsICR3aGl0ZSk7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgLmljb24ge1xuICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkoYmlnLWRlc2spIHtcbiAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDE4cHgpO1xuXG4gICAgLmljb24td3JhcHBlciB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgLmljb24ge1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KHRhYmxldCkge1xuICAgIHRvcDogLTQ1cHg7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHJpZ2h0OiAyMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkobW9iaWxlKSB7XG4gICAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgxNnB4KTtcblxuICAgIHRvcDogLTQycHg7XG5cbiAgICAuaWNvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG5cbiAgICAgIC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBCdXR0b24gOjogcGxheSB2aWRlb1xuLy9cbi5ob2xlX192aWRlby1idG4td3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICByaWdodDogMjBweDtcbiAgei1pbmRleDogJHotaW5kZXgtLXNsaWRlc2hvdztcblxuICAmLnRhYmxldC0tc2hvdyB7XG4gICAgYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbi5idG4tLWhvbGUtcGxheS12aWRlbyB7XG4gIEBpbmNsdWRlIGRlZmF1bHQtdHJhbnNpdGlvbihvcGFjaXR5KTtcbiAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgxOHB4KTtcbiAgQGluY2x1ZGUgYWxsLWNhcHMoMThweCk7XG5cbiAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICBjb2xvcjogJHdoaXRlO1xuICBvcGFjaXR5OiAxO1xuXG4gIC8vIFBsYXkgaWNvblxuICAuaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTZweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNFVFRJTkdTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJhc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBXcmFwcGVyXG4vLyAkd3JhcHBlci1ndXR0ZXI6IDIwcHg7XG4vLyAkd3JhcHBlci13aWR0aDogY2FsYyh2YXIoLS13cmFwcGVyLWRlZmF1bHQtbWF4LXdpZHRoKSArIGNhbGMoKHZhcigtLXdyYXBwZXItcGFkZGluZy1pbmxpbmUpICogMikpKTtcbi8vICR3cmFwcGVyLXdpZHRoLS1uYXJyb3c6IDk2MHB4ICsgKCR3cmFwcGVyLWd1dHRlciAqIDIpO1xuLy8gJHdyYXBwZXItd2lkdGgtLXdpZGU6IDExNjBweCArICgkd3JhcHBlci1ndXR0ZXIgKiAyKTtcbi8vICR3cmFwcGVyLXdpZHRoLS1zdXBlci13aWRlOiAxNDMwcHggKyAoJHdyYXBwZXItZ3V0dGVyICogMik7XG5cbi8vIEJsb2NrXG4kYmxvY2stcGFkZGluZzogNjBweDtcbiRibG9jay1oYWxmLWJyZWFrcG9pbnQ6IHRhYmxldDtcblxuLy8gRmxleGlibGUgY29udGVudFxuJGZsZXgtY29udGVudC1oYWxmLWJyZWFrcG9pbnQ6IHRhYmxldDtcblxuLy8gTWFyZ2luXG4kbWFyZ2luOiAzMHB4O1xuXG4vLyBQYWRkaW5nXG4kcGFkZGluZzogMzBweDtcblxuLy8gR3JpZFxuJGd1dHRlcjogNDRweDtcbiRicmVha3BvaW50czogKFxuICAnd2lkZScgICAgICAgICAgICAnKG1heC13aWR0aDogMTQ0MHB4KScsXG4gICdtaW4td2lkZScgICAgICAgICcobWluLXdpZHRoOiAxNDQwcHgpJyxcbiAgJ2JpZy1kZXNrJyAgICAgICAgJyhtYXgtd2lkdGg6IDEyODBweCknLFxuICAnbWluLWJpZy1kZXNrJyAgICAnKG1pbi13aWR0aDogMTI4MHB4KScsXG4gICdkZXNrJyAgICAgICAgICAgICcobWF4LXdpZHRoOiAxMDI0cHgpJyxcbiAgJ21pbi1kZXNrJyAgICAgICAgJyhtaW4td2lkdGg6IDEwMjRweCknLFxuICAnbGFwdG9wJyAgICAgICAgICAnKG1heC13aWR0aDogOTYwcHgpJyxcbiAgJ21pbi1sYXB0b3AnICAgICAgJyhtaW4td2lkdGg6IDk2MHB4KScsXG4gICd0YWJsZXQnICAgICAgICAgICcobWF4LXdpZHRoOiA3NjhweCknLFxuICAnbWluLXRhYmxldCcgICAgICAnKG1pbi13aWR0aDogNzY4cHgpJyxcbiAgJ21vYmlsZScgICAgICAgICAgJyhtYXgtd2lkdGg6IDU1MHB4KScsXG4gICdtaW4tbW9iaWxlJyAgICAgICcobWluLXdpZHRoOiA1NTBweCknLFxuICAnbW9iaWxlLXNtYWxsJyAgICAnKG1heC13aWR0aDogMzc1cHgpJyxcbiAgJ3JldGluYScgICAgICAgICAgJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknLFxuKTtcbiRicmVha3BvaW50LWhhcy13aWR0aHM6IChcbiAgJ3dpZGUnLFxuICAnbWluLXdpZGUnLFxuICAnYmlnLWRlc2snLFxuICAnbWluLWJpZy1kZXNrJyxcbiAgJ2Rlc2snLFxuICAnbWluLWRlc2snLFxuICAnbGFwdG9wJyxcbiAgJ21pbi1sYXB0b3AnLFxuICAndGFibGV0JyxcbiAgJ21pbi10YWJsZXQnLFxuICAnbW9iaWxlJyxcbiAgJ21pbi1tb2JpbGUnLFxuICAnbW9iaWxlLXNtYWxsJyxcbik7XG5cbi8vIFotaW5kZXhlc1xuJHotaW5kZXgtLXRvcDogOTAwMDtcbiR6LWluZGV4LS1tb2RhbDogNzAwMDtcbiR6LWluZGV4LS1zaWRlLXBhbmVsOiA2NTAwO1xuJHotaW5kZXgtLW1lbnUtc2lkZWJhcjogNjAwMDtcbiR6LWluZGV4LS1tZW51LW92ZXJsYXk6IDYwMDE7XG4kei1pbmRleC0tYm9keS1vdmVybGF5OiA1MDAwO1xuJHotaW5kZXgtLWhlYWRlci1uYXY6IDQwMDA7XG4kei1pbmRleC0tcGFnZS1oZWFkZXI6IDIwMDtcbiR6LWluZGV4LS1zbGlkZXNob3c6IDEyMDtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRiYXNlLWZvbnQtc2l6ZTogMTdweDtcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjY1O1xuXG4vLyBGb250IHN0YWNrXG4kZm9udC0tc2Fucy1zZXJpZjogdmFyKC0tZm9udC0tc2Fucy1zZXJpZik7IC8vUHJveGltYSBOb3ZhIDQwMCwgNDAwaSwgNjAwLCA2MDBpXG4kZm9udC0tc2Fucy1zZXJpZi10d286IHZhcigtLWZvbnQtLXNhbnMtc2VyaWYtdHdvKTsgLy9uZXVlLWhhYXMtZ3JvdGVzay1kaXNwbGF5IDQwMCwgNTAwXG5cbi8vIEZvbnQgd2VpZ2h0c1xuJGZvbnQtd2VpZ2h0LS1saWdodDogMzAwO1xuJGZvbnQtd2VpZ2h0LS1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtLW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LS1zZW1pYm9sZDogNjAwO1xuJGZvbnQtd2VpZ2h0LS1ib2xkOiA3MDA7XG4kZm9udC13ZWlnaHQtLWV4dHJhYm9sZDogODAwO1xuXG4vLyBOb3JtYWxpc2VkIHRleHQgcHJvcGVydGllcyAoZm9yIEBpbmNsdWRlIG5vcm1hbGlzZWQtdGV4dClcbiRub3JtYWxpc2VkLXRleHQtcHJvcGVydGllczogKFxuICAnZm9udC1mYW1pbHknLFxuICAnZm9udC1zaXplJyxcbiAgJ2xpbmUtaGVpZ2h0J1xuKTtcblxuLy8gTm9ybWFsaXNlZCB0ZXh0IHZhbHVlcyAoZm9yIEBpbmNsdWRlIG5vcm1hbGlzZWQtdGV4dClcbiRub3JtYWxpc2VkLXRleHQtdmFsdWVzOiAoXG4gICRmb250LS1zYW5zLXNlcmlmLFxuICAkYmFzZS1mb250LXNpemUsXG4gICRiYXNlLWxpbmUtaGVpZ2h0XG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvbG91cnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHZW5lcmljXG4kd2hpdGU6ICNmZmY7XG4kYmxhY2s6ICMwMDA7XG4kZ3JleTogI2NjYztcblxuLy8gQnJhbmQgY29sb3Vyc1xuJGJyYW5kLWNvbG9yLS1vbmU6IHZhcigtLWJyYW5kLWNvbG9yLS1vbmUpO1xuJGJyYW5kLWNvbG9yLS10d286IHZhcigtLWJyYW5kLWNvbG9yLS10d28pO1xuJGJyYW5kLWNvbG9yLS10aHJlZTogdmFyKC0tYnJhbmQtY29sb3ItLWJsdWUpO1xuXG4vLyBIZWFkaW5nIGdvbGQgY29sb3VyIChjb21tb25seSB1c2VkIGluIGg1KVxuJGhlYWRpbmctY29sb3ItLWdvbGQ6ICM5Yzc4NDM7XG5cbi8vIEJvZHkgb3ZlcmxheVxuJGJvZHktb3ZlcmxheS1jb2xvcjogdmFyKC0tYm9keS1jb2xvci1vdmVybGF5KTtcblxuLy8gVHlwb2dyYXBoeVxuJHRleHQtY29sb3I6IHZhcigtLWJhc2UtY29sb3IpO1xuJHRleHQtY29sb3ItLWJvbGQ6ICMyMjI7XG4kdGV4dC1jb2xvci0tc3VidGxlOiAjODM4MzgzO1xuJHRleHQtY29sb3ItLXJlZDogI2FkMDAwMDtcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogI2NhY2FjYTtcblxuLy8gQWxlcnRzXG4kYWxlcnQtZGVmYXVsdDogIzU3NTc1NztcbiRhbGVydC1zdWNjZXNzOiAjNDVhYzViO1xuJGFsZXJ0LWRhbmdlcjogI2E4MDUzMjtcbiRhbGVydC1lbXBoYXNpemU6ICRicmFuZC1jb2xvci0tdHdvO1xuJGFsZXJ0LW9mZmVyOiAjYTgwNTMyO1xuXG4vLyBMaW5rc1xuJGxpbmstY29sb3I6ICMwMDk2ZmY7XG4kbGluay1jb2xvci0taG92ZXI6IGRhcmtlbigkbGluay1jb2xvciwgMTAlKTtcbiRsaW5rLWNvbG9yLXVuZGVybGluZTogcmdiYSgkbGluay1jb2xvciwgMC41KTtcbiRsaW5rLWNvbG9yLXVuZGVybGluZS0taG92ZXI6IHJnYmEoJGxpbmstY29sb3ItLWhvdmVyLCAwLjUpO1xuXG4vLyBJY29uc1xuJGZhY2Vib29rLWNvbG9yOiAjM2E1NTlmO1xuJHR3aXR0ZXItY29sb3I6ICM1NWFkZWU7XG4kaW5zdGFncmFtLWNvbG9yOiAjZTc2MzQ1O1xuJHRyaXBhZHZpc29yLWNvbG9yOiAjMzRlMGExO1xuJGxpbmtlZGluLWNvbG9yOiAjMjg2N2IyO1xuJGZpbGUtZG9jLWNvbG9yOiAjMjk4YWM5O1xuJGZpbGUteGxzLWNvbG9yOiAjODViNTM5O1xuJGZpbGUtcGRmLWNvbG9yOiAjZWM2ZDVhO1xuJHN0YXItY29sb3ItLWVtcHR5OiAjZGRkO1xuJHN0YXItY29sb3ItLWZ1bGw6ICNmYzA7XG5cbi8vIENvdXJzZSBzdGF0dXMgbWFya2VyXG4kY291cnNlLXN0YXR1cy1tYXJrZXItZ3JlZW46ICMwMGZmMGM7XG4kY291cnNlLXN0YXR1cy1tYXJrZXIteWVsbG93OiAjZmZmNjAwO1xuJGNvdXJzZS1zdGF0dXMtbWFya2VyLXJlZDogI2ZmNDE0MTtcblxuLy8gTGluZXNcbiRsaW5lLWNvbG9yOiAjY2NjO1xuXG4vLyBUYWJsZXNcbiR0YWJsZS1oZWFkZXItbGluZS1jb2xvcjogI2E3YTdhNztcbiR0YWJsZS1yb3ctbGluZS1jb2xvcjogI2RjZGNkYztcbiR0YWJsZS1oZWFkaW5nLWNvbG9yOiAjMjIyO1xuJHRhYmxlLXRleHQtY29sb3I6ICM0NDQ7XG4kdGFibGUtc3RyaXBlLWNvbG9yOiAjZjlmOWY5O1xuXG4vLyBGb3Jtc1xuJGZvcm0taGVhZGluZy1jb2xvcjogJGJyYW5kLWNvbG9yLS10d287XG4kZm9ybS1sYWJlbC1jb2xvcjogIzU1NTtcbiRmb3JtLXJvdy1ib3JkZXItY29sb3I6ICNlNGU0ZTQ7XG4kZm9ybS1pbnB1dC1ib3JkZXItY29sb3I6ICNmNGYxZjA7XG4kZm9ybS1pbnB1dC1iZy1jb2xvcjogI2Y0ZjFmMDtcbiRmb3JtLWlucHV0LWVycm9yLWNvbG9yOiAjYTgwNTMyO1xuXG4vLyBTZWN0aW9uXG4kc2VjdGlvbi1jb2xvci1saWdodDogI2Y1ZjJlZjtcbiRzZWN0aW9uLWNvbG9yLW1lZGl1bTogIzc3NztcbiRzZWN0aW9uLWNvbG9yLWRhcms6ICMwMDA7XG5cbi8vIElmcmFtZVxuJGlmcmFtZS1iZy1jb2xvcjogI2Y3ZjdmNztcblxuLy8gUGlwc1xuJHBpcHMtYm9yZGVyLWNvbG9yOiAjMDAwO1xuJHBpcHMtZmlsbC1jb2xvcjogIzAwMDtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTY29yZWNhcmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNjb3JlY2FyZC1jb2xvci0tYmxhY2s6ICAjMzMzO1xuJHNjb3JlY2FyZC1jb2xvci0teWVsbG93OiAjZTZjNjc5O1xuJHNjb3JlY2FyZC1jb2xvci0tZ29sZDogZ29sZDtcbiRzY29yZWNhcmQtY29sb3ItLWJsdWU6ICAgIzUxN2ViYjtcbiRzY29yZWNhcmQtY29sb3ItLXdoaXRlOiAgIzcyNzI3MjtcbiRzY29yZWNhcmQtY29sb3ItLXJlZDogICAgIzg5MDAwNjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCA6OiBjb2xvdXJzXG4kYnRuLXRleHQtY29sb3I6ICNmZmY7XG4kYnRuLXRleHQtY29sb3ItLWhvdmVyOiAjZmZmO1xuJGJ0bi10ZXh0LWNvbG9yLS1pbnZlcnNlOiAjMzMzO1xuJGJ0bi1iZy1jb2xvcjogJGJyYW5kLWNvbG9yLS1vbmU7XG4kYnRuLWJnLWNvbG9yLS1ob3ZlcjogdmFyKC0tYnJhbmQtY29sb3ItLW9uZS1saWdodGVyKTtcblxuLy8gRGVmYXVsdCA6OiBkaW1lbnNpb25zXG4kYnRuLXBhZGRpbmc6IHZhcigtLWJ0bi1wYWRkaW5nLCAxNHB4IDMwcHggMTVweCk7XG4kYnRuLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtLWJvbGQ7XG4kYnRuLWZvbnQtc2l6ZTogMTdweDtcbiRidG4tdXBwZXJjYXNlOiBmYWxzZTtcbiRidG4tZm9udDogJGZvbnQtLXNhbnMtc2VyaWYtdHdvO1xuXG4vLyBCb3JkZXJcbiRidG4tYm9yZGVyLXRleHQtY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yLS10d28pO1xuJGJ0bi1ib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yLS10d28pO1xuJGJ0bi1ib3JkZXItdGV4dC1jb2xvci0taG92ZXI6ICNmZmY7XG4kYnRuLWJvcmRlci1jb2xvci0taG92ZXI6IHZhcigtLWJyYW5kLWNvbG9yLS1vbmUpO1xuJGJ0bi1ib3JkZXItYmctLWhvdmVyOiAkYnRuLXRleHQtY29sb3ItLWludmVyc2U7XG5cbi8vIEZvcm0gc3VibWl0XG4kYnRuLXN1Ym1pdC1wYWRkaW5nOiAkYnRuLXBhZGRpbmc7XG5cbi8vIFNtYWxsXG4kYnRuLXNtYWxsLWZvbnQtc2l6ZTogMTRweDtcbiRidG4tbWVkaXVtLWZvbnQtc2l6ZTogMThweDtcbiRidG4tc21hbGwtcGFkZGluZzogN3B4IDE2cHggOHB4O1xuJGJ0bi1tZWRpdW0tcGFkZGluZzogMTBweCAxNnB4IDExcHg7XG5cbi8vIERpc2FibGVkXG4kYnRuLWNvbG9yLS1kaXNhYmxlZDogI2NjYztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kZm9ybS1pbnB1dC1wYWRkaW5nOiA2cHggOXB4IDRweDtcbiRmb3JtLWlucHV0LWZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuJGZvcm0taW5wdXQtbGluZS1oZWlnaHQ6IDEuMztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIZWFkZXIgbmF2aWdhdGlvbiBiYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBEaW1lbnNpb25zXG4kaGVhZGVyLW5hdi1oZWlnaHQ6IDEyNXB4O1xuJGhlYWRlci1uYXYtaGVpZ2h0LXNtYWxsOiA2MHB4O1xuXG4vLyBDb2xvdXJzXG4kaGVhZGVyLW5hdi1iZy1jb2xvcjogJGJyYW5kLWNvbG9yLS1vbmU7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWVudSBpdGVtcyBjb21tb24gc3R5bGVzXG4vLyAubWVudV9faXRlbSBjbGFzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZvbnRcbiRtZW51LWl0ZW0tZm9udC1mYW1pbHk6ICRmb250LS1zYW5zLXNlcmlmLXR3bztcbiRtZW51LWl0ZW0tZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tYm9sZDtcbiRtZW51LWl0ZW0tZm9udC1zdHlsZTogbm9ybWFsO1xuJG1lbnUtcHJpbWFyeS1pdGVtLWZvbnQtc2l6ZTogMzBweDtcbiRtZW51LXByaW1hcnktaXRlbS11cHBlcmNhc2U6IGZhbHNlO1xuJG1lbnUtc3ViLWl0ZW0tZm9udC1zaXplOiAyMnB4O1xuJG1lbnUtc3ViLWl0ZW0tdXBwZXJjYXNlOiBmYWxzZTtcblxuLy8gQ29sb3Vyc1xuJG1lbnUtcHJpbWFyeS1pdGVtLWNvbG9yOiAkaGVhZGluZy1jb2xvci0tZ29sZDtcbiRtZW51LXByaW1hcnktaXRlbS1jb2xvci0taG92ZXI6ICRicmFuZC1jb2xvci0tb25lO1xuJG1lbnUtc3ViLWl0ZW0tY29sb3I6ICRoZWFkaW5nLWNvbG9yLS1nb2xkO1xuJG1lbnUtc3ViLWl0ZW0tY29sb3ItLWhvdmVyOiAkYnJhbmQtY29sb3ItLW9uZTtcbiRtZW51LWl0ZW0tbGluZS1jb2xvcjogI2NjYztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNZW51IDo6IEhvcml6b250YWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDb250YWluZXJcbiRtZW51LWhvcml6b250YWwtY29udGFpbmVyLXdpZHRoOiA2NSU7XG5cbi8vIENvbG91cnNcbiRtZW51LWhvcml6b250YWwtYm9yZGVyLWNvbG9yOiAjZTdlN2U3O1xuJG1lbnUtaG9yaXpvbnRhbC1wcmltYXJ5LWl0ZW0tY29sb3I6IHJnYmEoJHdoaXRlLCAwLjcpO1xuJG1lbnUtaG9yaXpvbnRhbC1wcmltYXJ5LWl0ZW0tY29sb3ItLWhvdmVyOiAkd2hpdGU7XG4kbWVudS1ob3Jpem9udGFsLXN1Yi1pdGVtLWNvbG9yOiAjMDAwO1xuJG1lbnUtaG9yaXpvbnRhbC1zdWItaXRlbS1jb2xvci0taG92ZXI6ICNmZmY7XG4kbWVudS1ob3Jpem9udGFsLXN1Yi1pdGVtLWJnLWNvbG9yLS1ob3ZlcjogIzAwMDtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNZW51IDo6IFNpZGViYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTaWRlYmFyXG4kbWVudS1zaWRlYmFyLXdpZHRoOiAxMDAlO1xuJG1lbnUtc2lkZWJhci13aWR0aC1kZXNrLWJyZWFrcG9pbnQ6IDUwJTtcbiRtZW51LXNpZGViYXItd2lkdGgtbW9iaWxlLWJyZWFrcG9pbnQ6IDEwMCU7XG4kbWVudS1zaWRlYmFyLWJnLWNvbG9yOiB2YXIoLS1zaWRlYmFyLWJnLWNvbG9yKTtcbiRtZW51LXNpZGViYXItc2hhZG93OiAwIDAgOHB4IC0ycHggIzAwMDtcblxuLy8gQ29sb3Vyc1xuJG1lbnUtc2lkZWJhci1wcmltYXJ5LWl0ZW0tY29sb3I6IHZhcigtLXByaW1hcnktbWVudS1pdGVtLWNvbG9yKTtcbiRtZW51LXNpZGViYXItcHJpbWFyeS1pdGVtLWNvbG9yLS1ob3ZlcjogdmFyKC0tcHJpbWFyeS1tZW51LWl0ZW0tY29sb3ItLWhvdmVyKTtcbiRtZW51LXNpZGViYXItc3ViLWl0ZW0tY29sb3I6IHZhcigtLXN1Yi1tZW51LWl0ZW0tY29sb3IpO1xuJG1lbnUtc2lkZWJhci1zdWItaXRlbS1jb2xvci0taG92ZXI6IHZhcigtLXN1Yi1tZW51LWl0ZW0tY29sb3ItLWhvdmVyKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNZW51IDo6IFNlY29uZGFyeSBuYXZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNlY29uZGFyeS1uYXYtYmctY29sb3I6ICNmNWYyZWY7XG5cbi8vIFVuZGVyIGJyZWFrcG9pbnRcbiRzZWNvbmRhcnktbmF2LWJyZWFrcG9pbnQtbWVudS1iZy1jb2xvcjogJHNlY29uZGFyeS1uYXYtYmctY29sb3I7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGFibGVzIC0gUmF0aW5nIENlbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiR0YWJsZS1yYXRlLWEtY29sb3I6ICM4MGI4ODA7XG4kdGFibGUtcmF0ZS1iLWNvbG9yOiAjYjBlYjlhO1xuJHRhYmxlLXJhdGUtYy1jb2xvcjogI2ZmZmRiMjtcbiR0YWJsZS1yYXRlLWQtY29sb3I6ICNmZmM5ODA7XG4kdGFibGUtcmF0ZS1lLWNvbG9yOiAjZjY5MDg1O1xuJHRhYmxlLXJhdGUtcC1jb2xvcjogI2IwYWRlMztcblxuLy8gQmFjayBCdXR0b24gY29sb3Vyc1xuJHNlY29uZGFyeS1uYXYtYmFjay1idG4tY29sb3I6ICR3aGl0ZTtcbiRzZWNvbmRhcnktbmF2LWJhY2stYnRuLWNvbG9yLS1ob3ZlcjogJHdoaXRlO1xuJHNlY29uZGFyeS1uYXYtYmFjay1idG4tYmctY29sb3I6ICM0NDQ7XG4kc2Vjb25kYXJ5LW5hdi1iYWNrLWJ0bi1iZy1jb2xvci0taG92ZXI6IGRhcmtlbigkc2Vjb25kYXJ5LW5hdi1iYWNrLWJ0bi1iZy1jb2xvciwgMTAlKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGFjY29yZGlvbi1oZWFkaW5nLWNvbG9yOiB2YXIoLS1icmFuZC1jb2xvci0tb25lKTtcbiRhY2NvcmRpb24taGVhZGluZy1jb2xvci0taG92ZXI6IGhzbCh2YXIoLS1icmFuZC1jb2xvci0tb25lKSxjYWxjKDEwMCUgLSAxMCUpKTtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogJGJyYW5kLWNvbG9yLS10d287XG4kYWNjb3JkaW9uLWRpdmlkZXItY29sb3I6ICNjY2M7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICNhYWE7XG4kY2Fyb3VzZWwtZXh0ZW5kZWQtaGVhZGluZy1jb2xvcjogIzAwMDtcbiRjYXJvdXNlbC1leHRlbmRlZC10ZXh0LWNvbG9yOiAjNDQ0O1xuJGNhcm91c2VsLXBhZ2VyLWJvcmRlci1jb2xvcjogIzAwMDtcbiRjYXJvdXNlbC1wYWdlci1maWxsLWNvbG9yOiAjMDAwO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFuaW1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuJGxvbmctdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiRsb25nLXRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRXZlbnRzIGNhcmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGV2ZW50LWNhcmQtdGl0bGUtY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yLS1vbmUpO1xuJGV2ZW50LWNhcmQtZ3JleS1jb2xvcjogIzcxNzE3MTtcbiRldmVudC1jYXJkLWJsYWNrLWNvbG9yOiAjMjMxZjIwO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNsaWRlc2hvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kc2xpZGVzaG93LWZhbGxiYWNrLWhlaWdodDogNzAwcHg7XG4kc2xpZGVzaG93LWJnLWNvbG9yOiAjMjIyO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBhZ2UgaGVhZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwYWdlLWhlYWRlci1iZy1jb2xvcjogIzAwMDtcbiRwYWdlLWhlYWRlci1pbWFnZXM6ICgpO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhvbGUgTmF2aWdhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kaG9sZS1uYXZpZ2F0aW9uLW1vYmlsZS1oZWlnaHQ6IDk0cHg7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVmlkZW8gcG9zdGVyIGltYWdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kdmlkZW8tcG9zdGVyLWltYWdlczogKFxuICAvLydob2xlLTEnLFxuICAvLydob2xlLTInLFxuICAvLydob2xlLTMnLFxuICAvLydob2xlLTQnLFxuICAvLydob2xlLTUnLFxuICAvLydob2xlLTYnLFxuICAvLydob2xlLTcnLFxuICAvLydob2xlLTgnLFxuICAvLydob2xlLTknLFxuICAvLydob2xlLTEwJyxcbiAgLy8naG9sZS0xMScsXG4gIC8vJ2hvbGUtMTInLFxuICAvLydob2xlLTEzJyxcbiAgLy8naG9sZS0xNCcsXG4gIC8vJ2hvbGUtMTUnLFxuICAvLydob2xlLTE2JyxcbiAgLy8naG9sZS0xNycsXG4gIC8vJ2hvbGUtMTgnXG4pOyIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1JWElOU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy9cbi8vIEdlbmVyYWwgVXRpbGl0aWVzXG4vL1xuXG4vLy8gTWVkaWEgcXVlcnkgbWl4aW5cbi8vL1xuLy8vIE1lZGlhIHF1ZXJpZXMgc2hvdWxkIGJlIGRlZmluZWQgYXMgU2FzcyBsaXN0cyB1c2luZyB0aGUgZm9sbG93aW5nIHN0cnVjdHVyZTpcbi8vL1xuLy8vICAgICAkYnJlYWtwb2ludHM6IChcbi8vLyAgICAgICAgICdtb2JpbGUnICcobWF4LXdpZHRoOiA0ODBweCknLFxuLy8vICAgICAgICAgJ3RhYmxldCcgJyhtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpJ1xuLy8vICAgICApO1xuQG1peGluIG1lZGlhLXF1ZXJ5KCRxdWVyaWVzLi4uKSB7XG4gIEBlYWNoICRxdWVyeSBpbiAkcXVlcmllcyB7XG4gICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgICRuYW1lOiAgICAgICAgbnRoKCRicmVha3BvaW50LCAxKTtcbiAgICAgICRkZWNsYXJhdGlvbjogbnRoKCRicmVha3BvaW50LCAyKTtcblxuICAgICAgQGlmICRxdWVyeSA9PSAkbmFtZSBhbmQgJGRlY2xhcmF0aW9uIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAjeyRkZWNsYXJhdGlvbn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBWZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbCBjZW50ZXJpbmcgYW4gZWxlbWVudCB3aXRob3V0IG5lZWRpbmcgdG8ga25vdyBvciBmaXggaXRzIHdpZHRoICYgaGVpZ2h0XG5AbWl4aW4gYWxpZ24oJHR5cGU6IGNlbnRlciwgJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuXG4gIEBpZiAkdHlwZSA9PSBjZW50ZXIge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSB2ZXJ0aWNhbCB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG5cbiAgQGlmICR0eXBlID09IGhvcml6b250YWwge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuLy8vIERFUFJFQ0FURUQgOjogVXNlIGFsaWduKHZlcnRpY2FsKSBtaXhpbiBpbnN0ZWFkXG5AbWl4aW4gdmVydGljYWwtYWxpZ24ge1xuICBAaW5jbHVkZSBhbGlnbih2ZXJ0aWNhbCk7XG59XG5cbi8vLyBERVBSRUNBVEVEIDo6IFVzZSBhbGlnbihob3Jpem9udGFsKSBtaXhpbiBpbnN0ZWFkXG5AbWl4aW4gaG9yaXpvbnRhbC1hbGlnbiB7XG4gIEBpbmNsdWRlIGFsaWduKGhvcml6b250YWwpO1xufVxuXG4vLy8gREVQUkVDQVRFRCA6OiBVc2UgYWxpZ24oY2VudGVyKSBtaXhpbiBpbnN0ZWFkXG5AbWl4aW4gYWxpZ24tdG8tY2VudGVyIHtcbiAgQGluY2x1ZGUgYWxpZ24oY2VudGVyKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyBhbiBlbGVtZW50IChjcm9zcy1icm93c2VyIGNvbXBhdGlibGUpXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLy8vIEFsbG93cyB0aGUgc2FtZSBzdHlsZXMgdG8gYmUgYXBwbGllZCB0byBtdWx0aXBsZSBzZWxlY3RvcnMgd2l0aG91dFxuLy8vIGNvbW1hLXNlcGFyYXRpbmcgdGhlbS4gVXNlZnVsIGZvciBwcm9wcmlldGFyeS9ub24td2lkZWx5LXN1cHBvcnRlZCBzZWxlY3RvcnNcbi8vLyB3aGljaCBjYW4ndCBiZSBjb21tYS1zZXBhcmF0ZWQuXG5AbWl4aW4gbXVsdGlwbGUtc2VsZWN0b3JzKCRzZWxlY3RvcnMuLi4pIHtcbiAgQGVhY2ggJHNlbGVjdG9yIGluICRzZWxlY3RvcnMge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gR3JhZGllbnRzXG5AbWl4aW4gZ3JhZGllbnQoJHBvc2l0aW9uOiB0b3AsICRoZWlnaHQ6IDE3MHB4LCAkcmdiYTogcmdiYSgwLCAwLCAwLCAwLjI1KSkge1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGhlaWdodDtcblxuICAgIEBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRyZ2JhIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgICB9XG5cbiAgICBAaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAkcmdiYSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBCYWNrZ3JvdW5kIGNvbG9yIGdyYWRpZW50XG4vL1xuQG1peGluIGJhY2tncm91bmQtY29sb3ItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGZyb20sICR0bykge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gJGRpcmVjdGlvbiwgJGZyb20sICR0byk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmcm9tO1xufVxuXG4vLy8gUmV0aW5hIGltYWdlIG1peGluXG4vLy8gYWx3YXlzIHBhc3MgdGhlIGRpbWVuc2lvbnMgZm9yIHRoZSBsYXJnZXN0IChyZXRpbmEpIHZlcnNpb24gb2YgdGhlIGltYWdlXG5AbWl4aW4gcmV0aW5hLWJhY2tncm91bmQoJGZpbGVuYW1lLCAkeDEtd2lkdGgsICR4MS1oZWlnaHQsICRleHRlbnNpb246ICdwbmcnKSB7XG5cbiAgJGZpbGVuYW1lLTF4OiAkZmlsZW5hbWUgKyAnQDF4LicgKyAkZXh0ZW5zaW9uO1xuICAkZmlsZW5hbWUtMng6ICRmaWxlbmFtZSArICdAMnguJyArICRleHRlbnNpb247XG5cbiAgLy8gSGFsdmVzIGxhcmdlIGZpbGUgZGltZW5zaW9uc1xuICB3aWR0aDogJHgxLXdpZHRoO1xuICBoZWlnaHQ6ICR4MS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybCgkZmlsZW5hbWUtMXgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkoJ3JldGluYScpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoJGZpbGVuYW1lLTJ4KTtcbiAgfVxufVxuXG4vLy8gUmV0aW5hIGltYWdlIG1peGluICh3aXRob3V0IGRpbWVuc2lvbnMpXG5AbWl4aW4gcmV0aW5hLWJhY2tncm91bmQtYmFyZSgkZmlsZW5hbWUsICRleHRlbnNpb246ICdwbmcnKSB7XG4gICRmaWxlbmFtZS0xeDogJGZpbGVuYW1lICsgJ0AxeC4nICsgJGV4dGVuc2lvbjtcbiAgJGZpbGVuYW1lLTJ4OiAkZmlsZW5hbWUgKyAnQDJ4LicgKyAkZXh0ZW5zaW9uO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybCgkZmlsZW5hbWUtMXgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCdyZXRpbmEnKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKCRmaWxlbmFtZS0yeCk7XG4gIH1cbn1cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5AbWl4aW4gYmFzZS1mb250LXNpemUge1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xufVxuXG5AbWl4aW4gZm9udC1zbW9vdGhpbmcoKSB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gbm9ybWFsaXNlZC10ZXh0IHtcbiAgQGVhY2ggJHByb3BlcnR5IGluICRub3JtYWxpc2VkLXRleHQtcHJvcGVydGllcyB7XG4gICAgJGluZGV4OiBnZXQtbGlzdC1pbmRleCgkcHJvcGVydHksICRub3JtYWxpc2VkLXRleHQtcHJvcGVydGllcyk7XG5cbiAgICAjeyRwcm9wZXJ0eX06IGdldC1saXN0LXZhbHVlKCRpbmRleCwgJG5vcm1hbGlzZWQtdGV4dC12YWx1ZXMpO1xuICB9XG59XG5cbi8vLyBPdXRwdXRzIGEgcmVtIGFuZCBweCBmYWxsYmFjayB2YWx1ZSBmb3IgdGhlIGdpdmVuIHByb3BlcnR5LlxuLy8vIEBhdXRob3IgU2FtIEhhc3RpbmdzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcm9wZXJ0eSAtIHRoZSBDU1MgcHJvcGVydHlcbi8vLyBAcGFyYW0ge0xpc3R8TnVtYmVyfFN0cmluZ30gJHZhbHVlc1xuLy8vIEBleGFtcGxlXG4vLy8gICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxMnB4KTtcbi8vLyAgIC8vIGZvbnQtc2l6ZTogMTJweDtcbi8vLyAgIC8vIGZvbnQtc2l6ZTogMC43NXJlbTtcbi8vL1xuLy8vICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDE2cHggMTJweCk7XG4vLy8gICAvLyBwYWRkaW5nOiAxNnB4IDEycHg7XG4vLy8gICAvLyBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG5AbWl4aW4gcmVtKCRwcm9wZXJ0eSwgJHZhbHVlcykge1xuXG4gICRweDogICgpO1xuICAkcmVtOiAoKTtcblxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIG9yICR2YWx1ZSA9PSBhdXRvIG9yICR2YWx1ZSA9PSBpbmhlcml0IHtcbiAgICAgICRweDogIGFwcGVuZCgkcHgsICR2YWx1ZSk7XG4gICAgICAkcmVtOiBhcHBlbmQoJHJlbSwgJHZhbHVlKTtcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAkcHg6ICBhcHBlbmQoJHB4LCAkdmFsdWUpO1xuICAgICAgJHJlbTogYXBwZW5kKCRyZW0sIHJlbShzdHJpcC11bml0KCR2YWx1ZSkpKTtcbiAgICB9XG4gIH1cblxuICAjeyRwcm9wZXJ0eX06ICRweDtcbiAgI3skcHJvcGVydHl9OiAkcmVtO1xufVxuXG4vLy8gT3V0cHV0cyBhIGBmb250LXNpemU6IFt4XXJlbTtgIGRlY2xhcmF0aW9uIGZvciB0aGUgZ2l2ZW4gcHggdmFsdWUuXG4vLy8gQGF1dGhvciBTYW0gSGFzdGluZ3Ncbi8vLyBAcGFyYW0ge051bWJlcn0gJGZvbnQtc2l6ZSAtIHRoZSBweCB2YWx1ZSB0byBjb252ZXJ0XG5AbWl4aW4gcmVtLWZvbnQtc2l6ZSgkZm9udC1zaXplKSB7XG4gIEBpbmNsdWRlIHJlbShmb250LXNpemUsICRmb250LXNpemUpO1xufVxuXG4vLyBBbGwgQ2Fwc1xuLy8gTWFrZXMgdGV4dCB1cHBlcmNhc2UgYW5kIGFkanVzdHMgbGV0dGVyLXNwYWNpbmcgYWNjb3JkaW5nIHRvIGZvbnQtc2l6ZVxuLy8gMTYgKiAwLjA2MjUgPSAxcHhcbkBtaXhpbiBhbGwtY2FwcygkZm9udC1zaXplKSB7XG4gICRmb250LXNpemU6IHN0cmlwLXVuaXQoJGZvbnQtc2l6ZSk7IC8vIHJlbW92ZXMgJ3B4J1xuXG4gIGxldHRlci1zcGFjaW5nOiBjYWxjKCgoJGZvbnQtc2l6ZSAvIDE2KSAqIDAuMDYyNSkgLyAyKSArIGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLy8gSGlkZSB0ZXh0XG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbn1cblxuLy8gSGVhZGluZyBMaW5lXG4vLyBDcmVhdGVzIGxpbmVzIGFib3ZlIG9yIGJlbGxvdyBhIGhlYWRpbmcgd2l0aCBjdXN0b20gcG9zaXRpb24sIGNvbG91ciwgc2l6ZSwgZXRjLi4uXG5AbWl4aW4gaGVhZGluZy1saW5lKCRwb3NpdGlvbjogdG9wLCAkYWxpZ246IGxlZnQsICR3aWR0aDogMTAwJSwgJGhlaWdodDogMXB4LCAkY29sb3I6ICNkMWQxZDEsICR2ZXJ0aWNhbC1tYXJnaW46IDEzcHgpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6ICR3aWR0aDtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICR2ZXJ0aWNhbC1tYXJnaW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkYWxpZ24gPT0gY2VudGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDZW50cmVzIGxpbmVcbiAgICAmW3N0eWxlPSd0ZXh0LWFsaWduOiBjZW50ZXI7J10ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBtYXJnaW4tdG9wOiAkdmVydGljYWwtbWFyZ2luO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGFsaWduID09IGNlbnRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2VudHJlcyBsaW5lXG4gICAgJltzdHlsZT0ndGV4dC1hbGlnbjogY2VudGVyOyddIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vICdMaW5lLW9uLXNpZGVzJyBzdHlsaW5nXG4vLy8gRGVmaW5lIGxpbmUgd2lkdGgsIGxpbmUgY29sb3IgYW5kIHZlcnRpY2FsIG1hcmdpblxuQG1peGluIGhlYWRpbmctc2lkZS1saW5lcygkbGluZS13aWR0aDogNTBweCwgJGJvcmRlci1jb2xvcjogI2QxZDFkMSwgJG1hcmdpbjogNDUlKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkbWFyZ2luO1xuICAgIHdpZHRoOiAkbGluZS13aWR0aDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KG1vYmlsZSkge1xuICAgICAgd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tbGVmdDogLSgkbGluZS13aWR0aCArIDIwKTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxufVxuXG4vLy8gVGV4dCBwbGFjZWhvbGRlciBzdHlsaW5nIGZvciA8aW5wdXQ+IGZpZWxkc1xuQG1peGluIHBsYWNlaG9sZGVyLXN0eWxlKCkge1xuICBAaW5jbHVkZSBtdWx0aXBsZS1zZWxlY3RvcnMoJyY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXInLCAnJjotbW96LXBsYWNlaG9sZGVyJywgJyY6Oi1tb3otcGxhY2Vob2xkZXInLCAnJjotbXMtaW5wdXQtcGxhY2Vob2xkZXInKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFRleHQgc2VsZWN0aW9uIGhpZ2hsaWdodFxuQG1peGluIGhpZ2hsaWdodC1zdHlsZSgpIHtcbiAgQGluY2x1ZGUgbXVsdGlwbGUtc2VsZWN0b3JzKCc6OnNlbGVjdGlvbicsICc6Oi1tb3otc2VsZWN0aW9uJykge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEFkZCBmYW5jeSB1bmRlcmxpbmVcbkBtaXhpbiBmYW5jeS11bmRlcmxpbmUoJHVuZGVybGluZS1jb2xvcjogJGxpbmstY29sb3ItdW5kZXJsaW5lLCAkdW5kZXJsaW5lLWNvbG9yLWhvdmVyOiAkbGluay1jb2xvci11bmRlcmxpbmUtLWhvdmVyKSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB0cmFuc3BhcmVudCAxMCUsICR1bmRlcmxpbmUtY29sb3IgMTAlLCAkdW5kZXJsaW5lLWNvbG9yIDE0JSwgdHJhbnNwYXJlbnQgMTAlKTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgdHJhbnNwYXJlbnQgMTAlLCAkdW5kZXJsaW5lLWNvbG9yLWhvdmVyIDEwJSwgJHVuZGVybGluZS1jb2xvci1ob3ZlciAxNCUsIHRyYW5zcGFyZW50IDEwJSk7XG4gIH1cbn1cblxuLy8gQWRkcyAuLi4gdG8gdGhlIGVuZCBvZiB0ZXh0XG5AbWl4aW4gdHJ1bmNhdGUoJHdpZHRoKSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4vLyBNYWtlcyBhbiBlbGVtZW50ICh1c3VhbGx5IGEgbGluayBvciBidXR0b24pIGJlY29tZSBhbiBpbnZpc2libGUgb3ZlcmxheSBvbiB0b3Agb2YgYW4gYXJlYSB0aGF0IHNob3VsZCBiZVxuLy8gY2xpY2thYmxlLiBUbyB1c2Ugd2hlbiB5b3Ugd2FudCB0aGUgY2xpY2thYmxlIGFyZWEgaGFzIGxvYWRzIG9mIGh0bWwgbmVzdGVkIChpLmUuIGNhcm91c2VsIGZlYXR1cmV0dGVzKVxuLy9cbi8vIEluY2x1ZGVzIGZpeCBmb3IgaWUvZWRnZSBicm93c2VycyB3aGVyZSBlbXB0eSBlbGVtZW50cyB3aWxsIGlnbm9yZSBzaXplIHByb3BlcnRpZXMgKGVtcHR5LmdpZiBhcyBiYWNrZ3JvdW5kKVxuQG1peGluIHRyYW5zcGFyZW50LWxpbmstb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybCgnZW1wdHkuZ2lmJyk7XG59XG5cbi8vIEdlbmVyYXRlcyB0cmlhbmdsZXMgaW4gYW55IGRpcmVjdGlvblxuLy8gWW91IGNhbiBzZXQgc2l6ZSBhbmQgY29sb3VyXG4vL1xuQG1peGluIGdlbmVyYXRlLXRyaWFuZ2xlKCRkaXJlY3Rpb246IHRvcCwgJGJvdHRvbS1zaXplOiAxMHB4LCAkdG9wLXNpemU6IDEwcHgsICRjb2xvcjogI2ZmZikge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIEBpZiAkZGlyZWN0aW9uID09IHRvcCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRvcC1zaXplIHNvbGlkICRjb2xvcjtcbiAgICBib3JkZXItbGVmdDogJGJvdHRvbS1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogJGJvdHRvbS1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gYm90dG9tIHtcbiAgICBib3JkZXItdG9wOiAkdG9wLXNpemUgc29saWQgJGNvbG9yO1xuICAgIGJvcmRlci1sZWZ0OiAkYm90dG9tLXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkYm90dG9tLXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICBib3JkZXItdG9wOiAkYm90dG9tLXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvdHRvbS1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogJHRvcC1zaXplIHNvbGlkICRjb2xvcjtcbiAgfVxuXG4gIEBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICBib3JkZXItdG9wOiAkYm90dG9tLXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvdHRvbS1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAkdG9wLXNpemUgc29saWQgJGNvbG9yO1xuICB9XG59XG5cbi8vIFRlc3RpbW9uaWFsIHF1b3RlIGFuaW1hdGlvbiAoZmFkZSBhbmQgc2xpZGUpXG5AbWl4aW4gdGVzdGltb25pYWwtdGV4dC1hbmltYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdG9wIDYwMG1zLCBvcGFjaXR5IDQwMG1zO1xuXG4gICYuYW5pbWF0ZS1xdW90ZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy9cbi8vIEFkZHMgYSBjaXJjbGUgd3JhcHBlciBhcm91bmQgaWNvbnNcbi8vIFNvbWUgdmFyaWF0aW9ucyBhcmUgcG9zc2libGUgbGlrZSBiYWNrZ3JvdW5kIG9yIGJvcmRlciBvbmx5IGlmIGNvbG91ciBwcm9wZXJ0aWVzIGFyZSBzZXQgYXMgdHJhbnNwYXJlbnQuXG4vL1xuLy8gTWl4aW4gc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBpY29uJ3MgcGFyZW50LCBpbiB0aGUgY2FzZSBiZWxvdyAnLnNpdGUtZm9vdGVyX19zb2NpYWwtbGluaycuXG4vLyBOb3RlOiBJY29ucyB3aWR0aCBhbmQgaGVpZ2h0IG5lZWRzIHRvIGJlIHR3ZWFrZWQgYWNjb3JkaW5nbHlcbi8vXG4vLyBFeGFtcGxlczpcbi8vIC0gQm9yZGVyIG9ubHk6IEBpbmNsdWRlIGljb24tY2lyY2xlLXdyYXBwZXIoNTBweCwgdHJhbnNwYXJlbnQsIDJweCk7XG4vLyAtIEJhY2tncm91bmQgb25seTogQGluY2x1ZGUgaWNvbi1jaXJjbGUtd3JhcHBlcig1MHB4LCAjY2NjKTtcbi8vXG4vLyAgPGEgY2xhc3M9XCJzaXRlLWZvb3Rlcl9fc29jaWFsLWxpbmtcIiBocmVmPVwiI1wiPlxuLy8gICAgPD89IGdldFN2ZygndHdpdHRlcicpID8+XG4vLyAgPC9hPlxuLy9cbkBtaXhpbiBpY29uLWNpcmNsZS13cmFwcGVyKCRjaXJjbGUtd2lkdGg6IDQ0cHgsICRiZy1jb2xvcjogIzAwMCwgJGJvcmRlci13aWR0aDogMCwgJGJvcmRlci1jb2xvcjogI2NjYykge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6ICRjaXJjbGUtd2lkdGg7XG4gIGhlaWdodDogJGNpcmNsZS13aWR0aDtcbiAgYm9yZGVyLXdpZHRoOiAkYm9yZGVyLXdpZHRoO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuXG4gIC5pY29uIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIH1cbn1cblxuLy9cbi8vIE1peGluIHRoYXQgaG9sZHMgY29tbW9uIHN0eWxlcyBmb3IgbW9iaWxlICYgd2hlbiBzY3JvbGxpbmdcbi8vXG5AbWl4aW4gc21hbGxlci1uYXYtbWVudS1zdHlsZSgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlYWRlci1uYXYtaGVpZ2h0LXNtYWxsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLW5hdi1iZy1jb2xvcjtcblxuICAuaGVhZGVyLW5hdl9fbG9nbyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbmF2X19sb2dvLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5idG4tLW1lbnUge1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAudXRpbGl0eS1uYXYge1xuICAgIGxlZnQ6IDE2MHB4O1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbiAgLy8gR3JhZGllbnRcbiAgJi5zaGFkb3cge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSBzbWFsbCA8dGg+IHN0eWxlXG5AbWl4aW4gdGFibGUtdGgtc21hbGwge1xuICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDE1cHgpO1xuICBAaW5jbHVkZSBhbGwtY2FwcygxNXB4KTtcblxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U0ZTRlNDtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gR2VuZXJhdGUgc3RhdGljIG5hdmlnYXRpb24gbGlzdCAodXNlZCBmb3IgbGV0dGVycyBpbiBNZW1iZXJzIERpcmVjdG9yeSBhbmQgZm9yIG1vbnRocyBpbiBEaWFyeSlcbkBtaXhpbiBzdGF0aWMtbmF2LWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDdkN2Q3O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZDdkNztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgbGkge1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgxN3B4KTtcbiAgICAgIEBpbmNsdWRlIGFsbC1jYXBzKDE3cHgpO1xuXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXR3bztcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICYuc3RhdGljLW5hdi1pdGVtLS1hY3RpdmUge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItLXR3bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLS1vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBBZGRzIHNoYWRvdyB0byBib3R0b20gbGVmdCBjb3JuZXIgb2YgYW4gZWxlbWVudFxuLy9cbkBtaXhpbiBjb3JuZXItc2hhZG93KCRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpKSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMGRlZywgJGNvbG9yIDIwJSwgdHJhbnNwYXJlbnQgNTIlKTtcbn1cblxuLy9cbi8vIEFkZHMgcmFkaWFsIHNoYWRvdyB0byBib3R0b20gbGVmdCBjb3JuZXIgb2YgYW4gZWxlbWVudFxuLy9cbkBtaXhpbiByYWRpYWwtY29ybmVyLXNoYWRvdygkY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KSwgJHdpZHRoOiA1MDBweCwgJGhlaWdodDogNTAwcHgpIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KCRjb2xvciAwJSwgdHJhbnNwYXJlbnQgNzAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDUlLCA0NSUpO1xuICB9XG59XG5cbi8vXG4vLyBTbGlkZXNob3cgLyBwYWdlIGhlYWRlciBjb250ZW50IHN0eWxlXG4vL1xuQG1peGluIHNsaWRlLWNvbnRlbnQtc3R5bGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6ICR6LWluZGV4LS1zbGlkZXNob3c7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS12ZXJ0aWNhbC1ndXR0ZXItdG9wKSB2YXIoLS1oZXJvLWhvcml6b250YWwtZ3V0dGVyLXJpZ2h0KSB2YXIoLS12ZXJ0aWNhbC1ndXR0ZXItYm90dG9tKSB2YXIoLS1oZXJvLWhvcml6b250YWwtZ3V0dGVyLWxlZnQpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDAuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWlubGluZTogMDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1yZWd1bGFyO1xuXG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC0tc2Fucy1zZXJpZi10d287XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuXG5cbiAgICAmLmJpZy10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoZm9udC1zaXplLCA3NjhweCwgMTAyNHB4LCA0OHB4LCA3NXB4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBoMSxcbiAgaDIge1xuICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoZm9udC1zaXplLCA2MGVtLCAxMTNlbSwgMS44ZW0sIDMuNWVtKTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoZm9udC1zaXplLCA0NWVtLCA5NWVtLCAxLjRlbSwgMi42ZW0pO1xuICB9XG4gIFxuICBoNCB7XG4gICAgQGluY2x1ZGUgZmx1aWQtdHlwZShmb250LXNpemUsIDQ1ZW0sIDk1ZW0sIDEuMmVtLCAxLjllbSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxuXG4gIGg1LFxuICBoNiB7XG4gICAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgyMHB4KTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIvL1wiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICsgaDEsXG4gICAgKyBoMixcbiAgICArIGgzLFxuICAgICsgaDQge1xuICAgICAgbWFyZ2luLXRvcDogMC4zZW07XG4gICAgfVxuICB9XG5cbiAgLmJ0biB7XG4gICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1ib2xkO1xuICB9XG5cbiAgcCxcbiAgZGl2IHtcbiAgICAvLyBAaW5jbHVkZSByZW0tZm9udC1zaXplKDI0cHgpO1xuICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoZm9udC1zaXplLCA3NjhweCwgMTAyNHB4LCAxOHB4LCAyMHB4KTtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC0tc2Fucy1zZXJpZi10d287XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tbWVkaXVtO1xuICAgIGIsIFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1ib2xkO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KHdpZGUpIHsgLy8gMTQ0MHB4XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeShiaWctZGVzaykgeyAvLyAxMjgwcHhcbiAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkoZGVzaykgeyAvLyAxMDI0cHhcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkobW9iaWxlKSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGJhbm5lci1jb250ZW50IHtcbiAgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICBtYXJnaW4taW5saW5lOiAwO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tYm9sZDtcbiAgfVxuXG4gID4gKjpub3QoLmJhbm5lci1vdmVybGF5KSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuXG4gIC8vIGgxLFxuICAvLyBoMixcbiAgLy8gaDMsXG4gIC8vIGg0IHtcbiAgLy8gICBmb250LWZhbWlseTogJGZvbnQtLXNhbnMtc2VyaWYtdHdvO1xuICAvLyAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIC8vICAgbWFyZ2luLXRvcDogMDtcbiAgLy8gICBtYXJnaW4tYm90dG9tOiAwLjU1ZW07XG4gIC8vICAgJjpsYXN0LWNoaWxkIHtcbiAgLy8gICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgaDEsXG4gIGgyIHtcblxuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcblxuICAgIC5iZy1jb2xvci0tb25lICYge1xuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yLS10d28pO1xuICAgIH1cblxuICAgIC5iZy1jb2xvci0tdHdvICYge1xuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yLS1vbmUpO1xuICAgIH1cbiAgfVxuXG4gIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgLy8gaDMsXG4gIC8vIGg0IHtcbiAgLy8gICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDMwcHgpO1xuICAvLyB9XG5cbiAgLy8gaDUge1xuICAvLyAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMThweCk7XG4gIC8vICAgQGluY2x1ZGUgYWxsLWNhcHMoMThweCk7XG4gIC8vICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tbWVkaXVtO1xuICAvLyB9XG5cbiAgLy8gaDYge1xuICAvLyAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMThweCk7XG4gIC8vIH1cblxuICAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tYm9sZDtcbiAgfVxuXG4gIHAsXG4gIGRpdiB7XG4gICAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgyMHB4KTtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtLXNhbnMtc2VyaWYtdHdvO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtLW1lZGl1bTtcbiAgICBiLCBcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tYm9sZDtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFF1b3RlcyBhbmQgY2l0ZXMgc3R5bGVzXG4vL1xuQG1peGluIHF1b3RlLXRleHQtc3R5bGUoJGZvbnQtc2l6ZTogc21hbGwpIHtcbiAgY29sb3I6ICRicmFuZC1jb2xvci0tb25lO1xuXG4gIEBpZiAkZm9udC1zaXplID09IGJpZyB7XG4gICAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgzMnB4KTtcblxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC0tc2Fucy1zZXJpZi10d287XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC0tYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnkobW9iaWxlKSB7XG4gICAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDI4cHgpO1xuXG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZm9udC1zaXplID09IHNtYWxsIHtcbiAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDI2cHgpO1xuXG4gICAgZm9udC1mYW1pbHk6ICRmb250LS1zYW5zLXNlcmlmLXR3bztcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnkobW9iaWxlKSB7XG5cbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBjaXRlLXRleHQtc3R5bGUge1xuICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDIwcHgpO1xuXG4gIGZvbnQtZmFtaWx5OiAkZm9udC0tc2Fucy1zZXJpZi10d287XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtLWJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGJyYW5kLWNvbG9yLS10d287XG59XG5cbi8vIEZsdWlkIHR5cG9ncmFwaHkvbWFyZ2luL3BhZGRpbmcgbWl4aW5cbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgZmx1aWQtdHlwZShmb250LXNpemUsIDM3NXB4LCAxMDI0cHgsIDQycHgsIDcwcHgpO1xuLy8gICAgICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUobWFyZ2luLCAzNzVweCwgMTAyNHB4LCAyMHB4LCA0MHB4KTtcblxuQG1peGluIGZsdWlkLXR5cGUoJHByb3BlcnRpZXMsICRtaW4tdncsICRtYXgtdncsICRtaW4tdmFsdWUsICRtYXgtdmFsdWUpIHtcbiAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAjeyRwcm9wZXJ0eX06ICRtaW4tdmFsdWU7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbi12dykge1xuICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skbWluLXZhbHVlfSArICN7c3RyaXAtdW5pdCgkbWF4LXZhbHVlIC0gJG1pbi12YWx1ZSl9ICogKDEwMHZ3IC0gI3skbWluLXZ3fSkgLyAje3N0cmlwLXVuaXQoJG1heC12dyAtICRtaW4tdncpfSk7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRtYXgtdncpIHtcbiAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgI3skcHJvcGVydHl9OiAkbWF4LXZhbHVlO1xuICAgIH1cbiAgfVxufVxuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkdmFsdWUpIHtcbiAgQHJldHVybiBtYXRoLmRpdigkdmFsdWUsICR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuQG1peGluIGNhbGN1bGF0ZS13cmFwcGVyLXdpZHRoKCRtYXgtd2lkdGgsICRwYWRkaW5nLWlubGluZSkge1xuICBtYXgtd2lkdGg6IGNhbGMoI3skbWF4LXdpZHRofSArIGNhbGMoI3skcGFkZGluZy1pbmxpbmV9ICogMikpO1xufVxuXG4vLyBSYXRpbmcgY2VsbHNcbkBtaXhpbiB0YWJsZS1jZWxscy1yYXRpbmctY29sb3VycyB7XG4gICR0YWJsZS1yYXRlLWNvbG9yczogKFxuICAgIGE6ICR0YWJsZS1yYXRlLWEtY29sb3IsXG4gICAgYjogJHRhYmxlLXJhdGUtYi1jb2xvcixcbiAgICBjOiAkdGFibGUtcmF0ZS1jLWNvbG9yLFxuICAgIGQ6ICR0YWJsZS1yYXRlLWQtY29sb3IsXG4gICAgZTogJHRhYmxlLXJhdGUtZS1jb2xvcixcbiAgICBwOiAkdGFibGUtcmF0ZS1wLWNvbG9yLFxuICApO1xuXG4gIEBlYWNoICRyYXRlLCAkY29sb3IgaW4gJHRhYmxlLXJhdGUtY29sb3JzIHtcbiAgICAmLnJhdGUtI3skcmF0ZX0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAvLyBDZW50cmVzIGxpbmVcbiAgICAgICZbc3R5bGU9J3RleHQtYWxpZ246IGNlbnRlcjsnXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2tldyBhbmdsZSBtaXhpblxuXG5AbWl4aW4gYW5nbGUoJHBzZXVkbywgJGZsaXA6IGZhbHNlLCAkYW5nbGU6IDcwZGVnKSB7XG4gIC8vIFBvc3NpYmxlIHZhbHVlcyBmb3IgJHBzZXVkbyBhcmU6IGJlZm9yZSwgYWZ0ZXIsIGJvdGhcbiAgQGlmICRwc2V1ZG8gPT0gJ2JlZm9yZScgb3IgJHBzZXVkbyA9PSAnYWZ0ZXInIG9yICRwc2V1ZG8gPT0gJ2JvdGgnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICAkc2VsZWN0b3I6IGlmKCRwc2V1ZG8gPT0gJ2JvdGgnLCAnJjpiZWZvcmUsJjphZnRlcicsICcmOiN7JHBzZXVkb30nKTtcblxuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogLTFweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNTAlO1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8vIGZvciBDaHJvbWUgV2luZG93c1xuICAgIH1cblxuICAgIEBpZiAkcHNldWRvID09ICdiZWZvcmUnIHtcbiAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICBAaWYgJGZsaXAge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koJGFuZ2xlICogLTEpO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKCRhbmdsZSk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwc2V1ZG8gPT0gJ2FmdGVyJyB7XG4gICAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgQGlmICRmbGlwIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKCRhbmdsZSk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koJGFuZ2xlICogLTEpO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHBzZXVkbyA9PSAnYm90aCcge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIEBpZiAkZmxpcCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WSgkYW5nbGUgKiAtMSk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koJGFuZ2xlKTtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgQGlmICRmbGlwIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKCRhbmdsZSk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koJGFuZ2xlICogLTEpO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZpbGwtcGFyZW50LXNwYWNlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbkBtaXhpbiBsaW5lLWNsYW1wKCRsaW5lcykge1xuICAtbXMtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtbXMtbGluZS1jbGFtcDogJGxpbmVzO1xuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lcztcbiAgbGluZS1jbGFtcDogJGxpbmVzO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSE9MRSBNQVBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5ob2xlX19tYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTIwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnkobGFwdG9wKSB7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICB9XG59XG5cbi8vXG4vLyBIb2xlIG1hcCAoem9vbSlcbi8vXG4uaG9sZV9fbWFwLXpvb20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1hcmdpbjogYXV0bztcblxuICAqIHtcbiAgICBjdXJzb3I6IHpvb20taW47XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLmhvbGVfX21hcC16b29tLWltYWdlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2QyZDJkMjtcbiAgICB9XG4gIH1cblxuICAvLyBJbnZpc2libGUgZGl2IHRvIHByZXZlbnQgdG91Y2ggc2Nyb2xsXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTA1JTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeShtb2JpbGUpIHtcbiAgICAuaG9sZV9fbWFwLXpvb20taW5mbyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ob2xlX19tYXAtem9vbS1pbWFnZSB7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAvLyBJbnZpc2libGUgZGl2IHRvIHByZXZlbnQgdG91Y2ggc2Nyb2xsXG4gICAgJjo6YmVmb3JlIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgfVxufVxuXG4uaG9sZV9fbWFwLXpvb20taW5mbyB7XG4gIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMTZweCk7XG4gIEBpbmNsdWRlIGFsbC1jYXBzKDE2cHgpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZzogMTBweCA0NXB4IDEwcHggMTVweDtcbiAgY29sb3I6ICM3ZDdkN2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjMpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMjY2JSAwO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgcmV0aW5hLWJhY2tncm91bmQoJ3VpL3pvb20taWNvJywgMjdweCwgMjhweCk7XG5cbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA5cHg7XG4gICAgcmlnaHQ6IDEzcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmhvbGVfX21hcC16b29tLWltYWdlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IsIDMwMG1zKTtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIT0xFIFBSTyBUSVBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5ob2xlX190aXAge1xuICBjb2xvcjogJGJyYW5kLWNvbG9yLS1vbmU7XG59XG5cbi8vXG4vLyBQcm8ncyBkZXRhaWxzXG4vL1xuLmhvbGVfX3BybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhvbGVfX3Byby1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbjogNXB4IDAgMTJweDtcbn1cblxuLmhvbGVfX3Byby1kZXRhaWxzLXdyYXBwZXIge1xuICBkaXYge1xuICAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMTdweCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtLXNlbWlib2xkO1xuICAgICAgY29sb3I6ICRicmFuZC1jb2xvci0tdHdvO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDE3cHgpO1xuICAgICAgQGluY2x1ZGUgYWxsLWNhcHMoMTdweCk7XG5cbiAgICAgIGNvbG9yOiAjODU4NTg1O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhPTEUgU1BPTlNPUlNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5ob2xlX19zcG9uc29yIHtcbiAgaDUge1xuICAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMThweCk7XG5cbiAgICBjb2xvcjogJGJyYW5kLWNvbG9yLS1vbmU7XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLmhvbGVfX3Nwb25zb3ItdGV4dCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgcCB7XG4gICAgQGluY2x1ZGUgcmVtLWZvbnQtc2l6ZSgxNXB4KTtcblxuICAgIGNvbG9yOiAjNzA3MDcwO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/