@font-face {
  font-family: "lg";
  src: url("../fonts/lg.woff2?io9a6k") format("woff2"), url("../fonts/lg.ttf?io9a6k") format("truetype"), url("../fonts/lg.woff?io9a6k") format("woff"), url("../fonts/lg.svg?io9a6k#lg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.lg-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "lg" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lg-container {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.lg-next,
.lg-prev {
  background-color: rgba(0, 0, 0, 0.45);
  border-radius: 2px;
  color: #999;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 1080;
  outline: none;
  border: none;
}
.lg-next.disabled,
.lg-prev.disabled {
  opacity: 0 !important;
  cursor: default;
}
.lg-next:hover:not(.disabled),
.lg-prev:hover:not(.disabled) {
  color: #fff;
}
.lg-single-item .lg-next,
.lg-single-item .lg-prev {
  display: none;
}

.lg-next {
  right: 20px;
}
.lg-next:before {
  content: "\e095";
}

.lg-prev {
  left: 20px;
}
.lg-prev:after {
  content: "\e094";
}

@-webkit-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-moz-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-ms-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@-moz-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@-ms-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
.lg-outer.lg-right-end .lg-object {
  -webkit-animation: lg-right-end 0.3s;
  -o-animation: lg-right-end 0.3s;
  animation: lg-right-end 0.3s;
  position: relative;
}
.lg-outer.lg-left-end .lg-object {
  -webkit-animation: lg-left-end 0.3s;
  -o-animation: lg-left-end 0.3s;
  animation: lg-left-end 0.3s;
  position: relative;
}

.lg-toolbar {
  z-index: 1082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.lg-media-overlap .lg-toolbar {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4));
}
.lg-toolbar .lg-icon {
  color: #999;
  cursor: pointer;
  float: right;
  font-size: 24px;
  height: 47px;
  line-height: 27px;
  padding: 10px 0;
  text-align: center;
  width: 50px;
  text-decoration: none !important;
  outline: medium none;
  will-change: color;
  -webkit-transition: color 0.2s linear;
  -o-transition: color 0.2s linear;
  transition: color 0.2s linear;
  background: none;
  border: none;
  box-shadow: none;
}
.lg-toolbar .lg-icon.lg-icon-18 {
  font-size: 18px;
}
.lg-toolbar .lg-icon:hover {
  color: #fff;
}
.lg-toolbar .lg-close:after {
  content: "\e070";
}
.lg-toolbar .lg-maximize {
  font-size: 22px;
}
.lg-toolbar .lg-maximize:after {
  content: "\e90a";
}
.lg-toolbar .lg-download:after {
  content: "\e0f2";
}

.lg-sub-html {
  color: #eee;
  font-size: 16px;
  padding: 10px 40px;
  text-align: center;
  z-index: 1080;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
}
.lg-sub-html h4 {
  margin: 0;
  font-size: 13px;
  font-weight: bold;
}
.lg-sub-html p {
  font-size: 12px;
  margin: 5px 0 0;
}
.lg-sub-html a {
  color: inherit;
}
.lg-sub-html a:hover {
  text-decoration: underline;
}
.lg-media-overlap .lg-sub-html {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
}
.lg-item .lg-sub-html {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

.lg-error-msg {
  font-size: 14px;
  color: #999;
}

.lg-counter {
  color: #999;
  display: inline-block;
  font-size: 16px;
  padding-left: 20px;
  padding-top: 12px;
  height: 47px;
  vertical-align: middle;
}

.lg-closing .lg-toolbar,
.lg-closing .lg-prev,
.lg-closing .lg-next,
.lg-closing .lg-sub-html {
  opacity: 0;
  -webkit-transition: -webkit-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  -moz-transition: -moz-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  -o-transition: -o-transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
  transition: transform 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.08 cubic-bezier(0, 0, 0.25, 1) 0s, color 0.08 linear;
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable) .lg-video-cont {
  opacity: 0;
  -moz-transform: scale3d(0.5, 0.5, 0.5);
  -o-transform: scale3d(0.5, 0.5, 0.5);
  -ms-transform: scale3d(0.5, 0.5, 0.5);
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -moz-transition: -moz-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -o-transition: -o-transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
}
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-img-wrap,
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item:not(.lg-zoomable).lg-complete .lg-video-cont {
  opacity: 1;
  -moz-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}

.lg-outer .lg-thumb-outer {
  background-color: #0d0a0a;
  width: 100%;
  max-height: 350px;
  overflow: hidden;
  float: left;
}
.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}
.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}
.lg-outer .lg-thumb-outer.lg-rebuilding-thumbnails .lg-thumb {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}
.lg-outer .lg-thumb-outer.lg-thumb-align-middle {
  text-align: center;
}
.lg-outer .lg-thumb-outer.lg-thumb-align-left {
  text-align: left;
}
.lg-outer .lg-thumb-outer.lg-thumb-align-right {
  text-align: right;
}
.lg-outer.lg-single-item .lg-thumb-outer {
  display: none;
}
.lg-outer .lg-thumb {
  padding: 5px 0;
  height: 100%;
  margin-bottom: -5px;
  display: inline-block;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .lg-outer .lg-thumb {
    padding: 10px 0;
  }
}
.lg-outer .lg-thumb-item {
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border-radius: 2px;
  margin-bottom: 5px;
  will-change: border-color;
}
@media (min-width: 768px) {
  .lg-outer .lg-thumb-item {
    border-radius: 4px;
    border: 2px solid #fff;
    -webkit-transition: border-color 0.25s ease;
    -o-transition: border-color 0.25s ease;
    transition: border-color 0.25s ease;
  }
}
.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
  border-color: rgb(169, 7, 7);
}
.lg-outer .lg-thumb-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0;
}
.lg-outer .lg-toggle-thumb:after {
  content: "\e1ff";
}
.lg-outer.lg-animate-thumb .lg-thumb {
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.lg-outer .lg-video-cont {
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}
.lg-outer .lg-video-cont .lg-object {
  width: 100% !important;
  height: 100% !important;
}
.lg-outer .lg-has-iframe .lg-video-cont {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
}
.lg-outer .lg-video-object {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  z-index: 3;
}
.lg-outer .lg-video-poster {
  z-index: 1;
}
.lg-outer .lg-has-video .lg-video-object {
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity 0.3s ease-in;
  -o-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
.lg-outer .lg-has-video.lg-video-loaded .lg-video-poster,
.lg-outer .lg-has-video.lg-video-loaded .lg-video-play-button {
  opacity: 0 !important;
}
.lg-outer .lg-has-video.lg-video-loaded .lg-video-object {
  opacity: 1;
}

@keyframes lg-play-stroke {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}
@keyframes lg-play-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.lg-video-play-button {
  width: 18%;
  max-width: 140px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  cursor: pointer;
  transform: translate(-50%, -50%) scale(1);
  will-change: opacity, transform;
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  -o-transition: -o-transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
  transition: transform 0.25s cubic-bezier(0.17, 0.88, 0.32, 1.28), opacity 0.1s;
}
.lg-video-play-button:hover .lg-video-play-icon-bg,
.lg-video-play-button:hover .lg-video-play-icon {
  opacity: 1;
}

.lg-video-play-icon-bg {
  fill: none;
  stroke-width: 3%;
  stroke: #fcfcfc;
  opacity: 0.6;
  will-change: opacity;
  -webkit-transition: opacity 0.12s ease-in;
  -o-transition: opacity 0.12s ease-in;
  transition: opacity 0.12s ease-in;
}

.lg-video-play-icon-circle {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  fill: none;
  stroke-width: 3%;
  stroke: rgba(30, 30, 30, 0.9);
  stroke-opacity: 1;
  stroke-linecap: round;
  stroke-dasharray: 200;
  stroke-dashoffset: 200;
}

.lg-video-play-icon {
  position: absolute;
  width: 25%;
  max-width: 120px;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  opacity: 0.6;
  will-change: opacity;
  -webkit-transition: opacity 0.12s ease-in;
  -o-transition: opacity 0.12s ease-in;
  transition: opacity 0.12s ease-in;
}
.lg-video-play-icon .lg-video-play-icon-inner {
  fill: #fcfcfc;
}

.lg-video-loading .lg-video-play-icon-circle {
  animation: lg-play-rotate 2s linear 0.25s infinite, lg-play-stroke 1.5s ease-in-out 0.25s infinite;
}

.lg-video-loaded .lg-video-play-button {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.7);
}

.lg-progress-bar {
  background-color: #333;
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1083;
  opacity: 0;
  will-change: opacity;
  -webkit-transition: opacity 0.08s ease 0s;
  -moz-transition: opacity 0.08s ease 0s;
  -o-transition: opacity 0.08s ease 0s;
  transition: opacity 0.08s ease 0s;
}
.lg-progress-bar .lg-progress {
  background-color: rgb(169, 7, 7);
  height: 5px;
  width: 0;
}
.lg-progress-bar.lg-start .lg-progress {
  width: 100%;
}
.lg-show-autoplay .lg-progress-bar {
  opacity: 1;
}

.lg-autoplay-button:after {
  content: "\e01d";
}
.lg-show-autoplay .lg-autoplay-button:after {
  content: "\e01a";
}
.lg-single-item .lg-autoplay-button {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap,
.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  -webkit-transition-duration: 0ms !important;
  transition-duration: 0ms !important;
}
.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  -moz-transition: -moz-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  -o-transition: -o-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
  transition: transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s;
}
.lg-outer.lg-use-transition-for-zoom.lg-zoom-drag-transition .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.8s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  will-change: opacity, transform;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -moz-transition: -moz-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -o-transition: -o-transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  transition: transform 0.5s cubic-bezier(0.12, 0.415, 0.01, 1.19) 0s, opacity 0.15s !important;
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.lg-icon.lg-zoom-in:after {
  content: "\e311";
}
.lg-icon.lg-actual-size {
  font-size: 20px;
}
.lg-icon.lg-actual-size:after {
  content: "\e033";
}
.lg-icon.lg-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}
.lg-icon.lg-zoom-out:after {
  content: "\e312";
}
.lg-zoomed .lg-icon.lg-zoom-out {
  opacity: 1;
  pointer-events: auto;
}

.lg-outer[data-lg-slide-type=video] .lg-zoom-in,
.lg-outer[data-lg-slide-type=video] .lg-actual-size,
.lg-outer[data-lg-slide-type=video] .lg-zoom-out, .lg-outer[data-lg-slide-type=iframe] .lg-zoom-in,
.lg-outer[data-lg-slide-type=iframe] .lg-actual-size,
.lg-outer[data-lg-slide-type=iframe] .lg-zoom-out, .lg-outer.lg-first-slide-loading .lg-zoom-in,
.lg-outer.lg-first-slide-loading .lg-actual-size,
.lg-outer.lg-first-slide-loading .lg-zoom-out {
  opacity: 0.75;
  pointer-events: none;
}

.lg-outer .lg-pager-outer {
  text-align: center;
  z-index: 1080;
  height: 10px;
  margin-bottom: 10px;
}
.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
  overflow: visible;
}
.lg-outer.lg-single-item .lg-pager-outer {
  display: none;
}
.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px;
}
.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
  box-shadow: 0 0 0 2px white inset;
}
.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #fff;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  will-change: transform, opacity;
  -webkit-transition: opacity 0.15s ease 0s, -webkit-transform 0.15s ease 0s;
  -moz-transition: opacity 0.15s ease 0s, -moz-transform 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s, -o-transform 0.15s ease 0s;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
}
.lg-outer .lg-pager-thumb-cont img {
  width: 100%;
  height: 100%;
}
.lg-outer .lg-pager {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
  display: block;
  height: 12px;
  -webkit-transition: box-shadow 0.3s ease 0s;
  -o-transition: box-shadow 0.3s ease 0s;
  transition: box-shadow 0.3s ease 0s;
  width: 12px;
}
.lg-outer .lg-pager:hover, .lg-outer .lg-pager:focus {
  box-shadow: 0 0 0 8px white inset;
}
.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

.lg-fullscreen:after {
  content: "\e20c";
}
.lg-fullscreen-on .lg-fullscreen:after {
  content: "\e20d";
}

.lg-outer .lg-dropdown-overlay {
  background-color: rgba(0, 0, 0, 0.25);
  bottom: 0;
  cursor: default;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1081;
  opacity: 0;
  visibility: hidden;
  will-change: visibility, opacity;
  -webkit-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  -o-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
}
.lg-outer.lg-dropdown-active .lg-dropdown,
.lg-outer.lg-dropdown-active .lg-dropdown-overlay {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -moz-transform: translate3d(0, 0px, 0);
  -o-transform: translate3d(0, 0px, 0);
  -ms-transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  transform: translate3d(0, 0px, 0);
  opacity: 1;
  visibility: visible;
}
.lg-outer.lg-dropdown-active .lg-share {
  color: #fff;
}
.lg-outer .lg-dropdown {
  background-color: #fff;
  border-radius: 2px;
  font-size: 14px;
  list-style-type: none;
  margin: 0;
  padding: 10px 0;
  position: absolute;
  right: 0;
  text-align: left;
  top: 50px;
  opacity: 0;
  visibility: hidden;
  -moz-transform: translate3d(0, 5px, 0);
  -o-transform: translate3d(0, 5px, 0);
  -ms-transform: translate3d(0, 5px, 0);
  -webkit-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);
  will-change: visibility, opacity, transform;
  -webkit-transition: -webkit-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  -moz-transition: -moz-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  -o-transition: -o-transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
  transition: transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
}
.lg-outer .lg-dropdown:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  border: 8px solid transparent;
  border-bottom-color: #fff;
  right: 16px;
  top: -16px;
}
.lg-outer .lg-dropdown > li:last-child {
  margin-bottom: 0px;
}
.lg-outer .lg-dropdown > li:hover a {
  color: #333;
}
.lg-outer .lg-dropdown a {
  color: #333;
  display: block;
  white-space: pre;
  padding: 4px 12px;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
}
.lg-outer .lg-dropdown a:hover {
  background-color: rgba(0, 0, 0, 0.07);
}
.lg-outer .lg-dropdown .lg-dropdown-text {
  display: inline-block;
  line-height: 1;
  margin-top: -3px;
  vertical-align: middle;
}
.lg-outer .lg-dropdown .lg-icon {
  color: #333;
  display: inline-block;
  float: none;
  font-size: 20px;
  height: auto;
  line-height: 1;
  margin-right: 8px;
  padding: 0;
  vertical-align: middle;
  width: auto;
}
.lg-outer .lg-share {
  position: relative;
}
.lg-outer .lg-share:after {
  content: "\e80d";
}
.lg-outer .lg-share-facebook .lg-icon {
  color: #3b5998;
}
.lg-outer .lg-share-facebook .lg-icon:after {
  content: "\e904";
}
.lg-outer .lg-share-twitter .lg-icon {
  color: #00aced;
}
.lg-outer .lg-share-twitter .lg-icon:after {
  content: "\e907";
}
.lg-outer .lg-share-pinterest .lg-icon {
  color: #cb2027;
}
.lg-outer .lg-share-pinterest .lg-icon:after {
  content: "\e906";
}

.lg-comment-box {
  width: 420px;
  max-width: 100%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999;
  background-color: #fff;
  will-change: transform;
  -moz-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-comment-box .lg-comment-title {
  margin: 0;
  color: #fff;
  font-size: 18px;
}
.lg-comment-box .lg-comment-header {
  background-color: #000;
  padding: 12px 20px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
.lg-comment-box .lg-comment-body {
  height: 100% !important;
  padding-top: 43px !important;
  width: 100% !important;
}
.lg-comment-box .fb-comments {
  height: 100%;
  width: 100%;
  background: url("../images/loading.gif") no-repeat scroll center center #fff;
  overflow-y: auto;
  display: inline-block;
}
.lg-comment-box .fb-comments[fb-xfbml-state=rendered] {
  background-image: none;
}
.lg-comment-box .fb-comments > span {
  max-width: 100%;
}
.lg-comment-box .lg-comment-close {
  position: absolute;
  right: 5px;
  top: 12px;
  cursor: pointer;
  font-size: 20px;
  color: #999;
  will-change: color;
  -webkit-transition: color 0.2s linear;
  -o-transition: color 0.2s linear;
  transition: color 0.2s linear;
}
.lg-comment-box .lg-comment-close:hover {
  color: #fff;
}
.lg-comment-box .lg-comment-close:after {
  content: "\e070";
}
.lg-comment-box iframe {
  max-width: 100% !important;
  width: 100% !important;
}
.lg-comment-box #disqus_thread {
  padding: 0 20px;
}

.lg-outer .lg-comment-overlay {
  background-color: rgba(0, 0, 0, 0.25);
  bottom: 0;
  cursor: default;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1081;
  opacity: 0;
  visibility: hidden;
  will-change: visibility, opacity;
  -webkit-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  -o-transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
  transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
}
.lg-outer .lg-comment-toggle:after {
  content: "\e908";
}
.lg-outer.lg-comment-active .lg-comment-overlay {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -moz-transform: translate3d(0, 0px, 0);
  -o-transform: translate3d(0, 0px, 0);
  -ms-transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  transform: translate3d(0, 0px, 0);
  opacity: 1;
  visibility: visible;
}
.lg-outer.lg-comment-active .lg-comment-toggle {
  color: #fff;
}
.lg-outer.lg-comment-active .lg-comment-box {
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.lg-outer .lg-img-rotate {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.4s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-outer[data-lg-slide-type=video] .lg-rotate-left,
.lg-outer[data-lg-slide-type=video] .lg-rotate-right,
.lg-outer[data-lg-slide-type=video] .lg-flip-ver,
.lg-outer[data-lg-slide-type=video] .lg-flip-hor, .lg-outer[data-lg-slide-type=iframe] .lg-rotate-left,
.lg-outer[data-lg-slide-type=iframe] .lg-rotate-right,
.lg-outer[data-lg-slide-type=iframe] .lg-flip-ver,
.lg-outer[data-lg-slide-type=iframe] .lg-flip-hor {
  opacity: 0.75;
  pointer-events: none;
}

.lg-rotate-left:after {
  content: "\e900";
}

.lg-rotate-right:after {
  content: "\e901";
}

.lg-icon.lg-flip-hor, .lg-icon.lg-flip-ver {
  font-size: 26px;
}

.lg-flip-ver:after {
  content: "\e903";
}

.lg-flip-hor:after {
  content: "\e902";
}

.lg-medium-zoom-item {
  cursor: zoom-in;
}

.lg-medium-zoom .lg-outer {
  cursor: zoom-out;
}
.lg-medium-zoom .lg-outer.lg-grab img.lg-object {
  cursor: zoom-out;
}
.lg-medium-zoom .lg-outer.lg-grabbing img.lg-object {
  cursor: zoom-out;
}

.lg-relative-caption .lg-outer .lg-sub-html {
  white-space: normal;
  bottom: auto;
  padding: 0;
  background-image: none;
}
.lg-relative-caption .lg-outer .lg-relative-caption-item {
  opacity: 0;
  padding: 16px 0;
  transition: 0.5s opacity ease;
}
.lg-relative-caption .lg-outer .lg-show-caption .lg-relative-caption-item {
  opacity: 1;
}

.lg-group:after {
  content: "";
  display: table;
  clear: both;
}

.lg-container {
  display: none;
  outline: none;
}
.lg-container.lg-show {
  display: block;
}

.lg-on {
  scroll-behavior: unset;
}

.lg-toolbar,
.lg-prev,
.lg-next,
.lg-pager-outer,
.lg-hide-sub-html .lg-sub-html {
  opacity: 0;
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}

.lg-show-in .lg-toolbar,
.lg-show-in .lg-prev,
.lg-show-in .lg-next,
.lg-show-in .lg-pager-outer {
  opacity: 1;
}
.lg-show-in.lg-hide-sub-html .lg-sub-html {
  opacity: 1;
}
.lg-show-in .lg-hide-items .lg-prev {
  opacity: 0;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0);
}
.lg-show-in .lg-hide-items .lg-next {
  opacity: 0;
  -webkit-transform: translate3d(10px, 0, 0);
  transform: translate3d(10px, 0, 0);
}
.lg-show-in .lg-hide-items .lg-toolbar {
  opacity: 0;
  -webkit-transform: translate3d(0, -10px, 0);
  transform: translate3d(0, -10px, 0);
}
.lg-show-in .lg-hide-items.lg-hide-sub-html .lg-sub-html {
  opacity: 0;
  -webkit-transform: translate3d(0, 20px, 0);
  transform: translate3d(0, 20px, 0);
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  text-align: left;
  opacity: 0.001;
  outline: none;
  will-change: auto;
  overflow: hidden;
  -webkit-transition: opacity 0.15s ease 0s;
  -o-transition: opacity 0.15s ease 0s;
  transition: opacity 0.15s ease 0s;
}
.lg-outer * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.lg-outer.lg-zoom-from-image {
  opacity: 1;
}
.lg-outer.lg-visible {
  opacity: 1;
}
.lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-prev-slide, .lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-next-slide, .lg-outer.lg-css3 .lg-item:not(.lg-start-end-progress).lg-current {
  -webkit-transition-duration: inherit !important;
  transition-duration: inherit !important;
  -webkit-transition-timing-function: inherit !important;
  transition-timing-function: inherit !important;
}
.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}
.lg-outer.lg-grab img.lg-object {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.lg-outer.lg-grabbing img.lg-object {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}
.lg-outer .lg-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.lg-outer .lg-inner {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: opacity 0s;
  -o-transition: opacity 0s;
  transition: opacity 0s;
  white-space: nowrap;
}
.lg-outer .lg-item {
  display: none !important;
}
.lg-outer .lg-item:not(.lg-start-end-progress) {
  background: url("../images/loading.gif") no-repeat scroll center center transparent;
}
.lg-outer.lg-css3 .lg-prev-slide,
.lg-outer.lg-css3 .lg-current,
.lg-outer.lg-css3 .lg-next-slide {
  display: inline-block !important;
}
.lg-outer.lg-css .lg-current {
  display: inline-block !important;
}
.lg-outer .lg-item,
.lg-outer .lg-img-wrap {
  display: inline-block;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
}
.lg-outer .lg-item:before,
.lg-outer .lg-img-wrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.lg-outer .lg-img-wrap {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  white-space: nowrap;
  font-size: 0;
}
.lg-outer .lg-item.lg-complete {
  background-image: none;
}
.lg-outer .lg-item.lg-current {
  z-index: 1060;
}
.lg-outer .lg-object {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  position: relative;
}
.lg-outer .lg-empty-html.lg-sub-html,
.lg-outer .lg-empty-html .lg-sub-html {
  display: none;
}
.lg-outer.lg-hide-download .lg-download {
  opacity: 0.75;
  pointer-events: none;
}
.lg-outer .lg-first-slide .lg-dummy-img {
  position: absolute;
  top: 50%;
  left: 50%;
}
.lg-outer.lg-components-open:not(.lg-zoomed) .lg-components {
  -webkit-transform: translate3d(0, 0%, 0);
  transform: translate3d(0, 0%, 0);
  opacity: 1;
}
.lg-outer.lg-components-open:not(.lg-zoomed) .lg-sub-html {
  opacity: 1;
  transition: opacity 0.2s ease-out 0.15s;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0;
  will-change: auto;
  -webkit-transition: opacity 333ms ease-in 0s;
  -o-transition: opacity 333ms ease-in 0s;
  transition: opacity 333ms ease-in 0s;
}
.lg-backdrop.in {
  opacity: 1;
}

.lg-css3.lg-no-trans .lg-prev-slide,
.lg-css3.lg-no-trans .lg-next-slide,
.lg-css3.lg-no-trans .lg-current {
  -webkit-transition: none 0s ease 0s !important;
  -moz-transition: none 0s ease 0s !important;
  -o-transition: none 0s ease 0s !important;
  transition: none 0s ease 0s !important;
}
.lg-css3.lg-use-css3 .lg-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}
.lg-css3.lg-fade .lg-item {
  opacity: 0;
}
.lg-css3.lg-fade .lg-item.lg-current {
  opacity: 1;
}
.lg-css3.lg-fade .lg-item.lg-prev-slide, .lg-css3.lg-fade .lg-item.lg-next-slide, .lg-css3.lg-fade .lg-item.lg-current {
  -webkit-transition: opacity 0.1s ease 0s;
  -moz-transition: opacity 0.1s ease 0s;
  -o-transition: opacity 0.1s ease 0s;
  transition: opacity 0.1s ease 0s;
}
.lg-css3.lg-use-css3 .lg-item.lg-start-progress {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  -o-transition: -o-transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
  transition: transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
}
.lg-css3.lg-use-css3 .lg-item.lg-start-end-progress {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  -webkit-transition: -webkit-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -moz-transition: -moz-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  -o-transition: -o-transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}

.lg-container {
  display: none;
}
.lg-container.lg-show {
  display: block;
}
.lg-container.lg-dragging-vertical .lg-backdrop {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
}
.lg-container.lg-dragging-vertical .lg-css3 .lg-item.lg-current {
  -webkit-transition-duration: 0s !important;
  transition-duration: 0s !important;
  opacity: 1;
}

.lg-inline .lg-backdrop,
.lg-inline .lg-outer {
  position: absolute;
}
.lg-inline .lg-backdrop {
  z-index: 1;
}
.lg-inline .lg-outer {
  z-index: 2;
}
.lg-inline .lg-maximize:after {
  content: "\e909";
}

.lg-components {
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  will-change: transform;
  -webkit-transition: -webkit-transform 0.35s ease-out 0s;
  -moz-transition: -moz-transform 0.35s ease-out 0s;
  -o-transition: -o-transform 0.35s ease-out 0s;
  transition: transform 0.35s ease-out 0s;
  z-index: 1080;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

/**
 * Swiper 8.4.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 12, 2022
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, 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");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  touch-action: pan-y;
}

.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-lock {
  display: none;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev,
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

:root {
  --margin-xs: 1.25rem;
  --margin-sm: 1.25rem;
  --margin-md: 1.5625rem;
  --margin-lg: 1.875rem;
  --margin-xl: 2.5rem;
  --margin-xxl: 3.125rem;
}

@font-face {
  font-family: "HGS";
  src: url("../fonts/HurmeGeometricSans4-Regular.woff2") format("woff2"), url("../fonts/HurmeGeometricSans4-Regular.woff") format("woff"), url("../fonts/HurmeGeometricSans4-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "HGS";
  src: url("../fonts/HurmeGeometricSans4-SemiBold.woff2") format("woff2"), url("../fonts/HurmeGeometricSans4-SemiBold.woff") format("woff"), url("../fonts/HurmeGeometricSans4-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "HGS";
  src: url("../fonts/HurmeGeometricSans4-Bold.woff2") format("woff2"), url("../fonts/HurmeGeometricSans4-Bold.woff") format("woff"), url("../fonts/HurmeGeometricSans4-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "HGS";
  src: url("../fonts/HurmeGeometricSans4-Light.woff2") format("woff2"), url("../fonts/HurmeGeometricSans4-Light.woff") format("woff"), url("../fonts/HurmeGeometricSans4-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "HGS";
  src: url("../fonts/HurmeGeometricSans4-Thin.woff2") format("woff2"), url("../fonts/HurmeGeometricSans4-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
/* Color Class */
.theme--default .color--primary {
  background: #0b0c14;
}
.theme--dark .color--primary {
  background: #A4A09C;
}

.theme--default .color--secondary {
  background: #A4A09C;
}
.theme--dark .color--secondary {
  background: #0b0c14;
}

.theme--default .color--gray {
  background: #EBE7E1;
}
.theme--dark .color--gray {
  background: #030305;
}

.theme--default .color--black {
  background: #0f0f18;
}
.theme--dark .color--black {
  background: #F2EFE8;
}

.theme--default .color--white {
  background: #F2EFE8;
}
.theme--dark .color--white {
  background: #0f0f18;
}

.theme--default .color--primary--light {
  background: #2F3037;
}
.theme--dark .color--primary--light {
  background: #D9D3CD;
}

.theme--default .color--secondary--light {
  background: #D9D3CD;
}
.theme--dark .color--secondary--light {
  background: #2F3037;
}

.theme--default .color--gray--light {
  background: #F6F3EF;
}
.theme--dark .color--gray--light {
  background: #222327;
}

.theme--default .color--primary--dark {
  background: #0c0c15;
}
.theme--dark .color--primary--dark {
  background: #88817A;
}

.theme--default .color--secondary--dark {
  background: #88817A;
}
.theme--dark .color--secondary--dark {
  background: #0c0c15;
}

.theme--default .color--gray--dark {
  background: #E1DBD4;
}
.theme--dark .color--gray--dark {
  background: #040407;
}

/* Background Class */
.theme--default .bg--primary {
  background: #0b0c14;
}
.theme--dark .bg--primary {
  background: #A4A09C;
}

.theme--default .bg--secondary {
  background: #A4A09C;
}
.theme--dark .bg--secondary {
  background: #0b0c14;
}

.theme--default .bg--gray {
  background: #EBE7E1;
}
.theme--dark .bg--gray {
  background: #030305;
}

.theme--default .bg--black {
  background: #0f0f18;
}
.theme--dark .bg--black {
  background: #F2EFE8;
}

.theme--default .bg--white {
  background: #F2EFE8;
}
.theme--dark .bg--white {
  background: #0f0f18;
}

.theme--default .bg--primary--light {
  background: #2F3037;
}
.theme--dark .bg--primary--light {
  background: #D9D3CD;
}

.theme--default .bg--secondary--light {
  background: #D9D3CD;
}
.theme--dark .bg--secondary--light {
  background: #2F3037;
}

.theme--default .bg--gray--light {
  background: #F6F3EF;
}
.theme--dark .bg--gray--light {
  background: #222327;
}

.theme--default .bg--primary--dark {
  background: #0c0c15;
}
.theme--dark .bg--primary--dark {
  background: #88817A;
}

.theme--default .bg--secondary--dark {
  background: #88817A;
}
.theme--dark .bg--secondary--dark {
  background: #0c0c15;
}

.theme--default .bg--gray--dark {
  background: #E1DBD4;
}
.theme--dark .bg--gray--dark {
  background: #040407;
}

/* Font Family Class */
.font--primary {
  font-family: "HGS";
}

.font--secondary {
  font-family: "HGS";
}

.font--content {
  font-family: "HGS";
}

/* Font Weight Class */
.font--regular {
  font-weight: 400;
}

.font--light {
  font-weight: 300;
}

.font--bold {
  font-weight: bold;
}

.font--semibold {
  font-weight: 600;
}

/* Font Size Class */
.font--h0 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h0 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h0 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h0 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h0 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h0 {
    font-size: 52;
  }
}

.font--h1 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h1 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h1 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h1 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h1 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h1 {
    font-size: 52;
  }
}

.font--h2 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h2 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h2 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h2 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h2 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h2 {
    font-size: 52;
  }
}

.font--h3 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h3 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h3 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h3 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h3 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h3 {
    font-size: 52;
  }
}

.font--h4 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h4 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h4 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h4 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h4 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h4 {
    font-size: 52;
  }
}

.font--h5 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h5 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h5 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h5 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h5 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h5 {
    font-size: 52;
  }
}

.font--h6 {
  font-size: 14;
}
@media screen and (min-width: 576) {
  .font--h6 {
    font-size: 18;
  }
}
@media screen and (min-width: 768) {
  .font--h6 {
    font-size: 24;
  }
}
@media screen and (min-width: 992) {
  .font--h6 {
    font-size: 32;
  }
}
@media screen and (min-width: 1200) {
  .font--h6 {
    font-size: 48;
  }
}
@media screen and (min-width: 1600) {
  .font--h6 {
    font-size: 52;
  }
}

.border-bottom-theme {
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #9C9C9C;
  padding-bottom: 0.625rem;
}

.hover-through span {
  position: relative;
  overflow: hidden;
  display: inline-block;
}
.hover-through span:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0.0625rem;
  position: absolute;
  top: 58%;
  left: 0;
  transition: all 0.5s;
}
.theme--default .hover-through span:after {
  background: #0f0f18;
}
.theme--dark .hover-through span:after {
  background: #F2EFE8;
}
.hover-through span:hover:after {
  width: 100%;
}

.btn-to-top {
  transition: all 0.3s;
}
.btn-to-top:hover {
  transform: translateY(-5px);
}
.theme--default .btn-to-top path {
  fill: #0f0f18;
}
.theme--dark .btn-to-top path {
  fill: #F2EFE8;
}

@media only screen and (min-width: 768px) {
  .large-text {
    font-size: 1rem;
  }
}

.wrapper__small,
.team__members .team__members__list,
.wrapper__medium,
.team__services,
.job__grid,
.section__intro .section__wrap,
footer .footer_wrap,
.wrapper__large,
.page-template-page-cases .button-group,
.section__info,
.wrapper__extralarge {
  width: 100%;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
@media only screen and (min-width: 576px) {
  .wrapper__small,
.team__members .team__members__list,
.wrapper__medium,
.team__services,
.job__grid,
.section__intro .section__wrap,
footer .footer_wrap,
.wrapper__large,
.page-template-page-cases .button-group,
.section__info,
.wrapper__extralarge {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}
@media only screen and (min-width: 768px) {
  .wrapper__small,
.team__members .team__members__list,
.wrapper__medium,
.team__services,
.job__grid,
.section__intro .section__wrap,
footer .footer_wrap,
.wrapper__large,
.page-template-page-cases .button-group,
.section__info,
.wrapper__extralarge {
    padding-left: 3.125rem;
    padding-right: 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .wrapper__small,
.team__members .team__members__list,
.wrapper__medium,
.team__services,
.job__grid,
.section__intro .section__wrap,
footer .footer_wrap,
.wrapper__large,
.page-template-page-cases .button-group,
.section__info,
.wrapper__extralarge {
    padding-left: 6.25rem;
    padding-right: 6.25rem;
  }
}
@media only screen and (min-width: 1200px) {
  .wrapper__small,
.team__members .team__members__list,
.wrapper__medium,
.team__services,
.job__grid,
.section__intro .section__wrap,
footer .footer_wrap,
.wrapper__large,
.page-template-page-cases .button-group,
.section__info,
.wrapper__extralarge {
    padding-left: 0;
    padding-right: 0;
    margin: 0 auto;
  }
}

@media only screen and (min-width: 1200px) {
  .wrapper__small {
    max-width: 68.75rem;
  }
}

@media only screen and (min-width: 1200px) {
  .team__members .team__members__list, .wrapper__medium {
    max-width: 68.75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .team__members .team__members__list, .wrapper__medium {
    max-width: 81.25rem;
  }
}

@media only screen and (min-width: 1200px) {
  .team__services, .job__grid, .section__intro .section__wrap, footer .footer_wrap, .wrapper__large {
    max-width: 75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .team__services, .job__grid, .section__intro .section__wrap, footer .footer_wrap, .wrapper__large {
    max-width: 87.5rem;
  }
}
@media only screen and (min-width: 2000px) {
  .team__services, .job__grid, .section__intro .section__wrap, footer .footer_wrap, .wrapper__large {
    max-width: 100rem;
  }
}

@media only screen and (min-width: 1200px) {
  .page-template-page-cases .button-group, .section__info, .wrapper__extralarge {
    max-width: 81.25rem;
  }
}
@media only screen and (min-width: 1600px) {
  .page-template-page-cases .button-group, .section__info, .wrapper__extralarge {
    max-width: 93.75rem;
  }
}
@media only screen and (min-width: 2000px) {
  .page-template-page-cases .button-group, .section__info, .wrapper__extralarge {
    max-width: 112.5rem;
  }
}

.line-through, .lg-sub-html .close-lg, .button-group button, .button-group a, .team__members .team__members__item > div > a, .contact__info .contact__info__content a, .footer__bar a, footer a, .header__menu__wrap .menu a, .wrapper_gutenberg a {
  position: relative;
  line-height: 1;
}
.line-through:after, .lg-sub-html .close-lg:after, .button-group button:after, .button-group a:after, .team__members .team__members__item > div > a:after, .contact__info .contact__info__content a:after, .footer__bar a:after, footer a:after, .header__menu__wrap .menu a:after, .wrapper_gutenberg a:after {
  content: "";
  display: block;
  width: 0;
  height: 0.0625rem;
  border-top-width: 0.0625rem;
  border-top-style: solid;
  position: absolute;
  bottom: 0;
  right: 0;
  transition: all 0.5s;
}
.theme--default .line-through:after, .theme--default .lg-sub-html .close-lg:after, .lg-sub-html .theme--default .close-lg:after, .theme--default .button-group button:after, .button-group .theme--default button:after, .theme--default .button-group a:after, .button-group .theme--default a:after, .theme--default .team__members .team__members__item > div > a:after, .team__members .theme--default .team__members__item > div > a:after, .theme--default .contact__info .contact__info__content a:after, .contact__info .contact__info__content .theme--default a:after, .theme--default .footer__bar a:after, .footer__bar .theme--default a:after, .theme--default footer a:after, footer .theme--default a:after, .theme--default .header__menu__wrap .menu a:after, .header__menu__wrap .menu .theme--default a:after, .theme--default .wrapper_gutenberg a:after, .wrapper_gutenberg .theme--default a:after {
  border-top-color: #0f0f18;
}
.theme--dark .line-through:after, .theme--dark .lg-sub-html .close-lg:after, .lg-sub-html .theme--dark .close-lg:after, .theme--dark .button-group button:after, .button-group .theme--dark button:after, .theme--dark .button-group a:after, .button-group .theme--dark a:after, .theme--dark .team__members .team__members__item > div > a:after, .team__members .theme--dark .team__members__item > div > a:after, .theme--dark .contact__info .contact__info__content a:after, .contact__info .contact__info__content .theme--dark a:after, .theme--dark .footer__bar a:after, .footer__bar .theme--dark a:after, .theme--dark footer a:after, footer .theme--dark a:after, .theme--dark .header__menu__wrap .menu a:after, .header__menu__wrap .menu .theme--dark a:after, .theme--dark .wrapper_gutenberg a:after, .wrapper_gutenberg .theme--dark a:after {
  border-top-color: #F2EFE8;
}
.line-through:hover:after, .lg-sub-html .close-lg:hover:after, .button-group button:hover:after, .button-group a:hover:after, .team__members .team__members__item > div > a:hover:after, .contact__info .contact__info__content a:hover:after, .footer__bar a:hover:after, footer a:hover:after, .header__menu__wrap .menu a:hover:after, .wrapper_gutenberg a:hover:after {
  width: 100%;
}

* {
  box-sizing: border-box;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  transform-style: preserve-3d;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  outline: none;
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  outline: none;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__slider {
  position: relative;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide--draggable > .splide__slider > .splide__track, .splide--draggable > .splide__track {
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide--fade > .splide__slider > .splide__track > .splide__list, .splide--fade > .splide__track > .splide__list {
  display: block;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide, .splide--fade > .splide__track > .splide__list > .splide__slide {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: 0;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active, .splide--fade > .splide__track > .splide__list > .splide__slide.is-active {
  opacity: 1;
  position: relative;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide--ttb.is-active > .splide__slider > .splide__track > .splide__list, .splide--ttb.is-active > .splide__track > .splide__list {
  display: block;
}

.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover {
  opacity: 0.9;
}

.splide__arrow:focus {
  outline: none;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  transition: transform 0.2s linear;
  width: 8px;
}

.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus {
  outline: none;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide, .splide--nav > .splide__track > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active, .splide--nav > .splide__track > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide:focus, .splide--nav > .splide__track > .splide__list > .splide__slide:focus {
  outline: none;
}

.splide--rtl > .splide__arrows .splide__arrow--prev, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide--rtl > .splide__arrows .splide__arrow--prev svg, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide--rtl > .splide__arrows .splide__arrow--next, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide--rtl > .splide__arrows .splide__arrow--next svg, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide--ttb > .splide__arrows .splide__arrow, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow, .splide--ttb > .splide__track > .splide__arrows .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide--ttb > .splide__arrows .splide__arrow--prev, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev {
  top: 1em;
}

.splide--ttb > .splide__arrows .splide__arrow--prev svg, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide--ttb > .splide__arrows .splide__arrow--next, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide--ttb > .splide__arrows .splide__arrow--next svg, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide--ttb > .splide__pagination, .splide--ttb > .splide__slider > .splide__pagination {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

:root {
  scroll-behavior: auto;
}

body {
  -webkit-text-size-adjust: none; /* stop ios zooming text  on orientation change */
  -ms-text-size-adjust: none;
  text-size-adjust: none;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: visible;
  font-size: 0.8125rem;
  font-family: "HGS";
  font-weight: 300;
  background: #EBE7E1;
  color: #0f0f18;
  transition: all 0.5s;
}
@media only screen and (min-width: 768px) {
  body {
    font-size: 0.8125rem;
  }
}

body.theme--dark {
  background: #0f0f18;
  color: #F2EFE8;
}

p {
  margin: 0;
  margin-bottom: 0.9375rem;
  font-size: 0.8125rem;
  font-family: "HGS";
  font-weight: 300;
  text-decoration: none;
}
.theme--default p {
  color: #0f0f18;
}
.theme--dark p {
  color: #F2EFE8;
}

a {
  text-decoration: none;
}
.theme--default a {
  color: #0f0f18;
}
.theme--dark a {
  color: #F2EFE8;
}

b, strong {
  font-weight: 600;
}

h1, h2, h3, h4, h5, h6 {
  padding: 0;
}

h1, h2, h3 {
  font-weight: 600;
  margin-bottom: 0.9375rem;
}
@media only screen and (min-width: 768px) {
  h1, h2, h3 {
    font-size: 1.8125rem;
  }
}

h4, h5, h6 {
  font-weight: 600;
  font-size: 0.875rem;
  margin-bottom: 0.3125rem;
}
@media only screen and (min-width: 768px) {
  h4, h5, h6 {
    font-size: 1rem;
  }
}

.loading {
  position: fixed;
  z-index: 5000;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.theme--default .loading {
  background: #F2EFE8;
}
.theme--dark .loading {
  background: #0f0f18;
}
.loading__brand {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../images/brand_icon.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 3.5rem;
  height: 4.8125rem;
}
@media only screen and (min-width: 768px) {
  .loading__brand {
    width: 4.625rem;
    height: 6.3125rem;
  }
}
@media only screen and (min-width: 1200px) {
  .loading__brand {
    width: 6.8125rem;
    height: 9.375rem;
  }
}

.theme--dark .loading__brand {
  background-image: url(../images/brand_icon_white.svg);
}

.transition {
  position: absolute;
  z-index: 99;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

.transition li {
  width: 20%;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  background: #fffffe;
}

.wrapper_gutenberg em {
  font-style: normal;
  text-decoration: underline;
}
.gb-block-image img {
  max-width: 100%;
  height: auto;
}

.row--featured {
  background: #ded8ca;
}
.row--featured p {
  color: #0f0f18;
}
.row--featured a {
  color: #666;
}
.row--featured .line_heading:after {
  background: #0f0f18 !important;
}

body.theme--dark .row--featured {
  background: #ded8ca;
  color: #0f0f18;
}

.line_heading {
  display: flex;
  align-items: center;
}
.line_heading:after {
  content: "";
  width: 100%;
  flex: 1 1 0px;
  height: 1px;
  margin-left: 15px;
  background-color: #0f0f18;
}

body.theme--dark .line_heading:after {
  background: #F2EFE8;
}

.wrapper__full {
  width: 100%;
}
.wrapper__single {
  padding-top: 7.5rem;
  padding-bottom: 3.125rem;
}
@media only screen and (min-width: 768px) {
  .wrapper__single {
    padding-top: 10.625rem;
    padding-bottom: 6.25rem;
  }
}
@media only screen and (min-width: 1600px) {
  .wrapper__single {
    padding-top: 13.4375rem;
    padding-bottom: 9.375rem;
  }
}

.header__brand {
  position: fixed;
  z-index: 2000;
  top: var(--margin-xs);
  left: var(--margin-xs);
}
@media only screen and (min-width: 576px) {
  .header__brand {
    top: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__brand {
    top: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__brand {
    top: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__brand {
    top: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__brand {
    top: var(--margin-xxl);
  }
}
@media only screen and (min-width: 576px) {
  .header__brand {
    left: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__brand {
    left: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__brand {
    left: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__brand {
    left: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__brand {
    left: var(--margin-xxl);
  }
}
.header__brand svg {
  width: 8.75rem;
  height: 1.6875rem;
}
@media only screen and (min-width: 768px) {
  .header__brand svg {
    width: 11.8125rem;
    height: 2.25rem;
  }
}
.theme--default .header__brand path {
  fill: #0f0f18;
}
.theme--dark .header__brand path {
  fill: #F2EFE8;
}

.header__mode {
  position: fixed;
  z-index: 2000;
  right: 4.0625rem;
  top: var(--margin-xs);
}
@media only screen and (min-width: 576px) {
  .header__mode {
    top: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__mode {
    top: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__mode {
    top: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__mode {
    top: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__mode {
    top: var(--margin-xxl);
  }
}
@media only screen and (min-width: 768px) {
  .header__mode {
    right: 4.6875rem;
  }
}
@media only screen and (min-width: 992px) {
  .header__mode {
    right: initial;
    left: 50%;
    transform: translateX(-50%);
  }
}
.header__mode span {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  font-size: 0.75rem;
  opacity: 0;
  transition: all 0.3s;
  display: none;
}
@media only screen and (min-width: 992px) {
  .header__mode span {
    display: block;
    top: initial;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%);
  }
}
.header__mode a {
  cursor: pointer;
  position: relative;
  display: block;
}
.header__mode a:hover span {
  opacity: 1;
  transform: translate(-120%, -50%);
}
@media only screen and (min-width: 992px) {
  .header__mode a:hover span {
    transform: translate(-50%, 100%);
  }
}
.header__mode svg {
  width: 1.8125rem;
  height: 2.5rem;
}
@media only screen and (min-width: 992px) {
  .header__mode svg {
    width: 2.25rem;
    height: 3.0625rem;
  }
}
.theme--default .header__mode path {
  fill: #0f0f18;
}
.theme--dark .header__mode path {
  fill: #F2EFE8;
}

.theme--dark .header__mode__dark {
  display: none;
}

.theme--default .header__mode__light {
  display: none;
}

.header__menu {
  position: fixed;
  z-index: 1200;
  top: var(--margin-xs);
  right: var(--margin-xs);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media only screen and (min-width: 576px) {
  .header__menu {
    top: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__menu {
    top: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__menu {
    top: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__menu {
    top: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__menu {
    top: var(--margin-xxl);
  }
}
@media only screen and (min-width: 576px) {
  .header__menu {
    right: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__menu {
    right: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__menu {
    right: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__menu {
    right: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__menu {
    right: var(--margin-xxl);
  }
}
.header__menu__open {
  cursor: pointer;
}
.header__menu__open svg {
  transition: all 0.3s;
}
.theme--default .header__menu__open path {
  fill: #0f0f18;
}
.theme--dark .header__menu__open path {
  fill: #F2EFE8;
}
.header__menu span {
  position: absolute;
  transform: rotate(-90deg) translate(10px, -17px);
  transform-origin: right bottom;
  transition: all 0.3s;
  display: none;
}
@media only screen and (min-width: 768px) {
  .header__menu span {
    display: block;
  }
}

.open_menu .header__menu__open svg,
.lightgallery-open .header__menu__open svg {
  transform: rotate(45deg);
}

.header__social {
  position: fixed;
  z-index: 1000;
  bottom: 5rem;
  right: var(--margin-xs);
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 576px) {
  .header__social {
    right: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__social {
    right: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__social {
    right: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__social {
    right: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__social {
    right: var(--margin-xxl);
  }
}
@media only screen and (min-width: 768px) {
  .header__social {
    bottom: 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .header__social {
    bottom: 9.375rem;
  }
}
@media only screen and (min-width: 1600px) {
  .header__social {
    bottom: 11.25rem;
  }
}
.header__social a {
  margin: 1.25rem 0 0 0;
}
@media only screen and (min-width: 768px) {
  .header__social a {
    margin: 0 0 3.125rem 0;
  }
}
.header__social svg {
  width: 0.75rem;
  height: 0.75rem;
}
.theme--default .header__social path {
  fill: #0f0f18;
}
.theme--dark .header__social path {
  fill: #F2EFE8;
}

.header__menu__content {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: none;
}
.header__menu__content .header__menu__bg {
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: all 0.5s;
}
.theme--default .header__menu__content .header__menu__bg {
  background: #F2EFE8;
}
.theme--dark .header__menu__content .header__menu__bg {
  background: #0f0f18;
}

.header__menu__wrap {
  position: absolute;
  z-index: 500;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 0.9375rem;
}
@media only screen and (min-width: 992px) {
  .header__menu__wrap {
    padding: 0 6.25rem;
  }
}
@media only screen and (min-width: 1200px) {
  .header__menu__wrap {
    padding: 0 9.375rem;
  }
}
.header__menu__wrap .header__menu__close {
  position: absolute;
  top: var(--margin-xs);
  right: var(--margin-xs);
}
@media only screen and (min-width: 576px) {
  .header__menu__wrap .header__menu__close {
    top: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap .header__menu__close {
    top: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__menu__wrap .header__menu__close {
    top: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__menu__wrap .header__menu__close {
    top: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__menu__wrap .header__menu__close {
    top: var(--margin-xxl);
  }
}
@media only screen and (min-width: 576px) {
  .header__menu__wrap .header__menu__close {
    right: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap .header__menu__close {
    right: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .header__menu__wrap .header__menu__close {
    right: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .header__menu__wrap .header__menu__close {
    right: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .header__menu__wrap .header__menu__close {
    right: var(--margin-xxl);
  }
}
.header__menu__wrap .header__menu__close svg {
  transition: all 0.3s;
}
.header__menu__wrap__top {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 25vh;
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap__top {
    flex-direction: row;
    justify-content: flex-end;
    margin-bottom: 15vh;
  }
}
@media only screen and (min-width: 992px) {
  .header__menu__wrap__top {
    margin-bottom: 7.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .header__menu__wrap__top {
    margin-bottom: 15.625rem;
  }
}
.header__menu__wrap__bottom {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap__bottom {
    font-size: 1rem;
  }
}
.header__menu__wrap__bottom p {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap__bottom p {
    font-size: 1rem;
  }
}
.header__menu__wrap ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.header__menu__wrap a {
  text-decoration: none;
}
.theme--default .header__menu__wrap a {
  color: #0f0f18;
}
.theme--dark .header__menu__wrap a {
  color: #F2EFE8;
}
.header__menu__wrap .menu {
  text-align: right;
  margin: 0;
}
.header__menu__wrap .menu a {
  display: inline-block;
  margin-bottom: 1.5625rem;
  font-weight: 400;
  font-size: 2rem;
  text-decoration: none;
  text-transform: uppercase;
}
.theme--default .header__menu__wrap .menu a {
  color: #0f0f18;
}
.theme--dark .header__menu__wrap .menu a {
  color: #F2EFE8;
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap .menu a {
    font-size: 3rem;
  }
}
.header__menu__wrap .menu a:after {
  border-top-width: 0.125rem;
}
@media only screen and (min-width: 768px) {
  .header__menu__wrap .menu a:after {
    border-top-width: 0.1875rem;
  }
}

.open_menu .header__menu__close svg {
  transform: rotate(45deg);
}

footer .footer_wrap {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: space-between;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}
@media only screen and (min-width: 768px) {
  footer .footer_wrap {
    flex-direction: row;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
}
@media only screen and (min-width: 992px) {
  footer .footer_wrap {
    padding-top: 8.75rem;
    padding-bottom: 8.75rem;
  }
}
footer .footer__block {
  padding-left: 15px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  footer .footer__block {
    width: 50%;
  }
}
@media only screen and (min-width: 992px) {
  footer .footer__block {
    width: 33.33%;
  }
}
footer .footer__block__info {
  margin-bottom: 3.125rem;
}
footer p {
  margin: 0;
}
footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
footer h5 {
  margin: 0;
}
footer h5:after {
  content: "";
  display: block;
  width: 42px;
  height: 1px;
  margin: 5px 0;
  transform: translateX(-15px);
}
.theme--default footer h5:after {
  background-color: #0f0f18;
}
.theme--dark footer h5:after {
  background-color: #F2EFE8;
}
.theme--default footer a {
  color: #0f0f18;
}
.theme--dark footer a {
  color: #F2EFE8;
}
footer li, footer a, footer p {
  font-size: 14px;
}

.footer__bar {
  position: fixed;
  z-index: 2000;
  width: 100%;
  bottom: 0;
  left: 0;
  padding-bottom: 1.25rem;
  padding-left: var(--margin-xs);
  padding-right: var(--margin-xs);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (min-width: 576px) {
  .footer__bar {
    padding-left: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .footer__bar {
    padding-left: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .footer__bar {
    padding-left: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .footer__bar {
    padding-left: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .footer__bar {
    padding-left: var(--margin-xxl);
  }
}
@media only screen and (min-width: 576px) {
  .footer__bar {
    padding-right: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .footer__bar {
    padding-right: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .footer__bar {
    padding-right: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .footer__bar {
    padding-right: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .footer__bar {
    padding-right: var(--margin-xxl);
  }
}
.footer__bar p {
  margin-bottom: 0;
  font-size: 0.625rem;
  line-height: 1em;
}
@media only screen and (min-width: 768px) {
  .footer__bar p {
    font-size: 0.8125rem;
  }
}
.footer__bar ul {
  list-style: none;
  display: flex;
  margin: 0;
}
.footer__bar ul li {
  margin-left: 0.9375rem;
}
.footer__bar a {
  text-decoration: none;
}
.theme--default .footer__bar a {
  color: #0f0f18;
}
.theme--dark .footer__bar a {
  color: #F2EFE8;
}

.home .footer__bar,
.single .footer__bar {
  display: none;
}

.section__intro {
  display: flex;
  justify-content: center;
  margin-bottom: 10vh;
}
.section__intro .section__wrapper {
  position: relative;
  margin: 15vh 0 5vh;
  width: 100%;
  min-height: 15vh;
}
@media only screen and (min-width: 768px) {
  .section__intro .section__wrapper {
    margin: 10vh 0 0 0;
    min-height: 20vh;
  }
}
@media only screen and (min-width: 1200px) {
  .section__intro .section__wrapper {
    margin: 15vh 0 0 5vh;
    min-height: 25vh;
  }
}
.section__intro .section__wrap {
  position: relative;
  z-index: 10;
}
.section__intro .section__content {
  width: 100%;
  padding-left: 25%;
}
@media only screen and (min-width: 768px) {
  .section__intro .section__content {
    padding-left: 25%;
  }
}
@media only screen and (min-width: 992px) {
  .section__intro .section__content {
    padding-left: 50%;
  }
}
.section__intro .section__content p {
  padding-left: 5vw;
  font-weight: 300;
  font-size: 16px;
}
.section__intro .section__content strong {
  font-weight: normal;
}
@media only screen and (min-width: 768px) {
  .section__intro.section__header .section__wrapper {
    margin: 20vh 0 10vh;
    min-height: 20vh;
  }
}
@media only screen and (min-width: 1200px) {
  .section__intro.section__header .section__wrapper {
    margin: 40vh 0 10vh;
    min-height: 25vh;
  }
}
.section__intro.section__hairline .section__content p {
  padding-left: 7vw;
  font-weight: 100;
  font-size: 18px;
}
@media only screen and (min-width: 768px) {
  .section__intro.section__hairline .section__content p {
    font-size: 20px;
  }
}
@media only screen and (min-width: 1200px) {
  .section__intro.section__hairline .section__content p {
    font-size: 22px;
  }
}
.section__intro.section__hairline .section__content strong {
  font-weight: 300;
}
.section__intro.section__middle .section__content p {
  padding-left: 0;
}
.section__intro.section__large-font .section__content p {
  font-size: 16px;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) {
  .section__intro.section__large-font .section__content p {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1200px) {
  .section__intro.section__large-font .section__content p {
    font-size: 20px;
  }
}
.section__intro.section__black {
  background: #D9D3CD;
}

body.theme--dark .section__black {
  background: #0c0c15;
}

.section__info {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.section__info p {
  display: inline-block;
  font-weight: 300;
  font-size: 18px;
  font-weight: 100;
  text-transform: uppercase;
  transform: rotate(270deg) translateX(-100%);
  transform-origin: top left;
}
@media only screen and (min-width: 768px) {
  .section__info p {
    font-size: 24px;
  }
}
@media only screen and (min-width: 1200px) {
  .section__info p {
    font-size: 32px;
  }
}
@media only screen and (min-width: 1600px) {
  .section__info p {
    font-size: 38px;
  }
}

.home .frontpage__steps {
  min-height: 100vh !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

.frontpage__scroll {
  position: fixed;
  z-index: 500;
  left: 50%;
  bottom: 3.125rem;
  transform: translateX(-50%);
  transition: all 0.3s;
  opacity: 0;
}
.frontpage__scroll.enable {
  opacity: 1;
}
.theme--default .frontpage__scroll path, .theme--default .frontpage__scroll text {
  fill: #0f0f18;
}
.theme--dark .frontpage__scroll path, .theme--dark .frontpage__scroll text {
  fill: #F2EFE8;
}
.theme--default .frontpage__scroll line {
  stroke: #0f0f18;
}
.theme--dark .frontpage__scroll line {
  stroke: #F2EFE8;
}
.frontpage__scroll .frontpage__scroll__line {
  position: absolute;
  left: 50%;
  bottom: 0.9375rem;
  transform: translateX(-50%);
  width: 0.0625rem;
  height: 2.5rem;
  overflow: hidden;
}
.frontpage__scroll .frontpage__scroll__line:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  transform: translateY(-100%);
  animation: scroll 1.5s linear infinite;
}
.theme--default .frontpage__scroll .frontpage__scroll__line:before {
  background: #0f0f18;
}
.theme--dark .frontpage__scroll .frontpage__scroll__line:before {
  background: #F2EFE8;
}

@keyframes scroll {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(100%);
  }
}
.frontpage__intro {
  z-index: -1;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.theme--default .frontpage__intro path {
  fill: #0f0f18;
}
.theme--dark .frontpage__intro path {
  fill: #F2EFE8;
}
.frontpage__intro .frontpage__brand {
  text-align: center;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.frontpage__intro .frontpage__brand__icon {
  width: 3.5rem;
  height: 4.8125rem;
}
@media only screen and (min-width: 768px) {
  .frontpage__intro .frontpage__brand__icon {
    width: 4.625rem;
    height: 6.3125rem;
  }
}
@media only screen and (min-width: 1200px) {
  .frontpage__intro .frontpage__brand__icon {
    width: 6.8125rem;
    height: 9.375rem;
  }
}
.frontpage__intro .frontpage__brand__text {
  display: block;
  overflow: hidden;
  opacity: 0;
  height: 0;
  margin-top: 0rem;
  transform: translateY(-30px);
  transition: all 1s 1s;
}
.frontpage__intro .frontpage__brand__text svg {
  width: 13.5rem;
  height: 2.625rem;
}
@media only screen and (min-width: 768px) {
  .frontpage__intro .frontpage__brand__text svg {
    width: 17.75rem;
    height: 3.4375rem;
  }
}
@media only screen and (min-width: 1200px) {
  .frontpage__intro .frontpage__brand__text svg {
    width: 23.8125rem;
    height: 4.5625rem;
  }
}

.loaded .frontpage__brand__text {
  opacity: 1;
  height: 2.9375rem;
  transform: translateY(0);
  margin-top: 1.875rem;
}
@media only screen and (min-width: 768px) {
  .loaded .frontpage__brand__text {
    height: 3.4375rem;
  }
}
@media only screen and (min-width: 1200px) {
  .loaded .frontpage__brand__text {
    height: 4.5625rem;
    margin-top: 3.75rem;
  }
}

.frontpage__slider {
  width: 100%;
  height: 50vh;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .frontpage__slider {
    height: 100vh;
  }
}
.frontpage__slider .swiper {
  height: 100%;
}
.frontpage__slider .swiper-slide {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.frontpage__slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.frontpage__slider .swiper-pagination {
  bottom: 5rem;
  top: unset;
  left: 50%;
  transform: translateX(-50%);
  background: white;
  height: 1px;
  width: 70%;
  max-width: 900px;
}
.frontpage__slider .swiper-pagination .swiper-pagination-progressbar-fill {
  height: 3px;
  background-color: white;
  margin-top: -1px;
}
.frontpage__slider .swiper-pagination-bullet {
  width: 0.75rem;
  height: 0.75rem;
}
.theme--default .frontpage__slider .swiper-pagination-bullet {
  background: #F2EFE8;
}
.theme--dark .frontpage__slider .swiper-pagination-bullet {
  background: #0f0f18;
}

.frontpage__gallery {
  flex-direction: column;
}

.frontpage__claim {
  position: relative;
  z-index: -1;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.frontpage__claim p {
  text-align: center;
  width: 70%;
  max-width: 700px;
  font-size: 14px;
  margin-top: -20vh;
  transition: all 2s;
  opacity: 0;
}
@media only screen and (min-width: 768px) {
  .frontpage__claim p {
    font-size: 16px;
  }
}
.frontpage__claim__main {
  position: absolute;
  left: 0;
  bottom: 140px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .frontpage__claim__main {
    bottom: 110px;
  }
}
.frontpage__claim.active p {
  transition-delay: 1.3s;
  opacity: 1;
  transform: translateY(0);
}

.home header.main-header, .home .footer__bar {
  display: none;
}
.home.shrink header.main-header, .home.shrink .footer__bar {
  opacity: 1;
}
.home .header__social {
  display: none;
}
.home .header__social.active {
  display: flex;
}

.projects__gallery .grid-sizer,
.projects__gallery .grid__item {
  width: 100%;
  padding: 0 0 3.125rem 0;
}
@media only screen and (min-width: 768px) {
  .projects__gallery .grid-sizer,
.projects__gallery .grid__item {
    width: 50%;
    padding: 0 3.125rem 3.125rem 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .projects__gallery .grid-sizer,
.projects__gallery .grid__item {
    width: 50%;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid-sizer,
.projects__gallery .grid__item {
    width: 50%;
  }
}
.projects__gallery .grid__item__wrap {
  margin: 0 0 1.5625rem 0;
}
@media only screen and (min-width: 992px) {
  .projects__gallery .grid__item__wrap {
    margin: 0 0 2.5rem 0;
  }
}
.projects__gallery h2 {
  font-size: 1rem;
  margin-bottom: 0;
}
.projects__gallery h6 {
  font-size: 0.8125rem;
  font-weight: 300;
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(1n) {
    padding: 0 5rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(2n) {
    padding: 0 5.625rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(3n) {
    padding: 0 6.25rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(4n) {
    padding: 0 5rem 7.5rem 1.875rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(5n) {
    padding: 0 6.25rem 7.5rem 1.875rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(6n) {
    padding: 0 6.25rem 7.5rem 6.25rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(7n) {
    padding: 0 3.125rem 7.5rem 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(8n) {
    padding: 0 6.25rem 7.5rem 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .projects__gallery .grid__item:nth-child(9n) {
    padding: 0 7.5rem 9.375rem 3.125rem;
  }
}

.page-template-page-cases .section__intro {
  margin-bottom: 0;
}
.page-template-page-cases .button-group {
  padding-top: 0;
  justify-content: flex-end;
  transform: translateY(-100%);
}

.cases__gallery {
  padding-left: 3.125rem;
  padding-right: 3.125rem;
}
@media only screen and (min-width: 992px) {
  .cases__gallery {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .cases__gallery {
    padding-left: 6.25rem;
    padding-right: 6.25rem;
  }
}
.cases__gallery .grid {
  display: flex;
}
.cases__gallery .grid-sizer,
.cases__gallery .grid__item {
  width: 100%;
  padding: 0 0 7.5rem 0;
}
@media only screen and (min-width: 768px) {
  .cases__gallery .grid-sizer,
.cases__gallery .grid__item {
    width: 50%;
    padding: 0 3.125rem 6.25rem 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .cases__gallery .grid-sizer,
.cases__gallery .grid__item {
    width: 33.33%;
    padding: 0 4.375rem 6.25rem 4.375rem;
  }
}
@media only screen and (min-width: 1200px) {
  .cases__gallery .grid-sizer,
.cases__gallery .grid__item {
    width: 33.33%;
    padding: 0 5.625rem 0.75rem 5.625rem;
  }
}
@media only screen and (min-width: 1600px) {
  .cases__gallery .grid-sizer,
.cases__gallery .grid__item {
    width: 33.33%;
    padding: 0 8.75rem 9.375rem 8.75rem;
  }
}
.cases__gallery .grid__item {
  overflow: visible;
}
.cases__gallery .grid__item__wrap {
  margin: 0 0 1.5625rem 0;
  overflow: hidden;
}
@media only screen and (min-width: 992px) {
  .cases__gallery .grid__item__wrap {
    margin: 0 0 2.5rem 0;
  }
}
.cases__gallery a {
  position: relative;
}
.cases__gallery h2 {
  font-size: 0.8125rem;
  font-weight: 400;
  margin-bottom: 0;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-35px, -50%);
  width: 150px;
}
.cases__gallery h6 {
  font-size: 0.8125rem;
  font-weight: 400;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(35px, -50%);
  text-align: right;
  width: 150px;
}
.cases__gallery h5 {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 300%);
  font-size: 0.5rem;
  font-weight: 300;
  text-transform: uppercase;
  border-top-width: 1px;
  border-top-style: solid;
  padding-top: 5px;
}
.theme--default .cases__gallery h5 {
  border-color: #0f0f18;
}
.theme--dark .cases__gallery h5 {
  border-color: #F2EFE8;
}
.cases__gallery .grid__item__fake {
  width: 100%;
  height: auto;
}
.cases__gallery .grid__item__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  object-fit: cover;
  object-position: center;
  padding: 0;
  max-height: none;
}

.page-template-page-contact footer {
  display: none;
}

.contact__intro {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 35vh 0 25vh 0;
}
.contact__intro__content {
  display: flex;
  align-items: center;
}
.contact__intro__content > * {
  flex: 1 1 0;
}
.contact__intro p {
  text-align: right;
  font-weight: 300;
  text-transform: uppercase;
  font-size: 24px;
  line-height: 1.1em;
  padding: 20px 20px 20px;
  border-right-width: 1px;
  border-right-style: solid;
}
.theme--default .contact__intro p {
  border-color: #0f0f18;
}
.theme--dark .contact__intro p {
  border-color: #F2EFE8;
}
@media only screen and (min-width: 768px) {
  .contact__intro p {
    font-size: 42px;
    padding: 30px 30px 30px;
  }
}
@media only screen and (min-width: 1200px) {
  .contact__intro p {
    font-size: 55px;
  }
}
.contact__intro a {
  padding: 0 0 0 20px;
  font-size: 14px;
}
@media only screen and (min-width: 768px) {
  .contact__intro a {
    font-size: 18px;
    padding: 0 0 0 30px;
  }
}
@media only screen and (min-width: 1200px) {
  .contact__intro a {
    font-size: 21px;
  }
}

.contact__info {
  position: relative;
  padding-bottom: 20vh;
}
.contact__info .contact__info__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 1199px) {
  .contact__info .contact__info__content {
    padding-left: 160px;
    padding-right: 160px;
  }
}
@media screen and (max-width: 991px) {
  .contact__info .contact__info__content {
    padding-left: 120px;
    padding-right: 120px;
  }
}
@media screen and (max-width: 767px) {
  .contact__info .contact__info__content {
    padding-left: 70px;
    padding-right: 70px;
  }
}
@media only screen and (min-width: 768px) {
  .contact__info .contact__info__content {
    flex-wrap: nowrap;
  }
}
@media only screen and (min-width: 1200px) {
  .contact__info .contact__info__content {
    max-width: 50rem;
    margin: 0 auto;
  }
}
.contact__info .contact__info__content p, .contact__info .contact__info__content h5, .contact__info .contact__info__content a {
  font-size: 16px;
}
.contact__info .contact__info__content a {
  line-height: 1em;
}
.contact__info .contact__info__content .clock {
  font-size: 16px;
  text-transform: uppercase;
  margin-bottom: 30px;
}
.contact__info .contact__info__block {
  margin-bottom: 40px;
}
@media only screen and (min-width: 768px) {
  .contact__info .contact__info__block {
    margin-bottom: 0;
  }
}
.contact__info .contact__info__city__fake {
  height: 50px;
}
.contact__info .contact__info__city img {
  margin-bottom: 15px;
}
@media only screen and (min-width: 768px) {
  .contact__info .contact__info__city img {
    margin-bottom: 30px;
  }
}
.contact__info .contact__info__address,
.contact__info .contact__info__email + .contact__info__email {
  margin-top: 20px;
}
@media only screen and (min-width: 768px) {
  .contact__info .contact__info__address,
.contact__info .contact__info__email + .contact__info__email {
    margin-top: 40px;
  }
}
.contact__info .contact__info__email {
  padding-left: 15px;
}
.contact__info .contact__info__email h5 {
  margin: 0;
}
.contact__info .contact__info__email h5:after {
  content: "";
  display: block;
  width: 42px;
  height: 1px;
  margin: 5px 0;
  transform: translateX(-15px);
}
.theme--default .contact__info .contact__info__email h5:after {
  background-color: #0f0f18;
}
.theme--dark .contact__info .contact__info__email h5:after {
  background-color: #F2EFE8;
}

.page-template-page-jobs footer {
  background: #D9D3CD;
  margin-top: 100px;
}
@media only screen and (min-width: 768px) {
  .page-template-page-jobs footer {
    margin-top: 120px;
  }
}
@media only screen and (min-width: 1200px) {
  .page-template-page-jobs footer {
    margin-top: 150px;
  }
}

body.theme--dark.page-template-page-jobs footer {
  background: #0c0c15;
}

.job__item + .job__item {
  margin-top: 120px;
}
@media only screen and (min-width: 768px) {
  .job__item + .job__item {
    margin-top: 120px;
  }
}
@media only screen and (min-width: 992px) {
  .job__item + .job__item {
    margin-top: 150px;
  }
}

.job__item {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
@media only screen and (min-width: 992px) {
  .job__item {
    flex-direction: row;
    gap: 150px;
    align-items: center;
  }
}
.job__item .job__card {
  width: 100%;
}
@media only screen and (min-width: 992px) {
  .job__item .job__card {
    width: 70%;
  }
}
.job__item .job__description {
  width: 100%;
}
@media only screen and (min-width: 992px) {
  .job__item .job__description {
    width: 30%;
  }
}
.job__item .job__description h5 {
  display: block;
  font-weight: 300;
  font-size: 18px;
  text-align: center;
  margin-bottom: 40px;
}
.job__item .job__description .job__description__text {
  width: 80%;
}
.job__item .job__description .job__description__contact {
  text-align: right;
  padding-left: 20%;
}
.job__item .job__description .job__description__contact p {
  margin: 0;
}

.job__card {
  position: relative;
  padding: 30px 30px 30px 30px;
  border-radius: 20px;
  border-width: 1px;
  border-style: solid;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 150px;
}
@media only screen and (min-width: 768px) {
  .job__card {
    padding: 50px 50px 50px 50px;
    gap: 180px;
  }
}
@media only screen and (min-width: 992px) {
  .job__card {
    padding: 130px 80px 80px 80px;
    gap: 180px;
  }
}
.job__card:not(.active) {
  cursor: pointer;
}
.job__card .job__card__header {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.job__card .job__card__header h3 {
  font-weight: 300;
  font-size: 20px;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .job__card .job__card__header h3 {
    font-size: 29px;
  }
}
.job__card .job__card__header svg {
  width: 35px;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .job__card .job__card__header svg {
    width: 50px;
  }
}
@media only screen and (min-width: 992px) {
  .job__card .job__card__header svg {
    width: 90px;
  }
}
.theme--default .job__card .job__card__header path {
  fill: #0f0f18;
}
.theme--dark .job__card .job__card__header path {
  fill: #F2EFE8;
}
.job__card .job__card__footer {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.job__card .job__card__footer h2 {
  font-weight: 300;
  font-size: 18px;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .job__card .job__card__footer h2 {
    font-size: 25px;
  }
}
.job__card .job__card__footer > span {
  text-decoration: underline;
  white-space: nowrap;
}
@media only screen and (min-width: 1200px) {
  .job__card .job__card__footer > span {
    margin-right: 20px;
  }
}
.job__card .job__card__hover {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30px 30px 30px 30px;
  border-radius: 20px;
  flex-direction: column;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .job__card .job__card__hover {
    padding: 50px 50px 50px 50px;
  }
}
@media only screen and (min-width: 992px) {
  .job__card .job__card__hover {
    padding: 130px 80px 80px 80px;
  }
}
.theme--default .job__card .job__card__hover {
  background-color: #F2EFE8;
}
.theme--dark .job__card .job__card__hover {
  background-color: #0f0f18;
}
.job__card .job__card__hover .job__card__close {
  position: absolute;
  right: 30px;
  bottom: 30px;
  cursor: pointer;
  text-decoration: underline;
}
@media only screen and (min-width: 768px) {
  .job__card .job__card__hover .job__card__close {
    right: 50px;
    bottom: 50px;
  }
}
@media only screen and (min-width: 992px) {
  .job__card .job__card__hover .job__card__close {
    right: 80px;
    bottom: 80px;
  }
}

.team__intro {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media only screen and (min-width: 992px) {
  .team__intro {
    flex-direction: row;
  }
}
@media only screen and (min-width: 992px) {
  .team__intro .team__intro__media,
.team__intro .team__intro__content {
    width: 50%;
  }
}
.team__intro img {
  width: 100%;
  height: auto;
}
.team__intro .team__intro__content {
  padding: 25px 13vw 25px 7vw;
}
@media only screen and (min-width: 768px) {
  .team__intro .team__intro__content {
    padding: 50px 13vw 50px 7vw;
  }
}
.team__intro .team__intro__content p {
  font-weight: 100;
  font-size: 16px;
  text-align: justify;
}
@media only screen and (min-width: 768px) {
  .team__intro .team__intro__content p {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1200px) {
  .team__intro .team__intro__content p {
    font-size: 22px;
  }
}
.team__intro .team__intro__content p strong {
  font-weight: 300;
}
.team__intro .team__intro__tilte {
  font-weight: 100;
  font-size: 24px;
  line-height: 1.2em;
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
  .team__intro .team__intro__tilte {
    font-size: 32px;
    margin-bottom: 35px;
  }
}
@media only screen and (min-width: 1200px) {
  .team__intro .team__intro__tilte {
    font-size: 38px;
    margin-bottom: 50px;
  }
}

.team__members {
  padding-top: 5vh;
  padding-bottom: 5vh;
}
@media only screen and (min-width: 768px) {
  .team__members {
    padding-top: 15vh;
    padding-bottom: 15vh;
  }
}
.theme--default .team__members {
  background-color: #E1DBD4;
}
.theme--dark .team__members {
  background-color: #040407;
}
.team__members .team__members__wrap {
  padding-top: 5vh;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__wrap {
    padding-top: 15vh;
  }
}
.team__members .team__members__list {
  display: flex;
  flex-direction: column;
  gap: 100px;
}
@media only screen and (min-width: 992px) {
  .team__members .team__members__list {
    flex-direction: row;
    gap: 150px;
  }
}
@media screen and (max-width: 991px) {
  .team__members .team__members__list {
    padding-left: 100px;
    padding-right: 100px;
  }
}
@media screen and (max-width: 767px) {
  .team__members .team__members__list {
    padding-left: 50px;
    padding-right: 50px;
  }
}
.team__members .team__members__item {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.team__members .team__members__item > div {
  position: relative;
}
.team__members .team__members__item > div > a {
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(-90deg) translate(0, -100%);
  transform-origin: top right;
  font-size: 13px;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__item > div > a {
    font-size: 15px;
  }
}
.team__members .team__members__item img {
  width: 75%;
}
.team__members .team__members__item .team__members__media {
  display: flex;
  align-items: flex-end;
  margin-bottom: 25px;
  gap: 10px;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__item .team__members__media {
    margin-bottom: 50px;
    gap: 30px;
  }
}
.team__members .team__members__item .team__members__media__content {
  position: relative;
}
.team__members .team__members__item .team__members__media__rotate {
  position: absolute;
  bottom: 0;
  left: 0;
  transform: rotate(-90deg) translate(0, 100%);
  transform-origin: bottom left;
  white-space: nowrap;
}
.team__members .team__members__item .team__members__media__rotate h3, .team__members .team__members__item .team__members__media__rotate h4 {
  margin: 0;
}
.team__members .team__members__item .team__members__media__rotate h3 {
  font-weight: normal;
  font-size: 16px;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__item .team__members__media__rotate h3 {
    font-size: 22px;
  }
}
.team__members .team__members__item .team__members__media__rotate h4 {
  font-weight: 300;
  font-size: 13px;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__item .team__members__media__rotate h4 {
    font-size: 15px;
  }
}
.team__members .team__members__item .team__members__claim {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
  margin-top: 50px;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__item .team__members__claim {
    margin-top: 160px;
  }
}
.team__members .team__members__item .team__members__claim:before {
  content: "";
  display: block;
  margin-bottom: 25px;
  width: 122px;
  height: 1px;
}
.theme--default .team__members .team__members__item .team__members__claim:before {
  background-color: #0f0f18;
}
.theme--dark .team__members .team__members__item .team__members__claim:before {
  background-color: #F2EFE8;
}
.team__members .team__members__item .team__members__claim p, .team__members .team__members__item .team__members__claim h5 {
  font-size: 12px;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .team__members .team__members__item .team__members__claim p, .team__members .team__members__item .team__members__claim h5 {
    width: 50%;
    font-size: 16px;
  }
}
.team__members .team__members__item .team__members__claim h5 {
  font-weight: 300;
}

.team__services {
  padding-bottom: 10vh;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .team__services {
    padding-top: 10vh;
  }
}
.team__services .team__services__title {
  font-size: 24px;
  line-height: 1.2em;
  font-weight: 100;
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
  .team__services .team__services__title {
    font-size: 32px;
    margin-bottom: 35px;
  }
}
@media only screen and (min-width: 1200px) {
  .team__services .team__services__title {
    font-size: 38px;
    margin-bottom: 50px;
  }
}
.team__services .fulltitle {
  font-weight: 300;
}
.team__services .splide__slide {
  font-size: 50px;
}
@media only screen and (min-width: 768px) {
  .team__services .splide__slide {
    font-size: 60px;
  }
}
@media only screen and (min-width: 768px) {
  .team__services .splide__slide {
    font-size: 80px;
  }
}
.team__services .splide__slide strong {
  display: inline-block;
  width: 0;
  overflow: hidden;
}
.team__services a {
  margin-top: 20px;
  display: flex;
  width: 100%;
  justify-content: space-between;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  font-size: 14px;
  font-weight: bold;
  padding: 15px 0;
}
@media only screen and (min-width: 768px) {
  .team__services a {
    margin-top: 200px;
    font-size: 20px;
  }
}
.theme--default .team__services a {
  border-color: #0f0f18;
}
.theme--dark .team__services a {
  border-color: #F2EFE8;
}
.team__services a svg {
  width: 24px;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .team__services a svg {
    width: 40px;
  }
}
.theme--default .team__services a path {
  stroke: #0f0f18;
}
.theme--dark .team__services a path {
  stroke: #F2EFE8;
}

.grid:after {
  content: "";
  display: block;
  clear: both;
}

.grid__full .grid__item {
  padding: 0.625rem 0.625rem !important;
}
.grid__full .grid__item__hover {
  text-align: center;
}

.grid__item {
  overflow: hidden;
  position: relative;
  text-align: left;
  text-decoration: none;
}
.theme--default .grid__item {
  color: #0f0f18;
}
.theme--dark .grid__item {
  color: #F2EFE8;
}
.grid__item a {
  text-decoration: none;
}
.grid__item__wrap {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.grid__item__image {
  display: block;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: 0 auto;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
}
.grid__item__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 100;
  transform: translate(-50%, -50%);
}
.grid__item__hover {
  opacity: 0;
  margin-top: 0.625rem;
  text-align: right;
  line-height: 1em;
  font-weight: bold;
  transition: all 0.3s;
  transform: translateY(10px);
}
.grid__item__hover span {
  display: block;
  font-weight: 300;
}
.grid__item:hover .grid__item__hover {
  opacity: 1;
  transform: translateY(0);
}

.grid__parallax {
  width: 100%;
  margin-top: -50px;
  margin-bottom: -50px;
  transition: all 0.5s;
}
.grid__parallax img {
  width: 100%;
  height: 100%;
  object-fit: 100%;
  object-position: center;
}

.lazyloaded {
  opacity: 1;
}

.lazyload {
  opacity: 0;
}

.grid__lazy .grid__item__image {
  transform: scale(1.15);
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(1n) {
    padding: 0 3.125rem 3.125rem 0.625rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(1n) {
    padding: 0 3.125rem 9.375rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(2n) {
    padding: 0 2.5rem 3.125rem 1.875rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(2n) {
    padding: 0 5.625rem 9.375rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(3n) {
    padding: 0 1.25rem 3.125rem 3.75rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(3n) {
    padding: 0 3.75rem 9.375rem 5rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(4n) {
    padding: 0 1.875rem 3.125rem 1.875rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(4n) {
    padding: 0 3.125rem 9.375rem 4.375rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(5n) {
    padding: 0 2.5rem 3.125rem 4.375rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(5n) {
    padding: 0 3.75rem 9.375rem 5.625rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(6n) {
    padding: 0 1.875rem 3.125rem 3.125rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(6n) {
    padding: 0 4.375rem 9.375rem 2.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(7n) {
    padding: 0 3.125rem 3.125rem 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(7n) {
    padding: 0 3.125rem 9.375rem 5rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__lazy .grid__item:nth-child(8n) {
    padding: 0 1.875rem 3.125rem 2.8125rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(8n) {
    padding: 0 3.75rem 9.375rem 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(9n) {
    padding: 0 3.125rem 3.125rem 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__lazy .grid__item:nth-child(9n) {
    padding: 0 3.125rem 9.375rem 5rem;
  }
}

.grid__item__video .grid__item__wrap:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
}

.button-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 6.5625rem;
  padding-bottom: 1.5625rem;
}
@media only screen and (min-width: 768px) {
  .button-group {
    padding-top: 9.375rem;
    padding-bottom: 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .button-group {
    padding-top: 12.5rem;
    padding-bottom: 6.25rem;
  }
}
.button-group button, .button-group a {
  font-size: 0.6875rem;
  margin: 0.1875rem 0.3125rem;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  text-transform: uppercase;
}
@media only screen and (min-width: 768px) {
  .button-group button, .button-group a {
    margin: 0 0.9375rem;
    font-size: 0.875rem;
  }
}
.theme--default .button-group button, .theme--default .button-group a {
  color: #0f0f18;
}
.theme--dark .button-group button, .theme--dark .button-group a {
  color: #F2EFE8;
}

.grid__full .grid-sizer,
.grid__full .grid__item {
  width: 100%;
  padding: 0 0 3.125rem 0;
}
@media only screen and (min-width: 768px) {
  .grid__full .grid-sizer,
.grid__full .grid__item {
    width: 50%;
    padding: 0 3.125rem 3.125rem 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .grid__full .grid-sizer,
.grid__full .grid__item {
    width: 33.33%;
  }
}
@media only screen and (min-width: 1200px) {
  .grid__full .grid-sizer,
.grid__full .grid__item {
    width: 25%;
  }
}

#lightgallery .grid__item {
  cursor: pointer;
}

.lg-outer {
  z-index: 1500;
}

.lg-backdrop {
  transition: all 0.5s;
}
.theme--default .lg-backdrop {
  background: #F2EFE8;
}
.theme--dark .lg-backdrop {
  background: #0f0f18;
}

.lg-outer .lg-item:before,
.lg-outer .lg-img-wrap:before {
  display: none;
}

.lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
  position: fixed;
  top: var(--margin-xs);
  right: 6.875rem;
  width: 1.875rem;
  height: 1.875rem;
  background-size: cover;
  padding: 0;
  transform: translateY(0);
}
.lg-toolbar .lg-zoom-in:before, .lg-toolbar .lg-zoom-in:after,
.lg-toolbar .lg-zoom-out:before,
.lg-toolbar .lg-zoom-out:after {
  display: none;
}
@media only screen and (min-width: 576px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    top: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    top: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    top: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    top: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    top: var(--margin-xxl);
  }
}
@media only screen and (min-width: 768px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    right: 7.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .lg-toolbar .lg-zoom-in,
.lg-toolbar .lg-zoom-out {
    right: 6.25rem;
  }
}

.lg-toolbar .lg-zoom-out {
  background-image: url(../images/zoom-out.svg);
}

.theme--dark .lg-toolbar .lg-zoom-out {
  background-image: url(../images/zoom-out-white.svg);
}

.lg-toolbar .lg-zoom-in {
  background-image: url(../images/zoom-in.svg);
}

.theme--dark .lg-toolbar .lg-zoom-in {
  background-image: url(../images/zoom-in-white.svg);
}

.lg-next,
.lg-prev {
  width: 1.875rem;
  height: 1.875rem;
  padding: 0;
  background-size: auto;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
}
.lg-next:before, .lg-next:after,
.lg-prev:before,
.lg-prev:after {
  display: none;
}

.lg-prev {
  background-image: url(../images/arrow-left-black.svg);
}

.theme--dark .lg-prev {
  background-image: url(../images/arrow-left-white.svg);
}

.lg-next {
  background-image: url(../images/arrow-right-black.svg);
}

.theme--dark .lg-next {
  background-image: url(../images/arrow-right-white.svg);
}

.lg-sub-html {
  padding-bottom: 3.125rem;
  right: var(--margin-xs);
  line-height: 1em;
  font-weight: bold;
}
@media only screen and (min-width: 576px) {
  .lg-sub-html {
    right: var(--margin-sm);
  }
}
@media only screen and (min-width: 768px) {
  .lg-sub-html {
    right: var(--margin-md);
  }
}
@media only screen and (min-width: 992px) {
  .lg-sub-html {
    right: var(--margin-lg);
  }
}
@media only screen and (min-width: 1200px) {
  .lg-sub-html {
    right: var(--margin-xl);
  }
}
@media only screen and (min-width: 1600px) {
  .lg-sub-html {
    right: var(--margin-xxl);
  }
}
.theme--default .lg-sub-html {
  color: #0f0f18;
}
.theme--dark .lg-sub-html {
  color: #F2EFE8;
}
@media only screen and (min-width: 768px) {
  .lg-sub-html {
    padding: 0;
    text-align: right;
    position: fixed;
    bottom: 7.5rem;
  }
}
.lg-sub-html span {
  display: block;
  font-weight: 300;
}
.lg-sub-html .close-lg {
  text-transform: uppercase;
  font-size: 0.8125rem;
  text-decoration: none !important;
  margin-top: 0.9375rem;
  display: inline-block;
}

.lg-toolbar .lg-close {
  position: fixed;
  display: flex;
  top: 25px;
  right: 24px;
  z-index: 2000;
  height: initial;
  width: initial;
  line-height: initial;
  padding: initial;
  font-size: initial;
  opacity: 0;
  transform: translate(0, -1px);
  transition: all 0.3s;
}
@media only screen and (min-width: 768px) {
  .lg-toolbar .lg-close {
    top: 30px;
    right: 29px;
    height: 90px;
  }
}
@media only screen and (min-width: 992px) {
  .lg-toolbar .lg-close {
    top: 55px;
    right: 54px;
  }
}

.lg-zoomed .lg-toolbar .lg-close {
  opacity: 1;
}

.lg-toolbar .lg-close:after {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url(../images/lg-close.svg);
  background-position: center;
  background-repeat: no-repeat;
  transition: all 0.3s 0.3s;
}

.theme--dark .lg-toolbar .lg-close:after {
  background: url(../images/lg-close-dark.svg);
}

.lg-outer .lg-item:not(.lg-start-end-progress) {
  background: url(../images/lg-loading.svg) no-repeat scroll center center transparent;
}

.theme--dark .lg-outer .lg-item:not(.lg-start-end-progress) {
  background: url(../images/lg-loading-dark.svg) no-repeat scroll center center transparent;
}

.lg-video-cont:not(.lg-has-iframe) {
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .lg-video-cont:not(.lg-has-iframe) {
    top: 50%;
    transform: translateY(-50%);
    margin-top: -25px;
  }
}
@media only screen and (min-width: 992px) {
  .lg-video-cont:not(.lg-has-iframe) {
    margin-top: -32px;
  }
}
@media only screen and (min-width: 1600px) {
  .lg-video-cont:not(.lg-has-iframe) {
    margin-top: -35px;
  }
}

.lg-img-wrap {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 992px) and (min-aspect-ratio: 1/1) {
  .lg-img-wrap {
    justify-content: flex-end;
  }
}
.lg-img-wrap img {
  height: 100%;
  width: auto;
}

@media only screen and (min-width: 768px) {
  .lg-zoomed.lg-outer .lg-item {
    margin-top: -70px;
  }
}
@media only screen and (min-width: 992px) {
  .lg-zoomed.lg-outer .lg-item {
    margin-top: -35px;
  }
}
@media only screen and (min-width: 1600px) {
  .lg-zoomed.lg-outer .lg-item {
    margin-top: -57px;
  }
}

.lg-toolbar {
  height: 2.5rem;
}
@media only screen and (min-width: 768px) {
  .lg-toolbar {
    height: 8.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .lg-toolbar {
    height: 6.25rem;
  }
}
@media only screen and (min-width: 1600px) {
  .lg-toolbar {
    height: 7.5rem;
  }
}

.single__intro {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  text-align: center;
}
.single__intro__over {
  position: absolute;
  z-index: 300;
  bottom: 30vh;
  left: 50%;
  transform: translateX(-50%);
  width: 70%;
}
@media only screen and (min-width: 768px) {
  .single__intro__over {
    bottom: 12.5rem;
  }
}
.single__intro h1 {
  font-family: "HGS";
  font-weight: 600;
  font-size: 2.5rem;
  margin-bottom: 0.3125rem;
  color: #F2EFE8;
}
@media only screen and (min-width: 768px) {
  .single__intro h1 {
    font-size: 3.75rem;
  }
}
.single__intro h6 {
  font-size: 1.625rem;
  font-weight: 300;
  color: #F2EFE8;
}
@media only screen and (min-width: 768px) {
  .single__intro h6 {
    font-size: 1.875rem;
  }
}
.single__intro img {
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: 0;
  left: 0;
  z-index: 0;
}
.single__intro:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}
.single__intro .frontpage__scroll {
  color: #F2EFE8;
}
.single__intro .frontpage__scroll path, .single__intro .frontpage__scroll text {
  fill: #F2EFE8;
}
.single__intro .frontpage__scroll line {
  stroke: #F2EFE8;
}
.single__intro .frontpage__scroll .frontpage__scroll__line:before {
  background: #F2EFE8;
}

.single__content__wrap {
  padding-top: 6.5625rem;
}
@media only screen and (min-width: 768px) {
  .single__content__wrap {
    padding-top: 9.375rem;
  }
}
@media only screen and (min-width: 992px) {
  .single__content__wrap {
    padding-bottom: 6.25rem;
  }
}

@media only screen and (min-width: 1200px) {
  .single__text {
    max-width: 43.75rem;
    margin: 0 auto;
  }
}

.single__text__full .gb-inside-container {
  padding: 0 1.25rem;
}

.masonry-grid {
  padding: 0 1.25rem;
}
@media only screen and (min-width: 992px) {
  .masonry-grid {
    padding: 0 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .masonry-grid {
    padding: 0 3.125rem;
  }
}

.single__back {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 0.875rem;
  text-align: center;
}
.single__back svg {
  margin-bottom: 0.625rem;
  transition: all 0.3s;
}
.theme--default .single__back path {
  fill: #0f0f18;
}
.theme--dark .single__back path {
  fill: #F2EFE8;
}
.single__back:hover svg {
  transform: translateX(-5px);
}

.single .grid-sizer,
.single .grid__item {
  width: 100%;
  padding: 0 0 3.125rem 0;
}
@media only screen and (min-width: 768px) {
  .single .grid-sizer,
.single .grid__item {
    width: 50%;
    padding: 0 3.125rem 3.125rem 3.125rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid-sizer,
.single .grid__item {
    width: 33.3%;
  }
}
@media only screen and (min-width: 1200px) {
  .single .grid-sizer,
.single .grid__item {
    width: 33.3%;
  }
}
.single .grid__item__image {
  transform: scale(1);
}
.single .grid__item__horizontal {
  width: 100%;
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(1n) {
    padding: 0 3.125rem 6.25rem 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(1n) {
    padding: 0 3.75rem 7.5rem 5rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(2n) {
    padding: 0 2.5rem 6.25rem 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(2n) {
    padding: 0 3.75rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(3n) {
    padding: 0 3.125rem 6.25rem 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(3n) {
    padding: 0 5rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(4n) {
    padding: 0 2.5rem 6.25rem 3.75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(4n) {
    padding: 0 5rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(5n) {
    padding: 0 2.5rem 6.25rem 3.125rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(5n) {
    padding: 0 4.375rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(6n) {
    padding: 0 3.125rem 6.25rem 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(6n) {
    padding: 0 5rem 7.5rem 3.75rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(7n) {
    padding: 0 2.5rem 6.25rem 3.75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(7n) {
    padding: 0 3.75rem 7.5rem 5rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item:nth-child(8n) {
    padding: 0 3.125rem 6.25rem 3.75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(8n) {
    padding: 0 5.625rem 7.5rem 5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .single .grid__item:nth-child(9n) {
    padding: 0 3.75rem 6.25rem 2.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item:nth-child(9n) {
    padding: 0 5.625rem 7.5rem 4.375rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(1n) {
    padding: 0 7.5rem 9.375rem 5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(1n) {
    padding: 0 12.5rem 15.625rem 9.375rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(2n) {
    padding: 0 6.25rem 9.375rem 3.75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(2n) {
    padding: 0 8.75rem 15.625rem 11.25rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(3n) {
    padding: 0 6.25rem 9.375rem 6.25rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(3n) {
    padding: 0 11.25rem 15.625rem 12.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(4n) {
    padding: 0 8.125rem 9.375rem 5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(4n) {
    padding: 0 9.375rem 15.625rem 12.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(5n) {
    padding: 0 5.625rem 9.375rem 7.5rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(5n) {
    padding: 0 12.5rem 15.625rem 10.625rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(6n) {
    padding: 0 6.875rem 9.375rem 3.75rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(6n) {
    padding: 0 10.625rem 15.625rem 12.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(7n) {
    padding: 0 5rem 9.375rem 6.25rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(7n) {
    padding: 0 9.375rem 15.625rem 9.375rem;
  }
}
@media only screen and (min-width: 992px) {
  .single .grid__item__horizontal:nth-child(8n) {
    padding: 0 6.25rem 9.375rem 5.625rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(8n) {
    padding: 0 11.25rem 15.625rem 12.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .single .grid__item__horizontal:nth-child(9n) {
    padding: 0 9.375rem 6.25rem 9.375rem;
  }
}
@media only screen and (min-width: 1600px) {
  .single .grid__item__horizontal:nth-child(9n) {
    padding: 0 14.375rem 7.5rem 15rem;
  }
}

.page-id-28 footer {
  display: none;
}

.block__bio {
  position: relative;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 100;
}
.block__bio.active {
  z-index: 3000;
}
.block__bio.active .flip-card {
  cursor: default;
}
.block__bio h4 {
  margin-bottom: 0;
  font-weight: 600;
}
.block__bio a {
  margin-bottom: 0.625rem;
}
.theme--default .block__bio a {
  color: #0f0f18;
}
.theme--dark .block__bio a {
  color: #F2EFE8;
}
.theme--default .block__bio path {
  fill: #0f0f18;
}
.theme--dark .block__bio path {
  fill: #F2EFE8;
}
.block__bio__imagen {
  position: relative;
  margin-bottom: 1.25rem;
  margin-top: 3.125rem;
  display: inline-block;
}
.block__bio__imagen svg {
  width: 11.25rem;
  height: 15.5rem;
}
@media only screen and (min-width: 768px) {
  .block__bio__imagen svg {
    width: 15rem;
    height: 20.625rem;
  }
}
@media only screen and (min-width: 1200px) {
  .block__bio__imagen svg {
    width: 20rem;
    height: 27.5rem;
  }
}
.block__bio__imagen__hover {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
  transition: all 0.3s;
  transform: translate(-50%, -60%);
  width: 105%;
  height: auto;
}
.block__bio:hover .block__bio__imagen__hover {
  opacity: 1;
  transform: translate(-50%, -50%);
}

.flip-button {
  cursor: pointer;
}

.flip-card {
  position: relative;
  z-index: 300;
  margin-bottom: 1.25rem;
  background-color: transparent;
  width: 15.625rem;
  height: 20rem;
  min-height: 20rem;
  perspective: 1000px; /* Remove this if you don't want the 3D effect */
  cursor: pointer;
}
.flip-card.active {
  z-index: 1000;
}

.flip-card-wrap {
  perspective: 1000px;
  width: 100%;
  height: 100%;
}

.flip-card-hover {
  position: absolute;
  width: 100%;
  min-height: 100%;
  top: 0;
  left: 0;
  padding: 1.5rem;
  width: 100%;
  border-width: 1px;
  border-style: solid;
  border-radius: 0.5625rem;
  overflow: hidden;
  display: none;
  flex-flow: column;
  border: 1px solid white;
}
.theme--default .flip-card-hover {
  background-color: #F2EFE8;
  color: #0f0f18;
}
.theme--dark .flip-card-hover {
  background-color: #0f0f18;
  color: #F2EFE8;
}
.flip-card-hover.active {
  display: flex;
}
.flip-card-hover.active .flip-card-hover-wrap {
  opacity: 1;
}

.theme--dark .flip-card-hover {
  border: 1px solid #333;
}

.flip-card-hover-wrap {
  top: 0;
  left: 0;
  height: auto;
  display: -webkit-flex;
  display: flex;
  opacity: 0;
  transition: all 0.5s;
}
.flip-card-hover-wrap.active {
  opacity: 1;
}

.flip-card-wrapper {
  flex: 1 1 0;
}

a.flip-close-btn {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 100;
  cursor: pointer;
}
.theme--default a.flip-close-btn path, .theme--default a.flip-close-btn text {
  fill: #0f0f18;
}
.theme--dark a.flip-close-btn path, .theme--dark a.flip-close-btn text {
  fill: #F2EFE8;
}
a.flip-close-btn:after {
  display: none;
}

.flip-card-header {
  font-size: 0.875rem;
  line-height: 1em;
  font-weight: bold;
  margin-bottom: 1.25rem;
}
.flip-card-header span {
  font-weight: 400;
  display: block;
  margin-top: 0.1875rem;
}

.flip-card-content p {
  font-weight: 400;
}
.flip-card-content a:not(.collapsed) .open {
  display: none;
}
.flip-card-content a.collapsed .close {
  display: none;
}

.flip-card-footer {
  width: 100%;
  padding: 0.625rem 0 0 0;
  border-top-width: 1px;
  border-top-style: solid;
  font-weight: 400;
}
.theme--default .flip-card-footer {
  border-top-color: #0f0f18;
}
.theme--dark .flip-card-footer {
  border-top-color: #F2EFE8;
}

/* This container is needed to position the front and back side */
.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card-bio:hover .flip-card-inner {
  transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
  border: 1px solid white;
  border-radius: 0.5625rem;
}
.theme--default .flip-card-front, .theme--default .flip-card-back {
  background: #F2EFE8;
}
.theme--dark .flip-card-front, .theme--dark .flip-card-back {
  background: #0f0f18;
}

.theme--dark .flip-card-front, .theme--dark .flip-card-back {
  border: 1px solid #333;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
  display: flex;
  align-items: center;
  justify-content: center;
}
.flip-card-front svg {
  width: 4.5625rem;
  height: 6.3125rem;
}

/* Style the back side */
.flip-card-back {
  color: white;
  transform: rotateY(180deg);
  overflow: hidden;
}
.flip-card-back img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.theme--default .modal-content {
  background: #F2EFE8;
}
.theme--dark .modal-content {
  background: #0f0f18;
}

.modal-header {
  border: 0;
  padding-bottom: 0;
}

.btn-close {
  transform: rotate(45deg) translateX(-30%);
  background: transparent;
}
.theme--default .btn-close path {
  fill: #0f0f18;
}
.theme--dark .btn-close path {
  fill: #F2EFE8;
}

.theme--default .gdpr.gdpr-privacy-bar,
.theme--default .gdpr.gdpr-reconsent-bar {
  background: #EBE7E1;
}
.theme--dark .gdpr.gdpr-privacy-bar,
.theme--dark .gdpr.gdpr-reconsent-bar {
  background: #030305;
}

.gdpr.gdpr-privacy-bar .gdpr-wrapper,
.gdpr.gdpr-reconsent-bar .gdpr-wrapper {
  padding: 0.3125rem 2.5rem 0.3125rem 1.25rem;
}

.gdpr-buttons {
  font-size: 0.6875rem !important;
  display: flex;
  align-items: center;
}
.gdpr-buttons .gdpr-preferences {
  margin-bottom: 0 !important;
  margin-left: 0 !important;
  padding: 0 !important;
  font-size: 0.6875rem !important;
}
.theme--default .gdpr-buttons .gdpr-preferences {
  color: #0b0c14;
}
.theme--dark .gdpr-buttons .gdpr-preferences {
  color: #A4A09C;
}
.gdpr-buttons .gdpr-agreement {
  font-size: 0.6875rem !important;
  line-height: 2em !important;
  background: transparent !important;
  border-width: 1px;
  border-style: solid;
  margin: 0 !important;
  border-radius: 3rem !important;
  text-shadow: none !important;
  box-shadow: none !important;
}
.theme--default .gdpr-buttons .gdpr-agreement {
  border-color: #0b0c14 !important;
  color: #0b0c14 !important;
}
.theme--dark .gdpr-buttons .gdpr-agreement {
  border-color: #A4A09C !important;
  color: #A4A09C !important;
}

.theme--default .gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-close,
.theme--default .gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-close {
  color: #0f0f18;
}
.theme--dark .gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-close,
.theme--dark .gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-close {
  color: #F2EFE8;
}
.gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-close:before,
.gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-close:before {
  font-size: 1.375rem !important;
}

.gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-content,
.gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-content {
  padding-bottom: 0 !important;
  padding-right: 0 !important;
}

.gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-content p,
.gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-content p {
  font-size: 0.6875rem !important;
}
.theme--default .gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-content p,
.theme--default .gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-content p {
  color: #0b0c14;
}
.theme--dark .gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-content p,
.theme--dark .gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-content p {
  color: #A4A09C;
}

.gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > header .gdpr-box-title,
.gdpr.gdpr-general-confirmation .gdpr-wrapper > form > header .gdpr-box-title,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > header .gdpr-box-title,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > header .gdpr-box-title,
.gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > header .gdpr-box-title,
.gdpr.gdpr-reconsent .gdpr-wrapper > form > header .gdpr-box-title {
  background: #0f0f18;
}

.gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tabs li a.gdpr-active,
.gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tabs li button.gdpr-active,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tabs li a.gdpr-active,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tabs li button.gdpr-active,
.gdpr.gdpr-reconsent .gdpr-wrapper .gdpr-content .gdpr-tabs li a.gdpr-active,
.gdpr.gdpr-reconsent .gdpr-wrapper .gdpr-content .gdpr-tabs li button.gdpr-active {
  background: #0f0f18;
}
.gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tabs li a.gdpr-active:hover,
.gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tabs li button.gdpr-active:hover,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tabs li a.gdpr-active:hover,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tabs li button.gdpr-active:hover,
.gdpr.gdpr-reconsent .gdpr-wrapper .gdpr-content .gdpr-tabs li a.gdpr-active:hover,
.gdpr.gdpr-reconsent .gdpr-wrapper .gdpr-content .gdpr-tabs li button.gdpr-active:hover {
  color: white !important;
}

.gdpr.gdpr-privacy-bar .gdpr-preferences:before,
.gdpr.gdpr-reconsent-bar .gdpr-preferences:before {
  display: none;
}

.gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit],
.gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit],
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit],
.gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit],
.gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit],
.gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit] {
  border-radius: 3rem !important;
  padding: 0.5 2rem !important;
  font-size: 0.75rem !important;
  height: initial !important;
  border-color: transparent !important;
  cursor: pointer;
  text-shadow: none !important;
  box-shadow: none !important;
  border-width: 1px !important;
  border-style: solid !important;
}
.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit],
.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit],
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit],
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit],
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit],
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit] {
  color: #F2EFE8 !important;
  background: #0f0f18 !important;
  border-color: #F2EFE8 !important;
}
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit],
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit],
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit],
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit],
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit],
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit] {
  color: #0f0f18 !important;
  background: #F2EFE8 !important;
  border-color: #0f0f18 !important;
}
@media only screen and (min-width: 768px) {
  .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit],
.gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit],
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit],
.gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit],
.gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit],
.gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit] {
    font-size: 0.875rem !important;
  }
}
.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover,
.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit]:hover,
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover,
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit]:hover,
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover,
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit]:hover {
  color: #0f0f18 !important;
  background: #F2EFE8 !important;
  border-color: #0f0f18 !important;
}
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover,
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit]:hover,
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover,
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit]:hover,
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover,
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit]:hover {
  color: #F2EFE8 !important;
  background: #0f0f18 !important;
  border-color: #F2EFE8 !important;
}
.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover path,
.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit]:hover path,
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover path,
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit]:hover path,
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover path,
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit]:hover path {
  fill: #0f0f18 !important;
}
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover path,
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit]:hover path,
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover path,
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit]:hover path,
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit]:hover path,
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit]:hover path {
  fill: #F2EFE8 !important;
}
.gdpr.gdpr-general-confirmation .gdpr-wrapper .reconsent-form > footer input[type=submit] span,
.gdpr.gdpr-general-confirmation .gdpr-wrapper > form > footer input[type=submit] span,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .reconsent-form > footer input[type=submit] span,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper > form > footer input[type=submit] span,
.gdpr.gdpr-reconsent .gdpr-wrapper .reconsent-form > footer input[type=submit] span,
.gdpr.gdpr-reconsent .gdpr-wrapper > form > footer input[type=submit] span {
  display: inline-block;
}

.gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-close:hover:before,
.gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-close:hover:before {
  transform: none !important;
}

.theme--default .gdpr-switch input:checked + .gdpr-slider {
  background: #0f0f18 !important;
}
.theme--dark .gdpr-switch input:checked + .gdpr-slider {
  background: #F2EFE8 !important;
}

.theme--default .gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tab-content > div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active,
.theme--default .gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tab-content > div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active,
.theme--default .gdpr.gdpr-reconsent .gdpr-wrapper .gdpr-content .gdpr-tab-content > div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active {
  background: #0f0f18 !important;
}
.theme--dark .gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tab-content > div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active,
.theme--dark .gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tab-content > div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active,
.theme--dark .gdpr.gdpr-reconsent .gdpr-wrapper .gdpr-content .gdpr-tab-content > div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active {
  background: #F2EFE8 !important;
}

.wrapper_before {
  position: relative;
  max-width: 100%;
  overflow: hidden;
}

.wrapper_before .images {
  width: 100%;
  position: relative;
}

.wrapper_before .images span {
  position: absolute;
  top: 2rem;
  left: 2rem;
  z-index: 100;
}

.wrapper_before .images .img-1 {
  height: auto;
  width: 100%;
  /* background: url("images/car.jpg") no-repeat; */
}

.wrapper_before .images .img-2 {
  position: absolute;
  height: 100%;
  width: 50%;
  right: 0;
  top: 0;
  z-index: 200;
  background-position: right center;
  background-size: cover;
}

.wrapper_before .slider {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 400;
}

.wrapper_before .slider input {
  width: 100%;
  height: 100%;
  outline: none;
  background: none;
  -webkit-appearance: none;
}

.slider input::-webkit-slider-thumb {
  height: 100%;
  width: 1px;
  background: none;
  -webkit-appearance: none;
  cursor: col-resize;
}

.slider .drag-line {
  width: 1px;
  height: 100%;
  position: absolute;
  right: 49.85%;
  pointer-events: none;
  z-index: 300;
}

.slider .drag-line::before,
.slider .drag-line::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 50%;
  background: #fff;
}

.slider .drag-line::before {
  top: 0;
}

.slider .drag-line::after {
  bottom: 0;
}

.slider .drag-line span {
  height: 2.5rem;
  width: 2.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
}
@media only screen and (min-width: 768px) {
  .slider .drag-line span {
    width: 5rem;
    height: 5rem;
  }
}

.slider .drag-line span::before,
.slider .drag-line span::after {
  position: absolute;
  content: "";
  top: 50%;
  border: 10px solid transparent;
  border-bottom-width: 0px;
  border-right-width: 0px;
  transform: translate(-50%, -50%) rotate(45deg);
}

.slider .drag-line span::before {
  left: 40%;
  border-left-color: #3E3E3D;
}

.slider .drag-line span::after {
  left: 60%;
  border-top-color: #3E3E3D;
}

/* general */
.fulltitle {
  width: 100%;
}
.fulltitle svg {
  display: block;
  width: 100%;
  max-height: 100%;
}
.fulltitle text {
  font-family: "HGS", sans-serif;
  line-height: 1em;
  transform: translateY(-10%);
  width: 100%;
}
.theme--default .fulltitle text {
  fill: #0f0f18;
}
.theme--dark .fulltitle text {
  fill: #F2EFE8;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9fbGctZm9udHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9fbGctdGhlbWUtZGVmYXVsdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2xpZ2h0Z2FsbGVyeS9zY3NzL19sZy12YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9fbGctbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5L3Njc3MvbGctdGh1bWJuYWlsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5L3Njc3MvbGctdmlkZW8uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9sZy1hdXRvcGxheS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2xpZ2h0Z2FsbGVyeS9zY3NzL2xnLXpvb20uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9sZy1wYWdlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2xpZ2h0Z2FsbGVyeS9zY3NzL2xnLWZ1bGxzY3JlZW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9sZy1zaGFyZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2xpZ2h0Z2FsbGVyeS9zY3NzL2xnLWNvbW1lbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5L3Njc3MvbGctcm90YXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5L3Njc3MvbGctbWVkaXVtLXpvb20uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9saWdodGdhbGxlcnkvc2Nzcy9sZy1yZWxhdGl2ZS1jYXB0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRnYWxsZXJ5L3Njc3MvbGlnaHRnYWxsZXJ5LWNvcmUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvc3dpcGVyLWJ1bmRsZS5jc3MiLCJzZXR0aW5ncy9fc3BhY2Uuc2NzcyIsInNldHRpbmdzL19mb250ZmFjZS5zY3NzIiwiaGVscGVyL19jb2xvcnMuc2NzcyIsInNldHRpbmdzL19jb2xvcnMuc2NzcyIsImhlbHBlci9fYmFja2dyb3VuZC5zY3NzIiwiaGVscGVyL19mb250LnNjc3MiLCJzZXR0aW5ncy9fYnJlYWtwb2ludHMuc2NzcyIsImhlbHBlci9fYm9yZGVyLnNjc3MiLCJoZWxwZXIvX2NsYXNzLnNjc3MiLCJ0b29scy9fbWF4LXdpZHRoLnNjc3MiLCJ0b29scy9fbGluZS10aHJvdWdoLnNjc3MiLCJnZW5lcmljL19ib3hfc2l6aW5nLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQHNwbGlkZWpzL3NwbGlkZS9kaXN0L2Nzcy9zcGxpZGUubWluLmNzcyIsImVsZW1lbnRzL19lbnRpdGllcy5zY3NzIiwiZWxlbWVudHMvX2hlYWRpbmcuc2NzcyIsImNvbXBvbmVudHMvX2xvYWRpbmcuc2NzcyIsImNvbXBvbmVudHMvX2d1dGVuYmVyZy5zY3NzIiwiY29tcG9uZW50cy9fY29udGFpbmVycy5zY3NzIiwiY29tcG9uZW50cy9oZWFkZXIvX2hlYWRlci1icmFuZC5zY3NzIiwidG9vbHMvX2Rpc3RhbmNlLnNjc3MiLCJjb21wb25lbnRzL2hlYWRlci9faGVhZGVyLW1vZGUuc2NzcyIsImNvbXBvbmVudHMvaGVhZGVyL19oZWFkZXItbWVudS5zY3NzIiwiY29tcG9uZW50cy9oZWFkZXIvX2hlYWRlci1zb2NpYWwuc2NzcyIsImNvbXBvbmVudHMvaGVhZGVyL19oZWFkZXItbWVudS1jb250ZW50LnNjc3MiLCJjb21wb25lbnRzL2Zvb3Rlci9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL2Zvb3Rlci9fZm9vdGVyLWJhci5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvZnJvbnRwYWdlL19mcm9udHBhZ2Uuc2NzcyIsImNvbXBvbmVudHMvZnJvbnRwYWdlL19mcm9udHBhZ2Utc2Nyb2xsLnNjc3MiLCJjb21wb25lbnRzL2Zyb250cGFnZS9fZnJvbnRwYWdlLWludHJvLnNjc3MiLCJjb21wb25lbnRzL2Zyb250cGFnZS9fZnJvbnRwYWdlLXNsaWRlci5zY3NzIiwiY29tcG9uZW50cy9mcm9udHBhZ2UvX2Zyb250cGFnZS1nYWxsZXJ5LnNjc3MiLCJjb21wb25lbnRzL2Zyb250cGFnZS9fZnJvbnRwYWdlLWNsYWltLnNjc3MiLCJjb21wb25lbnRzL19ob21lLnNjc3MiLCJjb21wb25lbnRzL3Byb2plY3RzL19wcm9qZWN0cy5zY3NzIiwiY29tcG9uZW50cy9wcm9qZWN0cy9fY2FzZXMuc2NzcyIsImNvbXBvbmVudHMvY29udGFjdC9fY29udGFjdC1pbnRyby5zY3NzIiwiY29tcG9uZW50cy9jb250YWN0L19jb250YWN0LWluZm8uc2NzcyIsImNvbXBvbmVudHMvam9iL19qb2ItZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9qb2IvX2pvYi1jYXJkLnNjc3MiLCJjb21wb25lbnRzL3RlYW0vX3RlYW0taW50cm8uc2NzcyIsImNvbXBvbmVudHMvdGVhbS9fdGVhbS1tZW1iZXJzLnNjc3MiLCJjb21wb25lbnRzL3RlYW0vX3RlYW0tc2VydmljZXMuc2NzcyIsImNvbXBvbmVudHMvZ3JpZC9fZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9ncmlkL19pdGVtcy5zY3NzIiwiY29tcG9uZW50cy9ncmlkL19pdGVtLXBhcmFsbGF4LnNjc3MiLCJjb21wb25lbnRzL2dyaWQvX2l0ZW0tbGF6eS5zY3NzIiwiY29tcG9uZW50cy9ncmlkL19pdGVtLXZpZGVvLnNjc3MiLCJjb21wb25lbnRzL2dyaWQvX2ZpbHRlcnMuc2NzcyIsImNvbXBvbmVudHMvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvX2xpZ2h0Z2FsbGVyeS5zY3NzIiwiY29tcG9uZW50cy9zaW5nbGUvX3NpbmdsZS5zY3NzIiwiY29tcG9uZW50cy9zaW5nbGUvX3BhZ2Uuc2NzcyIsImNvbXBvbmVudHMvYmxvY2tzL19ibG9jay1iaW8uc2NzcyIsImNvbXBvbmVudHMvX2ZsaXBjYXJkLnNjc3MiLCJjb21wb25lbnRzL19tb2RhbC5zY3NzIiwiY29tcG9uZW50cy9fZ2Rwci5zY3NzIiwiY29tcG9uZW50cy9fYmVmb3JlYW5kYWZ0ZXIuc2NzcyIsImNvbXBvbmVudHMvX2Z1bGx0aXRsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0k7RUFDQTtFQUlBO0VBQ0E7RUFDQTs7QUFHSjtBQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFFQTtFQUNBO0VBQ0E7OztBQ3ZCSjtFQUNJOzs7QUFLSjtBQUFBO0VBRUksa0JDR1M7RURGVCxlQ0hvQjtFRElwQixPQ0VZO0VERFo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxTQzBDYztFRHpDZDtFQUNBOztBQUVBO0FBQUE7RUFDSTtFQUNBOztBQUdKO0FBQUE7RUFDSSxPQ2ZjOztBRGlCbEI7QUFBQTtFQUNJOzs7QUFJUjtFQUNJOztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7O0FBRUE7RUFDSTs7O0FFYUo7RUZSQTtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7O0FFR0o7RUZaQTtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7O0FFT0o7RUZoQkE7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7OztBRVdKO0VGcEJBO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOzs7QUVESjtFRk1BO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOzs7QUVYSjtFRkVBO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOzs7QUVQSjtFRkZBO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOzs7QUVISjtFRk5BO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOzs7QUFNQTtFRTlESixtQkYrRDJCO0VFOUQzQixjRjhEMkI7RUU3RDNCLFdGNkQy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RjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTs7O0FBRUY7RUFDRTtFQUNBOzs7QUFFRjtFQUNFO0FBQ0E7QUFBQTtBQUFBOzs7QUFJRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtFQUNFOzs7QUFFRjtBQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7OztBQVlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUNBO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBOzs7QUFFRjtBQUNBO0VBQ0U7RUFDQTs7O0FBRUY7RUFDRTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ1E7OztBQUVWO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7RUFDQTs7O0FBRUY7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFDQTtFQUNFO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0FBQ0E7QUFDRTtBQUFBO0FBQUE7OztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtJQUNFOztFQUVGO0lBQ0U7OztBQUdKO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ1E7RUFDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBO0VBQ1E7OztBQUVWO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ1E7RUFDUjs7O0FBRUY7RUFDRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDUTs7O0FBRVY7RUFDRTtFQUNRO0VBQ1I7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ1E7RUFDUjs7O0FDbm9CRjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDUko7RUFDSTtFQUNBO0VBR0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUdBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBR0E7RUFDQTtFQUNBOztBQVlKO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUNuREo7QUN1REk7RURoRFE7O0FDZ0RSO0VEaERROzs7QUNnRFI7RURoRFE7O0FDZ0RSO0VEaERROzs7QUNnRFI7RURoRFE7O0FDZ0RSO0VEaERROzs7QUNnRFI7RURoRFE7O0FDZ0RSO0VEaERROzs7QUNnRFI7RURoRFE7O0FDZ0RSO0VEaERROzs7QUNnRFI7RUR0Q1E7O0FDc0NSO0VEdENROzs7QUNzQ1I7RUR0Q1E7O0FDc0NSO0VEdENROzs7QUNzQ1I7RUR0Q1E7O0FDc0NSO0VEdENROzs7QUNzQ1I7RUQ1QlE7O0FDNEJSO0VENUJROzs7QUM0QlI7RUQ1QlE7O0FDNEJSO0VENUJROzs7QUM0QlI7RUQ1QlE7O0FDNEJSO0VENUJROzs7QUUzQlo7QUR1REk7RUNoRFE7O0FEZ0RSO0VDaERROzs7QURnRFI7RUNoRFE7O0FEZ0RSO0VDaERROzs7QURnRFI7RUNoRFE7O0FEZ0RSO0VDaERROzs7QURnRFI7RUNoRFE7O0FEZ0RSO0VDaERROzs7QURnRFI7RUNoRFE7O0FEZ0RSO0VDaERROzs7QURnRFI7RUN0Q1E7O0FEc0NSO0VDdENROzs7QURzQ1I7RUN0Q1E7O0FEc0NSO0VDdENROzs7QURzQ1I7RUN0Q1E7O0FEc0NSO0VDdENROzs7QURzQ1I7RUM1QlE7O0FENEJSO0VDNUJROzs7QUQ0QlI7RUM1QlE7O0FENEJSO0VDNUJROzs7QUQ0QlI7RUM1QlE7O0FENEJSO0VDNUJROzs7QUMxQlo7QUFFSTtFQUNJLGFBRnFCOzs7QUFDekI7RUFDSSxhQUZxQjs7O0FBQ3pCO0VBQ0ksYUFGcUI7OztBQU03QjtBQUVJO0VBQ0ksYUFGcUI7OztBQUN6QjtFQUNJLGFBRnFCOzs7QUFDekI7RUFDSSxhQUZxQjs7O0FBQ3pCO0VBQ0ksYUFGcUI7OztBQU03QjtBQUVJO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBQWZSO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBQWZSO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBQWZSO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBQWZSO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBQWZSO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBQWZSO0VBQ0k7O0FDUko7RURPQTtJQUdROzs7QUNWUjtFRE9BO0lBTVE7OztBQ2JSO0VET0E7SUFTUTs7O0FDaEJSO0VET0E7SUFZUTs7O0FDbkJSO0VET0E7SUFlUTs7OztBRS9CWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUNMSjtFQUVJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FMMENKO0VLeENROztBTHdDUjtFS3hDUTs7QUFHUjtFQUNJOzs7QUFJUjtFQUNJOztBQUNBO0VBQ0k7O0FMNkJKO0VLekJROztBTHlCUjtFS3pCUTs7O0FGSFY7RUVTRjtJQUVROzs7O0FDdkNSO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBO0VBQ0E7O0FIZ0JGO0VHdEJGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7SUFRUTtJQUNBOzs7QUhtQk47RUc1QkY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQVlRO0lBQ0E7OztBSHFCTjtFR2xDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0lBZ0JRO0lBQ0E7OztBSHVCTjtFR3hDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0lBb0JRO0lBQ0E7SUFDQTs7OztBSGtCTjtFR2RGO0lBRVE7Ozs7QUhZTjtFR1JGO0lBRVE7OztBSFlOO0VHZEY7SUFLUTs7OztBSEdOO0VHQ0Y7SUFFUTs7O0FIR047RUdMRjtJQUtROzs7QUhNTjtFR1hGO0lBUVE7Ozs7QUhUTjtFR2FGO0lBRVE7OztBSFROO0VHT0Y7SUFLUTs7O0FITk47RUdDRjtJQVFROzs7O0FDN0RSO0VBRUk7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBUHlDSjtFT3ZDUTs7QVB1Q1I7RU92Q1E7O0FBSVI7RUFDSTs7O0FDekJSO0VBQ0k7OztBQ0RKO0VBQW1CO0VBQXNCOzs7QUFBa0I7RUFBYztFQUFtQztFQUEyQjtFQUFvQjtFQUFhO0VBQVk7RUFBbUI7RUFBb0I7OztBQUE0QjtFQUFxRDs7O0FBQWM7RUFBb0I7RUFBc0I7RUFBbUI7RUFBb0I7RUFBYTtFQUFtQjtFQUFlO0VBQXFCO0VBQXVCO0VBQVM7OztBQUFvQjtFQUF1QjtFQUFxQjtFQUFjO0VBQXFCO0VBQVM7OztBQUFvQjtFQUF1Qjs7O0FBQVE7RUFBUTtFQUFhO0VBQWtCOzs7QUFBa0I7RUFBMkM7OztBQUFtQjtFQUFlO0VBQW1DO0VBQTJCO0VBQXNCO0VBQW9CO0VBQWM7RUFBK0I7RUFBUztFQUFhOzs7QUFBa0I7RUFBbUI7OztBQUFzQjtFQUFnQjs7O0FBQWtCO0VBQWlCO0VBQTRDO0VBQXNCO0VBQThCO0VBQWtCO0VBQVM7RUFBZTtFQUFxQjtFQUFZO0VBQU87RUFBWTtFQUFrQjtFQUFRO0VBQU07OztBQUFXO0VBQWU7RUFBZ0I7RUFBa0I7OztBQUFVO0VBQTBCO0lBQUc7O0VBQW9CO0lBQUc7OztBQUF5QjtFQUFvRjtFQUF5QjtFQUFxQjs7O0FBQWlCO0VBQXNHOzs7QUFBYztFQUFvSTtFQUFPO0VBQVU7RUFBa0I7RUFBTTs7O0FBQVU7RUFBd0o7RUFBVTtFQUFrQjs7O0FBQVU7RUFBYTs7O0FBQWM7RUFBd0g7OztBQUFjO0VBQWU7RUFBc0I7RUFBbUI7RUFBZ0I7RUFBUztFQUFrQjtFQUFlO0VBQW9CO0VBQWE7RUFBVztFQUFxQjtFQUF1QjtFQUFXO0VBQVU7RUFBa0I7RUFBUTtFQUEyQjtFQUFVOzs7QUFBVTtFQUFtQjtFQUFVO0VBQWE7OztBQUFZO0VBQXFCOzs7QUFBVztFQUFxQjs7O0FBQWE7RUFBcUI7OztBQUFTO0VBQXlCOzs7QUFBcUI7RUFBcUI7OztBQUFVO0VBQW9CO0VBQVk7RUFBTztFQUFjO0VBQWtCO0VBQVE7OztBQUFVO0VBQTBCO0VBQWdCO0VBQVM7RUFBa0I7RUFBcUI7RUFBVztFQUFXO0VBQVc7RUFBVTtFQUFnQzs7O0FBQVU7RUFBb0M7RUFBZ0I7OztBQUFxQjtFQUFnQztFQUFlOzs7QUFBVztFQUFnQzs7O0FBQWE7RUFBdUI7RUFBZ0I7OztBQUFXO0VBQWtJO0VBQTZCOzs7QUFBZTtFQUFzSjs7O0FBQXNCO0VBQThJOzs7QUFBYTtFQUFvTTtFQUFVOzs7QUFBVTtFQUFnTjs7O0FBQW9CO0VBQW9NO0VBQVM7OztBQUFXO0VBQWdOOzs7QUFBcUI7RUFBa0w7RUFBUzs7O0FBQTBCO0VBQW9NOzs7QUFBUTtFQUFnTjs7O0FBQXlCO0VBQW9NO0VBQVc7OztBQUFTO0VBQWdOOzs7QUFBd0I7RUFBa0Y7RUFBUztFQUFvQjtFQUFhO0VBQTBCO0VBQXNCO0VBQVU7RUFBYztFQUFXOzs7QUNJdnpMO0VBQ0k7OztBQUlKO0VBRUk7RUFDSDtFQUNHO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBTUE7O0FQREY7RU90QkY7SUFvQlE7Ozs7QUFPUjtFQUNJO0VBQ0E7OztBQUtKO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBOztBVlFBO0VVTEk7O0FWS0o7RVVMSTs7O0FBSVI7RUFDSTs7QVZBQTtFVUVJOztBVkZKO0VVRUk7OztBQUtSO0VBQ0k7OztBQ2hFSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7O0FSc0JGO0VReEJGO0lBSVE7Ozs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QVJhRjtFUWhCRjtJQUtROzs7O0FDakJSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBWmlEQTtFWTlDSTs7QVo4Q0o7RVk5Q0k7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FUR047RVNmRTtJQWVRO0lBQ0E7OztBVFdWO0VTM0JFO0lBbUJRO0lBQ0E7Ozs7QUFLWjtFQUNJOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ1E7RUFDUjs7O0FDdERBO0VBQ0k7RUFDQTs7QUFZUjtFQUNJO0VBQ0E7OztBQUtKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTs7O0FBS0o7RUFFSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLUjtFQUNJOzs7QUN4Q0E7RUFDSTs7QUFJSjtFQUNJO0VBQ0E7O0FYTE47RVdHRTtJQUlRO0lBQ0E7OztBWFVWO0VXZkU7SUFRUTtJQUNBOzs7O0FDdkNaO0VBQ0k7RUFDQTtFQ0hBO0VBQUE7O0Fic0JGO0VZckJGO0lDQ1E7OztBYjBCTjtFWTNCRjtJQ0lROzs7QWI2Qk47RVlqQ0Y7SUNPUTs7O0FiZ0NOO0VZdkNGO0lDVVE7OztBYm1DTjtFWTdDRjtJQ2FROzs7QWJRTjtFWXJCRjtJQ0NROzs7QWIwQk47RVkzQkY7SUNJUTs7O0FiNkJOO0VZakNGO0lDT1E7OztBYmdDTjtFWXZDRjtJQ1VROzs7QWJtQ047RVk3Q0Y7SUNhUTs7O0FEUEo7RUFDSTtFQUNBOztBWm1CTjtFWXJCRTtJQUlRO0lBQ0E7OztBZjRDUjtFZXZDUTs7QWZ1Q1I7RWV2Q1E7OztBRWhCWjtFQUNJO0VBQ0E7RUFDQTtFREpBOztBYnNCRjtFY3JCRjtJRENROzs7QWIwQk47RWMzQkY7SURJUTs7O0FiNkJOO0VjakNGO0lET1E7OztBYmdDTjtFY3ZDRjtJRFVROzs7QWJtQ047RWM3Q0Y7SURhUTs7O0FiY047RWMzQkY7SUFNUTs7O0FkMkJOO0VjakNGO0lBU1E7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QWRVTjtFY25CRTtJQVdRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVJO0VBQ0k7RUFDQTs7QWRQZDtFY0tVO0lBSVE7OztBQU9oQjtFQUNJO0VBQ0E7O0FkbEJOO0VjZ0JFO0lBSVE7SUFDQTs7O0FqQkNSO0VpQklROztBakJKUjtFaUJJUTs7O0FBTVI7RUFDSTs7O0FBS0o7RUFDSTs7O0FDeEVSO0VBRUk7RUFDQTtFRkpBO0VBQUE7RUVRQTtFQUNBO0VBQ0E7O0FmWUY7RWVyQkY7SUZDUTs7O0FiMEJOO0VlM0JGO0lGSVE7OztBYjZCTjtFZWpDRjtJRk9ROzs7QWJnQ047RWV2Q0Y7SUZVUTs7O0FibUNOO0VlN0NGO0lGYVE7OztBYlFOO0VlckJGO0lGQ1E7OztBYjBCTjtFZTNCRjtJRklROzs7QWI2Qk47RWVqQ0Y7SUZPUTs7O0FiZ0NOO0VldkNGO0lGVVE7OztBYm1DTjtFZTdDRjtJRmFROzs7QUVESjtFQUNJOztBQUNBO0VBQ0k7O0FsQndDUjtFa0JwQ1k7O0FsQm9DWjtFa0JwQ1k7O0FBTVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBZkhOO0VlRkU7SUFPUTs7OztBQVFSO0FBQUE7RUFDSTs7O0FDekNSO0VBRUk7RUFDQTtFQUNBO0VITEE7RUdRQTtFQUNBOztBaEJhRjtFZ0JyQkY7SUhDUTs7O0FiMEJOO0VnQjNCRjtJSElROzs7QWI2Qk47RWdCakNGO0lIT1E7OztBYmdDTjtFZ0J2Q0Y7SUhVUTs7O0FibUNOO0VnQjdDRjtJSGFROzs7QWJjTjtFZ0IzQkY7SUFXUTs7O0FoQnNCTjtFZ0JqQ0Y7SUFjUTs7O0FoQitCTjtFZ0I3Q0Y7SUFpQlE7OztBQUlKO0VBQ0k7O0FoQktOO0VnQk5FO0lBR1E7OztBQUtSO0VBQ0k7RUFDQTs7QW5Cd0JKO0VtQnBCUTs7QW5Cb0JSO0VtQnBCUTs7O0FDbENaO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QXBCb0NKO0VvQmxDUTs7QXBCa0NSO0VvQmxDUTs7O0FBT1o7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBOztBakJURjtFaUJMRjtJQWlCUTs7O0FqQk5OO0VpQlhGO0lBb0JROzs7QUFJSjtFQUNJO0VKdERKO0VBQUE7O0Fic0JGO0VpQitCRTtJSm5ESTs7O0FiMEJOO0VpQnlCRTtJSmhESTs7O0FiNkJOO0VpQm1CRTtJSjdDSTs7O0FiZ0NOO0VpQmFFO0lKMUNJOzs7QWJtQ047RWlCT0U7SUp2Q0k7OztBYlFOO0VpQitCRTtJSm5ESTs7O0FiMEJOO0VpQnlCRTtJSmhESTs7O0FiNkJOO0VpQm1CRTtJSjdDSTs7O0FiZ0NOO0VpQmFFO0lKMUNJOzs7QWJtQ047RWlCT0U7SUp2Q0k7OztBSTJDQTtFQUNJOztBQUtSO0VBRUk7RUFDQTtFQUNBO0VBRUE7RUFFQTs7QWpCM0NOO0VpQm1DRTtJQVdRO0lBQ0E7SUFDQTs7O0FqQjFDVjtFaUI2QkU7SUFnQlE7OztBakJqQ1Y7RWlCaUJFO0lBbUJROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FqQi9ETjtFaUIwREU7SUFPUTs7O0FBRUo7RUFDSTs7QWpCcEVWO0VpQm1FTTtJQUdROzs7QUFNWjtFQUNJO0VBQ0E7RUFDQTs7QUFJSjtFQUNJOztBcEJ4REo7RW9CMERROztBcEIxRFI7RW9CMERROztBQUtSO0VBRUk7RUFDQTs7QUFFQTtFQUVJO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7QXBCN0VSO0VvQmtGWTs7QXBCbEZaO0VvQmtGWTs7QWpCOUdkO0VpQmdHTTtJQWtCUTs7O0FBSUo7RUFDSTs7QWpCdkhkO0VpQnNIVTtJQUlROzs7O0FBUXBCO0VBQ0k7OztBQzVKQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTs7QWxCaUJOO0VrQnpCRTtJQVdRO0lBQ0E7SUFDQTs7O0FsQmtCVjtFa0IvQkU7SUFnQlE7SUFDQTs7O0FBS1I7RUFDSTtFQUNBOztBbEJDTjtFa0JIRTtJQUlROzs7QWxCS1Y7RWtCVEU7SUFPUTs7O0FBSVI7RUFDSTs7QUFJSjtFQUNJOztBQUtKO0VBQ0k7RUFDQTtFQUNBOztBQUlKO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FyQk5SO0VxQlFZOztBckJSWjtFcUJRWTs7QXJCUlo7RXFCaUJROztBckJqQlI7RXFCaUJROztBQUlSO0VBQ0k7OztBQzdFUjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFTlRBO0VBQUE7RU1hQTtFQUNBO0VBQ0E7O0FuQk9GO0VtQnJCRjtJTkNROzs7QWIwQk47RW1CM0JGO0lOSVE7OztBYjZCTjtFbUJqQ0Y7SU5PUTs7O0FiZ0NOO0VtQnZDRjtJTlVROzs7QWJtQ047RW1CN0NGO0lOYVE7OztBYlFOO0VtQnJCRjtJTkNROzs7QWIwQk47RW1CM0JGO0lOSVE7OztBYjZCTjtFbUJqQ0Y7SU5PUTs7O0FiZ0NOO0VtQnZDRjtJTlVROzs7QWJtQ047RW1CN0NGO0lOYVE7OztBTUdKO0VBQ0k7RUFDQTtFQUNBOztBbkJRTjtFbUJYRTtJQUtROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUlSO0VBQ0k7O0F0Qm9CSjtFc0JqQlE7O0F0QmlCUjtFc0JqQlE7OztBQUtaO0FBQUE7RUFFSTs7O0FDNUNKO0VBRUk7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FwQmdCTjtFb0JwQkU7SUFNUTtJQUNBOzs7QXBCeUJWO0VvQmhDRTtJQVVRO0lBQ0E7OztBQUlSO0VBRUk7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FwQkhOO0VvQkNFO0lBSVE7OztBcEJDVjtFb0JMRTtJQU9ROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBcEJsQlY7RW9Cd0JNO0lBRVE7SUFDQTs7O0FwQmZkO0VvQllNO0lBTVE7SUFDQTs7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7O0FwQnpDZDtFb0JzQ1U7SUFLUTs7O0FwQi9CbEI7RW9CMEJVO0lBUVE7OztBQUdSO0VBQ0k7O0FBT0o7RUFDSTs7QUFPSjtFQUNJO0VBQ0E7O0FwQm5FZDtFb0JpRVU7SUFJUTs7O0FwQnpEbEI7RW9CcURVO0lBT1E7OztBQU1oQjtFQUNJOzs7QUFNSjtFQUNJOzs7QUFJUjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QXBCM0dOO0VvQm1HRTtJQVdROzs7QXBCbEdWO0VvQnVGRTtJQWVROzs7QXBCaEdWO0VvQmlGRTtJQW1CUTs7OztBQ3JKWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUNBSjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0F6QjRDSjtFeUJ0Q1E7O0F6QnNDUjtFeUJ0Q1E7O0F6QnNDUjtFeUJqQ1E7O0F6QmlDUjtFeUJqQ1E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QXpCZVI7RXlCYlk7O0F6QmFaO0V5QmJZOzs7QUFPaEI7RUFDSTtJQUNJOztFQUVKO0lBQ0k7OztBQ3ZEUjtFQUVJO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QTFCK0NBO0UwQjFDUTs7QTFCMENSO0UwQjFDUTs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBOztBdkJGTjtFdUJBRTtJQUlRO0lBQ0E7OztBdkJPVjtFdUJaRTtJQVFRO0lBQ0E7OztBQUtSO0VBRUk7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBOztBdkI1QlY7RXVCMEJNO0lBSVE7SUFDQTs7O0F2Qm5CZDtFdUJjTTtJQVFRO0lBQ0E7Ozs7QUFPaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QXZCOUNGO0V1QjBDRjtJQU1ROzs7QXZCcENOO0V1QjhCRjtJQVNRO0lBQ0E7Ozs7QUMvRVI7RUFHSTtFQUNBO0VBQ0E7O0F4QnNCRjtFd0IzQkY7SUFRUTs7O0FBSUo7RUFDSTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUtSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFLUjtFQUNJO0VBQ0E7O0EzQk1KO0UyQkpROztBM0JJUjtFMkJKUTs7O0FDbkRaO0VBQ0U7OztBQ0ZGO0VBRUk7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QTFCUU47RTBCaEJFO0lBVVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0ExQkZOO0UwQkZFO0lBTVE7OztBQW1CSjtFQUNJO0VBQ0E7RUFDQTs7O0FDdkRSO0VBQ0k7O0FBSUE7RUFDSTs7QUFJUjtFQUNJOztBQUNBO0VBQ0k7OztBQ0RSO0FBQUE7RUFFSTtFQUNBOztBNUJjTjtFNEJqQkU7QUFBQTtJQUtNO0lBQ0E7OztBNUJpQlI7RTRCdkJFO0FBQUE7SUFTTTs7O0E1Qm9CUjtFNEI3QkU7QUFBQTtJQVlNOzs7QUFJTjtFQUNJOztBNUJNTjtFNEJQRTtJQUdROzs7QUFpQlI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QTVCZE47RTRCbUJNO0lBRVE7OztBNUJyQmQ7RTRCd0JNO0lBRVE7OztBNUIxQmQ7RTRCNkJNO0lBRVE7OztBNUIvQmQ7RTRCa0NNO0lBRVE7OztBNUJwQ2Q7RTRCdUNNO0lBRVE7OztBNUJ6Q2Q7RTRCNENNO0lBRVE7OztBNUI5Q2Q7RTRCaURNO0lBRVE7OztBNUJuRGQ7RTRCdURNO0lBRVE7OztBNUJ6RGQ7RTRCNkRNO0lBRVE7Ozs7QUNwR1o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFFQTs7O0FBS1I7RUFFSTtFQUNBOztBN0JlRjtFNkJsQkY7SUFNUTtJQUNBOzs7QTdCaUJOO0U2QnhCRjtJQVdRO0lBQ0E7OztBQUdKO0VBQ0k7O0FBSUo7QUFBQTtFQUVJO0VBQ0E7O0E3QlhOO0U2QlFFO0FBQUE7SUFLTTtJQUNBOzs7QTdCUlI7RTZCRUU7QUFBQTtJQVNNO0lBQ0E7OztBN0JOUjtFNkJKRTtBQUFBO0lBYVE7SUFDQTs7O0E3QkpWO0U2QlZFO0FBQUE7SUFpQlE7SUFDQTs7O0FBSVI7RUFDSTs7QUFTSjtFQUNJO0VBQ0E7O0E3QnBDTjtFNkJrQ0U7SUFJUTs7O0FBaUJSO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBaENyRUo7RWdDdUVROztBaEN2RVI7RWdDdUVROztBQU1SO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDakpKO0VBQ0k7OztBQUlSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBakMwQko7RWlDeEJROztBakN3QlI7RWlDeEJROztBOUJKVjtFOEJORTtJQWFRO0lBQ0E7OztBOUJJVjtFOEJsQkU7SUFpQlE7OztBQUlSO0VBQ0k7RUFDQTs7QTlCakJOO0U4QmVFO0lBSVE7SUFDQTs7O0E5QlJWO0U4QkdFO0lBUVE7Ozs7QUNsRFo7RUFFSTtFQUNBOztBQUVBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFQSjtJQVFRO0lBQ0E7OztBQUdKO0VBWko7SUFhUTtJQUNBOzs7QUFHSjtFQWpCSjtJQWtCUTtJQUNBOzs7QS9CR1Y7RStCdEJFO0lBdUJROzs7QS9CV1Y7RStCbENFO0lBMkJRO0lBQ0E7OztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7QUFLUjtFQUNJOztBL0IzQk47RStCMEJFO0lBR1E7OztBQUlSO0VBQ0k7O0FBSUE7RUFDSTs7QS9CdkNWO0UrQnNDTTtJQUdROzs7QUFLWjtBQUFBO0VBRUk7O0EvQmhETjtFK0I4Q0U7QUFBQTtJQUlROzs7QUFJUjtFQUNJOztBQUNBO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FsQ3BDWjtFa0NzQ2dCOztBbEN0Q2hCO0VrQ3NDZ0I7OztBQzNGaEI7RUFDSTtFQUNBOztBaEN1Qk47RWdDekJFO0lBSVE7OztBaENpQ1Y7RWdDckNFO0lBT1E7Ozs7QUFPSjtFQUNJOzs7QUFVWjtFQUNJOztBaENERjtFZ0NBRjtJQUdROzs7QWhDR047RWdDTkY7SUFNUTs7OztBQUlSO0VBRUk7RUFDQTtFQUNBOztBaENSRjtFZ0NJRjtJQU9RO0lBQ0E7SUFDQTs7O0FBR0o7RUFDSTs7QWhDakJOO0VnQ2dCRTtJQUdROzs7QUFJUjtFQUVJOztBaEN6Qk47RWdDdUJFO0lBSVE7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFDQTtFQUNJOzs7QUMvRWhCO0VBRUk7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBOztBakNlRjtFaUMzQkY7SUFlUTtJQUNBOzs7QWpDaUJOO0VpQ2pDRjtJQW9CUTtJQUNBOzs7QUFHSjtFQUNJOztBQUtKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FqQ2JWO0VpQ1VNO0lBS1E7OztBQUlSO0VBQ0k7RUFDQTs7QWpDckJWO0VpQ21CTTtJQUlROzs7QWpDakJkO0VpQ2FNO0lBT1E7OztBcENFWjtFb0NJWTs7QXBDSlo7RW9DSVk7O0FBU1o7RUFFSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FqQ2xEVjtFaUMrQ007SUFLUTs7O0FBSVI7RUFDSTtFQUNBOztBakM5Q1Y7RWlDNENNO0lBSVE7OztBQU1aO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FqQzdFTjtFaUNrRUU7SUFjUTs7O0FqQzFFVjtFaUM0REU7SUFrQlE7OztBcEN4RFI7RW9DNERROztBcEM1RFI7RW9DNERROztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QWpDaEdWO0VpQzJGTTtJQU9RO0lBQ0E7OztBakM3RmQ7RWlDcUZNO0lBV1E7SUFDQTs7OztBQzVIaEI7RUFFSTtFQUNBO0VBQ0E7O0FsQ3VCRjtFa0MzQkY7SUFPUTs7O0FsQ29CTjtFa0NqQkU7QUFBQTtJQUdROzs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QWxDRk47RWtDQ0U7SUFHUTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FsQ1RWO0VrQ01NO0lBS1E7OztBbENDZDtFa0NOTTtJQVFROzs7QUFFSjtFQUNJOztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FsQzFCTjtFa0NzQkU7SUFNUTtJQUNBOzs7QWxDakJWO0VrQ1VFO0lBVVE7SUFDQTs7OztBQzVEWjtFQUVJO0VBQ0E7O0FuQ3dCRjtFbUMzQkY7SUFNUTtJQUNBOzs7QXRDZ0RKO0VzQzVDSTs7QXRDNENKO0VzQzVDSTs7QUFHSjtFQUNJO0VBQ0E7O0FuQ1dOO0VtQ2JFO0lBSVE7OztBQUlSO0VBRUk7RUFDQTtFQUNBOztBbkNPTjtFbUNYRTtJQU1RO0lBQ0E7OztBQUVKO0VBVEo7SUFVUTtJQUNBOzs7QUFFSjtFQWJKO0lBY1E7SUFDQTs7O0FBSVI7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBbkM3QmQ7RW1DdUJVO0lBU1E7OztBQVdaO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QW5DbkRWO0VtQytDTTtJQU1RO0lBQ0E7OztBQUlSO0VBQ0k7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FuQzlFZDtFbUM0RVU7SUFJUTs7O0FBSVI7RUFDSTtFQUNBOztBbkN0RmQ7RW1Db0ZVO0lBSVE7OztBQU1aO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QW5DckdWO0VtQzhGTTtJQVVROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F0Q3BGWjtFc0NzRmdCOztBdEN0RmhCO0VzQ3NGZ0I7O0FBSVI7RUFDSTtFQUNBOztBbkN4SGQ7RW1Dc0hVO0lBSVE7SUFDQTs7O0FBSVI7RUFDSTs7O0FDM0poQjtFQUdJO0VBQ0E7O0FwQ3VCRjtFb0MzQkY7SUFPUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QXBDYU47RW9DakJFO0lBTVE7SUFDQTs7O0FwQ3NCVjtFb0M3QkU7SUFVUTtJQUNBOzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7O0FwQ0hOO0VvQ0VFO0lBR1E7OztBcENMVjtFb0NFRTtJQU1ROzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QXBDMUJOO0VvQ2lCRTtJQVlRO0lBQ0E7OztBdkNGUjtFdUNNUTs7QXZDTlI7RXVDTVE7O0FBR0o7RUFDSTtFQUNBOztBcEN2Q1Y7RW9DcUNNO0lBSVE7OztBdkNiWjtFdUNtQlk7O0F2Q25CWjtFdUNtQlk7OztBQzFFaEI7RUFDRTtFQUNBO0VBQ0E7OztBQU9BO0VBQ0U7O0FBRUE7RUFDRTs7O0FDZE47RUFFRTtFQUNBO0VBRUE7RUFDQTs7QXpDaURFO0V5QzlDQTs7QXpDOENBO0V5QzlDQTs7QUFJRjtFQUNFOztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBSUY7RUFFRTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJRjtFQUVFO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFLSjtFQUNFO0VBQ0E7OztBQzVFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQ05OO0VBQ0k7OztBQUdKO0VBQ0k7OztBQVdBO0VBQ0k7O0F4Q2dCTjtFd0NWSTtJQUVJOzs7QXhDY1I7RXdDaEJJO0lBS0k7OztBeENLUjtFd0NESTtJQUVJOzs7QXhDS1I7RXdDUEk7SUFLSTs7O0F4Q0pSO0V3Q1FJO0lBRUk7OztBeENKUjtFd0NFSTtJQUtJOzs7QXhDYlI7RXdDaUJJO0lBRUk7OztBeENiUjtFd0NXSTtJQUtJOzs7QXhDdEJSO0V3QzBCSTtJQUVJOzs7QXhDdEJSO0V3Q29CSTtJQUtJOzs7QXhDL0JSO0V3Q21DSTtJQUVJOzs7QXhDL0JSO0V3QzZCSTtJQUtJOzs7QXhDeENSO0V3QzRDSTtJQUVJOzs7QXhDeENSO0V3Q3NDSTtJQUtJOzs7QXhDakRSO0V3Q3FESTtJQUVJOzs7QXhDakRSO0V3QytDSTtJQUtJOzs7QXhDcERSO0V3Q3dESTtJQUVJOzs7QXhDMURSO0V3Q3dESTtJQUtJOzs7O0FDdEdGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNQWjtFQUVJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0ExQ29CRjtFMEMzQkY7SUFVUTtJQUNBOzs7QTFDc0JOO0UwQ2pDRjtJQWVRO0lBQ0E7OztBQUlKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0ExQ0ROO0UwQ1BFO0lBV1E7SUFDQTs7O0E3Q3VCUjtFNkNuQlE7O0E3Q21CUjtFNkNuQlE7OztBQ2xDVjtBQUFBO0VBRUU7RUFDQTs7QTNDc0JGO0UyQ3pCQTtBQUFBO0lBS0k7SUFDQTs7O0EzQ3lCSjtFMkMvQkE7QUFBQTtJQVNJOzs7QTNDNEJKO0UyQ3JDQTtBQUFBO0lBWUk7Ozs7QUNYTjtFQUNJOzs7QUFJSjtFQUNJOzs7QUFJSjtFQUNJOztBL0N5Q0E7RStDdkNJOztBL0N1Q0o7RStDdkNJOzs7QUFLUjtBQUFBO0VBRUk7OztBQUlKO0FBQUE7RUFRSTtFL0JwQ0E7RStCc0NBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFaQTtBQUFBO0FBQUE7RUFFSTs7QTVDWE47RTRDTUY7QUFBQTtJL0IxQlE7OztBYjBCTjtFNENBRjtBQUFBO0kvQnZCUTs7O0FiNkJOO0U0Q05GO0FBQUE7SS9CcEJROzs7QWJnQ047RTRDWkY7QUFBQTtJL0JqQlE7OztBYm1DTjtFNENsQkY7QUFBQTtJL0JkUTs7O0FiY047RTRDQUY7QUFBQTtJQWlCUTs7O0E1Q1hOO0U0Q05GO0FBQUE7SUFvQlE7Ozs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFJSjtBQUFBO0VBUUk7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7O0FBWkE7QUFBQTtBQUFBO0VBRUk7OztBQWFSO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUlKO0VBRUk7RS9CeEdBO0UrQjRHQTtFQUNBOztBNUN2RkY7RTRDZ0ZGO0kvQnBHUTs7O0FiMEJOO0U0QzBFRjtJL0JqR1E7OztBYjZCTjtFNENvRUY7SS9COUZROzs7QWJnQ047RTRDOERGO0kvQjNGUTs7O0FibUNOO0U0Q3dERjtJL0J4RlE7OztBaEIwQ0o7RStDd0RJOztBL0N4REo7RStDd0RJOztBNUNwRk47RTRDMEVGO0lBY1E7SUFDQTtJQUNBO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBRUE7OztBQVFSO0VBQ0k7RUFFQTtFQUVBO0VBQ0E7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBQ0E7O0E1Q3JJRjtFNENrSEY7SUFzQlE7SUFDQTtJQUNBOzs7QTVDcElOO0U0QzRHRjtJQTRCUTtJQUNBOzs7O0FBSVI7RUFDSTs7O0FBR0o7RUFFSTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBOzs7QUFNQTtFQUNJOzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUE2RUo7RUFFSTtFQUNBOztBNUNuUUY7RTRDZ1FGO0lBT1E7SUFDQTtJQUNBOzs7QTVDblFOO0U0QzBQRjtJQVlROzs7QTVDMVBOO0U0QzhPRjtJQWVROzs7O0FBU1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQU5KO0lBT1E7OztBQUdKO0VBQ0k7RUFDQTs7O0E1Q3BTTjtFNEN3U0Y7SUFFUTs7O0E1Q3BTTjtFNENrU0Y7SUFLUTs7O0E1QzNSTjtFNENzUkY7SUFRUTs7OztBQUlSO0VBQ0k7O0E1Q3JURjtFNENvVEY7SUFHUTs7O0E1Q2pUTjtFNEM4U0Y7SUFNUTs7O0E1Q3hTTjtFNENrU0Y7SUFTUTs7OztBQ3JWUjtFQUVFO0VBQ0E7RUFFQTtFQUNBO0VBRUE7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0E3Q09GO0U2Q2JBO0lBUUk7OztBQUtKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QTdDTEY7RTZDQUE7SUFPSTs7O0FBS0o7RUFDRTtFQUNBO0VBQ0E7O0E3Q2ZGO0U2Q1lBO0lBS0k7OztBQUtKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlGO0VBQ0U7O0FBQ0E7RUFDRTs7QUFFRjtFQUNFOztBQUVGO0VBQ0U7OztBQVFOO0VBQ0U7O0E3Q2xFQTtFNkNpRUY7SUFHSTs7O0E3QzlERjtFNkMyREY7SUFNSTs7OztBN0MzREY7RTZDaUVGO0lBRUk7SUFDQTs7OztBQVFGO0VBQ0U7OztBQU9KO0VBQ0U7O0E3QzNGQTtFNkMwRkY7SUFHSTs7O0E3Q2pGRjtFNkM4RUY7SUFNSTs7OztBQU1KO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FoRDNGQTtFZ0RnR0U7O0FoRGhHRjtFZ0RnR0U7O0FBSUo7RUFDRTs7O0FBU0Y7QUFBQTtFQUVFO0VBQ0E7O0E3QzdJRjtFNkMwSUE7QUFBQTtJQUtJO0lBQ0E7OztBN0MxSUo7RTZDb0lBO0FBQUE7SUFTSTs7O0E3Q3ZJSjtFNkM4SEE7QUFBQTtJQVlJOzs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7O0E3Q3pKRjtFNkMrSkU7SUFFSTs7O0E3Q3JKTjtFNkNtSkU7SUFLSTs7O0E3Q3BLTjtFNkN3S0U7SUFFSTs7O0E3QzlKTjtFNkM0SkU7SUFLSTs7O0E3QzdLTjtFNkNpTEU7SUFFSTs7O0E3Q3ZLTjtFNkNxS0U7SUFLSTs7O0E3Q3RMTjtFNkMwTEU7SUFFSTs7O0E3Q2hMTjtFNkM4S0U7SUFLSTs7O0E3Qy9MTjtFNkNtTUU7SUFFSTs7O0E3Q3pMTjtFNkN1TEU7SUFLSTs7O0E3Q3hNTjtFNkM0TUU7SUFFSTs7O0E3Q2xNTjtFNkNnTUU7SUFLSTs7O0E3Q2pOTjtFNkNxTkU7SUFFSTs7O0E3QzNNTjtFNkN5TUU7SUFLSTs7O0E3QzFOTjtFNkM4TkU7SUFFSTs7O0E3Q3BOTjtFNkNrTkU7SUFLSTs7O0E3QzdOTjtFNkNpT0U7SUFFSTs7O0E3QzdOTjtFNkMyTkU7SUFLSTs7O0E3QzVPTjtFNkNxUEU7SUFFSTs7O0E3QzNPTjtFNkN5T0U7SUFLSTs7O0E3QzFQTjtFNkM4UEU7SUFFSTs7O0E3Q3BQTjtFNkNrUEU7SUFLSTs7O0E3Q25RTjtFNkN1UUU7SUFFSTs7O0E3QzdQTjtFNkMyUEU7SUFLSTs7O0E3QzVRTjtFNkNnUkU7SUFFSTs7O0E3Q3RRTjtFNkNvUUU7SUFLSTs7O0E3Q3JSTjtFNkN5UkU7SUFFSTs7O0E3Qy9RTjtFNkM2UUU7SUFLSTs7O0E3QzlSTjtFNkNrU0U7SUFFSTs7O0E3Q3hSTjtFNkNzUkU7SUFLSTs7O0E3Q3ZTTjtFNkMyU0U7SUFFSTs7O0E3Q2pTTjtFNkMrUkU7SUFLSTs7O0E3Q2hUTjtFNkNvVEU7SUFFSTs7O0E3QzFTTjtFNkN3U0U7SUFLSTs7O0E3Q25UTjtFNkN1VEU7SUFFSTs7O0E3Q25UTjtFNkNpVEU7SUFLSTs7OztBQ2xXSjtFQUNJOzs7QUNGUjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUNBO0VBQ0k7O0FBS1I7RUFDSTtFQUNBOztBQUlKO0VBQ0k7O0FsRCtCSjtFa0Q1QlE7O0FsRDRCUjtFa0Q1QlE7O0FsRDRCUjtFa0RyQlE7O0FsRHFCUjtFa0RyQlE7O0FBS1I7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNJO0VBQ0E7O0EvQ3RCVjtFK0NvQk07SUFJUTtJQUNBOzs7QS9DYmQ7RStDUU07SUFR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QTtBQUFBO0FBQUE7RXFEb0dZOztBQUtaO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUFPOzs7QUFHWDtBQUFBO0VBRUk7OztBckQ5R0E7RXFEbUhJOztBckRuSEo7RXFEbUhJOzs7QXJEbkhKO0FBQUE7QUFBQTtFcUQySEk7O0FyRDNISjtBQUFBO0FBQUE7RXFEMkhJOzs7QUNsS1I7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0VBRUU7RUFDQTs7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0FBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FuRGpGRjtFbUR5RUE7SUFVSTtJQUNBOzs7O0FBSUo7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTs7O0FDcklKO0FBQ0E7RUFFSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBdkR3Q0o7RXVEdENROztBdkRzQ1I7RXVEdENRIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGcnO1xuICAgIHNyYzogdXJsKCcjeyRsZy1wYXRoLWZvbnRzfS9sZy53b2ZmMj9pbzlhNmsnKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnI3skbGctcGF0aC1mb250c30vbGcudHRmP2lvOWE2aycpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCcjeyRsZy1wYXRoLWZvbnRzfS9sZy53b2ZmP2lvOWE2aycpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGxnLXBhdGgtZm9udHN9L2xnLnN2Zz9pbzlhNmsjbGcnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5cbi5sZy1pY29uIHtcbiAgICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICAgIGZvbnQtZmFtaWx5OiAnbGcnICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5ldmVyO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbiIsIi5sZy1jb250YWluZXIge1xuICAgIGZvbnQtZmFtaWx5OiBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sICdTZWdvZSBVSScsIFJvYm90bywgJ0hlbHZldGljYSBOZXVlJyxcbiAgICAgICAgQXJpYWwsICdOb3RvIFNhbnMnLCAnTGliZXJhdGlvbiBTYW5zJywgc2Fucy1zZXJpZiwgJ0FwcGxlIENvbG9yIEVtb2ppJyxcbiAgICAgICAgJ1NlZ29lIFVJIEVtb2ppJywgJ1NlZ29lIFVJIFN5bWJvbCcsICdOb3RvIENvbG9yIEVtb2ppJztcbn1cbi8vIGRlZmF1bHQgdGhlbWVcbi5sZy1uZXh0LFxuLmxnLXByZXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsZy1uZXh0LXByZXYtYmc7XG4gICAgYm9yZGVyLXJhZGl1czogJGxnLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBjb2xvcjogJGxnLW5leHQtcHJldi1jb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIHBhZGRpbmc6IDhweCAxMHB4IDlweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgei1pbmRleDogJHppbmRleC1jb250cm9scztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgY29sb3I6ICRsZy1uZXh0LXByZXYtaG92ZXItY29sb3I7XG4gICAgfVxuICAgIC5sZy1zaW5nbGUtaXRlbSAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5sZy1uZXh0IHtcbiAgICByaWdodDogMjBweDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZTA5NSc7XG4gICAgfVxufVxuXG4ubGctcHJldiB7XG4gICAgbGVmdDogMjBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlMDk0JztcbiAgICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhsZy1yaWdodC1lbmQpIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMobGctbGVmdC1lbmQpIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgbGVmdDogMzBweDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG59XG5cbi5sZy1vdXRlciB7XG4gICAgJi5sZy1yaWdodC1lbmQge1xuICAgICAgICAubGctb2JqZWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihsZy1yaWdodC1lbmQgMC4zcyk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLWxlZnQtZW5kIHtcbiAgICAgICAgLmxnLW9iamVjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24obGctbGVmdC1lbmQgMC4zcyk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGxnIHRvb2xiYXJcbi5sZy10b29sYmFyIHtcbiAgICB6LWluZGV4OiAkemluZGV4LXRvb2xiYXI7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5sZy1tZWRpYS1vdmVybGFwICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbGctdG9vbGJhci1iZztcbiAgICB9XG5cbiAgICAubGctaWNvbiB7XG4gICAgICAgIGNvbG9yOiAkbGctdG9vbGJhci1pY29uLWNvbG9yO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IGNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuMnMgbGluZWFyKTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAmLmxnLWljb24tMTgge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRsZy10b29sYmFyLWljb24taG92ZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctY2xvc2Uge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGUwNzAnO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5sZy1tYXhpbWl6ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTBhJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1kb3dubG9hZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTBmMic7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGxpZ2h0R2FsbGVyeSB0aXRsZVxuLmxnLXN1Yi1odG1sIHtcbiAgICBjb2xvcjogJGxnLXN1Yi1odG1sLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3ViaHRtbDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjJzIGVhc2Utb3V0IDBzKTtcblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5sZy1tZWRpYS1vdmVybGFwICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbGctc3ViLWh0bWwtYmc7XG4gICAgfVxuICAgIC5sZy1pdGVtICYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuXG4ubGctZXJyb3ItbXNnIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICM5OTk7XG59XG5cbi8vIGxnIGltYWdlIGNvdW50ZXJcbi5sZy1jb3VudGVyIHtcbiAgICBjb2xvcjogJGxnLWljb24tY29sb3I7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGxnLWNvdW50ZXItZm9udC1zaXplO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmxnLWNsb3Npbmcge1xuICAgIC5sZy10b29sYmFyLFxuICAgIC5sZy1wcmV2LFxuICAgIC5sZy1uZXh0LFxuICAgIC5sZy1zdWItaHRtbCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20oXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4wOCBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsXG4gICAgICAgICAgICBvcGFjaXR5IDAuMDggY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLFxuICAgICAgICAgICAgY29sb3IgMC4wOCBsaW5lYXJcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbi8vIFN0YXJ0aW5nIGVmZmVjdFxuYm9keTpub3QoLmxnLWZyb20taGFzaCkge1xuICAgIC5sZy1vdXRlciB7XG4gICAgICAgICYubGctc3RhcnQtem9vbSB7XG4gICAgICAgICAgICAubGctaXRlbTpub3QoLmxnLXpvb21hYmxlKSB7XG4gICAgICAgICAgICAgICAgLmxnLWltZy13cmFwLFxuICAgICAgICAgICAgICAgIC5sZy12aWRlby1jb250IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlM2QoMC41LCAwLjUsIDAuNSkpO1xuICAgICAgICAgICAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpICFpbXBvcnRhbnRcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5sZy1jb21wbGV0ZSB7XG4gICAgICAgICAgICAgICAgICAgIC5sZy1pbWctd3JhcCxcbiAgICAgICAgICAgICAgICAgICAgLmxnLXZpZGVvLWNvbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZTNkKDEsIDEsIDEpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRiYWNrZHJvcC1vcGFjaXR5OiAxICFkZWZhdWx0O1xuJGxnLXRvb2xiYXItYmc6IGxpbmVhci1ncmFkaWVudChcbiAgICAwZGVnLFxuICAgIHJnYmEoMCwgMCwgMCwgMCksXG4gICAgcmdiYSgwLCAwLCAwLCAwLjQpXG4pICFkZWZhdWx0O1xuJGxnLWJvcmRlci1yYWRpdXMtYmFzZTogMnB4ICFkZWZhdWx0O1xuJGxnLXRoZW1lLWhpZ2hsaWdodDogcmdiKDE2OSwgNywgNykgIWRlZmF1bHQ7XG4kbGctdGhlbWUtY29sb3I6ICMwMDAgIWRlZmF1bHQ7XG5cbi8vIGJhc2ljIGljb24gY29sb3Vyc1xuJGxnLWljb24tYmc6IHJnYmEoMCwgMCwgMCwgMC40NSkgIWRlZmF1bHQ7XG4kbGctaWNvbi1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRsZy1pY29uLWhvdmVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuXG4vLyBjb3VudGVyXG4kbGctY291bnRlci1jb2xvcjogI2U2ZTZlNiAhZGVmYXVsdDtcbiRsZy1jb3VudGVyLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gTmV4dCBwcmV2IGljb25zXG4kbGctbmV4dC1wcmV2LWJnOiAkbGctaWNvbi1iZyAhZGVmYXVsdDtcbiRsZy1uZXh0LXByZXYtY29sb3I6ICRsZy1pY29uLWNvbG9yICFkZWZhdWx0O1xuJGxnLW5leHQtcHJldi1ob3Zlci1jb2xvcjogJGxnLWljb24taG92ZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIHRvb2xiYXIgaWNvbnNcbiRsZy10b29sYmFyLWljb24tY29sb3I6ICRsZy1pY29uLWNvbG9yICFkZWZhdWx0O1xuJGxnLXRvb2xiYXItaWNvbi1ob3Zlci1jb2xvcjogJGxnLWljb24taG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbGctdG9vbGJhci1pY29uLWRpc2FibGVkLW9wYWNpdHk6IDAuNzUgIWRlZmF1bHQ7XG5cbi8vIGF1dG9wbGF5IHByb2dyZXNzIGJhclxuJGxnLXByb2dyZXNzLWJhci1iZzogIzMzMyAhZGVmYXVsdDtcbiRsZy1wcm9ncmVzcy1iYXItYWN0aXZlLWJnOiAkbGctdGhlbWUtaGlnaGxpZ2h0ICFkZWZhdWx0O1xuJGxnLXByb2dyZXNzLWJhci1oZWlnaHQ6IDVweCAhZGVmYXVsdDtcblxuLy8gcGF0aHNcbiRsZy1wYXRoLWZvbnRzOiAnLi4vZm9udHMnICFkZWZhdWx0O1xuJGxnLXBhdGgtaW1hZ2VzOiAnLi4vaW1hZ2VzJyAhZGVmYXVsdDtcblxuLy8gWm9vbSBwbHVnaW5cbiR6b29tLXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXMgIWRlZmF1bHQ7XG5cbi8vIFN1YiBodG1sIC0gdGl0aWxlXG4kbGctc3ViLWh0bWwtYmc6IGxpbmVhci1ncmFkaWVudChcbiAgICAxODBkZWcsXG4gICAgcmdiYSgwLCAwLCAwLCAwKSxcbiAgICByZ2JhKDAsIDAsIDAsIDAuNilcbikgIWRlZmF1bHQ7XG4kbGctc3ViLWh0bWwtY29sb3I6ICNlZWUgIWRlZmF1bHQ7XG5cbi8vIHRodW1ibmFpbCB0b2dnbGUgYnV0dG9uXG4kbGctdGh1bWItdG9nZ2xlLWJnOiAjMGQwYTBhICFkZWZhdWx0O1xuJGxnLXRodW1iLXRvZ2dsZS1jb2xvcjogJGxnLWljb24tY29sb3IgIWRlZmF1bHQ7XG4kbGctdGh1bWItYmc6ICMwZDBhMGEgIWRlZmF1bHQ7XG4kbGctdGh1bWItY29udGFpbmVyLWhlaWdodDogMTAwcHg7XG5cbi8vIFBhZ2VyXG5cbi8vIHotaW5kZXhcbiR6aW5kZXgtb3V0ZXI6IDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXByb2dyZXNzYmFyOiAxMDgzICFkZWZhdWx0O1xuJHppbmRleC1jb250cm9sczogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbGJhcjogMTA4MiAhZGVmYXVsdDtcbiR6aW5kZXgtc3ViaHRtbDogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtY29tcG9uZW50czogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtcGFnZXI6IDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXBsYXlidXR0b246IDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LWl0ZW06IDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LWJhY2tkcm9wOiAxMDQwICFkZWZhdWx0O1xuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSB3aWxsIGJlIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuLy8gLSBjdXJzb3IgZ3JhYlxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cblxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbn1cblxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBALW1zLWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cblxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuXG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuXG5AbWl4aW4gc2NhbGUzZCgkeCwgJHksICR6KSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoJHgsICR5LCAkeik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKCR4LCAkeSwgJHopO1xufVxuXG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuXG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cblxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cblxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0oJHRyYW5zZm9ybXMpIHtcbiAgICAtbW96LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgLW8tdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtbXMtdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgdHJhbnNmb3JtOiAkdHJhbnNmb3Jtcztcbn1cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG4vLyB0cmFuc2l0aW9uIGN1c3RvbVxuXG5AZnVuY3Rpb24gcHJlZml4KCRwcm9wZXJ0eSwgJHByZWZpeGVzOiB3ZWJraXQgbW96IG8gbXMpIHtcbiAgICAkdmVuZG9yLXByZWZpeGVkLXByb3BlcnRpZXM6IHRyYW5zZm9ybSBiYWNrZ3JvdW5kLWNsaXAgYmFja2dyb3VuZC1zaXplO1xuICAgICRyZXN1bHQ6ICgpO1xuXG4gICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgICAgICBAaWYgaW5kZXgoJHZlbmRvci1wcmVmaXhlZC1wcm9wZXJ0aWVzLCAkcHJvcGVydHkpIHtcbiAgICAgICAgICAgICRwcm9wZXJ0eTogLSN7JHByZWZpeH0tI3skcHJvcGVydHl9O1xuICAgICAgICB9XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkcHJvcGVydHkpO1xuICAgIH1cbiAgICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbkBmdW5jdGlvbiB0cmFucy1wcmVmaXgoJHRyYW5zaXRpb24sICRwcmVmaXg6IG1veikge1xuICAgICRwcmVmaXhlZDogKCk7XG5cbiAgICBAZWFjaCAkdHJhbnMgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgICAkcHJvcC1uYW1lOiBudGgoJHRyYW5zLCAxKTtcbiAgICAgICAgJHZlbmRvci1wcm9wLW5hbWU6IHByZWZpeCgkcHJvcC1uYW1lLCAkcHJlZml4KTtcbiAgICAgICAgJHByb3AtdmFsczogbnRoKCR0cmFucywgMik7XG4gICAgICAgICRwcmVmaXhlZDogYXBwZW5kKCRwcmVmaXhlZCwgJHZlbmRvci1wcm9wLW5hbWUgJHByb3AtdmFscywgY29tbWEpO1xuICAgIH1cbiAgICBAcmV0dXJuICRwcmVmaXhlZDtcbn1cblxuQG1peGluIHRyYW5zaXRpb25DdXN0b20oJHZhbHVlcy4uLikge1xuICAgICR0cmFuc2l0aW9uczogKCk7XG5cbiAgICBAZWFjaCAkZGVjbGFyYXRpb24gaW4gJHZhbHVlcyB7XG4gICAgICAgICRwcm9wOiBudGgoJGRlY2xhcmF0aW9uLCAxKTtcbiAgICAgICAgJHByb3Atb3B0czogKCk7XG4gICAgICAgICRsZW5ndGg6IGxlbmd0aCgkZGVjbGFyYXRpb24pO1xuXG4gICAgICAgIEBpZiAkbGVuZ3RoID49IDIge1xuICAgICAgICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICAgICAgICAgICAkcHJvcC1vcHRzOiBhcHBlbmQoJHByb3Atb3B0cywgbnRoKCRkZWNsYXJhdGlvbiwgJGkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAkdHJhbnM6ICRwcm9wLCAkcHJvcC1vcHRzO1xuICAgICAgICAkdHJhbnNpdGlvbnM6IGFwcGVuZCgkdHJhbnNpdGlvbnMsICR0cmFucywgY29tbWEpO1xuICAgIH1cbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zLXByZWZpeCgkdHJhbnNpdGlvbnMsIHdlYmtpdCk7XG4gICAgLW1vei10cmFuc2l0aW9uOiB0cmFucy1wcmVmaXgoJHRyYW5zaXRpb25zLCBtb3opO1xuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zLXByZWZpeCgkdHJhbnNpdGlvbnMsIG8pO1xuICAgIHRyYW5zaXRpb246ICR2YWx1ZXM7XG59XG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuXG4vLyBtb3VzZSBncmFiXG5cbkBtaXhpbiBncmFiLWN1cnNvciB7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gICAgY3Vyc29yOiAtbW96LWdyYWI7XG4gICAgY3Vyc29yOiAtby1ncmFiO1xuICAgIGN1cnNvcjogLW1zLWdyYWI7XG4gICAgY3Vyc29yOiBncmFiO1xufVxuXG5AbWl4aW4gZ3JhYmJpbmctY3Vyc29yIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgICBjdXJzb3I6IC1vLWdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW1zLWdyYWJiaW5nO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG59XG4iLCJAaW1wb3J0ICdsZy12YXJpYWJsZXMnO1xuQGltcG9ydCAnbGctbWl4aW5zJztcbiR0aHVtYm5haWxzLW1hcmdpbjogNXB4O1xuXG4ubGctb3V0ZXIge1xuICAgIC5sZy10aHVtYi1vdXRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsZy10aHVtYi1iZztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAmLmxnLWdyYWIge1xuICAgICAgICAgICAgLmxnLXRodW1iLWl0ZW0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyYWItY3Vyc29yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5sZy1ncmFiYmluZyB7XG4gICAgICAgICAgICAubGctdGh1bWItaXRlbSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JhYmJpbmctY3Vyc29yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5sZy1kcmFnZ2luZyB7XG4gICAgICAgICAgICAubGctdGh1bWIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMHMgIWltcG9ydGFudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5sZy1yZWJ1aWxkaW5nLXRodW1ibmFpbHMge1xuICAgICAgICAgICAgLmxnLXRodW1iIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDBzICFpbXBvcnRhbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5sZy10aHVtYi1hbGlnbi1taWRkbGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgICYubGctdGh1bWItYWxpZ24tbGVmdCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgICYubGctdGh1bWItYWxpZ24tcmlnaHQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLXNpbmdsZS1pdGVtIHtcbiAgICAgICAgLmxnLXRodW1iLW91dGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctdGh1bWIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtJHRodW1ibmFpbHMtbWFyZ2luO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLXRodW1iLWl0ZW0ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbHMtbWFyZ2luO1xuICAgICAgICB3aWxsLWNoYW5nZTogYm9yZGVyLWNvbG9yO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciAwLjI1cyBlYXNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxnLXRoZW1lLWhpZ2hsaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLWNhbi10b2dnbGUge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy10b2dnbGUtdGh1bWIge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGUxZmYnO1xuICAgICAgICB9XG4gICAgfVxuICAgICYubGctYW5pbWF0ZS10aHVtYiB7XG4gICAgICAgIC5sZy10aHVtYiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbihcbiAgICAgICAgICAgICAgICBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJ2xnLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICdsZy1taXhpbnMnO1xuLmxnLW91dGVyIHtcbiAgICAubGctdmlkZW8tY29udCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5sZy1vYmplY3Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWhhcy1pZnJhbWUge1xuICAgICAgICAubGctdmlkZW8tY29udCB7XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGctdmlkZW8tb2JqZWN0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICAgIC5sZy12aWRlby1wb3N0ZXIge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5sZy1oYXMtdmlkZW8ge1xuICAgICAgICAubGctdmlkZW8tb2JqZWN0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjNzIGVhc2UtaW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5sZy12aWRlby1sb2FkZWQge1xuICAgICAgICAgICAgLmxnLXZpZGVvLXBvc3RlcixcbiAgICAgICAgICAgIC5sZy12aWRlby1wbGF5LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGctdmlkZW8tb2JqZWN0IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxnLXBsYXktc3Ryb2tlIHtcbiAgICAwJSB7XG4gICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEsIDIwMDtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogODksIDIwMDtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0zNXB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA4OSwgMjAwO1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogLTEyNHB4O1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBsZy1wbGF5LXJvdGF0ZSB7XG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbi5sZy12aWRlby1wbGF5LWJ1dHRvbiB7XG4gICAgd2lkdGg6IDE4JTtcbiAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgei1pbmRleDogMjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSk7XG4gICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKFxuICAgICAgICB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAuMTcsIDAuODgsIDAuMzIsIDEuMjgpLFxuICAgICAgICBvcGFjaXR5IDAuMXNcbiAgICApO1xuICAgICY6aG92ZXIge1xuICAgICAgICAubGctdmlkZW8tcGxheS1pY29uLWJnLFxuICAgICAgICAubGctdmlkZW8tcGxheS1pY29uIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGctdmlkZW8tcGxheS1pY29uLWJnIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZS13aWR0aDogMyU7XG4gICAgc3Ryb2tlOiAjZmNmY2ZjO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4xMnMgZWFzZS1pbik7XG59XG4ubGctdmlkZW8tcGxheS1pY29uLWNpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZS13aWR0aDogMyU7XG4gICAgc3Ryb2tlOiByZ2JhKDMwLCAzMCwgMzAsIDAuOSk7XG4gICAgc3Ryb2tlLW9wYWNpdHk6IDE7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIwMDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjAwO1xufVxuXG4ubGctdmlkZW8tcGxheS1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4xMnMgZWFzZS1pbik7XG4gICAgLmxnLXZpZGVvLXBsYXktaWNvbi1pbm5lciB7XG4gICAgICAgIGZpbGw6ICNmY2ZjZmM7XG4gICAgfVxufVxuXG4ubGctdmlkZW8tbG9hZGluZyB7XG4gICAgLmxnLXZpZGVvLXBsYXktaWNvbi1jaXJjbGUge1xuICAgICAgICBhbmltYXRpb246IGxnLXBsYXktcm90YXRlIDJzIGxpbmVhciAwLjI1cyBpbmZpbml0ZSxcbiAgICAgICAgICAgIGxnLXBsYXktc3Ryb2tlIDEuNXMgZWFzZS1pbi1vdXQgMC4yNXMgaW5maW5pdGU7XG4gICAgfVxufVxuLmxnLXZpZGVvLWxvYWRlZCB7XG4gICAgLmxnLXZpZGVvLXBsYXktYnV0dG9uIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMC43KTtcbiAgICB9XG59XG4iLCJAaW1wb3J0ICdsZy12YXJpYWJsZXMnO1xuQGltcG9ydCAnbGctbWl4aW5zJztcbi5sZy1wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsZy1wcm9ncmVzcy1iYXItYmc7XG4gICAgaGVpZ2h0OiAkbGctcHJvZ3Jlc3MtYmFyLWhlaWdodDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogJHppbmRleC1wcm9ncmVzc2JhcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20ob3BhY2l0eSAwLjA4cyBlYXNlIDBzKTtcblxuICAgIC5sZy1wcm9ncmVzcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsZy1wcm9ncmVzcy1iYXItYWN0aXZlLWJnO1xuICAgICAgICBoZWlnaHQ6ICRsZy1wcm9ncmVzcy1iYXItaGVpZ2h0O1xuICAgICAgICB3aWR0aDogMDtcbiAgICB9XG5cbiAgICAmLmxnLXN0YXJ0IHtcbiAgICAgICAgLmxnLXByb2dyZXNzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLXNob3ctYXV0b3BsYXkgJiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4ubGctYXV0b3BsYXktYnV0dG9uIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgLmxnLXNob3ctYXV0b3BsYXkgJiB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlMDFhJztcbiAgICAgICAgfVxuICAgICAgICBjb250ZW50OiAnXFxlMDFkJztcbiAgICB9XG4gICAgLmxnLXNpbmdsZS1pdGVtICYge1xuICAgICAgICBvcGFjaXR5OiAkbGctdG9vbGJhci1pY29uLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbn1cbiIsIkBpbXBvcnQgJ2xnLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICdsZy1taXhpbnMnO1xuLmxnLW91dGVyIHtcbiAgICAvLyByZXNldCB0cmFuc2l0aW9uIGR1cmF0aW9uXG4gICAgJi5sZy1jc3MzLmxnLXpvb20tZHJhZ2dpbmcge1xuICAgICAgICAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSB7XG4gICAgICAgICAgICAubGctaW1nLXdyYXAsXG4gICAgICAgICAgICAubGctaW1hZ2Uge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMG1zICFpbXBvcnRhbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYubGctdXNlLXRyYW5zaXRpb24tZm9yLXpvb20ge1xuICAgICAgICAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSB7XG4gICAgICAgICAgICAubGctaW1nLXdyYXAge1xuICAgICAgICAgICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbkN1c3RvbShcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtICR6b29tLXRyYW5zaXRpb24tZHVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIGN1YmljLWJlemllcigwLjEyLCAwLjQxNSwgMC4wMSwgMS4xOSkgMHNcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYubGctem9vbS1kcmFnLXRyYW5zaXRpb24ge1xuICAgICAgICAgICAgLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUge1xuICAgICAgICAgICAgICAgIC5sZy1pbWctd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20oXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC44cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHNcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSB7XG4gICAgICAgIC5sZy1pbWctd3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZy1pbWFnZSxcbiAgICAgICAgLmxnLWR1bW15LWltZyB7XG4gICAgICAgICAgICAvLyBUcmFuc2xhdGUgcmVxdWlyZWQgZm9yIHpvb21cbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgICAgICAgICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbkN1c3RvbShcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJHpvb20tdHJhbnNpdGlvbi1kdXJhdGlvblxuICAgICAgICAgICAgICAgICAgICBjdWJpYy1iZXppZXIoMC4xMiwgMC40MTUsIDAuMDEsIDEuMTkpIDBzLFxuICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oMCAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxnLWljb24ge1xuICAgIC8vIHpvb20gYnV0dG9uc1xuICAgICYubGctem9vbS1pbiB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTMxMSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLWFjdHVhbC1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGUwMzMnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sZy16b29tLW91dCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlMzEyJztcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZy16b29tZWQgJiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGctb3V0ZXIge1xuICAgICZbZGF0YS1sZy1zbGlkZS10eXBlPSd2aWRlbyddLFxuICAgICZbZGF0YS1sZy1zbGlkZS10eXBlPSdpZnJhbWUnXSxcbiAgICAmLmxnLWZpcnN0LXNsaWRlLWxvYWRpbmcge1xuICAgICAgICAubGctem9vbS1pbixcbiAgICAgICAgLmxnLWFjdHVhbC1zaXplLFxuICAgICAgICAubGctem9vbS1vdXQge1xuICAgICAgICAgICAgb3BhY2l0eTogJGxnLXRvb2xiYXItaWNvbi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0ICdsZy12YXJpYWJsZXMnO1xuQGltcG9ydCAnbGctbWl4aW5zJztcbi5sZy1vdXRlciB7XG4gICAgLmxnLXBhZ2VyLW91dGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LXBhZ2VyO1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgJi5sZy1wYWdlci1ob3ZlciB7XG4gICAgICAgICAgICAubGctcGFnZXItY29udCB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLXNpbmdsZS1pdGVtIHtcbiAgICAgICAgLmxnLXBhZ2VyLW91dGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctcGFnZXItY29udCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAubGctcGFnZXItdGh1bWItY29udCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGctcGFnZXItYWN0aXZlIHtcbiAgICAgICAgICAgIC5sZy1wYWdlciB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHdoaXRlIGluc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLXBhZ2VyLXRodW1iLWNvbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDgzcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKFxuICAgICAgICAgICAgb3BhY2l0eSAwLjE1cyBlYXNlIDBzLFxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTVzIGVhc2UgMHNcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctcGFnZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSBpbnNldDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3gtc2hhZG93IDAuM3MgZWFzZSAwcyk7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHdoaXRlIGluc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWNhcmV0IHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogMTBweCBkYXNoZWQ7XG4gICAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cbn1cbiIsIi5sZy1mdWxsc2NyZWVuIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGUyMGNcIjtcblxuICAgICAgICAubGctZnVsbHNjcmVlbi1vbiAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlMjBkXCI7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGltcG9ydCAnbGctdmFyaWFibGVzJztcbkBpbXBvcnQgJ2xnLW1peGlucyc7XG4ubGctb3V0ZXIge1xuICAgIC5sZy1kcm9wZG93bi1vdmVybGF5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogJHppbmRleC10b29sYmFyIC0gMTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWxsLWNoYW5nZTogdmlzaWJpbGl0eSwgb3BhY2l0eTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihcbiAgICAgICAgICAgIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuMThzLFxuICAgICAgICAgICAgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHNcbiAgICAgICAgKTtcbiAgICB9XG4gICAgJi5sZy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgICAubGctZHJvcGRvd24sXG4gICAgICAgIC5sZy1kcm9wZG93bi1vdmVybGF5IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoMHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKDAsIDBweCwgMCkpO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgICAgLmxnLXNoYXJlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5sZy1kcm9wZG93biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKDAsIDVweCwgMCkpO1xuICAgICAgICB3aWxsLWNoYW5nZTogdmlzaWJpbGl0eSwgb3BhY2l0eSwgdHJhbnNmb3JtO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKFxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGxpbmVhciAwcyxcbiAgICAgICAgICAgIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuNXMsXG4gICAgICAgICAgICBvcGFjaXR5IDAuMThzIGxpbmVhciAwc1xuICAgICAgICApO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm9yZGVyOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB0b3A6IC0xNnB4O1xuICAgICAgICB9XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggMTJweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCxcbiAgICAgICAgICAgICAgICBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGctZHJvcGRvd24tdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgICAgIC5sZy1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGctc2hhcmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTgwZCc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxnLXNoYXJlLWZhY2Vib29rIHtcbiAgICAgICAgLmxnLWljb24ge1xuICAgICAgICAgICAgY29sb3I6ICMzYjU5OTg7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTA0JztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubGctc2hhcmUtdHdpdHRlciB7XG4gICAgICAgIC5sZy1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDBhY2VkO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkwNyc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxnLXNoYXJlLXBpbnRlcmVzdCB7XG4gICAgICAgIC5sZy1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAjY2IyMDI3O1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkwNic7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0ICdsZy12YXJpYWJsZXMnO1xuQGltcG9ydCAnbGctbWl4aW5zJztcbi5sZy1jb21tZW50LWJveCB7XG4gICAgd2lkdGg6IDQyMHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20odHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzKTtcblxuICAgIC5sZy1jb21tZW50LXRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cblxuICAgIC5sZy1jb21tZW50LWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC5sZy1jb21tZW50LWJvZHkge1xuICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy10b3A6IDQzcHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZmItY29tbWVudHMge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGxnLXBhdGgtaW1hZ2VzfS9sb2FkaW5nLmdpZicpIG5vLXJlcGVhdCBzY3JvbGxcbiAgICAgICAgICAgIGNlbnRlciBjZW50ZXIgI2ZmZjtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAmW2ZiLXhmYm1sLXN0YXRlPSdyZW5kZXJlZCddIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1jb21tZW50LWNsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IGNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuMnMgbGluZWFyKTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGUwNzAnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWZyYW1lIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI2Rpc3F1c190aHJlYWQge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxufVxuLmxnLW91dGVyIHtcbiAgICAubGctY29tbWVudC1vdmVybGF5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogJHppbmRleC10b29sYmFyIC0gMTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWxsLWNoYW5nZTogdmlzaWJpbGl0eSwgb3BhY2l0eTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihcbiAgICAgICAgICAgIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuMThzLFxuICAgICAgICAgICAgb3BhY2l0eSAwLjE4cyBsaW5lYXIgMHNcbiAgICAgICAgKTtcbiAgICB9XG4gICAgLmxnLWNvbW1lbnQtdG9nZ2xlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTA4JztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxnLWNvbW1lbnQtYWN0aXZlIHtcbiAgICAgICAgLmxnLWNvbW1lbnQtb3ZlcmxheSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDBzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwLCAwcHgsIDApKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgICAgIC5sZy1jb21tZW50LXRvZ2dsZSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAubGctY29tbWVudC1ib3gge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKDAsIDAsIDApKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJ2xnLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICdsZy1taXhpbnMnO1xuLmxnLW91dGVyIHtcbiAgICAubGctaW1nLXJvdGF0ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKFxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzXG4gICAgICAgICk7XG4gICAgfVxuICAgICZbZGF0YS1sZy1zbGlkZS10eXBlPSd2aWRlbyddLFxuICAgICZbZGF0YS1sZy1zbGlkZS10eXBlPSdpZnJhbWUnXSB7XG4gICAgICAgIC5sZy1yb3RhdGUtbGVmdCxcbiAgICAgICAgLmxnLXJvdGF0ZS1yaWdodCxcbiAgICAgICAgLmxnLWZsaXAtdmVyLFxuICAgICAgICAubGctZmxpcC1ob3Ige1xuICAgICAgICAgICAgb3BhY2l0eTogJGxnLXRvb2xiYXItaWNvbi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGctcm90YXRlLWxlZnQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTAwJztcbiAgICB9XG59XG4ubGctcm90YXRlLXJpZ2h0IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZTkwMSc7XG4gICAgfVxufVxuLmxnLWljb24ge1xuICAgICYubGctZmxpcC1ob3IsXG4gICAgJi5sZy1mbGlwLXZlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICB9XG59XG4ubGctZmxpcC12ZXIge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTAzJztcbiAgICB9XG59XG4ubGctZmxpcC1ob3Ige1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTAyJztcbiAgICB9XG59XG4iLCIubGctbWVkaXVtLXpvb20taXRlbSB7XG4gICAgY3Vyc29yOiB6b29tLWluO1xufVxuLmxnLW1lZGl1bS16b29tIHtcbiAgICAubGctb3V0ZXIge1xuICAgICAgICBjdXJzb3I6IHpvb20tb3V0O1xuICAgICAgICAvLyBTZXQgY3Vyc29yIGdyYWIgd2hpbGUgZHJhZ2dpbmdcbiAgICAgICAgJi5sZy1ncmFiIHtcbiAgICAgICAgICAgIGltZy5sZy1vYmplY3Qge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmxnLWdyYWJiaW5nIHtcbiAgICAgICAgICAgIGltZy5sZy1vYmplY3Qge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubGctcmVsYXRpdmUtY2FwdGlvbiB7XG4gICAgLmxnLW91dGVyIHtcbiAgICAgICAgLmxnLXN1Yi1odG1sIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubGctcmVsYXRpdmUtY2FwdGlvbi1pdGVtIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIG9wYWNpdHkgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZy1zaG93LWNhcHRpb24ge1xuICAgICAgICAgICAgLmxnLXJlbGF0aXZlLWNhcHRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJ2xnLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICdsZy1taXhpbnMnO1xuLy8gQ2xlYXJmaXhcbi5sZy1ncm91cDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi8vIGxpZ2h0Z2FsbGVyeSBjb3JlXG5cbi5sZy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAmLmxnLXNob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG4ubGctb24ge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogdW5zZXQ7XG59XG5cbi8vIGZvciBpZGxlIHN0YXRlXG4ubGctdG9vbGJhcixcbi5sZy1wcmV2LFxuLmxnLW5leHQsXG4ubGctcGFnZXItb3V0ZXIsXG4ubGctaGlkZS1zdWItaHRtbCAubGctc3ViLWh0bWwge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKFxuICAgICAgICB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLFxuICAgICAgICBvcGFjaXR5IDAuMjVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwc1xuICAgICk7XG59XG4vLyBmb3IgaWRsZSBzdGF0ZVxuLmxnLXNob3ctaW4ge1xuICAgIC5sZy10b29sYmFyLFxuICAgIC5sZy1wcmV2LFxuICAgIC5sZy1uZXh0LFxuICAgIC5sZy1wYWdlci1vdXRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICYubGctaGlkZS1zdWItaHRtbCB7XG4gICAgICAgIC5sZy1zdWItaHRtbCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5sZy1oaWRlLWl0ZW1zIHtcbiAgICAgICAgLmxnLXByZXYge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZy1uZXh0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZy10b29sYmFyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxnLWhpZGUtc3ViLWh0bWwge1xuICAgICAgICAgICAgLmxnLXN1Yi1odG1sIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGctb3V0ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1vdXRlcjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG9wYWNpdHk6IDAuMDAxO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgd2lsbC1jaGFuZ2U6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyBGb3Igc3RhcnQvZW5kIHRyYW5zaXRpb25cbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4xNXMgZWFzZSAwcyk7XG5cbiAgICAqIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICB9XG5cbiAgICAmLmxnLXpvb20tZnJvbS1pbWFnZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJi5sZy12aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAvLyBTZXQgdHJhbnNpdGlvbiBzcGVlZCBhbmQgdGltaW5nIGZ1bmN0aW9uXG4gICAgJi5sZy1jc3MzIHtcbiAgICAgICAgLmxnLWl0ZW06bm90KC5sZy1zdGFydC1lbmQtcHJvZ3Jlc3MpIHtcbiAgICAgICAgICAgICYubGctcHJldi1zbGlkZSxcbiAgICAgICAgICAgICYubGctbmV4dC1zbGlkZSxcbiAgICAgICAgICAgICYubGctY3VycmVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbihpbmhlcml0ICFpbXBvcnRhbnQpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKGluaGVyaXQgIWltcG9ydGFudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdHJhbnNpdGlvbiB3aGlsZSBkcmFnZ2luZ1xuICAgICYubGctY3NzMy5sZy1kcmFnZ2luZyB7XG4gICAgICAgIC5sZy1pdGVtIHtcbiAgICAgICAgICAgICYubGctcHJldi1zbGlkZSxcbiAgICAgICAgICAgICYubGctbmV4dC1zbGlkZSxcbiAgICAgICAgICAgICYubGctY3VycmVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigwcyAhaW1wb3J0YW50KTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0IGN1cnNvciBncmFiIHdoaWxlIGRyYWdnaW5nXG4gICAgJi5sZy1ncmFiIHtcbiAgICAgICAgaW1nLmxnLW9iamVjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmFiLWN1cnNvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGctZ3JhYmJpbmcge1xuICAgICAgICBpbWcubGctb2JqZWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyYWJiaW5nLWN1cnNvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmxnLWlubmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLmxnLWl0ZW0ge1xuICAgICAgICAmOm5vdCgubGctc3RhcnQtZW5kLXByb2dyZXNzKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGxnLXBhdGgtaW1hZ2VzfS9sb2FkaW5nLmdpZicpIG5vLXJlcGVhdCBzY3JvbGxcbiAgICAgICAgICAgICAgICBjZW50ZXIgY2VudGVyIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi5sZy1jc3MzIHtcbiAgICAgICAgLmxnLXByZXYtc2xpZGUsXG4gICAgICAgIC5sZy1jdXJyZW50LFxuICAgICAgICAubGctbmV4dC1zbGlkZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxnLWNzcyB7XG4gICAgICAgIC5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWl0ZW0sXG4gICAgLmxnLWltZy13cmFwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctaW1nLXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcblxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgfVxuXG4gICAgLmxnLWl0ZW0ge1xuICAgICAgICAmLmxnLWNvbXBsZXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxnLWN1cnJlbnQge1xuICAgICAgICAgICAgei1pbmRleDogJHppbmRleC1pdGVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLW9iamVjdCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLy8gSGlkZSB0aXRsZSBkaXYgaWYgZW1wdHlcbiAgICAubGctZW1wdHktaHRtbCB7XG4gICAgICAgICYubGctc3ViLWh0bWwsXG4gICAgICAgIC5sZy1zdWItaHRtbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sZy1oaWRlLWRvd25sb2FkIHtcbiAgICAgICAgLmxnLWRvd25sb2FkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRsZy10b29sYmFyLWljb24tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWZpcnN0LXNsaWRlIHtcbiAgICAgICAgLmxnLWR1bW15LWltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGctY29tcG9uZW50cy1vcGVuIHtcbiAgICAgICAgJjpub3QoLmxnLXpvb21lZCkge1xuICAgICAgICAgICAgLmxnLWNvbXBvbmVudHMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxnLXN1Yi1odG1sIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLW91dCAwLjE1cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxnLWJhY2tkcm9wIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtYmFja2Ryb3A7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxnLXRoZW1lLWNvbG9yO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lsbC1jaGFuZ2U6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDMzM21zIGVhc2UtaW4gMHMpO1xuICAgICYuaW4ge1xuICAgICAgICBvcGFjaXR5OiAkYmFja2Ryb3Atb3BhY2l0eTtcbiAgICB9XG59XG5cbi8vIERlZmF1bHQgc2xpZGUgYW5pbWF0aW9ucy4gU2hvdWxkIGJlIHBsYWNlZCBhdCB0aGUgYm90dG9tIG9mIHRoZSBhbmltYXRpb24gY3NzXG4ubGctY3NzMyB7XG4gICAgLy8gUmVtb3ZlIGFsbCB0cmFuc2l0aW9uIGVmZmVjdHNcbiAgICAmLmxnLW5vLXRyYW5zIHtcbiAgICAgICAgLmxnLXByZXYtc2xpZGUsXG4gICAgICAgIC5sZy1uZXh0LXNsaWRlLFxuICAgICAgICAubGctY3VycmVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKG5vbmUgMHMgZWFzZSAwcyAhaW1wb3J0YW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGctdXNlLWNzczMge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGYWRlIG1vZGVcbiAgICAmLmxnLWZhZGUge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAmLmxnLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIHRyYW5zaXRpb24gdGltaW5nIHByb3BlcnR5IGFuZCBkdXJhdGlvbiB3aWxsIGJlIG92ZXIgd3JpdHRlbiBmcm9tIGphdmFzY3JpcHRcbiAgICAgICAgICAgICYubGctcHJldi1zbGlkZSxcbiAgICAgICAgICAgICYubGctbmV4dC1zbGlkZSxcbiAgICAgICAgICAgICYubGctY3VycmVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbkN1c3RvbShvcGFjaXR5IDAuMXMgZWFzZSAwcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5sZy11c2UtY3NzMyB7XG4gICAgICAgIC5sZy1pdGVtIHtcbiAgICAgICAgICAgICYubGctc3RhcnQtcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20oXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSkgMHNcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKSAwcyxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5sZy1zdGFydC1lbmQtcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20oXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHNcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sZy1zbGlkZSB7XG4gICAgICAgICYubGctdXNlLWNzczMge1xuICAgICAgICAgICAgLmxnLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAmLmxnLXByZXYtc2xpZGUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5sZy1uZXh0LXNsaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gdHJhbnNpdGlvbiB0aW1pbmcgcHJvcGVydHkgYW5kIGR1cmF0aW9uIHdpbGwgYmUgb3ZlciB3cml0dGVuIGZyb20gamF2YXNjcmlwdFxuICAgICAgICAgICAgICAgICYubGctcHJldi1zbGlkZSxcbiAgICAgICAgICAgICAgICAmLmxnLW5leHQtc2xpZGUsXG4gICAgICAgICAgICAgICAgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbkN1c3RvbShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgZWFzZSAwc1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxnLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmLmxnLXNob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdHJhbnNpdGlvbiB3aGlsZSBkcmFnZ2luZ1xuICAgICYubGctZHJhZ2dpbmctdmVydGljYWwge1xuICAgICAgICAubGctYmFja2Ryb3Age1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigwcyAhaW1wb3J0YW50KTtcbiAgICAgICAgfVxuICAgICAgICAubGctY3NzMyB7XG4gICAgICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICAgICAgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigwcyAhaW1wb3J0YW50KTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIElubGluZSBHYWxsZXJ5XG5cbi5sZy1pbmxpbmUge1xuICAgIC5sZy1iYWNrZHJvcCxcbiAgICAubGctb3V0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICAgIC5sZy1iYWNrZHJvcCB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC5sZy1vdXRlciB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIC5sZy1tYXhpbWl6ZSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkwOSc7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIENvbXBvbmVudHNcbi5sZy1jb21wb25lbnRzIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20odHJhbnNmb3JtIDAuMzVzIGVhc2Utb3V0IDBzKTtcbiAgICB6LWluZGV4OiAkemluZGV4LWNvbXBvbmVudHM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xufVxuIiwiLyoqXG4gKiBTd2lwZXIgOC40LjRcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjIgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogT2N0b2JlciAxMiwgMjAyMlxuICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3N3aXBlci1pY29ucyc7XG4gIHNyYzogdXJsKCdkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwgZDA5R1JnQUJBQUFBQUFaZ0FCQUFBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUdSQUFBQUJvQUFBQWNpNnFIa1VkRVJVWUFBQVdnQUFBQUl3QUFBQ1FBWUFCWFIxQlBVd0FBQmhRQUFBQXVBQUFBTnVBWTcreEhVMVZDQUFBRnhBQUFBRkFBQUFCbTJmUGN6VTlUTHpJQUFBSGNBQUFBU2dBQUFHQlA5VjVSWTIxaGNBQUFBa1FBQUFDSUFBQUJZdDZGMGNCamRuUWdBQUFDekFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUFXWUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBQURNQUFBRDJNSHRyeVZvWldGa0FBQUJiQUFBQURBQUFBQTJFMitlb1dob1pXRUFBQUdjQUFBQUh3QUFBQ1FDOWdEemFHMTBlQUFBQWlnQUFBQVpBQUFBcmdKa0FCRnNiMk5oQUFBQzBBQUFBRm9BQUFCYUZRQVVHRzFoZUhBQUFBRzhBQUFBSHdBQUFDQUFjQUJBYm1GdFpRQUFBL2dBQUFFNUFBQUNYdkZkQndsd2IzTjBBQUFGTkFBQUFHSUFBQUNFNXM3NGhYamFZMkJrWUdBQVlwZjVIdS9qK1cyK01uQXpNWURBemFYNlFqRDYvNC8vQnhqNUdBOEF1UndNWUdrQVB5d0wxM2phWTJCa1lHQTg4UDhBZ3g0aisvOGZRRFlmQTFBRUJXZ0RBSUIyQk9vQWVOcGpZR1JnWU5CaDRHZGdZZ0FCRU1uSUFCSnpZTkFEQ1FBQUNXZ0FzUUI0Mm1OZ1lmekNPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQmlRUWtPYWF3dERBb01CUXhYamcvd0VHUGNZRERBNHdOVUEyQ0Nnd3NBQUFPNEVMNmdBQWVOcGoyTTBneUFBQ3F4Z0dOV0JrWjJENC93TUEreGtEZGdBQUFIamFZMkJnWUdhQVlCa0dSZ1lRaUFIeUdNRjhGZ1lISU0zRHdNSEFCR1FyTU9neVdETEVNMVQ5L3c4VUJmRU1nTHpFLy8vL1AvNS8vZi9WL3h2K3I0ZWFBQWVNYkF4d0lVWW1JTUhFZ0tZQVlqVWNzREF3c0xLeGMzQnljZlB3OGpFUUEvZ1pCQVNGaEVWRXhjUWxKS1drWldUbDVCVVVsWlJWVk5YVU5UUVpCZ01BQU1SK0UrZ0FFUUZFQUFBQUtnQXFBQ29BTkFBK0FFZ0FVZ0JjQUdZQWNBQjZBSVFBamdDWUFLSUFyQUMyQU1BQXlnRFVBTjRBNkFEeUFQd0JCZ0VRQVJvQkpBRXVBVGdCUWdGTUFWWUJZQUZxQVhRQmZnR0lBWklCbkFHbUFiSUJ6Z0hzQUFCNDJ1Mk5NUTZDVUF5R1c1Njh4OUFuZVlZZ200TUpiaEtGYUV4SU9BVlg4QXBld1N0NEJpYzRBZmVBaWQzVk9CaXhEeGZQWUV6YTVPK1hmaTA0WUFEZ2dpVUlVTEN1RUpLOFZoTzRiU3ZwZG5rdEhJNVFDWXRkaTJzbDhablhhSGxxVXJOS3pkS2NUOGNqbHErcndaU3ZJVmN6TmllenNmblAvdXpubWZQRkJOT0RNMks3TVRRNDVZRUFacUdQODFBbUdHY0YzaVBxT29wMHIxU1BUYVRiVmtmVWU0SFhqOTd3WUUreU53V1l4d1d1NHYxdWdXSGdvM1MxWGRaRVZxV003RVQwY2ZuTEd4V2ZrZ1I0Mm8yUHZXckRNQlNGai9JSExhRjB6S2pSZ2RpVk13U2NOUkFvV1VvSDc4WTJpY0IveUlZMDlBbjZBSDJCZHUvVUIreXhvcFlzaFFpRXZudnUwZFVSZ0R0OFFlQzhQRHc3RnBqaTNmRUE0ei9QRUo2WU9CNWhLaDRkajNFdlhoeFBxSC9TS1VZM3JKN3NyWjRGWm5oMVBNQXRQaHdQNmZsMlBNSk1QRGdlUTRyWThZVDZHemFvMGVBRUE0MDlEdWdnbVRuRm5PY1NDaUVpTE1neENpVEk2Q3E1RFpVZDNRbXAxMHZPMExhTFRkMmNqTjRmT3VtbGM3bFVZYlNRY1pGa3V0Ukc3ZzZKS1pLeTBSbWRMWTY4MENEbkVKK1VNa3BGRmUxUk43bnhkVnBYckM0YVR0bmF1ck9uWWVyY1pnMllWbUxOL2QvZ2N6ZkVpbXJFL2ZzL2JPdXEyOVptbjh0bG9PUmFYZ1pnR2E3OHlPOS9jblhtMkJwYUd2cTI1RHY5UzRFOSs1U0ljOVBxdXBKS2hZRlNTbDQ3K1FjcjFtWU5BQUFBZU5wdHcwY0t3a0FBQU1EWkpBOFE3T1VKdmtMc1BmWjZ6RlZFUlB5OHFIaDJZRVIrM2kvQlA4M3ZJQkxMeVNzb0tpbXJxS3FwYTJocDYranE2UnNZR2htYm1KcVpTeTBzcmF4dGJPM3NIUnlkbkVNVTR1UjZ5eDdKSlh2ZVA3V3JEeWNBQUFBQUFBSC8vd0FDZU5wallHUmdZT0FCWWhrZ1pnSkNaZ1pOQmtZR0xRWnRJSnNGTE1ZQUFBdzNBTGdBZU5vbGl6RUtnREFRQkNjaFJiQzJzRkVSMFlENnFWUWlCQ3YvSDllekdJNlo1WEJBdzhDQksvbTVpUVFWYXVWYlhMbk9yTVp2Mm9MZEtGYThQanVydTJoSnpHYWJtT1NMek5NenZ1dHBCM040Mm1OZ1pHQmc0R0tRWXpCaFlNeEpMTWxqNEdCZ0FZb3cvUC9QQUpKaExNNnNTb1dLZldDQUF3REFqZ2JSQUFCNDJtTmdZR0JrQUlJYkNabzVJUHJtVW4waEdBMEFPOEVGVFFBQScpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG46cm9vdCB7XG4gIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAjMDA3YWZmO1xufVxuLnN3aXBlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1wb2ludGVyLWV2ZW50cyB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG4uc3dpcGVyLXBvaW50ZXItZXZlbnRzLnN3aXBlci12ZXJ0aWNhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLXNsaWRlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xufVxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1hdXRvaGVpZ2h0LFxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xufVxuLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci0zZCxcbi5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlciB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItd3JhcHBlcixcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4vKiBDU1MgTW9kZSAqL1xuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gIC8qIEZvciBGaXJlZm94ICovXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgLyogRm9yIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlICovXG59XG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbn1cbi5zd2lwZXItdmVydGljYWwuc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XG59XG4uc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZmxleC1zaHJpbms6IDA7XG4gIG9yZGVyOiA5OTk5O1xufVxuLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG59XG4uc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xufVxuLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG59XG4uc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMXB4O1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xufVxuLnN3aXBlci1jZW50ZXJlZCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcbn1cbi5zd2lwZXItdmlydHVhbCAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cbi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXIge1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO1xufVxuLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWwgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSk7XG59XG46cm9vdCB7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZTogNDRweDtcbiAgLypcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyA0NCAqIDI3KTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKSk7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1oaWRkZW4sXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLFxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyIHtcbiAgY29udGVudDogJ3ByZXYnO1xufVxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcbiAgY29udGVudDogJ25leHQnO1xufVxuLnN3aXBlci1idXR0b24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG46cm9vdCB7XG4gIC8qXG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGg6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAwLjI7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcDogNnB4O1xuICAqL1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHotaW5kZXg6IDEwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQgPiAuc3dpcGVyLXBhZ2luYXRpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCAjMDAwKTtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIDAuMik7XG59XG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXAsIDZweCkgMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLFxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDtcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA0cHgpO1xufVxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbn1cbi8qIFByb2dyZXNzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbn1cbi5zd2lwZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLFxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbCxcbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBTY3JvbGxiYXIgKi9cbi5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZCA+IC5zd2lwZXItc2Nyb2xsYmFyLFxuLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyLFxuLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxJTtcbiAgYm90dG9tOiAzcHg7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDk4JTtcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhcixcbi5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItdmVydGljYWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7XG59XG4vKiBQcmVsb2FkZXIgKi9cbjpyb290IHtcbiAgLypcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAqL1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc3dpcGVyOm5vdCguc3dpcGVyLXdhdGNoLXByb2dyZXNzKSAuc3dpcGVyLWxhenktcHJlbG9hZGVyLFxuLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUgLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogYTExeSAqL1xuLnN3aXBlciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7XG59XG4uc3dpcGVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uc3dpcGVyLWdyaWQgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uc3dpcGVyLWdyaWQtY29sdW1uID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbn1cbi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG4uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY3ViZS5zd2lwZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG59XG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDAuNjtcbiAgei1pbmRleDogMDtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgZmlsdGVyOiBibHVyKDUwcHgpO1xufVxuLnN3aXBlci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNyZWF0aXZlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eSwgaGVpZ2h0O1xufVxuLnN3aXBlci1jYXJkcyB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jYXJkcyAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiQHVzZSAnaGVscGVyL3NpemUnIGFzICo7XHJcblxyXG46cm9vdCB7XHJcbiAgICAtLW1hcmdpbi14czogI3tyZW0oMjApfTtcclxuICAgIC0tbWFyZ2luLXNtOiAje3JlbSgyMCl9O1xyXG4gICAgLS1tYXJnaW4tbWQ6ICN7cmVtKDI1KX07XHJcbiAgICAtLW1hcmdpbi1sZzogI3tyZW0oMzApfTtcclxuICAgIC0tbWFyZ2luLXhsOiAje3JlbSg0MCl9O1xyXG4gICAgLS1tYXJnaW4teHhsOiAje3JlbSg1MCl9O1xyXG59IiwiQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0hHUyc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvSHVybWVHZW9tZXRyaWNTYW5zNC1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvSHVybWVHZW9tZXRyaWNTYW5zNC1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0h1cm1lR2VvbWV0cmljU2FuczQtUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnSEdTJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9IdXJtZUdlb21ldHJpY1NhbnM0LVNlbWlCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvSHVybWVHZW9tZXRyaWNTYW5zNC1TZW1pQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9IdXJtZUdlb21ldHJpY1NhbnM0LVNlbWlCb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdIR1MnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0h1cm1lR2VvbWV0cmljU2FuczQtQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0h1cm1lR2VvbWV0cmljU2FuczQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9IdXJtZUdlb21ldHJpY1NhbnM0LUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdIR1MnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0h1cm1lR2VvbWV0cmljU2FuczQtTGlnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9IdXJtZUdlb21ldHJpY1NhbnM0LUxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0h1cm1lR2VvbWV0cmljU2FuczQtTGlnaHQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcclxufVxyXG5cclxuLy8gQGZvbnQtZmFjZSB7XHJcbi8vICAgICBmb250LWZhbWlseTogJ0hHUyc7XHJcbi8vICAgICBzcmM6IHVybCgnLi4vZm9udHMvSHVybWVHZW9tZXRyaWNTYW5zMS1IYWlybGluZS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuLy8gICAgICAgICB1cmwoJy4uL2ZvbnRzL0h1cm1lR2VvbWV0cmljU2FuczEtSGFpcmxpbmUud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4vLyAgICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuLy8gICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuLy8gICAgIGZvbnQtZGlzcGxheTogc3dhcDtcclxuLy8gfVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0hHUyc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvSHVybWVHZW9tZXRyaWNTYW5zNC1UaGluLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvSHVybWVHZW9tZXRyaWNTYW5zNC1UaGluLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuXHJcbiIsIi8vIEhFTFBFUlMgLyBDT0xPUlNcclxuQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ3Nhc3M6bWFwJztcclxuXHJcbi8qIENvbG9yIENsYXNzICovXHJcblxyXG4vLyBDT0xPUkVTIEJBU0VcclxuQGVhY2ggJG5hbWUtY29sb3IsICRjb2xvcnMgaW4gbWFwLmdldCgkdGhlbWVzLCBkZWZhdWx0KSB7XHJcbiAgICAuY29sb3ItLSN7JG5hbWUtY29sb3J9e1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IGluIG1hcC5nZXQoICRjb2xvcnMsICRuYW1lLWNvbG9yLCBiYXNlICk7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBzZXRjb2xvcigjeyRuYW1lLWNvbG9yfSwgXCJiYXNlXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gQ09MT1JFUyBCQVNFXHJcbkBlYWNoICRuYW1lLWNvbG9yLCAkY29sb3JzIGluIG1hcC5nZXQoJHRoZW1lcywgZGVmYXVsdCkge1xyXG4gICAgLmNvbG9yLS0jeyRuYW1lLWNvbG9yfS0tbGlnaHR7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogaW4gbWFwLmdldCggJGNvbG9ycywgJG5hbWUtY29sb3IsIGJhc2UgKTtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKCN7JG5hbWUtY29sb3J9LCBcImxpZ2h0XCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gQ09MT1JFUyBCQVNFXHJcbkBlYWNoICRuYW1lLWNvbG9yLCAkY29sb3JzIGluIG1hcC5nZXQoJHRoZW1lcywgZGVmYXVsdCkge1xyXG4gICAgLmNvbG9yLS0jeyRuYW1lLWNvbG9yfS0tZGFya3tcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiBpbiBtYXAuZ2V0KCAkY29sb3JzLCAkbmFtZS1jb2xvciwgYmFzZSApO1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogc2V0Y29sb3IoI3skbmFtZS1jb2xvcn0sIFwiZGFya1wiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBTRVRUSU5HUyAvICBDT0xPUlNcclxuQHVzZSAnc2FzczptYXAnO1xyXG4kdGhlbWUtbWFwOiBudWxsO1xyXG5cclxuLy8gQ09MT1JFUyBQT1IgVEVNQVNcclxuJHRoZW1lczogKFxyXG4gIC8vIERFRkFVTFRcclxuICBkZWZhdWx0OiAoXHJcbiAgICBcInByaW1hcnlcIjogKFxyXG4gICAgICBiYXNlOiAjMGIwYzE0LFxyXG4gICAgICBsaWdodDogIzJGMzAzNyxcclxuICAgICAgZGFyazogIzBjMGMxNVxyXG4gICAgKSxcclxuICAgIFwic2Vjb25kYXJ5XCI6IChcclxuICAgICAgYmFzZTogI0E0QTA5QyxcclxuICAgICAgbGlnaHQ6ICNEOUQzQ0QsXHJcbiAgICAgIGRhcms6ICM4ODgxN0FcclxuICAgICksXHJcbiAgICBcImdyYXlcIjogKFxyXG4gICAgICBiYXNlOiAjRUJFN0UxLFxyXG4gICAgICBsaWdodDogI0Y2RjNFRixcclxuICAgICAgZGFyazogI0UxREJENFxyXG4gICAgKSxcclxuICAgIFwiYmxhY2tcIjogKFxyXG4gICAgICBiYXNlOiAjMGYwZjE4LFxyXG4gICAgKSxcclxuICAgIFwid2hpdGVcIjogKFxyXG4gICAgICBiYXNlOiAjRjJFRkU4LFxyXG4gICAgKSxcclxuICApLFxyXG4gIC8vIERBUktcclxuICBkYXJrOiAoXHJcbiAgICBcInByaW1hcnlcIjogKFxyXG4gICAgICBiYXNlOiAjQTRBMDlDLFxyXG4gICAgICBsaWdodDogI0Q5RDNDRCxcclxuICAgICAgZGFyazogIzg4ODE3QVxyXG4gICAgKSxcclxuICAgIFwic2Vjb25kYXJ5XCI6IChcclxuICAgICAgYmFzZTogIzBiMGMxNCxcclxuICAgICAgbGlnaHQ6ICMyRjMwMzcsXHJcbiAgICAgIGRhcms6ICMwYzBjMTVcclxuICAgICksXHJcbiAgICBcImdyYXlcIjogKFxyXG4gICAgICBiYXNlOiAjMDMwMzA1LFxyXG4gICAgICBsaWdodDogIzIyMjMyNyxcclxuICAgICAgZGFyazogIzA0MDQwN1xyXG4gICAgKSxcclxuICAgIFwiYmxhY2tcIjogKFxyXG4gICAgICBiYXNlOiAjRjJFRkU4LFxyXG4gICAgKSxcclxuICAgIFwid2hpdGVcIjogKFxyXG4gICAgICBiYXNlOiAjMGYwZjE4LFxyXG4gICAgKSxcclxuICApXHJcbik7XHJcblxyXG4vLyBNaXhpbiBQYXJhIGdlbmVyYXIgbGFzIGNsYXNlcyBwb3IgVGVtYVxyXG5AbWl4aW4gdGhlbWVkKCkge1xyXG4gIEBlYWNoICR0aGVtZSwgJG1hcCBpbiAkdGhlbWVzIHtcclxuICAgIC50aGVtZS0tI3skdGhlbWV9ICYge1xyXG4gICAgICAkdGhlbWUtbWFwOiAoKSAhZ2xvYmFsO1xyXG4gICAgICBAZWFjaCAka2V5LCAkdG9uZSwgJHN1Ym1hcCBpbiAkbWFwIHtcclxuICAgICAgICAkdmFsdWU6IG1hcC1nZXQobWFwLWdldCgkdGhlbWVzLCAkdGhlbWUpLCAnI3ska2V5fScpO1xyXG4gICAgICAgICR0aGVtZS1tYXA6IG1hcC1tZXJnZSgkdGhlbWUtbWFwLCAoJGtleTogJHZhbHVlKSkgIWdsb2JhbDtcclxuICAgICAgfVxyXG4gICAgICBAY29udGVudDtcclxuICAgICAgJHRoZW1lLW1hcDogbnVsbCAhZ2xvYmFsO1xyXG4gICAgICAvLyBtYXAucmVtb3ZlKCR0aGVtZS1tYXApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gRnVuY2lvbiBwYXJhIGFzaWduYXIgZWwgY29sb3Igc2VndW4gZWwgdGVtYVxyXG5AZnVuY3Rpb24gc2V0Y29sb3IoJGtleSwgJHRvbmU6YmFzZSkge1xyXG4gIC8vIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtbWFwLCAka2V5KTtcclxuICBAcmV0dXJuIG1hcC5nZXQoJHRoZW1lLW1hcCwgJGtleSwgJHRvbmUpO1xyXG59IiwiLy8gSEVMUEVSUyAvIENPTE9SU1xyXG5AdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnc2FzczptYXAnO1xyXG5cclxuLyogQmFja2dyb3VuZCBDbGFzcyAqL1xyXG5cclxuLy8gQ09MT1JFUyBCQVNFXHJcbkBlYWNoICRuYW1lLWNvbG9yLCAkY29sb3JzIGluIG1hcC5nZXQoJHRoZW1lcywgZGVmYXVsdCkge1xyXG4gICAgLmJnLS0jeyRuYW1lLWNvbG9yfXtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiBpbiBtYXAuZ2V0KCAkY29sb3JzLCAkbmFtZS1jb2xvciwgYmFzZSApO1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogc2V0Y29sb3IoI3skbmFtZS1jb2xvcn0sIFwiYmFzZVwiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIENPTE9SRVMgQkFTRVxyXG5AZWFjaCAkbmFtZS1jb2xvciwgJGNvbG9ycyBpbiBtYXAuZ2V0KCR0aGVtZXMsIGRlZmF1bHQpIHtcclxuICAgIC5iZy0tI3skbmFtZS1jb2xvcn0tLWxpZ2h0e1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IGluIG1hcC5nZXQoICRjb2xvcnMsICRuYW1lLWNvbG9yLCBiYXNlICk7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBzZXRjb2xvcigjeyRuYW1lLWNvbG9yfSwgXCJsaWdodFwiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIENPTE9SRVMgQkFTRVxyXG5AZWFjaCAkbmFtZS1jb2xvciwgJGNvbG9ycyBpbiBtYXAuZ2V0KCR0aGVtZXMsIGRlZmF1bHQpIHtcclxuICAgIC5iZy0tI3skbmFtZS1jb2xvcn0tLWRhcmt7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogaW4gbWFwLmdldCggJGNvbG9ycywgJG5hbWUtY29sb3IsIGJhc2UgKTtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKCN7JG5hbWUtY29sb3J9LCBcImRhcmtcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBDT0xPUkVTIERBUktcclxuLy8gQGVhY2ggJG5hbWUtY29sb3IsICRjb2xvciBpbiBtYXAuZ2V0KCR0aGVtZXMsIGRlZmF1bHQpIHtcclxuLy8gICAgIC5iZy0tI3skbmFtZS1jb2xvcn0tZGFyayB7XHJcbi8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCggJGNvbG9ycywgJG5hbWUtY29sb3IsIGRhcmsgKTtcclxuLy8gICAgIH1cclxuLy8gfVxyXG5cclxuLy8gLy8gQ09MT1JFUyBMSUdIVFxyXG4vLyBAZWFjaCAkbmFtZS1jb2xvciwgJGNvbG9yIGluIG1hcC5nZXQoJHRoZW1lcywgZGVmYXVsdCkge1xyXG4vLyAgICAgLmJnLS0jeyRuYW1lLWNvbG9yfS1saWdodCB7XHJcbi8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCggJGNvbG9ycywgJG5hbWUtY29sb3IsIGxpZ2h0ICk7XHJcbi8vICAgICB9XHJcbi8vIH0iLCIvLyBIRUxQRVJTIC8gRk9OVFxyXG5AdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnc2FzczptYXAnO1xyXG5AdXNlICdzYXNzOmxpc3QnO1xyXG5cclxuLyogRm9udCBGYW1pbHkgQ2xhc3MgKi9cclxuQGVhY2ggJG5hbWUtZm9udCwgJGZhbWlseSBpbiBtYXAuZ2V0KCRmb250cywgXCJmYW1pbHlcIikge1xyXG4gICAgLmZvbnQtLSN7JG5hbWUtZm9udH17XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmYW1pbHk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEZvbnQgV2VpZ2h0IENsYXNzICovXHJcbkBlYWNoICRuYW1lLWZvbnQsICRmYW1pbHkgaW4gbWFwLmdldCgkZm9udHMsIFwid2VpZ2h0XCIpIHtcclxuICAgIC5mb250LS0jeyRuYW1lLWZvbnR9e1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZmFtaWx5O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBGb250IFNpemUgQ2xhc3MgKi9cclxuQGVhY2ggJG5hbWUtZm9udCwgJGZhbWlseSBpbiBtYXAuZ2V0KCRmb250cywgXCJzaXplXCIpIHtcclxuICAgIC5mb250LS0jeyRuYW1lLWZvbnR9e1xyXG4gICAgICAgIGZvbnQtc2l6ZTogbGlzdC5udGgoJGZhbWlseSwgMSk7XHJcbiAgICAgICAgQGluY2x1ZGUgc2NyZWVuKHNtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbGlzdC5udGgoJGZhbWlseSwgMik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHNjcmVlbihtZCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGxpc3QubnRoKCRmYW1pbHksIDMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBzY3JlZW4obGcpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBsaXN0Lm50aCgkZmFtaWx5LCA0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgc2NyZWVuKHhsKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbGlzdC5udGgoJGZhbWlseSwgNSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHNjcmVlbih4eGwpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBsaXN0Lm50aCgkZmFtaWx5LCA2KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBTRVRUSU5HUyAvIEJSRUFLUE9JTlRTXHJcbkB1c2UgJ3Nhc3M6bWFwJztcclxuXHJcbiRicmVha3BvaW50czogKFxyXG4gICAgc206IDU3NixcclxuICAgIG1kOiA3NjgsXHJcbiAgICBsZzogOTkyLFxyXG4gICAgeGw6IDEyMDAsXHJcbiAgICB4eGw6IDE2MDAsXHJcbiAgICB4eHhsOiAyMDAwLFxyXG4pO1xyXG5cclxuQG1peGluIHNjcmVlbigkYnJlYWtwb2ludCkge1xyXG4gIEBpZiBtYXBfaGFzLWtleSgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBtYXBfZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQpIHtcclxuICAgICAgQGNvbnRlbnRcclxuICAgIH1cclxuICB9XHJcbn07XHJcblxyXG5AbWl4aW4gc20ge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTc2cHgpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1kIHtcclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsZyB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4geGwge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB4eGwge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMHB4KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB4eHhsIHtcclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIwMDBweCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59IiwiLy8gSEVMUEVSUyAvIENPTE9SU1xyXG5AdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyL3NpemUnIGFzICo7XHJcbkB1c2UgJ3Nhc3M6bWFwJztcclxuXHJcbi5ib3JkZXItYm90dG9tLXRoZW1lIHtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcclxuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzlDOUM5QztcclxuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTApO1xyXG4gICAgLy8gQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgLy8gICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHNldGNvbG9yKCdibGFjaycpO1xyXG4gICAgLy8gfVxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ3NpemUnIGFzICo7XHJcblxyXG4vLyB0aHJvdWdoIGxpbmtzXHJcbi5ob3Zlci10aHJvdWdoIHNwYW4ge1xyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0oMSk7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTglO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cztcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpob3ZlcjphZnRlciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tdG8tdG9wIHtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XHJcbiAgICB9XHJcbiAgICBwYXRoIHtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBsYXJnZSB0ZXh0XHJcbi5sYXJnZS10ZXh0IHtcclxuICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XHJcbiAgICB9XHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5cclxuJW1heC13aWR0aCxcclxuJW1heC13aWR0aC1tZWRpdW0sXHJcbiVtYXgtd2lkdGgtbGFyZ2UsXHJcbiVtYXgtd2lkdGgtZXh0cmFsYXJnZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtKDE1KTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxNSk7XHJcbiAgICBAaW5jbHVkZSBzbSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMjUpO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgyNSk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNTApO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg1MCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTAwKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMTAwKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuJW1heC13aWR0aCB7XHJcbiAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oMTEwMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiVtYXgtd2lkdGgtbWVkaXVtIHtcclxuICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbSgxMTAwKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oMTMwMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiVtYXgtd2lkdGgtbGFyZ2Uge1xyXG4gICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtKDEyMDApO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbSgxNDAwKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHh4eGwge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtKDE2MDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4lbWF4LXdpZHRoLWV4dHJhbGFyZ2Uge1xyXG4gICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtKDEzMDApO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbSgxNTAwKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHh4eGwge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtKDE4MDApO1xyXG4gICAgfVxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuXHJcbi5saW5lLXRocm91Z2gge1xyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGhlaWdodDogcmVtKDEpO1xyXG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IHJlbSgxKTtcclxuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXM7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyOmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbn0iLCIqIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn0iLCIuc3BsaWRlX19jb250YWluZXJ7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOnJlbGF0aXZlfS5zcGxpZGVfX2xpc3R7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTttYXJnaW46MCFpbXBvcnRhbnQ7cGFkZGluZzowIWltcG9ydGFudDt0cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2R9LnNwbGlkZS5pcy1pbml0aWFsaXplZDpub3QoLmlzLWFjdGl2ZSkgLnNwbGlkZV9fbGlzdHtkaXNwbGF5OmJsb2NrfS5zcGxpZGVfX3BhZ2luYXRpb257LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MDtwb2ludGVyLWV2ZW50czpub25lfS5zcGxpZGVfX3BhZ2luYXRpb24gbGl7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGluZS1oZWlnaHQ6MTtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXJnaW46MDtwb2ludGVyLWV2ZW50czphdXRvfS5zcGxpZGVfX3Byb2dyZXNzX19iYXJ7d2lkdGg6MH0uc3BsaWRle291dGxpbmU6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTt2aXNpYmlsaXR5OmhpZGRlbn0uc3BsaWRlLmlzLWluaXRpYWxpemVkLC5zcGxpZGUuaXMtcmVuZGVyZWR7dmlzaWJpbGl0eTp2aXNpYmxlfS5zcGxpZGVfX3NsaWRley13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47Ym94LXNpemluZzpib3JkZXItYm94Oy1tcy1mbGV4LW5lZ2F0aXZlOjA7ZmxleC1zaHJpbms6MDtsaXN0LXN0eWxlLXR5cGU6bm9uZSFpbXBvcnRhbnQ7bWFyZ2luOjA7b3V0bGluZTpub25lO3Bvc2l0aW9uOnJlbGF0aXZlfS5zcGxpZGVfX3NsaWRlIGltZ3t2ZXJ0aWNhbC1hbGlnbjpib3R0b219LnNwbGlkZV9fc2xpZGVye3Bvc2l0aW9uOnJlbGF0aXZlfS5zcGxpZGVfX3NwaW5uZXJ7YW5pbWF0aW9uOnNwbGlkZS1sb2FkaW5nIDFzIGxpbmVhciBpbmZpbml0ZTtib3JkZXI6MnB4IHNvbGlkICM5OTk7Ym9yZGVyLWxlZnQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7Ym90dG9tOjA7Y29udGFpbjpzdHJpY3Q7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjIwcHg7bGVmdDowO21hcmdpbjphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MjBweH0uc3BsaWRlX190cmFja3tvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDowfUBrZXlmcmFtZXMgc3BsaWRlLWxvYWRpbmd7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19LnNwbGlkZS0tZHJhZ2dhYmxlPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaywuc3BsaWRlLS1kcmFnZ2FibGU+LnNwbGlkZV9fdHJhY2t7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnNwbGlkZS0tZmFkZT4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdCwuc3BsaWRlLS1mYWRlPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3R7ZGlzcGxheTpibG9ja30uc3BsaWRlLS1mYWRlPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0Pi5zcGxpZGVfX3NsaWRlLC5zcGxpZGUtLWZhZGU+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdD4uc3BsaWRlX19zbGlkZXtsZWZ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6MH0uc3BsaWRlLS1mYWRlPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0Pi5zcGxpZGVfX3NsaWRlLmlzLWFjdGl2ZSwuc3BsaWRlLS1mYWRlPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGUuaXMtYWN0aXZle29wYWNpdHk6MTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LnNwbGlkZS0tcnRse2RpcmVjdGlvbjpydGx9LnNwbGlkZS0tdHRiLmlzLWFjdGl2ZT4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdCwuc3BsaWRlLS10dGIuaXMtYWN0aXZlPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3R7ZGlzcGxheTpibG9ja30uc3BsaWRlX19hcnJvd3stbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQ6I2NjYztib3JkZXI6MDtib3JkZXItcmFkaXVzOjUwJTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MmVtOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3BhY2l0eTouNztwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt3aWR0aDoyZW07ei1pbmRleDoxfS5zcGxpZGVfX2Fycm93IHN2Z3tmaWxsOiMwMDA7aGVpZ2h0OjEuMmVtO3dpZHRoOjEuMmVtfS5zcGxpZGVfX2Fycm93OmhvdmVye29wYWNpdHk6Ljl9LnNwbGlkZV9fYXJyb3c6Zm9jdXN7b3V0bGluZTpub25lfS5zcGxpZGVfX2Fycm93LS1wcmV2e2xlZnQ6MWVtfS5zcGxpZGVfX2Fycm93LS1wcmV2IHN2Z3t0cmFuc2Zvcm06c2NhbGVYKC0xKX0uc3BsaWRlX19hcnJvdy0tbmV4dHtyaWdodDoxZW19LnNwbGlkZV9fcGFnaW5hdGlvbntib3R0b206LjVlbTtsZWZ0OjA7cGFkZGluZzowIDFlbTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3otaW5kZXg6MX0uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdle2JhY2tncm91bmQ6I2NjYztib3JkZXI6MDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6OHB4O21hcmdpbjozcHg7b3BhY2l0eTouNztwYWRkaW5nOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGxpbmVhcjt3aWR0aDo4cHh9LnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZS5pcy1hY3RpdmV7YmFja2dyb3VuZDojZmZmO3RyYW5zZm9ybTpzY2FsZSgxLjQpfS5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2U6aG92ZXJ7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouOX0uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlOmZvY3Vze291dGxpbmU6bm9uZX0uc3BsaWRlX19wcm9ncmVzc19fYmFye2JhY2tncm91bmQ6I2NjYztoZWlnaHQ6M3B4fS5zcGxpZGUtLW5hdj4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdD4uc3BsaWRlX19zbGlkZSwuc3BsaWRlLS1uYXY+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdD4uc3BsaWRlX19zbGlkZXtib3JkZXI6M3B4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyfS5zcGxpZGUtLW5hdj4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdD4uc3BsaWRlX19zbGlkZS5pcy1hY3RpdmUsLnNwbGlkZS0tbmF2Pi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGUuaXMtYWN0aXZle2JvcmRlcjozcHggc29saWQgIzAwMH0uc3BsaWRlLS1uYXY+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGU6Zm9jdXMsLnNwbGlkZS0tbmF2Pi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGU6Zm9jdXN7b3V0bGluZTpub25lfS5zcGxpZGUtLXJ0bD4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYsLnNwbGlkZS0tcnRsPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYsLnNwbGlkZS0tcnRsPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldntsZWZ0OmF1dG87cmlnaHQ6MWVtfS5zcGxpZGUtLXJ0bD4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYgc3ZnLC5zcGxpZGUtLXJ0bD4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHN2Zywuc3BsaWRlLS1ydGw+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHN2Z3t0cmFuc2Zvcm06c2NhbGVYKDEpfS5zcGxpZGUtLXJ0bD4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQsLnNwbGlkZS0tcnRsPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQsLnNwbGlkZS0tcnRsPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dHtsZWZ0OjFlbTtyaWdodDphdXRvfS5zcGxpZGUtLXJ0bD4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQgc3ZnLC5zcGxpZGUtLXJ0bD4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2Zywuc3BsaWRlLS1ydGw+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2Z3t0cmFuc2Zvcm06c2NhbGVYKC0xKX0uc3BsaWRlLS10dGI+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LC5zcGxpZGUtLXR0Yj4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LC5zcGxpZGUtLXR0Yj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3d7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKX0uc3BsaWRlLS10dGI+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2LC5zcGxpZGUtLXR0Yj4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2LC5zcGxpZGUtLXR0Yj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXZ7dG9wOjFlbX0uc3BsaWRlLS10dGI+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHN2Zywuc3BsaWRlLS10dGI+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmcsLnNwbGlkZS0tdHRiPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmd7dHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpfS5zcGxpZGUtLXR0Yj4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQsLnNwbGlkZS0tdHRiPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQsLnNwbGlkZS0tdHRiPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dHtib3R0b206MWVtO3RvcDphdXRvfS5zcGxpZGUtLXR0Yj4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQgc3ZnLC5zcGxpZGUtLXR0Yj4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2Zywuc3BsaWRlLS10dGI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2Z3t0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0uc3BsaWRlLS10dGI+LnNwbGlkZV9fcGFnaW5hdGlvbiwuc3BsaWRlLS10dGI+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3BhZ2luYXRpb257Ym90dG9tOjA7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bGVmdDphdXRvO3BhZGRpbmc6MWVtIDA7cmlnaHQ6LjVlbTt0b3A6MH0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICdzYXNzOm1hcCc7XHJcblxyXG46cm9vdCB7XHJcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XHJcbn1cclxuXHJcbi8vIEJPRFlcclxuYm9keSB7XHJcblxyXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lOy8qIHN0b3AgaW9zIHpvb21pbmcgdGV4dCAgb24gb3JpZW50YXRpb24gY2hhbmdlICovXHJcblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XHJcbiAgICB0ZXh0LXNpemUtYWRqdXN0OiBub25lO1xyXG5cclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcclxuXHJcbiAgICBmb250LXNpemU6IHJlbSgxMyk7XHJcbiAgICBmb250LWZhbWlseTogc2V0Zm9udChcImZhbWlseVwiLCBcInByaW1hcnlcIik7XHJcbiAgICBmb250LXdlaWdodDogc2V0Zm9udChcIndlaWdodFwiLCBcImxpZ2h0XCIpO1xyXG5cclxuICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lcywgJ2RlZmF1bHQnLCAnZ3JheScsICdiYXNlJyk7XHJcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICdibGFjaycsICdiYXNlJyk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEzKTtcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xyXG5cclxufVxyXG5cclxuYm9keS50aGVtZS0tZGFyayB7XHJcbiAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ2JsYWNrJywgJ2Jhc2UnKTtcclxuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ3doaXRlJywgJ2Jhc2UnKTtcclxufVxyXG5cclxuXHJcbi8vIFBBUkFHUkFQSCBBTkQgTElOS1NcclxucCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xyXG5cclxuICAgIGZvbnQtc2l6ZTogcmVtKDEzKTtcclxuICAgIGZvbnQtZmFtaWx5OiBzZXRmb250KFwiZmFtaWx5XCIsIFwicHJpbWFyeVwiKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBzZXRmb250KFwid2VpZ2h0XCIsIFwibGlnaHRcIik7XHJcblxyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICBjb2xvcjogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgIH1cclxufVxyXG5cclxuYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFNUUk9OR1xyXG5iLCBzdHJvbmcge1xyXG4gICAgZm9udC13ZWlnaHQ6IHNldGZvbnQoXCJ3ZWlnaHRcIiwgXCJzZW1pYm9sZFwiKTtcclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcblxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbmgxLCBoMiwgaDMge1xyXG4gICAgZm9udC13ZWlnaHQ6IHNldGZvbnQoXCJ3ZWlnaHRcIiwgXCJzZW1pYm9sZFwiKTtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNSk7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjkpO1xyXG4gICAgfVxyXG59XHJcblxyXG5oNCwgaDUsIGg2IHtcclxuICAgIGZvbnQtd2VpZ2h0OiBzZXRmb250KFwid2VpZ2h0XCIsIFwic2VtaWJvbGRcIik7XHJcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNSk7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xyXG4gICAgfVxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuXHJcbi5sb2FkaW5nIHtcclxuXHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiA1MDAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBzZXRjb2xvcihcIndoaXRlXCIpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2JyYW5kIHtcclxuXHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9icmFuZF9pY29uLnN2Zyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICAgICAgICB3aWR0aDogcmVtKDU2KTtcclxuICAgICAgICBoZWlnaHQ6IHJlbSg3Nyk7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgd2lkdGg6IHJlbSg3NCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDEwMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgd2lkdGg6IHJlbSgxMDkpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxNTApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRoZW1lLS1kYXJrIC5sb2FkaW5nX19icmFuZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JyYW5kX2ljb25fd2hpdGUuc3ZnKTtcclxufVxyXG5cclxuXHJcbi50cmFuc2l0aW9uIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDk5O1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLnRyYW5zaXRpb24gbGkge1xyXG4gICAgd2lkdGg6IDIwJTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZTtcclxuICB9IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcbkB1c2UgJ3Nhc3M6bWFwJztcclxuXHJcblxyXG4vLyB3cmFwcGVyID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4ud3JhcHBlcl9ndXRlbmJlcmcge1xyXG5cclxuICAgIC8vIEVNXHJcbiAgICBlbSB7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIExJTktTXHJcbiAgICBhIHtcclxuICAgICAgICBAZXh0ZW5kIC5saW5lLXRocm91Z2g7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4vLyBpbWFnZSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmdiLWJsb2NrLWltYWdlIGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vIFJvdyBmZWF0dXJlZCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLnJvdy0tZmVhdHVyZWQge1xyXG4gICAgYmFja2dyb3VuZDogI2RlZDhjYTtcclxuICAgIHAge1xyXG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ2JsYWNrJywgJ2Jhc2UnKTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjNjY2O1xyXG4gICAgfVxyXG4gICAgLmxpbmVfaGVhZGluZzphZnRlciAge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lcywgJ2RlZmF1bHQnLCAnYmxhY2snLCAnYmFzZScpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHkudGhlbWUtLWRhcmsgLnJvdy0tZmVhdHVyZWQge1xyXG4gICAgYmFja2dyb3VuZDogI2RlZDhjYTtcclxuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ2JsYWNrJywgJ2Jhc2UnKTtcclxufVxyXG5cclxuLy8gaGVhZGluZCB3aXRoIGxpbmUgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5saW5lX2hlYWRpbmcgIHtcclxuICAgIFxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxleDogMSAxIDBweDtcclxuICAgICAgICBoZWlnaHQ6IDFweDsgICAgICAgIFxyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lcywgJ2RlZmF1bHQnLCAnYmxhY2snLCAnYmFzZScpO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuYm9keS50aGVtZS0tZGFyayAubGluZV9oZWFkaW5nOmFmdGVyICB7XHJcbiAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ3doaXRlJywgJ2Jhc2UnKTtcclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuI3dyYXAge1xyXG4gICAgLy8gaGVpZ2h0OiAxMDB2aDtcclxuICAgIC8vIHdpZHRoOiAxMDAlO1xyXG4gICAgLy8gdG9wOiAwO1xyXG4gICAgLy8gbGVmdDogMDtcclxuICAgIC8vIHNjcm9sbC1iZWhhdmlvcjogYXV0bztcclxuICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLndyYXBwZXIge1xyXG5cclxuICAgIC8vIGFuY2h1cmFzXHJcbiAgICAmX19leHRyYWxhcmdlIHtcclxuICAgICAgICBAZXh0ZW5kICVtYXgtd2lkdGgtZXh0cmFsYXJnZTtcclxuICAgIH1cclxuICAgICZfX2xhcmdlIHtcclxuICAgICAgICBAZXh0ZW5kICVtYXgtd2lkdGgtbGFyZ2U7XHJcbiAgICB9XHJcbiAgICAmX19tZWRpdW0ge1xyXG4gICAgICAgIEBleHRlbmQgJW1heC13aWR0aC1tZWRpdW07XHJcbiAgICB9XHJcbiAgICAmX19zbWFsbCB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWF4LXdpZHRoO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2Z1bGwge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHNpbmdsZXNcclxuICAgICZfX3NpbmdsZSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgxMjApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oNTApO1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgxNzApO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjE1KTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgxNTApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5oZWFkZXJfX2JyYW5kIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDIwMDA7XHJcbiAgICBAaW5jbHVkZSBkaXN0YW5jZSh0b3ApO1xyXG4gICAgQGluY2x1ZGUgZGlzdGFuY2UobGVmdCk7XHJcbiAgICAvLyBzdmdcclxuICAgIHN2ZyB7XHJcbiAgICAgICAgd2lkdGg6IHJlbSgxNDApO1xyXG4gICAgICAgIGhlaWdodDogcmVtKDI3KTtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMTg5KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMzYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHBhdGgge1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgZmlsbDogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuXHJcbkBtaXhpbiBkaXN0YW5jZSgkcHJvcGVydHkpIHtcclxuICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWFyZ2luLXhzKTtcclxuICAgIEBpbmNsdWRlIHNtIHtcclxuICAgICAgICAjeyRwcm9wZXJ0eX06IHZhcigtLW1hcmdpbi1zbSk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgI3skcHJvcGVydHl9OiB2YXIoLS1tYXJnaW4tbWQpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWFyZ2luLWxnKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAjeyRwcm9wZXJ0eX06IHZhcigtLW1hcmdpbi14bCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgICN7JHByb3BlcnR5fTogdmFyKC0tbWFyZ2luLXh4bCk7XHJcbiAgICB9XHJcbn1cclxuICAiLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5oZWFkZXJfX21vZGUge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogMjAwMDtcclxuICAgIHJpZ2h0OiByZW0oNjUpO1xyXG4gICAgQGluY2x1ZGUgZGlzdGFuY2UodG9wKTtcclxuICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICByaWdodDogcmVtKDc1KTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICByaWdodDogaW5pdGlhbDtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG4gICAgLy8gc3BhblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgdG9wOiBpbml0aWFsO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBsaW5rXHJcbiAgICBhIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTIwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gc3ZnXHJcbiAgICBzdmcge1xyXG4gICAgICAgIHdpZHRoOiByZW0oMjkpO1xyXG4gICAgICAgIGhlaWdodDogcmVtKDQwKTtcclxuICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzYpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg0OSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcGF0aCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBmaWxsOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRoZW1lLS1kYXJrIHtcclxuICAgIC5oZWFkZXJfX21vZGVfX2Rhcmsge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50aGVtZS0tZGVmYXVsdCB7XHJcbiAgICAuaGVhZGVyX19tb2RlX19saWdodCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLmhlYWRlcl9fbWVudSB7XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogMTIwMDtcclxuICAgIEBpbmNsdWRlIGRpc3RhbmNlKHRvcCk7XHJcbiAgICBAaW5jbHVkZSBkaXN0YW5jZShyaWdodCk7XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblxyXG4gICAgLy8gb3BlbiAvIGNyb3NzXHJcbiAgICAmX19vcGVuIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgICB9XHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gdGV4dFxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDEwcHgsIC0xN3B4KTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBvcGVuIG1lbnVcclxuLm9wZW5fbWVudSxcclxuLmxpZ2h0Z2FsbGVyeS1vcGVuIHtcclxuICAgIC5oZWFkZXJfX21lbnVfX29wZW4gc3ZnIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB9XHJcbiAgICAvLyAuaGVhZGVyX19tZW51IHNwYW4ge1xyXG4gICAgLy8gICAgIG9wYWNpdHk6IDA7XHJcbiAgICAvLyB9XHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5oZWFkZXJfX3NvY2lhbCB7XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIGJvdHRvbTogcmVtKDgwKTtcclxuICAgIEBpbmNsdWRlIGRpc3RhbmNlKHJpZ2h0KTtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgYm90dG9tOiByZW0oNTApO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIGJvdHRvbTogcmVtKDE1MCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIGJvdHRvbTogcmVtKDE4MCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gbGlua3NcclxuICAgIGEge1xyXG4gICAgICAgIG1hcmdpbjogcmVtKDIwKSAwIDAgMDtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIHJlbSg1MCkgMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gc3ZnXHJcbiAgICBzdmcge1xyXG4gICAgICAgIHdpZHRoOiByZW0oMTIpO1xyXG4gICAgICAgIGhlaWdodDogcmVtKDEyKTtcclxuICAgIH1cclxuICAgIHBhdGgge1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgZmlsbDogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi8vIGNvbnRhaW5lclxyXG4uaGVhZGVyX19tZW51X19jb250ZW50IHtcclxuXHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG5cclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgLmhlYWRlcl9fbWVudV9fYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogc2V0Y29sb3IoXCJ3aGl0ZVwiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4vLyB3cmFwXHJcbi5oZWFkZXJfX21lbnVfX3dyYXAge1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDUwMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICBwYWRkaW5nOiAwIHJlbSgxNSk7XHJcblxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDEwMCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTUwKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBjbG9zZVxyXG4gICAgLmhlYWRlcl9fbWVudV9fY2xvc2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBAaW5jbHVkZSBkaXN0YW5jZSh0b3ApO1xyXG4gICAgICAgIEBpbmNsdWRlIGRpc3RhbmNlKHJpZ2h0KTtcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBtZW51IHRvcFxyXG4gICAgJl9fdG9wIHtcclxuXHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1dmg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTV2aDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTIwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDI1MCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIGxpc3RcclxuICAgIHVsIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGxpbmtcclxuICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBtZW51XHJcbiAgICAubWVudSB7XHJcblxyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcblxyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjUpO1xyXG5cclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHNldGZvbnQoJ3dlaWdodCcsJ3JlZ3VsYXInKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgICAgICBAZXh0ZW5kIC5saW5lLXRocm91Z2g7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oNDgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBsaW5lYSBhbmltYWRhXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogcmVtKDIpO1xyXG4gICAgICAgICAgICAgICAgLy8gdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogcmVtKDMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBtZW51IG9wZW5cclxuLm9wZW5fbWVudSAuaGVhZGVyX19tZW51X19jbG9zZSBzdmcge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG5mb290ZXIge1xyXG5cclxuICAgIC5mb290ZXJfd3JhcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgIEBleHRlbmQgJW1heC13aWR0aC1sYXJnZTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDMwKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDMwKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEwMCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDE0MCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTQwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gYmxvY2tcclxuICAgIC5mb290ZXJfX2Jsb2NrIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJfX2Jsb2NrX19pbmZvIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNTApO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHBhcmFncmFwaFxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyBsaXN0XHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgICAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIC8vIHRpdGxlc1xyXG4gICAgaDUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogNDJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTVweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gbGlua3NcclxuICAgIGEge1xyXG4gICAgICAgIEBleHRlbmQgLmxpbmUtdGhyb3VnaDtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsaSwgYSwgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG4gICAgXHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5mb290ZXJfX2JhciB7XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogMjAwMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuXHJcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcclxuICAgIEBpbmNsdWRlIGRpc3RhbmNlKHBhZGRpbmctbGVmdCk7XHJcbiAgICBAaW5jbHVkZSBkaXN0YW5jZShwYWRkaW5nLXJpZ2h0KTtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEwKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMTUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgQGV4dGVuZCAubGluZS10aHJvdWdoO1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaG9tZSAuZm9vdGVyX19iYXIsXHJcbi5zaW5nbGUgLmZvb3Rlcl9fYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuQHVzZSAnc2FzczptYXAnO1xyXG5cclxuLnNlY3Rpb25fX2ludHJvIHsgIFxyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwdmg7XHJcblxyXG4gICAgLnNlY3Rpb25fX3dyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW46IDE1dmggMCA1dmg7IFxyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1dmg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDEwdmggMCAwIDA7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwdmg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxNXZoIDAgMCA1dmg7IFxyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNXZoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbl9fd3JhcCB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWF4LXdpZHRoLWxhcmdlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbl9fY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNSU7XHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1JTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDV2dztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICYuc2VjdGlvbl9faGVhZGVyIHtcclxuICAgICAgICAuc2VjdGlvbl9fd3JhcHBlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMjB2aCAwIDEwdmg7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyMHZoO1xyXG4gICAgICAgICAgICB9ICAgICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiA0MHZoIDAgMTB2aDsgXHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyNXZoO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgJi5zZWN0aW9uX19oYWlybGluZSB7XHJcbiAgICAgICAgLnNlY3Rpb25fX2NvbnRlbnQge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogN3Z3O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4OyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlY3Rpb25fX21pZGRsZSB7XHJcbiAgICAgICAgLnNlY3Rpb25fX2NvbnRlbnQge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlY3Rpb25fX2xhcmdlLWZvbnQge1xyXG4gICAgICAgIC5zZWN0aW9uX19jb250ZW50IHtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7ICBcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7ICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlY3Rpb25fX2JsYWNrIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ3NlY29uZGFyeScsICdsaWdodCcpO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuYm9keS50aGVtZS0tZGFyayB7XHJcbiAgICAuc2VjdGlvbl9fYmxhY2sge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lcywgJ2RhcmsnLCAnc2Vjb25kYXJ5JywgJ2RhcmsnKTtcclxuICAgIH1cclxufVxyXG5cclxuLnNlY3Rpb25fX2luZm8ge1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICBAZXh0ZW5kICVtYXgtd2lkdGgtZXh0cmFsYXJnZTtcclxuXHJcbiAgICBwIHtcclxuXHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9ICAgIFxyXG5cclxufSIsIi5ob21lIC5mcm9udHBhZ2VfX3N0ZXBzIHtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuXHJcbi8vIHNjcm9sbFxyXG4uZnJvbnRwYWdlX19zY3JvbGwge1xyXG5cclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDUwMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIGJvdHRvbTogcmVtKDUwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG5cclxuICAgICYuZW5hYmxlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHN2Z1xyXG4gICAgcGF0aCwgdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBmaWxsOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGxpbmUge1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgc3Ryb2tlOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGxpbmVcclxuICAgIC5mcm9udHBhZ2VfX3Njcm9sbF9fbGluZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBib3R0b206IHJlbSgxNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIHdpZHRoOiByZW0oMSk7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0oNDApO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc2Nyb2xsIDEuNXMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBzY3JvbGwgaW5kaWNhdG9yXHJcbkBrZXlmcmFtZXMgc2Nyb2xsIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gICAgfVxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuXHJcbi5mcm9udHBhZ2VfX2ludHJvIHtcclxuXHJcbiAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAvLyBzdmcgLyBjb2xvcnNcclxuICAgIHBhdGgge1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgZmlsbDogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gYnJhbmRcclxuICAgIC5mcm9udHBhZ2VfX2JyYW5kIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGJyYW5kIC8gaWNvblxyXG4gICAgLmZyb250cGFnZV9fYnJhbmRfX2ljb24ge1xyXG4gICAgICAgIHdpZHRoOiByZW0oNTYpO1xyXG4gICAgICAgIGhlaWdodDogcmVtKDc3KTtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNzQpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxMDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMTA5KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTUwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gYnJhbmQgLyBsb2dvXHJcbiAgICAuZnJvbnRwYWdlX19icmFuZF9fdGV4dCB7XHJcblxyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xyXG5cclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMXMgMXM7XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjE2KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDIpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDI4NCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg1NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgzODEpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oNzMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBhbmltYWNpb24gZW50cmFkYVxyXG4ubG9hZGVkIC5mcm9udHBhZ2VfX2JyYW5kX190ZXh0IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBoZWlnaHQ6IHJlbSg0Nyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0oMzApO1xyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgIGhlaWdodDogcmVtKDU1KTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICBoZWlnaHQ6IHJlbSg3Myk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDYwKTtcclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcblxyXG4vLyBzbGlkZXJcclxuLmZyb250cGFnZV9fc2xpZGVyIHtcclxuXHJcbiAgICAvLyBtYXJnaW4tdG9wOiAxMDB2aDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA1MHZoO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIH1cclxuXHJcbiAgICAvLyB3cmFwXHJcbiAgICAuc3dpcGVyIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaXRlbXNcclxuICAgIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gcGFnaW5hdGlvblxyXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcclxuICAgICAgICBib3R0b206IHJlbSg4MCk7XHJcbiAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5MDBweDtcclxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZG90c1xyXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XHJcbiAgICAgICAgd2lkdGg6IHJlbSgxMik7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0oMTIpO1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogc2V0Y29sb3IoXCJ3aGl0ZVwiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4uZnJvbnRwYWdlX19nYWxsZXJ5IHtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuXHJcbi5mcm9udHBhZ2VfX2NsYWltIHtcclxuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMjB2aDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMnM7ICAgICAgICBcclxuICAgICAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbWFpbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAxNDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMTEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHBhZGRpbmctbGVmdDogcmVtKDUwKTtcclxuICAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiByZW0oNTApO1xyXG4gICAgICAgIC8vIEBpbmNsdWRlIHNtIHtcclxuICAgICAgICAvLyAgICAgcGFkZGluZy1sZWZ0OiByZW0oNTApO1xyXG4gICAgICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNTApO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgLy8gICAgIHBhZGRpbmctbGVmdDogcmVtKDc1KTtcclxuICAgICAgICAvLyAgICAgcGFkZGluZy1yaWdodDogcmVtKDc1KTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgLy8gQGluY2x1ZGUgeGwge1xyXG4gICAgICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMDApO1xyXG4gICAgICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMTAwKTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjNzO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufSIsIi5ob21lIHtcclxuXHJcbiAgICBoZWFkZXIubWFpbi1oZWFkZXIsIC5mb290ZXJfX2JhciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLnNocmluayB7XHJcbiAgICAgICAgaGVhZGVyLm1haW4taGVhZGVyLCAuZm9vdGVyX19iYXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyX19zb2NpYWwge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5wcm9qZWN0c19fZ2FsbGVyeSB7XHJcblxyXG4gICAgLy8gcGFkZGluZy10b3A6IHJlbSg4MCk7XHJcbiAgICAvLyBwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcclxuICAgIC8vIEBpbmNsdWRlIG1kIHtcclxuICAgIC8vICAgICBwYWRkaW5nLXRvcDogcmVtKDEwMCk7XHJcbiAgICAvLyAgICAgcGFkZGluZy1ib3R0b206IHJlbSg5MCk7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gaXRlbXMgLyBjb21tb25cclxuICAgIC5ncmlkLXNpemVyLFxyXG4gICAgLmdyaWRfX2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCByZW0oNTApIDA7XHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDUwKSByZW0oNTApIHJlbSg1MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ncmlkX19pdGVtX193cmFwIHtcclxuICAgICAgICBtYXJnaW46IDAgMCByZW0oMjUpIDA7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCByZW0oNDApIDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIGltYWdlblxyXG4gICAgaW1nIHtcclxuICAgICAgICAvLyBwYWRkaW5nOiAwIDAgcmVtKDMwKSAwO1xyXG4gICAgICAgIC8vIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICAvLyAgICAgcGFkZGluZzogMCAwIHJlbSg2MCkgMDtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gdGV4dFxyXG4gICAgcCB7XHJcbiAgICAgICAgLy8gdGV4dC1pbmRlbnQ6IDgwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGg2IHtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgxMyk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHNldGZvbnQoJ3dlaWdodCcsICdsaWdodCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGl0ZW1zIC8gdmFyaWFudHNcclxuICAgIC5ncmlkX19pdGVtIHtcclxuICAgICAgICAmOm50aC1jaGlsZCgxbikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg4MCkgcmVtKDEyMCkgcmVtKDYwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgybikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg5MCkgcmVtKDEyMCkgcmVtKDYwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgzbikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgxMDApIHJlbSgxMjApIHJlbSg2MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoNG4pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCByZW0oODApIHJlbSgxMjApIHJlbSgzMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoNW4pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCByZW0oMTAwKSByZW0oMTIwKSByZW0oMzApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDZuKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDEwMCkgcmVtKDEyMCkgcmVtKDEwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoN24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCByZW0oNTApIHJlbSgxMjApIHJlbSg4MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKDhuKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDEwMCkgcmVtKDEyMCkgcmVtKDQwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQoOW4pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCByZW0oMTIwKSByZW0oMTUwKSByZW0oNTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jYXNlcyAge1xyXG4gICAgXHJcbiAgICAuc2VjdGlvbl9faW50cm8ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbi1ncm91cCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICBAZXh0ZW5kICVtYXgtd2lkdGgtZXh0cmFsYXJnZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLmNhc2VzX19nYWxsZXJ5IHtcclxuXHJcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSg1MCk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNTApO1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oODApO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg4MCk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMDApO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxMDApO1xyXG4gICAgfVxyXG5cclxuICAgIC5ncmlkIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGl0ZW1zIC8gY29tbW9uXHJcbiAgICAuZ3JpZC1zaXplcixcclxuICAgIC5ncmlkX19pdGVtIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgcmVtKDEyMCkgMDtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oNTApIHJlbSgxMDApIHJlbSg1MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg3MCkgcmVtKDEwMCkgcmVtKDcwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg5MCkgcmVtKDEyKSByZW0oOTApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgxNDApIHJlbSgxNTApIHJlbSgxNDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3JpZF9faXRlbSB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICAgLy8gJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgIC8vICAgICBwYWRkaW5nLXRvcDogcmVtKDUwKTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgLy8gJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgIC8vICAgICBwYWRkaW5nLXRvcDogcmVtKDgwKTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdyaWRfX2l0ZW1fX3dyYXAge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIHJlbSgyNSkgMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgcmVtKDQwKSAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBpbWFnZW5cclxuICAgIGltZyB7XHJcbiAgICAgICAgLy8gcGFkZGluZzogMCAwIHJlbSgzMCkgMDtcclxuICAgICAgICAvLyBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgLy8gICAgIHBhZGRpbmc6IDAgMCByZW0oNjApIDA7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIHRleHRcclxuICAgIHAge1xyXG4gICAgICAgIC8vIHRleHQtaW5kZW50OiA4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTMpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzVweCwgLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IDE1MHB4OyAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgaDYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEzKTtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzNXB4LCAtNTAlKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDMwMCUpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDgpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBzZXRmb250KCd3ZWlnaHQnLCAnbGlnaHQnKTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcclxuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcclxuXHJcbiAgICAuZ3JpZF9faXRlbV9fZmFrZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5ncmlkX19pdGVtX19pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTIwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICB9XHJcblxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3Qge1xyXG4gICAgZm9vdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGFjdF9faW50cm8ge1xyXG4gICAgXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMzV2aCAwIDI1dmggMDtcclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgZmxleDogMSAxIDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xyXG4gICAgICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA0MnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4uY29udGFjdF9faW5mbyB7XHJcblxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwdmg7ICAgIFxyXG5cclxuICAgIC5jb250YWN0X19pbmZvX19jb250ZW50IHtcclxuICAgICAgICBcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE2MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7IFxyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg4MDApO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAsIGg1LCBhIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgICAgICAgICAgIEBleHRlbmQgLmxpbmUtdGhyb3VnaDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jbG9jayB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RfX2luZm9fX2Jsb2NrIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyAgXHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdF9faW5mb19fY2l0eV9fZmFrZSB7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgfSAgICBcclxuXHJcbiAgICAuY29udGFjdF9faW5mb19fY2l0eSB7ICBcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0X19pbmZvX19hZGRyZXNzLFxyXG4gICAgLmNvbnRhY3RfX2luZm9fX2VtYWlsICsgLmNvbnRhY3RfX2luZm9fX2VtYWlsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RfX2luZm9fX2VtYWlsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7ICAgICAgICBcclxuICAgICAgICBoNSAge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5AdXNlICdzYXNzOm1hcCc7XHJcblxyXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWpvYnMge1xyXG4gICAgZm9vdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ3NlY29uZGFyeScsICdsaWdodCcpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5LnRoZW1lLS1kYXJrIHtcclxuICAgICYucGFnZS10ZW1wbGF0ZS1wYWdlLWpvYnMge1xyXG4gICAgICAgIGZvb3RlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lcywgJ2RhcmsnLCAnc2Vjb25kYXJ5JywgJ2RhcmsnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uam9iX19ncmlkIHtcclxuICAgIEBleHRlbmQgJW1heC13aWR0aC1sYXJnZTtcclxufVxyXG5cclxuLmpvYl9faXRlbSArIC5qb2JfX2l0ZW0ge1xyXG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTIwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5qb2JfX2l0ZW0ge1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiA1MHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGdhcDogMTUwcHg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuam9iX19jYXJkIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qb2JfX2Rlc2NyaXB0aW9uIHtcclxuXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuam9iX19kZXNjcmlwdGlvbl9fdGV4dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuam9iX19kZXNjcmlwdGlvbl9fY29udGFjdCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwJTtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLmpvYl9fY2FyZCB7XHJcblxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIHBhZGRpbmc6IDMwcHggMzBweCAzMHB4IDMwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgZ2FwOiAxNTBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCA1MHB4IDUwcHggNTBweDtcclxuICAgICAgICBnYXA6IDE4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAxMzBweCA4MHB4IDgwcHggODBweDtcclxuICAgICAgICBnYXA6IDE4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6bm90KC5hY3RpdmUpIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gY2FyZCBoZWFkZXJcclxuXHJcbiAgICAuam9iX19jYXJkX19oZWFkZXIge1xyXG5cclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBjcmFkIGZvb3RlclxyXG5cclxuICAgIC5qb2JfX2NhcmRfX2Zvb3RlciB7XHJcblxyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgICAgICAgICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuam9iX19jYXJkX19ob3ZlciB7XHJcblxyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweCAzMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDUwcHggNTBweCA1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMzBweCA4MHB4IDgwcHggODBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2V0Y29sb3IoXCJ3aGl0ZVwiKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5qb2JfX2NhcmRfX2Nsb3NlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMzBweDtcclxuICAgICAgICAgICAgYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogODBweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogODBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4vLyAucGFnZS10ZW1wbGF0ZS1wYWdlLXRlYW0ge1xyXG4vLyAgICAgLnN3aXRoX21vZGUge1xyXG4vLyAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4vLyAgICAgfVxyXG4vLyB9XHJcblxyXG4udGVhbV9faW50cm8ge1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyBcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47ICAgXHJcblxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICB9XHJcblxyXG4gICAgLnRlYW1fX2ludHJvX19tZWRpYSxcclxuICAgIC50ZWFtX19pbnRyb19fY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAudGVhbV9faW50cm9fX2NvbnRlbnQgeyAgICAgICAgXHJcbiAgICAgICAgcGFkZGluZzogMjVweCAxM3Z3IDI1cHggN3Z3O1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNTBweCAxM3Z3IDUwcHggN3Z3O1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyAgXHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgc3Ryb25nICB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgICB9ICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRlYW1fX2ludHJvX190aWx0ZSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbiAgICAgICAgfSBcclxuICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzhweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICB9IFxyXG4gICAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLnRlYW1fX21lbWJlcnMge1xyXG5cclxuICAgIHBhZGRpbmctdG9wOiA1dmg7ICAgXHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXZoO1xyXG5cclxuICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTV2aDsgICBcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTV2aDsgXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNldGNvbG9yKFwiZ3JheVwiLCAnZGFyaycpO1xyXG4gICAgfSBcclxuXHJcbiAgICAudGVhbV9fbWVtYmVyc19fd3JhcCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDV2aDsgICBcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1dmg7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGVhbV9fbWVtYmVyc19fbGlzdCB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWF4LXdpZHRoLW1lZGl1bTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiAxMDBweDsgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBnYXA6IDE1MHB4OyAgXHJcbiAgICAgICAgfSBcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGVhbV9fbWVtYmVyc19faXRlbSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgZmxleDogMSAxIDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDAsIC0xMDAlKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgIEBleHRlbmQgLmxpbmUtdGhyb3VnaDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiBcclxuICAgICAgICAudGVhbV9fbWVtYmVyc19fY29udGVudCB7XHJcbiAgICAgICAgICAgIC8vIHRleHQtYWxpZ24tbGFzdDoganVzdGlmeTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogNzUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRlYW1fX21lbWJlcnNfX21lZGlhIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDMwcHg7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhbV9fbWVtYmVyc19fbWVkaWFfX2NvbnRlbnQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhbV9fbWVtYmVyc19fbWVkaWFfX3JvdGF0ZSB7XHJcblxyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDAsIDEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcbiAgICAgICAgICAgIGgzLCBoNCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhbV9fbWVtYmVyc19fY2xhaW0ge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNjBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTIycHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBwLCBoNSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4udGVhbV9fc2VydmljZXMge1xyXG5cclxuICAgIEBleHRlbmQgJW1heC13aWR0aC1sYXJnZTsgICAgXHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTB2aDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwdmg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRlYW1fX3NlcnZpY2VzX190aXRsZSB7ICBcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuICAgICAgICB9IFxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcblxyXG4gICAgLmZ1bGx0aXRsZSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BsaWRlX19zbGlkZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogODBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMDBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcblxyXG4vLyBhanVzdGVzIGV4dHJhc1xyXG4uZ3JpZDphZnRlciB7XHJcbiAgY29udGVudDogJyc7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbn1cclxuXHJcbi8vIGdyaWQgZnVsbFxyXG4uZ3JpZF9fZnVsbCB7XHJcblxyXG4gIC8vIGl0ZW1cclxuICAuZ3JpZF9faXRlbSB7XHJcbiAgICBwYWRkaW5nOiByZW0oMTApIHJlbSgxMCkgIWltcG9ydGFudDtcclxuICAgIC8vIGhvdmVyc1xyXG4gICAgJl9faG92ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcblxyXG4vLyBnZW5lcmFsIGl0ZW1cclxuLmdyaWRfX2l0ZW0ge1xyXG5cclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgIGNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gIH1cclxuXHJcbiAgLy8gbGlua1xyXG4gIGEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLy8gd3JhcFxyXG4gICZfX3dyYXAge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgLy8gaW1hZ2VcclxuICAmX19pbWFnZSB7XHJcblxyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC41cztcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC41cztcclxuICAgIHRyYW5zaXRpb246IGFsbCAuNXM7XHJcblxyXG4gIH1cclxuXHJcbiAgLy8gaWNvblxyXG4gICZfX2ljb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICB9XHJcblxyXG4gIC8vIGhvdmVyc1xyXG4gICZfX2hvdmVyIHtcclxuXHJcbiAgICBvcGFjaXR5OiAwO1xyXG5cclxuICAgIG1hcmdpbi10b3A6IHJlbSgxMCk7XHJcblxyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IHNldGZvbnQoJ3dlaWdodCcsICdib2xkJyk7XHJcblxyXG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBzZXRmb250KCd3ZWlnaHQnLCAnbGlnaHQnKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIC5ncmlkX19pdGVtX19ob3ZlciB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gIH1cclxuXHJcbn0iLCIvLyBwYXJhbGxheCBpdGVtc1xyXG4uZ3JpZF9fcGFyYWxsYXggIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLXRvcDogLTUwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtNTBweDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuNXM7XHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvYmplY3QtZml0OiAxMDAlO1xyXG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcblxyXG4vLyBsYXp5IGNsYXNzZXNcclxuLmxhenlsb2FkZWQge1xyXG4gICAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLmxhenlsb2FkIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbi8vIC5sYXp5bG9hZGluZyB7XHJcbi8vICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChodHRwczovL2FmYXJrYXMuZ2l0aHViLmlvL2xhenlzaXplcy9hc3NldHMvaW1ncy9sb2FkZXIuZ2lmKSBuby1yZXBlYXQgY2VudGVyO1xyXG4vLyAgICAgbWluLWhlaWdodDogNjBweDtcclxuLy8gfVxyXG5cclxuLy8gbGF6eSBpdGVtc1xyXG4uZ3JpZF9fbGF6eSB7XHJcblxyXG4gICAgLmdyaWRfX2l0ZW1fX2ltYWdlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgLy8gaXRlbXMgLyB2YXJpYW50c1xyXG4gICAgLmdyaWRfX2l0ZW0ge1xyXG5cclxuICAgICAgJjpudGgtY2hpbGQoMW4pIHtcclxuICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDUwKSByZW0oMTApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDE1MCkgcmVtKDYwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDJuKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oNDApIHJlbSg1MCkgcmVtKDMwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oOTApIHJlbSgxNTApIHJlbSg2MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCgzbikge1xyXG4gICAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDIwKSByZW0oNTApIHJlbSg2MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDYwKSByZW0oMTUwKSByZW0oODApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtY2hpbGQoNG4pIHtcclxuICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgzMCkgcmVtKDUwKSByZW0oMzApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDE1MCkgcmVtKDcwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDVuKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oNDApIHJlbSg1MCkgcmVtKDcwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oNjApIHJlbSgxNTApIHJlbSg5MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCg2bikge1xyXG4gICAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDMwKSByZW0oNTApIHJlbSg1MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDcwKSByZW0oMTUwKSByZW0oNDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtY2hpbGQoN24pIHtcclxuICAgICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDUwKSByZW0oNDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDE1MCkgcmVtKDgwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDhuKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oMzApIHJlbSg1MCkgcmVtKDQ1KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgcGFkZGluZzogMCByZW0oNjApIHJlbSgxNTApIHJlbSg4MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCg5bikge1xyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDUwKSByZW0oNTApIHJlbSg0MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHhsIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDUwKSByZW0oMTUwKSByZW0oODApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxufSIsIi5ncmlkX19pdGVtX192aWRlbyB7XHJcbiAgICAuZ3JpZF9faXRlbV9fd3JhcCB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiAjMDAwMDAwLCAkYWxwaGE6IC40KTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDUwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLmJ1dHRvbi1ncm91cCB7XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgIHBhZGRpbmctdG9wOiByZW0oMTA1KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMjUpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDE1MCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg1MCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjAwKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gYnV0dG9uc1xyXG4gICAgYnV0dG9uLCBhIHtcclxuXHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTEpO1xyXG4gICAgICAgIG1hcmdpbjogcmVtKDMpIHJlbSg1KTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgcmVtKDE1KTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBjb2xvcjogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBleHRlbmQgLmxpbmUtdGhyb3VnaDtcclxuICAgICAgICAvLyAmOmFmdGVyIHtcclxuICAgICAgICAvLyAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgLy8gfVxyXG5cclxuICAgIH1cclxuXHJcbn0iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5ncmlkX19mdWxsIHtcclxuICAgIC8vIGl0ZW1zIC8gY29tbW9uXHJcbiAgLmdyaWQtc2l6ZXIsXHJcbiAgLmdyaWRfX2l0ZW0ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDAgcmVtKDUwKSAwO1xyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDUwKSByZW0oNTApO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICB3aWR0aDogMjUlO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLy8gaHRtbCwgYm9keSB7IG1hcmdpbjogMDsgaGVpZ2h0OiAxMDAlOyB9XHJcblxyXG4vLyBpdGVtIC8gYWN0aXZlXHJcbiNsaWdodGdhbGxlcnkgLmdyaWRfX2l0ZW0gIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLy8gZ2VuZXJhbCB3cmFwXHJcbi5sZy1vdXRlciB7XHJcbiAgICB6LWluZGV4OiAxNTAwO1xyXG59XHJcblxyXG4vLyBiYWNrZ3JvdW5kXHJcbi5sZy1iYWNrZHJvcCB7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xyXG4gICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKFwid2hpdGVcIik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGVsZW1lbnQgaW5zaWRlIGl0ZW1cclxuLmxnLW91dGVyIC5sZy1pdGVtOmJlZm9yZSxcclxuLmxnLW91dGVyIC5sZy1pbWctd3JhcDpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLy8gem9vbVxyXG4ubGctdG9vbGJhciAubGctem9vbS1pbixcclxuLmxnLXRvb2xiYXIgLmxnLXpvb20tb3V0IHtcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgQGluY2x1ZGUgZGlzdGFuY2UodG9wKTtcclxuICAgIHJpZ2h0OiByZW0oMTEwKTtcclxuICAgIHdpZHRoOiByZW0oMzApO1xyXG4gICAgaGVpZ2h0OiByZW0oMzApO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgcmlnaHQ6IHJlbSgxMjApO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHJpZ2h0OiByZW0oMTAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmxnLXRvb2xiYXIgLmxnLXpvb20tb3V0IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvem9vbS1vdXQuc3ZnKTtcclxufVxyXG5cclxuLnRoZW1lLS1kYXJrIC5sZy10b29sYmFyIC5sZy16b29tLW91dCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3pvb20tb3V0LXdoaXRlLnN2Zyk7XHJcbn1cclxuXHJcbi5sZy10b29sYmFyIC5sZy16b29tLWluIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvem9vbS1pbi5zdmcpO1xyXG59XHJcblxyXG4udGhlbWUtLWRhcmsgLmxnLXRvb2xiYXIgLmxnLXpvb20taW4ge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy96b29tLWluLXdoaXRlLnN2Zyk7XHJcbn1cclxuXHJcbi8vIGZsZWNoYXNcclxuLmxnLW5leHQgLFxyXG4ubGctcHJldiB7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIHdpZHRoOiByZW0oMzApO1xyXG4gICAgaGVpZ2h0OiByZW0oMzApO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5sZy1wcmV2IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYXJyb3ctbGVmdC1ibGFjay5zdmcpXHJcbn1cclxuLnRoZW1lLS1kYXJrIC5sZy1wcmV2IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYXJyb3ctbGVmdC13aGl0ZS5zdmcpXHJcbn1cclxuXHJcbi5sZy1uZXh0IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYXJyb3ctcmlnaHQtYmxhY2suc3ZnKVxyXG59XHJcbi50aGVtZS0tZGFyayAubGctbmV4dCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Fycm93LXJpZ2h0LXdoaXRlLnN2ZylcclxufVxyXG5cclxuLy8gdGV4dG9zXHJcbi5sZy1zdWItaHRtbCB7XHJcblxyXG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg1MCk7XHJcblxyXG4gICAgQGluY2x1ZGUgZGlzdGFuY2UocmlnaHQpO1xyXG5cclxuICAgIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0JywgJ2JvbGQnKTtcclxuXHJcbiAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGJvdHRvbTogcmVtKDEyMCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHNldGZvbnQoJ3dlaWdodCcsICdsaWdodCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC5jbG9zZS1sZyB7XHJcblxyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTMpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgxNSk7XHJcblxyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgQGV4dGVuZCAubGluZS10aHJvdWdoO1xyXG5cclxuICAgIH1cclxufVxyXG5cclxuLy8gY2xvc2VcclxuLmxnLXRvb2xiYXIgLmxnLWNsb3NlIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgIHRvcDogMjVweDtcclxuICAgIHJpZ2h0OiAyNHB4O1xyXG5cclxuICAgIHotaW5kZXg6IDIwMDA7XHJcblxyXG4gICAgaGVpZ2h0OiBpbml0aWFsO1xyXG4gICAgd2lkdGg6IGluaXRpYWw7XHJcbiAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcclxuICAgIHBhZGRpbmc6IGluaXRpYWw7XHJcbiAgICBmb250LXNpemU6IGluaXRpYWw7XHJcblxyXG4gICAgb3BhY2l0eTogMDtcclxuXHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMXB4KTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcblxyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgIHRvcDogMzBweDtcclxuICAgICAgICByaWdodDogMjlweDtcclxuICAgICAgICBoZWlnaHQ6IDkwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHRvcDogNTVweDtcclxuICAgICAgICByaWdodDogNTRweDtcclxuICAgIH1cclxufVxyXG5cclxuLmxnLXpvb21lZCAubGctdG9vbGJhciAubGctY2xvc2UgIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5sZy10b29sYmFyIC5sZy1jbG9zZTphZnRlciB7XHJcblxyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICB3aWR0aDogcmVtKDI0KTtcclxuICAgIGhlaWdodDogcmVtKDI0KTtcclxuXHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2xnLWNsb3NlLnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgLjNzO1xyXG5cclxufVxyXG5cclxuLy8gbG9hZGluZ1xyXG4udGhlbWUtLWRhcmsge1xyXG4gICAgLmxnLXRvb2xiYXIgLmxnLWNsb3NlOmFmdGVyICB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9sZy1jbG9zZS1kYXJrLnN2Zyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sZy1vdXRlciAubGctaXRlbTpub3QoLmxnLXN0YXJ0LWVuZC1wcm9ncmVzcykge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9sZy1sb2FkaW5nLnN2Zykgbm8tcmVwZWF0IHNjcm9sbCBjZW50ZXIgY2VudGVyIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGhlbWUtLWRhcmsgLmxnLW91dGVyIC5sZy1pdGVtOm5vdCgubGctc3RhcnQtZW5kLXByb2dyZXNzKSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2xnLWxvYWRpbmctZGFyay5zdmcpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuXHJcbi8vIC8vIG9wZW4gbGlnaHRnYWxsZXJ5XHJcbi8vIC5sZy1jb21wb25lbnRzLW9wZW4gLmxnLXRvb2xiYXIgLmxnLWNsb3NlOmFmdGVyICB7XHJcbi8vICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbi8vIH1cclxuXHJcbi8vIC5sZy16b29tZWQubGctb3V0ZXIgLmxnLWNvbnRlbnQge1xyXG5cclxuLy8gICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4vLyB9XHJcblxyXG4vLyAubGctY29udGVudCB7XHJcblxyXG4vLyAgICAgLy8gb3ZlcmZsb3c6IHZpc2libGU7XHJcblxyXG5cclxuLy8gICAgIC8vIEBpbmNsdWRlIG1kIHtcclxuLy8gICAgIC8vICAgICBib3R0b206IDAgIWltcG9ydGFudDtcclxuLy8gICAgIC8vIH1cclxuXHJcblxyXG4vLyAgICAgLy8gbWFyZ2luLXRvcDogcmVtKDQwKTtcclxuLy8gICAgIC8vIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XHJcblxyXG4vLyAgICAgLy8gQGluY2x1ZGUgbWQge1xyXG4vLyAgICAgLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vICAgICAvLyAgICAgbWFyZ2luLXRvcDogcmVtKDEzMCk7XHJcbi8vICAgICAvLyAgICAgLy8gbWFyZ2luLWJvdHRvbTogcmVtKDIyMCk7XHJcbi8vICAgICAvLyB9XHJcblxyXG4vLyAgICAgLy8gQGluY2x1ZGUgbGcge1xyXG4vLyAgICAgLy8gICAgIG1hcmdpbi10b3A6IHJlbSgxMDApO1xyXG4vLyAgICAgLy8gICAgIC8vIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XHJcbi8vICAgICAvLyB9XHJcbi8vICAgICAvLyBAaW5jbHVkZSB4eGwge1xyXG4vLyAgICAgLy8gICAgIG1hcmdpbi10b3A6IHJlbSgxMjApO1xyXG4vLyAgICAgLy8gfVxyXG5cclxuLy8gfVxyXG5cclxuLy8gLmxnLW91dGVyIC5sZy1pbm5lciB7XHJcblxyXG4vLyAgICAgLy8gbWFyZ2luLXRvcDogcmVtKDQwKTtcclxuLy8gICAgIC8vIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XHJcblxyXG4vLyAgICAgLy8gQGluY2x1ZGUgbWQge1xyXG4vLyAgICAgLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vICAgICAvLyAgICAgbWFyZ2luLXRvcDogcmVtKDEzMCk7XHJcbi8vICAgICAvLyAgICAgLy8gbWFyZ2luLWJvdHRvbTogcmVtKDIyMCk7XHJcbi8vICAgICAvLyB9XHJcblxyXG4vLyAgICAgLy8gQGluY2x1ZGUgbGcge1xyXG4vLyAgICAgLy8gICAgIG1hcmdpbi10b3A6IHJlbSgxMDApO1xyXG4vLyAgICAgLy8gICAgIC8vIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XHJcbi8vICAgICAvLyB9XHJcbi8vICAgICAvLyBAaW5jbHVkZSB4eGwge1xyXG4vLyAgICAgLy8gICAgIG1hcmdpbi10b3A6IHJlbSgxMjApO1xyXG4vLyAgICAgLy8gfVxyXG4vLyB9XHJcblxyXG4vLyAvLyAubGctem9vbWVkLmxnLW91dGVyIC5sZy1pbm5lciB7XHJcbi8vIC8vICAgICBAaW5jbHVkZSBsZyB7XHJcbi8vIC8vICAgICAgICAgcGFkZGluZzogMDtcclxuLy8gLy8gICAgICAgICBtYXJnaW46IDA7XHJcbi8vIC8vICAgICB9XHJcbi8vIC8vIH1cclxuXHJcbi8vIC5sZy1pdGVtIHtcclxuLy8gICAgIEBpbmNsdWRlIGxnIHtcclxuLy8gICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4vLyAgICAgfVxyXG4vLyB9XHJcblxyXG4vLyB2aWRlb1xyXG4ubGctdmlkZW8tY29udDpub3QoLmxnLWhhcy1pZnJhbWUpICB7XHJcblxyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAvLyBtYXJnaW4tdG9wOiAtMjVweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0zMnB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMzVweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIC5sZy1vdXRlciAubGctb2JqZWN0IHtcclxuLy8gICAgIG1heC1oZWlnaHQ6ODV2aDtcclxuLy8gfVxyXG5cclxuLmxnLWltZy13cmFwIHtcclxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtaW4tYXNwZWN0LXJhdGlvOiAxLzEpICB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLmxnLXpvb21lZC5sZy1vdXRlciAgLmxnLWl0ZW0ge1xyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC03MHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0zNXB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtNTdweDtcclxuICAgIH1cclxufVxyXG5cclxuLmxnLXRvb2xiYXIge1xyXG4gICAgaGVpZ2h0OiByZW0oNDApO1xyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICAgIGhlaWdodDogcmVtKDEzMCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0oMTAwKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0oMTIwKTtcclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5AdXNlICdzYXNzOm1hcCc7XHJcblxyXG4vLyBpbnRybyA9PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uc2luZ2xlX19pbnRybyB7XHJcblxyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG5cclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIC8vIG92ZXIgdGV4dFxyXG4gICZfX292ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMzAwO1xyXG4gICAgYm90dG9tOiAzMHZoO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgd2lkdGg6IDcwJTtcclxuICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgYm90dG9tOiByZW0oMjAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHRpdGxlXHJcbiAgaDEge1xyXG4gICAgZm9udC1mYW1pbHk6IHNldGZvbnQoJ2ZhbWlseScsJ3ByaW1hcnknKSA7XHJcbiAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0Jywnc2VtaWJvbGQnKSA7XHJcbiAgICBmb250LXNpemU6IHJlbSg0MCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNSk7XHJcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICd3aGl0ZScsICdiYXNlJyk7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDYwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHRleHRcclxuICBoNiB7XHJcbiAgICBmb250LXNpemU6IHJlbSgyNik7XHJcbiAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0JywgJ2xpZ2h0Jyk7XHJcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICd3aGl0ZScsICdiYXNlJyk7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDMwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGltYWdlXHJcbiAgaW1nIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogMDtcclxuICB9XHJcblxyXG4gIC8vIGNhcGEgb3NjdXJhXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiAjMDAwMDAwLCAkYWxwaGE6IC40KTtcclxuICB9XHJcblxyXG4gIC8vIHNjcm9sbFxyXG4gIC5mcm9udHBhZ2VfX3Njcm9sbCB7XHJcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICd3aGl0ZScsICdiYXNlJyk7XHJcbiAgICBwYXRoLCB0ZXh0IHtcclxuICAgICAgZmlsbDogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICd3aGl0ZScsICdiYXNlJyk7XHJcbiAgICB9XHJcbiAgICBsaW5lIHtcclxuICAgICAgc3Ryb2tlOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ3doaXRlJywgJ2Jhc2UnKTtcclxuICAgIH1cclxuICAgIC5mcm9udHBhZ2VfX3Njcm9sbF9fbGluZTpiZWZvcmUgIHtcclxuICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICd3aGl0ZScsICdiYXNlJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gZ2VuZXJhbCB3cmFwID09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5zaW5nbGVfX2NvbnRlbnRfX3dyYXAge1xyXG4gIHBhZGRpbmctdG9wOiByZW0oMTA1KTtcclxuICBAaW5jbHVkZSBtZCB7XHJcbiAgICBwYWRkaW5nLXRvcDogcmVtKDE1MCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGxnIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTAwKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIHRleHRvIGNlbnRyYWRvID09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5zaW5nbGVfX3RleHQge1xyXG4gIEBpbmNsdWRlIHhsIHtcclxuICAgIG1heC13aWR0aDogcmVtKDcwMCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi8vIHRleHRvIGZ1bGx3aWR0aCA9PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uc2luZ2xlX190ZXh0X19mdWxsIHsgIFxyXG5cclxuICAuZ2ItaW5zaWRlLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nOiAwIHJlbSgyMCk7XHJcbiAgfVxyXG4gIFxyXG59XHJcblxyXG4vLyBtYXNvbnJ5IGdyaWQgPT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLm1hc29ucnktZ3JpZCB7XHJcbiAgcGFkZGluZzogMCByZW0oMjApO1xyXG4gIEBpbmNsdWRlIGxnIHtcclxuICAgIHBhZGRpbmc6IDAgcmVtKDQwKTtcclxuICB9XHJcbiAgQGluY2x1ZGUgeHhsIHtcclxuICAgIHBhZGRpbmc6IDAgcmVtKDUwKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIGJhY2sgYnV0dG9uICA9PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uc2luZ2xlX19iYWNrIHtcclxuXHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIHN2ZyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICB9XHJcblxyXG4gIHBhdGgge1xyXG4gICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICBmaWxsOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpob3ZlciBzdmcge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vIHNpbmdsZSBnYWxsZXJ5ICA9PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uc2luZ2xlIHtcclxuXHJcbiAgLmdyaWQtc2l6ZXIsXHJcbiAgLmdyaWRfX2l0ZW0ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDAgcmVtKDUwKSAwO1xyXG4gICAgQGluY2x1ZGUgbWQge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDUwKSByZW0oNTApO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICB3aWR0aDogMzMuMyU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgIHdpZHRoOiAzMy4zJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ncmlkX19pdGVtX19pbWFnZSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxuXHJcbiAgLmdyaWRfX2l0ZW1fX2hvcml6b250YWwge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAvLyBpdGVtcyAvIHZhcmlhbnRzXHJcbiAgLmdyaWRfX2l0ZW0ge1xyXG5cclxuICAgICY6bnRoLWNoaWxkKDFuKSB7XHJcbiAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg1MCkgcmVtKDEwMCkgcmVtKDQwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDYwKSByZW0oMTIwKSByZW0oODApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoMm4pIHtcclxuICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDQwKSByZW0oMTAwKSByZW0oNDApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oNjApIHJlbSgxMjApIHJlbSg2MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgzbikge1xyXG4gICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oNTApIHJlbSgxMDApIHJlbSg0MCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg4MCkgcmVtKDEyMCkgcmVtKDYwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDRuKSB7XHJcbiAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg0MCkgcmVtKDEwMCkgcmVtKDYwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDgwKSByZW0oMTIwKSByZW0oNjApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoNW4pIHtcclxuICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDQwKSByZW0oMTAwKSByZW0oNTApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oNzApIHJlbSgxMjApIHJlbSg2MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCg2bikge1xyXG4gICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oNTApIHJlbSgxMDApIHJlbSg0MCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg4MCkgcmVtKDEyMCkgcmVtKDYwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDduKSB7XHJcbiAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg0MCkgcmVtKDEwMCkgcmVtKDYwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDYwKSByZW0oMTIwKSByZW0oODApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoOG4pIHtcclxuICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDUwKSByZW0oMTAwKSByZW0oNjApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oOTApIHJlbSgxMjApIHJlbSg4MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCg5bikge1xyXG4gICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oNjApIHJlbSgxMDApIHJlbSg0MCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg5MCkgcmVtKDEyMCkgcmVtKDcwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC8vIGl0ZW1zIC8gdmFyaWFudHNcclxuICAuZ3JpZF9faXRlbV9faG9yaXpvbnRhbCB7XHJcblxyXG4gICAgJjpudGgtY2hpbGQoMW4pIHtcclxuICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDEyMCkgcmVtKDE1MCkgcmVtKDgwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDIwMCkgcmVtKDI1MCkgcmVtKDE1MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgybikge1xyXG4gICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTAwKSByZW0oMTUwKSByZW0oNjApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTQwKSByZW0oMjUwKSByZW0oMTgwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDNuKSB7XHJcbiAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSgxMDApIHJlbSgxNTApIHJlbSgxMDApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTgwKSByZW0oMjUwKSByZW0oMjAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDRuKSB7XHJcbiAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSgxMzApIHJlbSgxNTApIHJlbSg4MCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSgxNTApIHJlbSgyNTApIHJlbSgyMDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoNW4pIHtcclxuICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDkwKSByZW0oMTUwKSByZW0oMTIwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDIwMCkgcmVtKDI1MCkgcmVtKDE3MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCg2bikge1xyXG4gICAgICBAaW5jbHVkZSBsZyB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTEwKSByZW0oMTUwKSByZW0oNjApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHh4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTcwKSByZW0oMjUwKSByZW0oMjAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDduKSB7XHJcbiAgICAgIEBpbmNsdWRlIGxnIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSg4MCkgcmVtKDE1MCkgcmVtKDEwMCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgeHhsIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHJlbSgxNTApIHJlbSgyNTApIHJlbSgxNTApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoOG4pIHtcclxuICAgICAgQGluY2x1ZGUgbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDEwMCkgcmVtKDE1MCkgcmVtKDkwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDE4MCkgcmVtKDI1MCkgcmVtKDIwMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCg5bikge1xyXG4gICAgICBAaW5jbHVkZSB4bCB7XHJcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTUwKSByZW0oMTAwKSByZW0oMTUwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSB4eGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcmVtKDIzMCkgcmVtKDEyMCkgcmVtKDI0MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLnBhZ2UtaWQtMjgge1xyXG4gICAgZm9vdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4uYmxvY2tfX2JpbyB7XHJcblxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICB6LWluZGV4OiAzMDAwO1xyXG4gICAgICAgIC5mbGlwLWNhcmQge1xyXG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIHRpdGxlXHJcbiAgICBoNCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0Jywnc2VtaWJvbGQnKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBsaW5rIGJpb1xyXG4gICAgYSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcclxuICAgICAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0JywgJ21lZGl1bScpO1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgY29sb3I6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIHN2Z1xyXG4gICAgcGF0aCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBmaWxsOiBzZXRjb2xvcihcImJsYWNrXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBpbWFnZW5lc1xyXG4gICAgJl9faW1hZ2VuIHtcclxuXHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDUwKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgIC8vIGljb25cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogcmVtKDE4MCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDI0OCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMjQwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDMzMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgeGwge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgzMjApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDQwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gcHJvZmlsZVxyXG4gICAgICAgICZfX2hvdmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC02MCUpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTA1JTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBob3ZlclxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmJsb2NrX19iaW9fX2ltYWdlbl9faG92ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLy8gYnV0dG9uXHJcbi5mbGlwLWJ1dHRvbiB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8vIGNvbnRhaW5lclxyXG4uZmxpcC1jYXJkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDMwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIHdpZHRoOiByZW0oMjUwKTtcclxuICAgIGhlaWdodDogcmVtKDMyMCk7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0oMzIwKTtcclxuICAgIHBlcnNwZWN0aXZlOiAxMDAwcHg7IC8qIFJlbW92ZSB0aGlzIGlmIHlvdSBkb24ndCB3YW50IHRoZSAzRCBlZmZlY3QgKi9cclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyB3cmFwXHJcbi5mbGlwLWNhcmQtd3JhcCB7XHJcbiAgICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi8vIGhvdmVyXHJcbi5mbGlwLWNhcmQtaG92ZXIge1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcblxyXG4gICAgcGFkZGluZzogcmVtKDI0KTtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBib3JkZXItd2lkdGg6IDFweDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiByZW0oOSk7XHJcblxyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgZmxleC1mbG93OiBjb2x1bW47XHJcblxyXG4gICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XHJcblxyXG4gICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNldGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgICAgIGNvbG9yOiBzZXRjb2xvcignYmxhY2snKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAuZmxpcC1jYXJkLWhvdmVyLXdyYXAge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi50aGVtZS0tZGFyayB7XHJcbiAgICAuZmxpcC1jYXJkLWhvdmVyICB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcclxuICAgIH1cclxufVxyXG5cclxuLy8gY29udGVudCBjb250YWluZXJcclxuLmZsaXAtY2FyZC1ob3Zlci13cmFwIHtcclxuXHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG5cclxuICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuXHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIC41cztcclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5mbGlwLWNhcmQtd3JhcHBlciB7XHJcbiAgICBmbGV4OiAxIDEgMFxyXG59XHJcblxyXG4vLyBjbG9zZSBidXR0b25cclxuYS5mbGlwLWNsb3NlLWJ0biB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBhdGgsIHRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgZmlsbDogc2V0Y29sb3IoJ2JsYWNrJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gaGVhZGVyXHJcbi5mbGlwLWNhcmQtaGVhZGVyIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0JywnYm9sZCcpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBzZXRmb250KCd3ZWlnaHQnLCdyZWd1bGFyJyk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBjb250ZW50XHJcbi5mbGlwLWNhcmQtY29udGVudCB7XHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXdlaWdodDogc2V0Zm9udCgnd2VpZ2h0JywncmVndWxhcicpO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgJjpub3QoLmNvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICAub3BlbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuY29sbGFwc2VkIHtcclxuICAgICAgICAgICAgLmNsb3NlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGZvb3RlclxyXG4uZmxpcC1jYXJkLWZvb3RlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHBhZGRpbmc6IHJlbSgxMCkgMCAwIDA7XHJcbiAgICAvLyBib3R0b206IDA7XHJcbiAgICAvLyBsZWZ0OiA1MCU7XHJcbiAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XHJcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcclxuICAgIGZvbnQtd2VpZ2h0OiBzZXRmb250KCd3ZWlnaHQnLCdyZWd1bGFyJyk7XHJcbiAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogc2V0Y29sb3IoJ2JsYWNrJyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFRoaXMgY29udGFpbmVyIGlzIG5lZWRlZCB0byBwb3NpdGlvbiB0aGUgZnJvbnQgYW5kIGJhY2sgc2lkZSAqL1xyXG4uZmxpcC1jYXJkLWlubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHM7XHJcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG59XHJcblxyXG4vKiBEbyBhbiBob3Jpem9udGFsIGZsaXAgd2hlbiB5b3UgbW92ZSB0aGUgbW91c2Ugb3ZlciB0aGUgZmxpcCBib3ggY29udGFpbmVyICovXHJcbi5mbGlwLWNhcmQtYmlvOmhvdmVyIC5mbGlwLWNhcmQtaW5uZXIge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XHJcbn1cclxuXHJcbi8qIFBvc2l0aW9uIHRoZSBmcm9udCBhbmQgYmFjayBzaWRlICovXHJcbi5mbGlwLWNhcmQtZnJvbnQsIC5mbGlwLWNhcmQtYmFjayB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyAvKiBTYWZhcmkgKi9cclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDkpO1xyXG4gICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKCd3aGl0ZScpO1xyXG4gICAgfVxyXG59XHJcblxyXG4udGhlbWUtLWRhcmsge1xyXG4gICAgLmZsaXAtY2FyZC1mcm9udCwgLmZsaXAtY2FyZC1iYWNrICB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcclxuICAgIH1cclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGZyb250IHNpZGUgKGZhbGxiYWNrIGlmIGltYWdlIGlzIG1pc3NpbmcpICovXHJcbi5mbGlwLWNhcmQtZnJvbnQge1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2JiYjtcclxuICAgIC8vIGNvbG9yOiBibGFjaztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBzdmcge1xyXG4gICAgICAgIHdpZHRoOiByZW0oNzMpO1xyXG4gICAgICAgIGhlaWdodDogcmVtKDEwMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFN0eWxlIHRoZSBiYWNrIHNpZGUgKi9cclxuLmZsaXAtY2FyZC1iYWNrIHtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4iLCJAdXNlICdzZXR0aW5ncycgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICd0b29scycgYXMgKjtcclxuXHJcbi5tb2RhbC1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBzZXRjb2xvcihcIndoaXRlXCIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubW9kYWwtaGVhZGVyIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG59XHJcblxyXG4uYnRuLWNsb3NlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVYKC0zMCUpO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYXRoIHtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAnaGVscGVyJyBhcyAqO1xyXG5AdXNlICdzYXNzOm1hcCc7XHJcblxyXG4vLyBCQVJSQVMgR0VORVJBTEVTXHJcbi5nZHByLmdkcHItcHJpdmFjeS1iYXIsXHJcbi5nZHByLmdkcHItcmVjb25zZW50LWJhciB7XHJcblxyXG4gICAgLy8gd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xyXG4gICAgLy8gcmlnaHQ6IHJlbSgyMCkgIWltcG9ydGFudDtcclxuICAgIC8vIGxlZnQ6IGluaXRpYWwgIWltcG9ydGFudDtcclxuICAgIC8vIGJvdHRvbTogcmVtKDIwKSAhaW1wb3J0YW50O1xyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgLy8gQGluY2x1ZGUgbWQge1xyXG4gICAgLy8gICAgIHdpZHRoOiAyOTBweCAhaW1wb3J0YW50O1xyXG4gICAgLy8gICAgIGJvdHRvbTogcmVtKDMwKSAhaW1wb3J0YW50O1xyXG4gICAgLy8gICAgIHJpZ2h0OiByZW0oNTApICFpbXBvcnRhbnQ7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBAaW5jbHVkZSB4eGwge1xyXG4gICAgLy8gICAgIHJpZ2h0OiByZW0oNzApICFpbXBvcnRhbnQ7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKFwiZ3JheVwiKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gV1JBUFBFUiBHRU5FUkFMXHJcbi5nZHByLmdkcHItcHJpdmFjeS1iYXIgLmdkcHItd3JhcHBlcixcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQtYmFyIC5nZHByLXdyYXBwZXIge1xyXG4gICAgcGFkZGluZzogcmVtKDUpIHJlbSg0MCkgcmVtKDUpIHJlbSgyMCk7XHJcbiAgICAvLyBwYWRkaW5nOiAxNXB4IDMwcHggMTVweCAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgLy8gQGluY2x1ZGUgbWQgIHtcclxuICAgIC8vICAgICBwYWRkaW5nOiAyOHB4IDQzcHggMjhweCAyM3B4ICFpbXBvcnRhbnQ7XHJcbiAgICAvLyB9XHJcbn1cclxuXHJcbi8vIEFMRVJUQSBCT1RPTkVTXHJcbi5nZHByLWJ1dHRvbnMge1xyXG4gICAgZm9udC1zaXplOiByZW0oMTEpICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC5nZHByLXByZWZlcmVuY2VzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTEpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVkKCkge1xyXG4gICAgICAgICAgICBjb2xvcjogc2V0Y29sb3IoXCJwcmltYXJ5XCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5nZHByLWFncmVlbWVudCB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTEpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcmVtICFpbXBvcnRhbnQ7ICAgICAgICBcclxuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogc2V0Y29sb3IoXCJwcmltYXJ5XCIpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiBzZXRjb2xvcihcInByaW1hcnlcIikgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEFMRVJUQSBDTE9TRVxyXG4uZ2Rwci5nZHByLXByaXZhY3ktYmFyIC5nZHByLXdyYXBwZXIgLmdkcHItY2xvc2UsXHJcbi5nZHByLmdkcHItcmVjb25zZW50LWJhciAuZ2Rwci13cmFwcGVyIC5nZHByLWNsb3NlIHtcclxuICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICBjb2xvcjogc2V0Y29sb3IoXCJibGFja1wiKTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgyMikgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQUxFUlRBIENPTlRFTlRcclxuLmdkcHIuZ2Rwci1wcml2YWN5LWJhciAuZ2Rwci13cmFwcGVyIC5nZHByLWNvbnRlbnQsXHJcbi5nZHByLmdkcHItcmVjb25zZW50LWJhciAuZ2Rwci13cmFwcGVyIC5nZHByLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgIC8vIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmdkcHIuZ2Rwci1wcml2YWN5LWJhciAuZ2Rwci13cmFwcGVyIC5nZHByLWNvbnRlbnQgcCxcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQtYmFyIC5nZHByLXdyYXBwZXIgLmdkcHItY29udGVudCBwIHtcclxuICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICBjb2xvcjogc2V0Y29sb3IoXCJwcmltYXJ5XCIpO1xyXG4gICAgfVxyXG4gICAgZm9udC1zaXplOiByZW0oMTEpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5nZHByLmdkcHItZ2VuZXJhbC1jb25maXJtYXRpb24gLmdkcHItd3JhcHBlciAucmVjb25zZW50LWZvcm0+aGVhZGVyIC5nZHByLWJveC10aXRsZSxcclxuLmdkcHIuZ2Rwci1nZW5lcmFsLWNvbmZpcm1hdGlvbiAuZ2Rwci13cmFwcGVyPmZvcm0+aGVhZGVyIC5nZHByLWJveC10aXRsZSxcclxuLmdkcHIuZ2Rwci1wcml2YWN5LXByZWZlcmVuY2VzIC5nZHByLXdyYXBwZXIgLnJlY29uc2VudC1mb3JtPmhlYWRlciAuZ2Rwci1ib3gtdGl0bGUsXHJcbi5nZHByLmdkcHItcHJpdmFjeS1wcmVmZXJlbmNlcyAuZ2Rwci13cmFwcGVyPmZvcm0+aGVhZGVyIC5nZHByLWJveC10aXRsZSxcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQgLmdkcHItd3JhcHBlciAucmVjb25zZW50LWZvcm0+aGVhZGVyIC5nZHByLWJveC10aXRsZSxcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQgLmdkcHItd3JhcHBlcj5mb3JtPmhlYWRlciAuZ2Rwci1ib3gtdGl0bGUge1xyXG4gICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWVzLCAnZGVmYXVsdCcsICdibGFjaycsJ2Jhc2UnKTtcclxufVxyXG5cclxuLmdkcHIuZ2Rwci1nZW5lcmFsLWNvbmZpcm1hdGlvbiAuZ2Rwci13cmFwcGVyIC5nZHByLWNvbnRlbnQgLmdkcHItdGFicyBsaSBhLmdkcHItYWN0aXZlLFxyXG4uZ2Rwci5nZHByLWdlbmVyYWwtY29uZmlybWF0aW9uIC5nZHByLXdyYXBwZXIgLmdkcHItY29udGVudCAuZ2Rwci10YWJzIGxpIGJ1dHRvbi5nZHByLWFjdGl2ZSxcclxuLmdkcHIuZ2Rwci1wcml2YWN5LXByZWZlcmVuY2VzIC5nZHByLXdyYXBwZXIgLmdkcHItY29udGVudCAuZ2Rwci10YWJzIGxpIGEuZ2Rwci1hY3RpdmUsXHJcbi5nZHByLmdkcHItcHJpdmFjeS1wcmVmZXJlbmNlcyAuZ2Rwci13cmFwcGVyIC5nZHByLWNvbnRlbnQgLmdkcHItdGFicyBsaSBidXR0b24uZ2Rwci1hY3RpdmUsXHJcbi5nZHByLmdkcHItcmVjb25zZW50IC5nZHByLXdyYXBwZXIgLmdkcHItY29udGVudCAuZ2Rwci10YWJzIGxpIGEuZ2Rwci1hY3RpdmUsXHJcbi5nZHByLmdkcHItcmVjb25zZW50IC5nZHByLXdyYXBwZXIgLmdkcHItY29udGVudCAuZ2Rwci10YWJzIGxpIGJ1dHRvbi5nZHByLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZXMsICdkZWZhdWx0JywgJ2JsYWNrJywnYmFzZScpO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5nZHByLmdkcHItcHJpdmFjeS1iYXIgLmdkcHItcHJlZmVyZW5jZXM6YmVmb3JlLFxyXG4uZ2Rwci5nZHByLXJlY29uc2VudC1iYXIgLmdkcHItcHJlZmVyZW5jZXM6YmVmb3JlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5nZHByLmdkcHItZ2VuZXJhbC1jb25maXJtYXRpb24gLmdkcHItd3JhcHBlciAucmVjb25zZW50LWZvcm0+Zm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XSxcclxuLmdkcHIuZ2Rwci1nZW5lcmFsLWNvbmZpcm1hdGlvbiAuZ2Rwci13cmFwcGVyPmZvcm0+Zm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XSxcclxuLmdkcHIuZ2Rwci1wcml2YWN5LXByZWZlcmVuY2VzIC5nZHByLXdyYXBwZXIgLnJlY29uc2VudC1mb3JtPmZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0sXHJcbi5nZHByLmdkcHItcHJpdmFjeS1wcmVmZXJlbmNlcyAuZ2Rwci13cmFwcGVyPmZvcm0+Zm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XSxcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQgLmdkcHItd3JhcHBlciAucmVjb25zZW50LWZvcm0+Zm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XSxcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQgLmdkcHItd3JhcHBlcj5mb3JtPmZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3JlbSAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMC41IDJyZW0gIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogcmVtKDEyKSAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiBpbml0aWFsICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXdpZHRoOiAxcHggIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQgIWltcG9ydGFudDtcclxuXHJcbiAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgY29sb3I6IHNldGNvbG9yKFwid2hpdGVcIikgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBzZXRjb2xvcignYmxhY2snKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogc2V0Y29sb3IoXCJ3aGl0ZVwiKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1kIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbSgxNCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG5cclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBzZXRjb2xvcihcImJsYWNrXCIpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHNldGNvbG9yKCd3aGl0ZScpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogc2V0Y29sb3IoXCJibGFja1wiKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lZCgpIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHNldGNvbG9yKCdibGFjaycpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgc3BhbiB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxyXG59XHJcblxyXG4uZ2Rwci5nZHByLXByaXZhY3ktYmFyIC5nZHByLXdyYXBwZXIgLmdkcHItY2xvc2U6aG92ZXI6YmVmb3JlLFxyXG4uZ2Rwci5nZHByLXJlY29uc2VudC1iYXIgLmdkcHItd3JhcHBlciAuZ2Rwci1jbG9zZTpob3ZlcjpiZWZvcmUge1xyXG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5nZHByLXN3aXRjaCBpbnB1dDpjaGVja2VkKy5nZHByLXNsaWRlciB7XHJcbiAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogc2V0Y29sb3IoJ2JsYWNrJykgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmdkcHIuZ2Rwci1nZW5lcmFsLWNvbmZpcm1hdGlvbiAuZ2Rwci13cmFwcGVyIC5nZHByLWNvbnRlbnQgLmdkcHItdGFiLWNvbnRlbnQ+ZGl2IC5nZHByLWluZm8gLmdkcHItY29va2llcy11c2VkIC5nZHByLWNvb2tpZS10aXRsZSAuZ2Rwci1hbHdheXMtYWN0aXZlLFxyXG4uZ2Rwci5nZHByLXByaXZhY3ktcHJlZmVyZW5jZXMgLmdkcHItd3JhcHBlciAuZ2Rwci1jb250ZW50IC5nZHByLXRhYi1jb250ZW50PmRpdiAuZ2Rwci1pbmZvIC5nZHByLWNvb2tpZXMtdXNlZCAuZ2Rwci1jb29raWUtdGl0bGUgLmdkcHItYWx3YXlzLWFjdGl2ZSxcclxuLmdkcHIuZ2Rwci1yZWNvbnNlbnQgLmdkcHItd3JhcHBlciAuZ2Rwci1jb250ZW50IC5nZHByLXRhYi1jb250ZW50PmRpdiAuZ2Rwci1pbmZvIC5nZHByLWNvb2tpZXMtdXNlZCAuZ2Rwci1jb29raWUtdGl0bGUgLmdkcHItYWx3YXlzLWFjdGl2ZSB7XHJcbiAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogc2V0Y29sb3IoJ2JsYWNrJykgIWltcG9ydGFudDtcclxuICAgIH1cclxufSIsIkB1c2UgJ3NldHRpbmdzJyBhcyAqO1xyXG5AdXNlICdoZWxwZXInIGFzICo7XHJcbkB1c2UgJ3Rvb2xzJyBhcyAqO1xyXG5cclxuLmJlZm9yZWFuZGFmdGVyIHtcclxuICAvLyBAaW5jbHVkZSBtZCB7XHJcbiAgLy8gICB3aWR0aDogNTAlO1xyXG4gIC8vICAgcGFkZGluZzogMCByZW0oNTApIHJlbSg1MCkgcmVtKDUwKTtcclxuICAvLyAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIC8vIH1cclxuICAvLyBAaW5jbHVkZSBsZyB7XHJcbiAgLy8gICB3aWR0aDogNTAlO1xyXG4gIC8vICAgcGFkZGluZzogMCByZW0oMTIwKSByZW0oMTUwKSByZW0oODApO1xyXG4gIC8vIH1cclxuICAvLyBAaW5jbHVkZSB4eGwge1xyXG4gIC8vICAgd2lkdGg6IDcwJTtcclxuICAvLyAgIHBhZGRpbmc6IDAgcmVtKDIwMCkgcmVtKDI1MCkgcmVtKDE1MCk7XHJcbiAgLy8gfVxyXG59XHJcblxyXG4ud3JhcHBlcl9iZWZvcmV7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ud3JhcHBlcl9iZWZvcmUgLmltYWdlcyB7XHJcbiAgLy8gaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuICAud3JhcHBlcl9iZWZvcmUgLmltYWdlcyBzcGFuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMnJlbTtcclxuICAgIGxlZnQ6IDJyZW07XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgfVxyXG5cclxuICAud3JhcHBlcl9iZWZvcmUgLmltYWdlcyAuaW1nLTEge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAvKiBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvY2FyLmpwZ1wiKSBuby1yZXBlYXQ7ICovXHJcbiAgfVxyXG5cclxuICAud3JhcHBlcl9iZWZvcmUgLmltYWdlcyAuaW1nLTIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMjAwO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICB9XHJcblxyXG4gIC53cmFwcGVyX2JlZm9yZSAuc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgei1pbmRleDogNDAwO1xyXG4gIH1cclxuICAud3JhcHBlcl9iZWZvcmUgLnNsaWRlciBpbnB1dHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuc2xpZGVyIGlucHV0Ojotd2Via2l0LXNsaWRlci10aHVtYntcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgY3Vyc29yOiBjb2wtcmVzaXplO1xyXG4gIH1cclxuXHJcbiAgLnNsaWRlciAuZHJhZy1saW5le1xyXG4gICAgd2lkdGg6IDFweDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA0OS44NSU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHotaW5kZXg6IDMwMDtcclxuICB9XHJcblxyXG4gIC5zbGlkZXIgLmRyYWctbGluZTo6YmVmb3JlLFxyXG4gIC5zbGlkZXIgLmRyYWctbGluZTo6YWZ0ZXJ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgfVxyXG4gIC5zbGlkZXIgLmRyYWctbGluZTo6YmVmb3Jle1xyXG4gICAgdG9wOiAwO1xyXG4gIH1cclxuXHJcbiAgLnNsaWRlciAuZHJhZy1saW5lOjphZnRlcntcclxuICAgIGJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5zbGlkZXIgLmRyYWctbGluZSBzcGFue1xyXG4gICAgaGVpZ2h0OiByZW0oNDApO1xyXG4gICAgd2lkdGg6IHJlbSg0MCk7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBAaW5jbHVkZSBtZCB7XHJcbiAgICAgIHdpZHRoOiByZW0oODApO1xyXG4gICAgICBoZWlnaHQ6IHJlbSg4MCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpZGVyIC5kcmFnLWxpbmUgc3Bhbjo6YmVmb3JlLFxyXG4gIC5zbGlkZXIgLmRyYWctbGluZSBzcGFuOjphZnRlcntcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGJvcmRlcjogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDBweDtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMHB4O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcclxuICB9XHJcblxyXG4gIC5zbGlkZXIgLmRyYWctbGluZSBzcGFuOjpiZWZvcmV7XHJcbiAgICBsZWZ0OiA0MCU7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogIzNFM0UzRDtcclxuICB9XHJcbiAgXHJcbiAgLnNsaWRlciAuZHJhZy1saW5lIHNwYW46OmFmdGVye1xyXG4gICAgbGVmdDogNjAlO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzNFM0UzRDtcclxuICB9IiwiQHVzZSAnc2V0dGluZ3MnIGFzICo7XHJcbkB1c2UgJ2hlbHBlcicgYXMgKjtcclxuQHVzZSAndG9vbHMnIGFzICo7XHJcblxyXG4vKiBnZW5lcmFsICovXHJcbi5mdWxsdGl0bGUge1xyXG5cclxuICAgIHdpZHRoOiAxMDAlOyBcclxuICAgIFxyXG4gICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIHRleHQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnSEdTJywgc2Fucy1zZXJpZjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSB0aGVtZWQoKSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHNldGNvbG9yKFwiYmxhY2tcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cdFxyXG59Il19 */
