@charset "UTF-8";
.circle-list, .social-list, .info-list, .slick-dots, .hero-gallery .slick-dots, .desc-list-images, .expertise-image-list, .key-list, .portfolio-pagination, .portfolio-gallery-holder .hover-tabset, .main-nav .nav-secondary, .nav-menu, .footer-navigation {
  margin: 0;
  padding: 0;
  list-style: none; }

.clearfix:after {
  content: '';
  display: block;
  clear: both; }

.ellipsis {
  white-space: nowrap;
  /* 1 */
  text-overflow: ellipsis;
  /* 2 */
  overflow: hidden; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-Light.woff2") format("woff2"), url("../fonts/EncodeSans-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-SemiBold.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-Black.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Semi Condensed';
  src: url("../fonts/EncodeSansSemiCondensed-Bold.woff2") format("woff2"), url("../fonts/EncodeSansSemiCondensed-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed ExLight';
  src: url("../fonts/EncodeSansCondensed-ExtraLight.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-ExtraLight.woff") format("woff");
  font-weight: 200;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-ExtraLight.woff2") format("woff2"), url("../fonts/EncodeSans-ExtraLight.woff") format("woff");
  font-weight: 200;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-Regular.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-Medium.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Semi Condensed ExBd';
  src: url("../fonts/EncodeSansSemiCondensed-ExtraBold.woff2") format("woff2"), url("../fonts/EncodeSansSemiCondensed-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Semi Condensed';
  src: url("../fonts/EncodeSansSemiCondensed-Medium.woff2") format("woff2"), url("../fonts/EncodeSansSemiCondensed-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Semi Condensed';
  src: url("../fonts/EncodeSansSemiCondensed-Thin.woff2") format("woff2"), url("../fonts/EncodeSansSemiCondensed-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-Medium.woff2") format("woff2"), url("../fonts/EncodeSans-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-Bold.woff2") format("woff2"), url("../fonts/EncodeSans-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-Black.woff2") format("woff2"), url("../fonts/EncodeSans-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-Regular.woff2") format("woff2"), url("../fonts/EncodeSans-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Semi Condensed';
  src: url("../fonts/EncodeSansSemiCondensed-Regular.woff2") format("woff2"), url("../fonts/EncodeSansSemiCondensed-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-SemiBold.woff2") format("woff2"), url("../fonts/EncodeSans-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-ExtraBold.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-ExtraBold.woff2") format("woff2"), url("../fonts/EncodeSans-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansSemiCondensed-SemiBold.woff2") format("woff2"), url("../fonts/EncodeSansSemiCondensed-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans';
  src: url("../fonts/EncodeSans-Thin.woff2") format("woff2"), url("../fonts/EncodeSans-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-Bold.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Encode Sans Condensed';
  src: url("../fonts/EncodeSansCondensed-Thin.woff2") format("woff2"), url("../fonts/EncodeSansCondensed-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: 'Felt That';
  src: url("../fonts/FeltThat.woff2") format("woff2"), url("../fonts/FeltThat.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?ev0w9m");
  src: url("../fonts/icomoon.eot?ev0w9m#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?ev0w9m") format("truetype"), url("../fonts/icomoon.woff?ev0w9m") format("woff"), url("../fonts/icomoon.svg?ev0w9m#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

[class^="icon-"], [class*="icon-"]:not(#adminmenu *) {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !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; }

.icon-sign-out:before {
  content: "\e905"; }

.icon-facebook:before {
  content: "\e900"; }

.icon-instagram:before {
  content: "\e901"; }

.icon-linkedin:before {
  content: "\e902"; }

.icon-pinterest:before {
  content: "\e903"; }

.icon-twitter:before {
  content: "\e906"; }

.icon-youtube:before {
  content: "\e907"; }

.icon-arrow-next:before {
  content: "\e90a"; }

.icon-arrow-prev:before {
  content: "\e90b"; }

.icon-close:before {
  content: "\e908"; }

.icon-play:before {
  content: "\e909"; }

.icon-arrow-down:before {
  content: "\e904"; }

.icon-check:before {
  content: "\ea10"; }

/* Slick slider styles */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

body.compensate-for-scrollbar {
  overflow: hidden; }

.fancybox-active {
  height: auto; }

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden; }

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992; }

.fancybox-container * {
  box-sizing: border-box; }

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto; }

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71); }

.fancybox-is-open .fancybox-bg {
  opacity: .9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1); }

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity .25s ease, visibility 0s ease .25s;
  visibility: hidden;
  z-index: 99997; }

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  transition: opacity .25s ease 0s, visibility 0s ease 0s;
  visibility: visible; }

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.fancybox-toolbar {
  right: 0;
  top: 0; }

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994; }

.fancybox-is-open .fancybox-stage {
  overflow: hidden; }

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994; }

.fancybox-slide::before {
  content: '';
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0; }

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block; }

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0; }

.fancybox-slide--image::before {
  display: none; }

.fancybox-slide--html {
  padding: 6px; }

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle; }

.fancybox-slide--image .fancybox-content {
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -ms-transform-origin: top left;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995; }

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out; }

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in; }

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab; }

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.fancybox-container [data-selectable='true'] {
  cursor: text; }

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%; }

.fancybox-spaceball {
  z-index: 1; }

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%; }

.fancybox-slide--video .fancybox-content {
  background: #000; }

.fancybox-slide--map .fancybox-content {
  background: #e5e3df; }

.fancybox-slide--iframe .fancybox-content {
  background: #fff; }

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%; }

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0; }

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%; }

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0; }

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color .2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px; }

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc; }

.fancybox-button:hover {
  color: #fff; }

.fancybox-button:focus {
  outline: none; }

.fancybox-button.fancybox-focus {
  outline: 1px dotted; }

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none; }

/* Fix IE11 */
.fancybox-button div {
  height: 100%; }

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%; }

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0; }

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none; }

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none; }

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -ms-transform-origin: 0;
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998; }

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: .8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401; }

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1; }

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0; }

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden; }

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none; }

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px; }

.fancybox-navigation .fancybox-button div {
  padding: 7px; }

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px; }

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right); }

/* Caption */
.fancybox-caption {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996; }

.fancybox-caption--separate {
  margin-top: -50px; }

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all; }

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none; }

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline; }

/* Loading indicator */
.fancybox-loading {
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: .7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999; }

@keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg); } }

/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1); }

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0); }

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0); }

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translate3d(0, 0, 0); }

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1; }

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5); }

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5); }

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1); }

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -ms-transform: rotate(-360deg);
  transform: rotate(-360deg); }

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -ms-transform: rotate(360deg);
  transform: rotate(360deg); }

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -ms-transform: rotate(0deg);
  transform: rotate(0deg); }

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0); }

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0); }

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0); }

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg); }

.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg); }

.fancybox-fx-tube.fancybox-slide--current {
  transform: translate3d(0, 0, 0) scale(1); }

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px; }
  .fancybox-slide--image {
    padding: 6px 0; }
  .fancybox-close-small {
    right: -6px; }
  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px; }
  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px; } }

/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center; }

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0; }

.fancybox-share p {
  margin: 0;
  padding: 0; }

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all .2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap; }

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff; }

.fancybox-share__button:hover {
  text-decoration: none; }

.fancybox-share__button--fb {
  background: #3b5998; }

.fancybox-share__button--fb:hover {
  background: #344e86; }

.fancybox-share__button--pt {
  background: #bd081d; }

.fancybox-share__button--pt:hover {
  background: #aa0719; }

.fancybox-share__button--tw {
  background: #1da1f2; }

.fancybox-share__button--tw:hover {
  background: #0d95e8; }

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px; }

.fancybox-share__button svg path {
  fill: #fff; }

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%; }

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995; }

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden; }

.fancybox-show-thumbs .fancybox-thumbs {
  display: block; }

.fancybox-show-thumbs .fancybox-inner {
  right: 212px; }

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%; }

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden; }

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px; }

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); }

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px; }

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px; }

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: '';
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991; }

.fancybox-thumbs__list a:focus::before {
  opacity: .5; }

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1; }

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px; }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px; }
  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px); } }

.fadeIn,
.fadeInUp,
.fadeInDown,
.fadeInLeft,
.fadeInRight {
  visibility: hidden; }

.fadeIn.in-viewport,
.in-viewport .fadeIn {
  animation-name: fadeIn;
  visibility: visible;
  animation-duration: 0.75s;
  animation-fill-mode: both; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  60% {
    opacity: 1; } }

.fadeInUp.in-viewport,
.in-viewport .fadeInUp {
  animation-name: fadeInUp;
  visibility: visible;
  animation-duration: 0.75s;
  animation-fill-mode: both; }

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 60px, 0); }
  60% {
    opacity: 1;
    transform: translate3d(0, 0px, 0); } }

.fadeInDown.in-viewport,
.in-viewport .fadeInDown {
  animation-name: fadeInDown;
  visibility: visible;
  animation-duration: 0.75s;
  animation-fill-mode: both; }

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translate3d(0, -60px, 0); }
  60% {
    opacity: 1;
    transform: none; } }

.fadeInLeft.in-viewport,
.in-viewport .fadeInLeft {
  animation-name: fadeInLeft;
  visibility: visible;
  animation-duration: 0.75s;
  animation-fill-mode: both; }

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translate3d(-30px, 0, 0); }
  60% {
    opacity: 1;
    transform: none; } }

.fadeInRight.in-viewport,
.in-viewport .fadeInRight {
  animation-name: fadeInRight;
  visibility: visible;
  animation-duration: 0.75s;
  animation-fill-mode: both; }

@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translate3d(30px, 0, 0); }
  60% {
    opacity: 1;
    transform: none; } }

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h {
  font-weight: 700;
  text-transform: capitalize; }
  h1 a:hover,
  .h1 a:hover,
  h2 a:hover,
  .h2 a:hover,
  h3 a:hover,
  .h3 a:hover,
  h4 a:hover,
  .h4 a:hover,
  h5 a:hover,
  .h5 a:hover,
  h6 a:hover,
  .h6 a:hover,
  .h a:hover {
    text-decoration: none;
    color: #FF8C00; }

@media (min-width: 769px) {
  h1,
  .h1 {
    font-size: 3rem; } }

h1.title-sm,
.h1.title-sm {
  margin: 0 0 1.4375rem; }
  @media (max-width: 768.98px) {
    h1.title-sm,
    .h1.title-sm {
      font-size: 1.5rem; } }
  @media (min-width: 769px) {
    h1.title-sm,
    .h1.title-sm {
      margin: 0 0 2.5rem; } }

h1.h3 {
  margin: 0 0 1.875rem; }
  @media (max-width: 768.98px) {
    h1.h3 {
      line-height: 1.5; } }

@media (min-width: 769px) {
  h2,
  .h2 {
    font-size: 2rem; } }

@media (min-width: 769px) {
  h3,
  .h3 {
    font-size: 1.75rem; } }

@media (min-width: 769px) {
  h4,
  .h4 {
    font-size: 1.25rem; } }

a {
  transition: color 0.3s ease-in-out, background 0.3s ease-in-out, border 0.3s ease-in-out, opacity 0.3s ease-in-out, transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  color: #0168BC; }
  a:focus {
    outline: rgba(0, 0, 0, 0.1) auto 1px; }

.blockquote {
  font-weight: 500; }
  @media (min-width: 769px) {
    .blockquote {
      font-size: 1.75rem; } }
  .blockquote p {
    line-height: 1.36; }
    @media (max-width: 768.98px) {
      .blockquote p {
        margin: 0 0 0.625rem; } }
  .blockquote cite {
    display: block;
    font-weight: 700;
    font-style: normal;
    line-height: 1.5;
    font-size: 1rem;
    text-transform: uppercase; }
    @media (min-width: 769px) {
      .blockquote cite {
        font-size: 1.25rem;
        padding-top: 2rem;
        line-height: 1.2; } }

.small {
  font-weight: inherit;
  font-size: 74%; }

time {
  font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif; }
  time.small {
    font-size: 80%; }

.badge {
  text-transform: uppercase; }
  .badge.badge-dark {
    background: rgba(34, 30, 32, 0.8); }

.title-small {
  font: 600 0.75rem/1.5 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  text-transform: uppercase;
  display: block;
  margin: 0 0 0.9375rem; }

.bg-primary .text-muted {
  color: #b9b9b9 !important; }

.text-holder {
  margin: 0 auto 1.25rem;
  max-width: 22.8125rem; }

.btn {
  font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  text-transform: uppercase; }
  @media (min-width: 769px) {
    .btn {
      padding: 0.4375rem 1.3125rem; } }
  .btn.btn-info:hover, .btn.btn-light:hover, .btn.btn-primary:hover, .btn.btn-success:hover, .btn.btn-danger:hover, .btn.btn-warning:hover, .btn.btn-dark:hover, .btn.gform_button:hover {
    border-color: #FF8C00;
    background: #FF8C00; }
  .btn.btn-light:hover {
    color: #fff; }
  .btn.btn-secondary:hover {
    border-color: #003057;
    background: #003057; }

.link-icon {
  font-size: 1.5625rem;
  color: inherit; }
  .link-icon:hover {
    color: #FF8C00;
    text-decoration: none; }

.link-arrow {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font-size: 0.75rem;
  font-weight: 600;
  color: #0168BC;
  padding-right: 0.625rem;
  font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif; }
  @media (min-width: 375px) {
    .link-arrow {
      padding-right: 0.9375rem; } }
  .link-arrow:after {
    transition: transform 0.3s ease-in-out;
    content: "";
    font-family: 'icomoon';
    font-size: 0.75rem;
    line-height: 1;
    text-indent: 0;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
    font-weight: normal; }
  .link-arrow:hover {
    text-decoration: none;
    color: #FF8C00; }
    .link-arrow:hover:after {
      transform: translate(5px, -50%); }

.close:focus {
  outline: none; }

.link-back {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font: 700 1rem/1.5 "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: inherit;
  padding-left: 0.625rem;
  text-transform: uppercase;
  margin: 0 0 3.625rem; }
  @media (min-width: 375px) {
    .link-back {
      padding-left: 0.9375rem; } }
  .link-back:after {
    transition: transform 0.3s ease-in-out;
    content: "";
    font-family: 'icomoon';
    font-size: 0.75rem;
    line-height: 1;
    text-indent: 0;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 0;
    font-weight: normal; }
  .link-back:hover {
    text-decoration: none;
    color: #0168BC; }
    .link-back:hover:after {
      transform: translate(-5px, -50%); }

.awards_wrap a {
  font: 700 1rem/1.5 "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: #FF8C00;
  text-transform: uppercase; }
  .awards_wrap a:hover {
    text-decoration: none;
    color: #0168BC; }

.more-button {
  position: relative;
  display: inline-block;
  vertical-align: top;
  border: none;
  padding: 0 0 1.4375rem;
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: 700;
  color: #003057;
  background: transparent; }
  .more-button:after {
    content: "";
    font-family: 'icomoon';
    font-size: 1.8rem;
    line-height: 1;
    text-indent: 0;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    font-weight: normal; }
  .more-button:focus {
    outline: none; }
  .more-button:hover {
    color: #FF8C00; }

.video-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: top;
  font-size: 2.5rem; }
  @media (min-width: 769px) {
    .video-link {
      font-size: 2.8125rem; } }
  .video-link .icon-play {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    background: rgba(22, 23, 25, 0.7);
    width: 5rem;
    height: 5rem; }
    @media (min-width: 769px) {
      .video-link .icon-play {
        width: 6.25rem;
        height: 6.25rem; } }
    .video-link .icon-play:before {
      transition: transform 0.3s ease-in-out;
      margin: 0 0 0 0.625rem; }
  .video-link:hover {
    text-decoration: none; }
    .video-link:hover .icon-play:before {
      transform: scale(1.25); }

.card {
  font: 1rem/1.25 "Encode Sans", "Helvetica Neue", Arial, sans-serif; }
  .card .card-header svg {
    transition: transform 0.3s ease-in-out; }
  .card:hover .card-header svg {
    fill: #FF8C00;
    transform: scale(1.1); }
    .card:hover .card-header svg path {
      fill: #FF8C00;
      stroke: #FF8C00; }
  .card:hover .link-arrow {
    color: #FF8C00;
    transform: scale(1.1); }
  .card.card-secondary {
    background: transparent; }
    @media (min-width: 769px) {
      .card.card-secondary .card-header {
        min-height: 6.25rem; } }
    .card.card-secondary .card-footer {
      padding-bottom: 0; }
    .card.card-secondary .card-body {
      padding-top: 0.875rem; }
      .card.card-secondary .card-body:last-child {
        padding-bottom: 0; }
    .card.card-secondary h4 {
      margin: 0 0 0.75rem; }

a:hover {
  text-decoration: none; }
  a:hover h2,
  a:hover h3,
  a:hover h4,
  a:hover h5,
  a:hover h6 {
    text-decoration: none; }

a.card-secondary h2,
a.card-secondary h3,
a.card-secondary h4,
a.card-secondary h5,
a.card-secondary h6,
a.card h2,
a.card h3,
a.card h4,
a.card h5,
a.card h6,
a.card-third h2,
a.card-third h3,
a.card-third h4,
a.card-third h5,
a.card-third h6,
.card-third h2,
.card-third h3,
.card-third h4,
.card-third h5,
.card-third h6 {
  transition: color 0.3s ease-in-out; }

a.card-secondary:hover,
a.card:hover,
a.card-third:hover,
.card-third:hover {
  text-decoration: none; }
  a.card-secondary:hover .link-icon,
  a.card:hover .link-icon,
  a.card-third:hover .link-icon,
  .card-third:hover .link-icon {
    color: #FF8C00; }
  a.card-secondary:hover .card-image,
  a.card:hover .card-image,
  a.card-third:hover .card-image,
  .card-third:hover .card-image {
    z-index: 1; }
    a.card-secondary:hover .card-image img,
    a.card:hover .card-image img,
    a.card-third:hover .card-image img,
    .card-third:hover .card-image img {
      transform: scale(1.2); }
  a.card-secondary:hover h2,
  a.card-secondary:hover h3,
  a.card-secondary:hover h4,
  a.card-secondary:hover h5,
  a.card-secondary:hover h6,
  a.card:hover h2,
  a.card:hover h3,
  a.card:hover h4,
  a.card:hover h5,
  a.card:hover h6,
  a.card-third:hover h2,
  a.card-third:hover h3,
  a.card-third:hover h4,
  a.card-third:hover h5,
  a.card-third:hover h6,
  .card-third:hover h2,
  .card-third:hover h3,
  .card-third:hover h4,
  .card-third:hover h5,
  .card-third:hover h6 {
    color: #FF8C00;
    text-decoration: none; }

.card-secondary p,
.card p,
.card-third p {
  margin: 0 0 1.25rem; }
  .card-secondary p:last-child,
  .card p:last-child,
  .card-third p:last-child {
    margin: 0; }

.card-secondary h2,
.card-secondary h3,
.card-secondary h4,
.card-secondary h5,
.card-secondary h6,
.card h2,
.card h3,
.card h4,
.card h5,
.card h6,
.card-third h2,
.card-third h3,
.card-third h4,
.card-third h5,
.card-third h6 {
  font-family: inherit; }

@media (max-width: 768.98px) {
  .card-secondary h3,
  .card h3,
  .card-third h3 {
    font-size: 1.25rem; } }

@media (max-width: 768.98px) {
  .card-secondary h4,
  .card h4,
  .card-third h4 {
    font-size: 1.25rem;
    line-height: 1.4; } }

.card-secondary h5,
.card h5,
.card-third h5 {
  margin: 0; }

.card-secondary .link-arrow,
.card .link-arrow,
.card-third .link-arrow {
  color: #161719;
  font-size: 1rem;
  font-weight: 700;
  padding-right: 1.5625rem; }
  .card-secondary .link-arrow:hover,
  .card .link-arrow:hover,
  .card-third .link-arrow:hover {
    color: #FF8C00; }

.card-third {
  display: block;
  margin: 0 0 1.5625rem; }
  @media (min-width: 769px) {
    .card-third {
      display: flex;
      margin: 0 0 2.5rem; } }
  .card-third .card-image {
    min-height: 10.5rem;
    overflow: hidden;
    z-index: 1; }
    @media (min-width: 769px) {
      .card-third .card-image {
        width: 18.75rem; } }
    @media (min-width: 769px) {
      .card-third .card-image {
        width: 18.75rem; } }
    .card-third .card-image img {
      transition: transform 0.3s ease-in-out;
      object-fit: cover;
      width: 100%;
      height: 100%;
      position: relative;
      z-index: 0; }
  .card-third .link-icon {
    position: absolute;
    top: 1.4375rem;
    right: 1.5625rem;
    font-size: 1.5625rem; }
    @media (min-width: 1025px) {
      .card-third .link-icon {
        right: 3.9375rem; } }
    .card-third .link-icon .link_icon_dd:after {
      display: none; }
  .card-third .card-body {
    position: relative;
    padding: 0.625rem; }
    @media (max-width: 768.98px) {
      .card-third .card-body {
        text-align: center; } }
    @media (min-width: 769px) {
      .card-third .card-body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        flex: 1 0;
        padding: 0.9375rem 0; } }
    @media (min-width: 769px) {
      .card-third .card-body {
        padding: 0.9375rem 5.625rem 0.9375rem 2.5rem; } }
    @media (max-width: 768.98px) {
      .card-third .card-body:last-child {
        padding-bottom: 0; } }
  .card-third .badge {
    margin: 0 0 0.9375rem; }
  .card-third h1,
  .card-third .h1,
  .card-third h2,
  .card-third .h2,
  .card-third h3,
  .card-third .h3,
  .card-third h4,
  .card-third .h4,
  .card-third h5,
  .card-third .h5,
  .card-third h6,
  .card-third .h6,
  .card-third .h {
    text-transform: none; }
    .card-third h1:last-child,
    .card-third .h1:last-child,
    .card-third h2:last-child,
    .card-third .h2:last-child,
    .card-third h3:last-child,
    .card-third .h3:last-child,
    .card-third h4:last-child,
    .card-third .h4:last-child,
    .card-third h5:last-child,
    .card-third .h5:last-child,
    .card-third h6:last-child,
    .card-third .h6:last-child,
    .card-third .h:last-child {
      margin: 0; }

@media (min-width: 769px) {
  .cards-holder-third:last-child {
    margin-bottom: 4.0625rem; } }

.card-header {
  background: inherit;
  padding-top: 1.875rem;
  padding-bottom: 0.3125rem; }

.card-body:last-child {
  padding-bottom: 1.25rem; }

.card-footer {
  background: inherit;
  padding-top: 0.625rem;
  padding-bottom: 1.875rem; }
  @media (min-width: 769px) {
    .card-footer {
      padding-top: 0;
      padding-bottom: 1.5625rem; } }

.cards-holder {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media (min-width: 1025px) {
    .cards-holder {
      margin-right: -1.875rem;
      margin-left: -1.875rem; } }
  @media (min-width: 1920px) {
    .cards-holder {
      margin-right: -2.5rem;
      margin-left: -2.5rem; } }
  .cards-holder:last-child {
    margin-bottom: -2.5rem; }
  .cards-holder > [class^="col"],
  .cards-holder > [class*=" col"] {
    padding-right: 1.875rem;
    padding-left: 1.875rem; }
    @media (min-width: 1920px) {
      .cards-holder > [class^="col"],
      .cards-holder > [class*=" col"] {
        padding-right: 2.5rem;
        padding-left: 2.5rem; } }
    @media (max-width: 768.98px) {
      .cards-holder > [class^="col"]:last-child .card.card-secondary,
      .cards-holder > [class*=" col"]:last-child .card.card-secondary {
        margin-bottom: 0; } }
    .cards-holder > [class^="col"] .card,
    .cards-holder > [class*=" col"] .card {
      margin-bottom: 2.5rem; }
      .cards-holder > [class^="col"] .card.card-secondary,
      .cards-holder > [class*=" col"] .card.card-secondary {
        margin-bottom: 5.625rem; }
        @media (min-width: 769px) {
          .cards-holder > [class^="col"] .card.card-secondary,
          .cards-holder > [class*=" col"] .card.card-secondary {
            margin-bottom: 0.625rem; } }

.form-control {
  letter-spacing: 0.02em; }
  @media (min-width: 769px) {
    .form-control {
      font-size: 1.25rem;
      padding: 0.375rem 1.65rem; } }

@media (max-width: 768.98px) {
  .input-group-append {
    margin-left: 0;
    width: 100%; } }

@media (max-width: 768.98px) {
  .input-group > .form-control,
  .input-group > .form-control-plaintext,
  .input-group > .custom-select,
  .input-group > .custom-file {
    flex: 1 1 100%;
    width: 100%; } }

.subscribe-form .form-control {
  display: flex;
  align-items: center; }
  .subscribe-form .form-control span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

.subscribe-form .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4375rem 0.5rem;
  width: 100%;
  min-height: 3.125rem;
  font-size: 1.25rem; }
  @media (min-width: 769px) {
    .subscribe-form .btn {
      width: 13.4375rem; } }
  .subscribe-form .btn i {
    font-size: 1.625rem;
    font-weight: normal; }

.subscribe-form span.btn {
  pointer-events: none; }

.page-template-login label {
  display: block;
  text-transform: uppercase; }

.page-template-login #wp-submit {
  font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
  text-transform: uppercase;
  padding: 0.4375rem 1.3125rem;
  display: inline-block !important;
  color: #fff;
  background-color: #0168bc;
  border-color: #0168bc;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  .page-template-login #wp-submit:hover {
    border-color: #ff8c00;
    background: #ff8c00; }

.skyline .gform_heading {
  text-align: center; }
  .skyline .gform_heading .gform_title {
    font-size: 3rem; }
  .skyline .gform_heading .gform_description {
    font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif; }

.skyline .gform_body select.gfield_select {
  padding: 6px 0 6px 3px; }

.skyline .gform_body .field_description_below .gfield_description {
  padding-top: 5px; }

.skyline .gform_body .gfield_description {
  font: normal normal normal 16px/22px "Encode Sans", "Helvetica Neue", Arial, sans-serif; }

.skyline .gform_footer {
  text-align: center; }
  .skyline .gform_footer input[type="submit"] {
    margin: auto;
    border: none;
    color: #fff;
    background-color: #003768;
    border-color: #003768;
    border-radius: 4px;
    font: normal normal bold 16px/24px Encode Sans Condensed;
    transition: transform 0.3s ease-in-out, color 0.3s ease-in-out, background 0.3s ease-in-out, border 0.3s ease-in-out;
    padding: 0.75rem 1.5rem; }
    .skyline .gform_footer input[type="submit"]:hover {
      border-color: #ff8c00;
      background: #ff8c00; }

@media (max-width: 1024.98px) {
  #searchform .field.form-control {
    flex: 1 1 auto;
    width: 1%; }
  #searchform .input-group-append {
    width: unset;
    margin-left: -.125rem; }
    #searchform .input-group-append input {
      line-height: 1.2; } }

.pagination {
  font: 500 0.75rem/1.2 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem; }
  @media (min-width: 769px) {
    .pagination {
      font-size: 1rem; } }
  .pagination li.active {
    font-weight: 700; }
  .pagination .page-link {
    padding-left: 0.8rem;
    padding-right: 0.8rem; }
    @media (min-width: 769px) {
      .pagination .page-link {
        padding-left: 0.87rem;
        padding-right: 0.87rem; } }

.circle-list {
  margin-bottom: 1.8rem; }
  .circle-list:last-child li:last-child {
    padding-bottom: 0; }
  .circle-list li {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 0 0 0 1.75rem; }
    .circle-list li:before {
      display: inline-block;
      content: '•';
      margin: 0 0.4375rem 0 0; }

.social-list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -0.3125rem 0.9375rem; }
  @media (min-width: 375px) {
    .social-list {
      margin: 0 -0.625rem 0.9375rem; } }
  .social-list li {
    margin: 0 0.3125rem 0.3125rem; }
    @media (min-width: 375px) {
      .social-list li {
        margin: 0 0.625rem 0.3125rem; } }
  .social-list a {
    font-size: 2.3125rem;
    display: inline-block;
    vertical-align: top;
    text-decoration: none; }
    .social-list a:hover {
      transform: rotateY(360deg);
      color: inherit; }
      @media (max-width: 768.98px) {
        .social-list a:hover {
          transform: none; } }

.info-list {
  font-size: 1.4375rem;
  font-size: 1.25rem;
  line-height: 1.28;
  line-height: 1.125;
  font-weight: 500;
  padding: 0 0 1.25rem; }
  @media (min-width: 769px) {
    .info-list {
      font-size: 1.75rem;
      font-size: 1.25rem; } }
  .info-list li {
    margin: 0 0 0.9375rem; }
  .info-list a:hover {
    text-decoration: none;
    color: #FF8C00; }

.slick-arrow {
  transition: color 0.3s ease-in-out, border 0.3s ease-in-out;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #003057;
  border-radius: 50%;
  border: none;
  background: 0;
  z-index: 9999;
  padding: 0;
  cursor: pointer;
  bottom: 0;
  padding: 0.625rem;
  font-size: 1.25rem; }
  @media (min-width: 769px) {
    .slick-arrow {
      top: 50%;
      transform: translateY(-50%);
      bottom: auto;
      font-size: 1.875rem; } }
  .slick-arrow:focus {
    outline: none; }
  .slick-arrow:hover {
    color: #0168BC; }
  .slick-arrow.slick-prev {
    left: -0.9375rem; }
    @media (min-width: 769px) {
      .slick-arrow.slick-prev {
        left: 0; } }
  .slick-arrow.slick-next {
    right: -0.9375rem; }
    @media (min-width: 769px) {
      .slick-arrow.slick-next {
        right: 0; } }

.slick-dots {
  display: flex;
  justify-content: center;
  margin: 0 -0.25rem;
  height: 0.625rem;
  z-index: 99; }
  .slick-dots li {
    padding: 0 0.25rem; }
  .slick-dots button {
    transition: background 0.3s ease-in-out;
    text-indent: -9999999px;
    width: 0.625rem;
    height: 0.625rem;
    border: none;
    border-radius: 50%;
    padding: 0;
    background: 0;
    background: rgba(255, 255, 255, 0.4);
    cursor: pointer; }
    .slick-dots button:focus {
      outline: none; }
    .slick-dots button:hover {
      background: rgba(255, 255, 255, 0.8); }
  .slick-dots .slick-active button,
  .slick-dots .slick-active-item button {
    background: rgba(255, 255, 255, 0.8); }

.hero-section {
  position: relative; }
  @media (min-width: 769px) {
    .hero-section {
      min-height: 43.75rem; } }
  @media (min-width: 1025px) {
    .hero-section {
      min-height: 100vh; } }

video.vid-bg {
  position: absolute;
  right: 0;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  z-index: -10; }

.hero-gallery {
  position: relative;
  font-size: 1rem;
  line-height: 1.33; }
  .hero-gallery:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #161719;
    opacity: 0.4; }
  @media (min-width: 769px) {
    .hero-gallery {
      font-weight: 500;
      font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      font-size: 1.5rem; } }
  @media (min-width: 1025px) {
    .hero-gallery {
      top: 60px; } }
  .hero-gallery h1 {
    text-transform: capitalize;
    margin: 0 0 0.625rem; }
    @media (min-width: 769px) {
      .hero-gallery h1 {
        margin: 0 0 1.0625rem; } }
  @media (max-width: 768.98px) {
    .hero-gallery .btn {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      bottom: 0;
      white-space: nowrap; } }
  .hero-gallery .slick-slide {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    position: relative;
    color: #fff;
    min-height: 90vh;
    padding: calc(70px + 6.5vw) 0 calc(35px + 9.2vw);
    z-index: 2; }
    @media (min-width: 769px) {
      .hero-gallery .slick-slide {
        min-height: 43.75rem;
        padding: calc(140px + 6.5vw) 0 calc(100px + 7.1vw); } }
    @media (min-width: 1025px) {
      .hero-gallery .slick-slide {
        min-height: 54.6875rem;
        padding: calc(200px + 6.5vw) 0 calc(100px + 7.1vw);
        min-height: calc(100vh + 60px); } }
    .hero-gallery .slick-slide:after {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      content: "";
      background: rgba(0, 0, 0, 0.3);
      z-index: -1; }
    @media (max-width: 768.98px) {
      .hero-gallery .slick-slide:before {
        position: absolute;
        content: "";
        left: 0;
        right: 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        top: 101%;
        transform: translateY(-100%);
        height: 9.2vw;
        background-image: url(../images/img-bg13.png);
        background-position: top; } }
  @media (max-width: 768.98px) {
    .hero-gallery .slick-list {
      width: 100%; } }
  .hero-gallery [class^="btn-outline-"],
  .hero-gallery [class*=" btn-outline-"] {
    color: #fff; }
  .hero-gallery .slick-dots {
    display: block;
    margin: 0; }
    .hero-gallery .slick-dots li {
      margin: 0 0 0.75rem; }
      .hero-gallery .slick-dots li.slick-active button {
        width: 0.5rem;
        opacity: 1; }
    .hero-gallery .slick-dots button {
      transition: opacity 0.3s ease-in-out, width 0.3s ease-in-out;
      text-indent: -9999px;
      width: 0.25rem;
      height: 2.25rem;
      border: none;
      border-radius: 0.625rem;
      padding: 0;
      background: 0;
      cursor: pointer;
      pointer-events: auto;
      background-color: #0168BC;
      opacity: 0.3; }
      .hero-gallery .slick-dots button:focus {
        outline: none; }
      .hero-gallery .slick-dots button:hover {
        opacity: 1; }
  .hero-gallery .gallery-dots {
    position: absolute;
    z-index: 999;
    top: 100px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    pointer-events: none;
    max-width: 66.5rem;
    padding: 0 1.25rem;
    top: calc(151px + 6.5vw); }
    @media (min-width: 1025px) {
      .hero-gallery .gallery-dots {
        max-width: 93.5625rem;
        top: calc(211px + 6.5vw); } }
  .hero-gallery .container {
    padding: 0 1.875rem; }
    @media (min-width: 375px) {
      .hero-gallery .container {
        padding: 0 2.3125rem; } }
    @media (min-width: 769px) {
      .hero-gallery .container {
        max-width: 66.5rem;
        padding: 0 3.75rem; } }
    @media (min-width: 1025px) {
      .hero-gallery .container {
        max-width: 93.5625rem; } }

.search_page_hero {
  margin-top: 175px; }
  @media (max-width: 1024.98px) {
    .search_page_hero {
      margin-top: 75px; } }

.intro-section {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  color: #fff;
  z-index: 1;
  font-weight: 500; }
  @media (max-width: 768.98px) {
    .intro-section + .btn + [class^="section"],
    .intro-section + .btn + [class*=" section"] {
      padding-top: 107px; } }
  @media (max-width: 768.98px) {
    .intro-section p {
      line-height: 1.3; } }
  .intro-section:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: '';
    background-color: rgba(22, 23, 25, 0.4);
    z-index: -1; }
  .intro-section + .btn {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -100%);
    top: 37.5rem;
    z-index: 10;
    min-width: 9.6875rem;
    box-shadow: 0 0 1.25rem rgba(0, 0, 0, 0.2); }
  @media (max-width: 768.98px) {
    .intro-section .container {
      padding-left: 2.5rem;
      padding-right: 2.5rem; } }
  .intro-section .heading-holder {
    padding-top: 3.125rem; }
    @media (min-width: 769px) {
      .intro-section .heading-holder {
        padding-top: 1.25rem;
        padding-top: 5.9375rem; } }
    .intro-section .heading-holder:last-child {
      margin-bottom: 0; }
    .intro-section .heading-holder h1 {
      font-size: 2.8125rem; }
      @media (min-width: 375px) {
        .intro-section .heading-holder h1 {
          font-size: 3.75rem;
          font-weight: 700; } }
      @media (min-width: 769px) {
        .intro-section .heading-holder h1 {
          font-size: 5rem;
          margin: 0 0 1.5625rem; } }
      @media (min-width: 1920px) {
        .intro-section .heading-holder h1 {
          font-size: 6.25rem; } }
    @media (max-width: 768.98px) {
      .intro-section .heading-holder .h1 {
        font-size: 1.25rem; } }
  .intro-section h1 {
    margin-bottom: 0;
    font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif; }
    @media (min-width: 769px) {
      .intro-section h1 {
        font-weight: 900;
        margin-bottom: 0.7rem;
        font-size: 3.125rem; } }
    @media (min-width: 1025px) {
      .intro-section h1 {
        font-size: 4.0625rem; } }
    @media (min-width: 1920px) {
      .intro-section h1 {
        font-size: 5rem; } }

.intro-inner {
  padding: calc(70px + 6.5vw) 0 2.1875rem;
  min-height: calc(600px - 27px); }
  @media (min-width: 769px) {
    .intro-inner {
      min-height: 43.75rem;
      padding: calc(50px + 6.5vw) 0 195px; } }
  @media (min-width: 1025px) {
    .intro-inner {
      min-height: 46.875rem; } }

.feature-section {
  position: relative;
  padding: 2.5rem 0;
  z-index: 1; }
  @media (min-width: 769px) {
    .feature-section:before {
      position: absolute;
      content: "";
      left: 0;
      margin: -7.1vw 0 0;
      right: 0;
      background-repeat: no-repeat;
      background-size: 100% auto;
      top: 1%;
      height: 7.1vw;
      background-image: url(../images/img-bg07.png);
      background-position: bottom;
      z-index: -1; } }

@media (min-width: 769px) {
  .features-holder,
  .features-holder-secondary {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; } }

@media (min-width: 769px) {
  .features-holder {
    overflow: hidden;
    margin-top: -3.3vw; } }

@media (min-width: 769px) {
  [class^="features-holder"] [class*=" features-holder"] {
    margin-left: -0.9375rem;
    margin-right: -0.9375rem; } }

@media (min-width: 1025px) {
  [class^="features-holder"] [class*=" features-holder"] {
    margin-left: -2.1875rem;
    margin-right: -2.1875rem; } }

.features-holder-secondary {
  max-width: 56.25rem;
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
  background: #fff; }
  @media (min-width: 769px) {
    .features-holder-secondary {
      border-radius: 6.25rem;
      padding: 0 1.5625rem;
      overflow: hidden; } }
  @media (min-width: 1025px) {
    .features-holder-secondary {
      padding: 0 2.1875rem; } }
  @media (min-width: 769px) {
    .features-holder-secondary .feature-title {
      transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
      opacity: 0;
      visibility: hidden;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      position: absolute;
      bottom: 0.625rem;
      margin: 0;
      left: 0;
      width: 100%;
      text-align: center;
      z-index: 10; } }
  @media (max-width: 768.98px) {
    .features-holder-secondary .btn {
      padding: 0.5rem 1.375rem; } }

@media (max-width: 768.98px) {
  .feature-inner {
    display: flex;
    align-items: center; } }

.feature-inner:hover {
  text-decoration: none; }
  .feature-inner:hover .feature-title {
    color: #FF8C00; }
  @media (min-width: 769px) {
    .features-holder-secondary .feature-inner:hover .feature-title {
      opacity: 1;
      visibility: visible; } }
  @media (min-width: 769px) {
    .feature-inner:hover .feature-icon.icon-development img {
      transform: scale(2) rotate(45deg) translate(3%, -16%); } }
  @media (min-width: 769px) {
    .feature-inner:hover .feature-icon.icon-surveying img {
      transform: scale(2.5) translate(2%, 24%); } }
  @media (min-width: 769px) {
    .feature-inner:hover .feature-icon.icon-utilities img {
      transform: scale(1.5) rotate(-90deg) translate(0, -17%); } }
  @media (min-width: 769px) {
    .feature-inner:hover .feature-icon.icon-works img {
      transform: scale(1.5) translate(0, 12%); } }
  .feature-inner:hover .feature-icon img {
    transform: none; }
    @media (min-width: 769px) {
      .feature-inner:hover .feature-icon img {
        transform: scale(2); } }

.feature-item {
  position: relative;
  font-size: 0.9375rem;
  line-height: 1.33;
  font-weight: 500;
  padding-bottom: 1.4375rem; }
  @media (min-width: 769px) {
    .feature-item {
      max-width: 14.5625rem;
      flex: 1 0;
      display: block;
      text-align: center;
      padding-bottom: 2.1875rem;
      min-width: 11.25rem; } }
  @media (min-width: 1025px) {
    .feature-item {
      min-width: 16.25rem; } }
  @media (min-width: 769px) {
    .feature-item.popup-active .popup {
      opacity: 1;
      visibility: visible;
      pointer-events: auto; } }
  @media (min-width: 769px) {
    .features-holder-secondary .feature-item {
      padding: 2.4375rem 0.625rem;
      min-width: auto; } }
  @media (min-width: 769px) {
    .features-holder .feature-item {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem; } }
  @media (min-width: 1025px) {
    .features-holder .feature-item {
      padding-left: 2.1875rem;
      padding-right: 2.1875rem; } }
  @media (min-width: 769px) {
    .feature-item .popup {
      transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
      pointer-events: none;
      opacity: 0;
      visibility: hidden;
      position: absolute;
      right: 0.625rem;
      top: 0;
      bottom: 0;
      transform: translate(100%, 0);
      z-index: 1;
      text-align: left;
      font-size: 1.25rem;
      line-height: 1.2;
      width: 25rem;
      padding: 0 0 0 6.25rem; } }
  @media (min-width: 1025px) {
    .feature-item .popup {
      padding: 0 0 0 7.5rem;
      right: 0.625rem;
      width: 25rem; } }
  @media (min-width: 769px) {
    .feature-item .popup:after {
      position: absolute;
      content: "";
      background: #fff;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      width: 62.4375rem;
      height: 62.4375rem;
      z-index: -1;
      pointer-events: none; } }
  @media (min-width: 769px) {
    .feature-item .popup:before {
      position: absolute;
      content: "";
      background: #FE5000;
      height: 0.125rem;
      width: 100%;
      top: 50%;
      left: 0;
      width: 5.3125rem;
      transform: translate(0, -50%); } }
  @media (min-width: 1025px) {
    .feature-item .popup:before {
      width: 6.25rem; } }
  @media (min-width: 769px) {
    .feature-item .popup p {
      margin: 0 0 0.8125rem; } }
  @media (min-width: 769px) {
    .feature-item .popup .link-arrow {
      font-size: 1.1875rem; } }
  @media (min-width: 769px) {
    .feature-item .popup-inner {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: start;
      height: 100%; } }
  .feature-item p {
    margin: 0 0 0.3125rem; }
  .feature-item h2 {
    font-weight: 600; }
    .feature-item h2 a {
      color: inherit; }
    @media (min-width: 769px) and (max-width: 1024.98px) {
      .feature-item h2 {
        font-size: 1.5625rem; } }
    .features-holder-secondary .feature-item h2 {
      font-size: 1.375rem; }
  @media (min-width: 769px) {
    .feature-item:nth-of-type(4) .popup, .feature-item:nth-of-type(5) .popup, .feature-item:nth-of-type(6) .popup {
      left: 0.625rem;
      right: auto;
      transform: translate(-100%, 0);
      padding: 0 6.25rem 0 0; } }
  @media (min-width: 1025px) {
    .feature-item:nth-of-type(4) .popup, .feature-item:nth-of-type(5) .popup, .feature-item:nth-of-type(6) .popup {
      padding: 0 7.5rem 0 0;
      left: 0.625rem;
      right: auto; } }
  @media (min-width: 769px) {
    .feature-item:nth-of-type(4) .popup:after, .feature-item:nth-of-type(5) .popup:after, .feature-item:nth-of-type(6) .popup:after {
      left: auto;
      right: 0; } }
  @media (min-width: 769px) {
    .feature-item:nth-of-type(4) .popup:before, .feature-item:nth-of-type(5) .popup:before, .feature-item:nth-of-type(6) .popup:before {
      left: auto;
      right: 0; } }
  @media (min-width: 769px) {
    .feature-item.icons-5:nth-of-type(3) .popup {
      padding-right: 50px;
      width: 300px; } }
  @media (min-width: 769px) {
    .feature-item.icons-5:nth-of-type(3) .popup:before {
      width: 50px; } }

.feature-icon {
  transform: translate3d(0, 0, 0);
  display: inline-block;
  vertical-align: top;
  width: 5.375rem;
  height: 5.375rem;
  overflow: hidden;
  border-radius: 50%; }
  @media (min-width: 1025px) {
    .feature-icon {
      width: 7.5rem;
      height: 7.5rem; } }
  @media (max-width: 768.98px) {
    .feature-icon.icon-development img {
      transform: scale(2) rotate(45deg) translate(3%, -16%); } }
  @media (max-width: 768.98px) {
    .feature-icon.icon-surveying img {
      transform: scale(2.5) translate(2%, 24%); } }
  @media (max-width: 768.98px) {
    .feature-icon.icon-utilities img {
      transform: scale(1.5) rotate(-90deg) translate(0, -17%); } }
  @media (max-width: 768.98px) {
    .feature-icon.icon-works img {
      transform: scale(1.5) translate(0, 12%); } }
  .feature-icon img {
    transition: transform 0.2s ease-in-out;
    width: 100%;
    border-radius: 50%; }

@media (max-width: 768.98px) {
  .feature-body {
    flex: 1 0;
    padding: 0 0 0 1.5625rem; } }

.desc-section {
  font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  padding: 0 0 3.125rem; }
  @media (min-width: 769px) {
    .desc-section {
      padding: 5rem 0; } }
  .desc-section h1 {
    font: 4.625rem/0.95 "Felt That", cursive;
    margin: 0 0 0.875rem; }
    @media (min-width: 769px) {
      .desc-section h1 {
        font-size: 5rem;
        margin: 0; } }
    @media (min-width: 1025px) {
      .desc-section h1 {
        font-size: 7.5rem; } }
    @media (min-width: 1920px) {
      .desc-section h1 {
        font-size: 10rem; } }
  .desc-section p {
    letter-spacing: .02em; }

.desc-holder {
  position: relative; }
  @media (max-width: 768.98px) {
    .desc-holder {
      display: flex;
      flex-direction: column;
      align-items: center; } }
  @media (min-width: 769px) {
    .desc-holder {
      display: flex;
      align-items: center; } }
  @media (max-width: 768.98px) {
    .desc-holder:after {
      position: absolute;
      content: "";
      z-index: 1;
      left: -1.25rem;
      right: -1.25rem;
      top: 17.5rem;
      height: 23.4375rem;
      background-image: linear-gradient(181deg, rgba(255, 255, 255, 0) 13%, white 47%); } }

.desc-list-images {
  transform: translate3d(0, 0, 0);
  position: relative;
  overflow: hidden;
  width: 33.1875rem;
  height: 33.1875rem;
  border-radius: 50%;
  margin: 0 0 -13.125rem; }
  @media (min-width: 769px) {
    .desc-list-images {
      width: 23.75rem;
      height: 23.75rem;
      margin: 0 1.875rem 0 0; } }
  @media (min-width: 1025px) {
    .desc-list-images {
      width: 31.25rem;
      height: 31.25rem;
      margin: 0 5rem 0 0; } }
  @media (min-width: 1920px) {
    .desc-list-images {
      width: 36.625rem;
      height: 36.625rem;
      margin: 0 9.6875rem 0 0; } }
  .desc-list-images .image-item {
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0;
    z-index: 1;
    visibility: hidden; }
    @media (max-width: 768.98px) {
      .desc-list-images .image-item:after {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        content: "";
        z-index: -1;
        background: rgba(255, 255, 255, 0.7); } }
    .desc-list-images .image-item.active {
      opacity: 1;
      visibility: visible; }

@media (max-width: 768.98px) {
  .desc-text {
    text-align: center;
    position: relative;
    z-index: 10; } }

@media (min-width: 769px) {
  .desc-text {
    flex: 1 0; } }

.spotlight-section {
  overflow: hidden;
  position: relative;
  z-index: 10;
  font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif; }
  @media (min-width: 769px) {
    .spotlight-section {
      margin: 0 0 -5.5vw;
      color: #fff; } }
  @media (min-width: 769px) {
    .spotlight-section:after {
      position: absolute;
      content: '';
      background: #ebebeb;
      height: calc(100% - 4.5vw);
      top: 0;
      left: 0;
      right: 0;
      z-index: -2; } }
  @media (min-width: 769px) {
    .spotlight-section:before {
      position: absolute;
      content: '';
      left: 0;
      right: 0;
      background-repeat: no-repeat;
      background-size: 100% auto;
      top: 0;
      height: 5vw;
      background-image: url(../images/img-bg10.png);
      background-position: bottom;
      z-index: 2; } }
  @media (min-width: 1920px) {
    .spotlight-section:before {
      height: 4vw; } }
  @media (min-width: 769px) {
    .spotlight-section + * {
      padding-top: 6.5vw !important; } }
  @media (min-width: 1025px) {
    .spotlight-section + * {
      padding-top: 4.6vw !important; } }
  .spotlight-section h1 {
    color: #003057;
    font-weight: 900;
    font-size: 2.5rem; }
    @media (min-width: 769px) {
      .spotlight-section h1 {
        font-size: 3.75rem; } }
    @media (min-width: 1025px) {
      .spotlight-section h1 {
        font-size: 5rem; } }
  .spotlight-section .subtitle {
    font-weight: 500; }
    @media (max-width: 768.98px) {
      .spotlight-section .subtitle.h3 {
        font-size: 1.25rem; } }
  .spotlight-section p {
    letter-spacing: .02em; }

.spotlight-inner {
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1;
  background-size: contain;
  padding: 2.625rem 0 3.125rem; }
  @media (max-width: 768.98px) {
    .spotlight-inner {
      background-image: none !important; } }
  @media (min-width: 769px) {
    .spotlight-inner {
      display: flex;
      align-items: center;
      padding: 4.5vw 0 6.5vw;
      min-height: 40vw; } }

.bg-spotlight {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  pointer-events: none;
  z-index: -1;
  background-size: contain; }
  @media (min-width: 769px) {
    .bg-spotlight:after {
      position: absolute;
      content: '';
      background: #161719;
      height: calc(100% - 4.5vw);
      top: 0;
      left: 0;
      right: 0;
      z-index: -2; } }
  .bg-spotlight span {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
    pointer-events: none;
    z-index: -1;
    background-size: contain; }
    @media (max-width: 768.98px) {
      .bg-spotlight span {
        display: none; } }

.spotlight-image {
  overflow: hidden; }
  @media (max-width: 768.98px) {
    .spotlight-image {
      text-align: center;
      margin: 0 0 2.1875rem; } }
  @media (min-width: 769px) {
    .spotlight-image {
      object-fit: cover;
      position: absolute;
      width: 27vw;
      height: 27vw;
      bottom: 6.5vw;
      border-radius: 50%;
      overflow: hidden;
      right: 9.5vw;
      box-shadow: -11px -6px 30px rgba(22, 23, 25, 0.27); } }
  .spotlight-image img {
    border-radius: 50%; }
    @media (min-width: 769px) {
      .spotlight-image img {
        width: 100%;
        height: 100%; } }

@media (min-width: 769px) {
  .spotlight-text {
    padding: 3.125rem 3.125rem 3.125rem 0;
    width: calc(100% - 27vw - 9.5vw); } }
  @media (min-width: 769px) and (min-width: 1920px) {
    .spotlight-text {
      width: 100%;
      max-width: 46.875rem; } }

.expertise-section {
  position: relative;
  overflow: hidden;
  z-index: 1;
  padding: 3.125rem 0 1.875rem; }
  @media (min-width: 1025px) {
    .expertise-section {
      display: flex;
      align-items: center;
      display: flex;
      align-items: center;
      min-height: 67.5rem; } }
  @media (min-width: 1920px) {
    .expertise-section {
      min-height: 80rem; } }

.expertise-image-list {
  position: absolute;
  width: 100%;
  max-width: 76.5625rem;
  padding: 0 1.875rem;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0.5;
  z-index: -1; }
  @media (max-width: 1024.98px) {
    .expertise-image-list {
      display: none; } }
  .expertise-image-list li {
    position: absolute; }
    .expertise-image-list li:nth-child(1) {
      top: 1%; }
    .expertise-image-list li:nth-child(2) {
      top: 24%; }
    .expertise-image-list li:nth-child(3) {
      bottom: 29%; }
    .expertise-image-list li:nth-child(4) {
      bottom: 1%; }

@media (max-width: 1919.98px) {
  .expertise-holder-secondary .slick-track,
  .expertise-holder-secondary .slick-list {
    display: flex;
    align-items: center; } }

@media (max-width: 1919.98px) {
  [class^="expertise-holder"],
  [class*="expertise-holder"] {
    margin-right: -0.625rem;
    margin-left: -0.625rem; } }

@media (max-width: 1024.98px) {
  [class^="expertise-holder"],
  [class*="expertise-holder"] {
    margin-right: -2.5rem;
    margin-left: -2.5rem; } }

@media (max-width: 1919.98px) {
  [class^="expertise-holder"] [class^="col-"],
  [class^="expertise-holder"] [class*=" col-"],
  [class*="expertise-holder"] [class^="col-"],
  [class*="expertise-holder"] [class*=" col-"] {
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }

@media (max-width: 1024.98px) {
  [class^="expertise-holder"] [class^="col-"],
  [class^="expertise-holder"] [class*=" col-"],
  [class*="expertise-holder"] [class^="col-"],
  [class*="expertise-holder"] [class*=" col-"] {
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }

@media (max-width: 1919.98px) {
  .expertise-holder-secondary [class^="col-"],
  .expertise-holder-secondary [class*=" col-"] {
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }

@media (max-width: 1919.98px) {
  .expertise-holder-secondary .slick-list {
    margin: 0 0 0 -2.5rem; } }

.expertise-holder-secondary .slick-slide {
  width: 16.875rem;
  width: 16.875rem;
  max-width: 20rem; }
  @media (min-width: 375px) {
    .expertise-holder-secondary .slick-slide {
      width: 20rem; } }
  @media (min-width: 769px) {
    .expertise-holder-secondary .slick-slide {
      width: 25rem;
      max-width: 25rem; } }

.expertise-box {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden;
  color: #fff;
  font: 1rem/1.5 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  padding: 1.875rem 2.3125rem;
  z-index: 1; }
  @media (max-width: 768.98px) {
    .expertise-box {
      min-height: 100vh;
      min-height: calc(var(--vh, 1vh) * 100); } }
  @media (max-width: 1024.98px) {
    .expertise-box {
      min-height: 38.5625rem; } }
  @media (min-width: 1025px) {
    .expertise-box {
      padding: 3.125rem 2.5rem;
      margin: 0 0 2.625rem;
      font-size: 1.5rem;
      border-radius: 1.25rem; } }
  @media (min-width: 1920px) {
    .expertise-box {
      padding: 3.125rem 4.0625rem; } }
  @media (max-width: 1024.98px) {
    .expertise-box.expertise-box-content {
      min-height: auto;
      overflow: visible; } }
  @media (max-width: 1024.98px) {
    .expertise-box.expertise-box-content:before {
      position: absolute;
      position: absolute;
      content: "";
      left: 0;
      right: 0;
      background-repeat: no-repeat;
      background-size: 100% auto;
      top: 99%;
      transform: rotate(180deg);
      height: 9.2vw;
      background-image: url(../images/img-bg14.png);
      background-position: top;
      z-index: 100; } }
  @media (min-width: 1025px) {
    .expertise-box:hover .expertise-image {
      transform: scale(1.2); } }
  @media (min-width: 1025px) {
    .expertise-box:hover .expertise-body {
      transform: scale(1); } }
  @media (min-width: 1025px) {
    .expertise-box:hover:after {
      opacity: 1;
      visibility: visible; } }
  @media (min-width: 1025px) {
    .expertise-box:last-child {
      margin: 0; } }
  .expertise-box:after {
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: "";
    z-index: -1;
    background: rgba(1, 104, 188, 0.2); }
    @media (min-width: 1025px) {
      .expertise-box:after {
        opacity: 0;
        visibility: hidden;
        background: rgba(1, 104, 188, 0.3); } }
    @media (max-width: 1024.98px) {
      .expertise-holder-secondary .expertise-box:after {
        background-color: #003057;
        z-index: -2; } }
    @media (min-width: 1025px) {
      .expertise-holder-secondary .expertise-box:after {
        opacity: 1;
        visibility: visible; } }
  @media (max-width: 1024.98px) {
    .expertise-holder-secondary .expertise-box {
      min-height: 13.75rem; } }
  @media (max-width: 768.98px) {
    .expertise-holder-secondary .expertise-box {
      min-height: 9.6875rem; } }
  @media (min-width: 1025px) {
    .expertise-box.expertise-box-lg {
      box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.3);
      height: 100%; } }
  @media (min-width: 1920px) {
    .expertise-box.expertise-box-lg {
      padding: 3.125rem 1.875rem 3.125rem 2.4375rem; } }
  .expertise-box.expertise-box-lg:after {
    background: #0168BC;
    opacity: 1;
    visibility: visible; }
  .expertise-holder-secondary .expertise-box.expertise-box-lg {
    min-height: 22.8125rem; }
    @media (min-width: 769px) {
      .expertise-holder-secondary .expertise-box.expertise-box-lg {
        min-height: 31.875rem; } }
  @media (min-width: 1025px) {
    .expertise-box.expertise-box-lg .expertise-body {
      transform: scale(1); } }
  @media (min-width: 1025px) {
    .expertise-box.expertise-box-md {
      flex: 1 0; } }
  .expertise-holder-secondary .expertise-box.expertise-box-md {
    min-height: 15.3125rem; }
    @media (min-width: 769px) {
      .expertise-holder-secondary .expertise-box.expertise-box-md {
        min-height: 21.875rem; } }
  .expertise-box .small {
    font-size: inherit;
    line-height: inherit; }
    @media (min-width: 1025px) {
      .expertise-box .small {
        font-size: 1.375rem; } }
    @media (min-width: 1025px) {
      .expertise-holder-secondary .expertise-box .small {
        font-size: 1.5rem;
        line-height: 1.58; } }
  .expertise-box p:last-child {
    margin: 0; }
  .expertise-box h1 {
    font: 700 2rem/1.26 "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
    text-transform: none; }
    @media (max-width: 768.98px) {
      .expertise-box h1 {
        margin: 0 0 0.9375rem; } }
    @media (min-width: 1025px) {
      .expertise-box h1 {
        font-size: 2.3125rem; } }
    @media (min-width: 1920px) {
      .expertise-box h1 {
        font-size: 3.75rem; } }
    @media (min-width: 1920px) {
      .expertise-holder-secondary .expertise-box h1 {
        font-size: 3.1875rem; } }
  .expertise-box a {
    color: inherit; }
  .expertise-box h3 {
    font-family: inherit;
    font-size: 1.25rem; }
    @media (max-width: 768.98px) {
      .expertise-box h3 {
        margin: 0 0 0.625rem; } }
    @media (min-width: 769px) {
      .expertise-box h3 {
        font-size: 2rem; } }
  .expertise-box .link-arrow {
    color: inherit;
    align-self: flex-start;
    font-size: 1rem;
    padding-right: 1.5625rem; }
    @media (min-width: 1920px) {
      .expertise-box .link-arrow {
        font-size: 1.5rem;
        padding-right: 1.875rem; } }
    .expertise-box .link-arrow:hover {
      color: #FF8C00; }
  .expertise-box .subtitle {
    font: 2.5rem/1 "Felt That", cursive;
    margin: 0 0 1.25rem;
    color: inherit; }
    @media (min-width: 769px) {
      .expertise-box .subtitle {
        margin: 0 0 2.8125rem; } }
    @media (min-width: 1025px) {
      .expertise-box .subtitle {
        font-size: 3.125rem; } }
    @media (min-width: 1920px) {
      .expertise-box .subtitle {
        font-size: 5rem; } }
    .expertise-holder-secondary .expertise-box .subtitle {
      margin: 0 0 1.875rem; }
      @media (min-width: 375px) {
        .expertise-holder-secondary .expertise-box .subtitle {
          font-size: 3.125rem; } }
      @media (min-width: 1920px) {
        .expertise-holder-secondary .expertise-box .subtitle {
          font-size: 4.125rem; } }

.expertise-body {
  transition: transform 0.3s ease-in-out; }
  @media (min-width: 1025px) {
    .expertise-body {
      transform: scale(0); } }
  @media (min-width: 1025px) {
    .expertise-holder-secondary .expertise-body {
      transform: scale(1); } }

.expertise-image {
  transition: transform 0.3s ease-in-out;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: -1;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (max-width: 1024.98px) {
    .expertise-holder-secondary .expertise-image {
      background-image: none !important; } }
  @media (min-width: 769px) {
    .expertise-image img {
      transform: scale(1.2); } }
  @media (min-width: 1025px) {
    .expertise-image img {
      display: none; } }

.about-section {
  position: relative;
  background: #FF8C00;
  z-index: 1;
  padding: 0 0 11.3vw;
  color: #fff; }
  @media (max-width: 768.98px) {
    .about-section {
      margin-top: 11.3vw; } }
  @media (min-width: 769px) {
    .about-section {
      padding: 3.125rem 0 calc(5.3vw + 75px); } }
  .about-section:after {
    position: absolute;
    content: "";
    z-index: -1; }
    @media (max-width: 768.98px) {
      .about-section:after {
        left: 0;
        right: 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        top: -11.3vw;
        background-image: url(../images/img-bg11.png);
        background-position: bottom;
        height: 11.3vw; } }
    @media (min-width: 769px) {
      .about-section:after {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        content: ""; } }
  .about-section:before {
    position: absolute;
    content: "";
    z-index: -1;
    left: 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    bottom: -0.125rem;
    height: 11.3vw;
    background-image: url(../images/img-bg12.png);
    background-position: top; }
    @media (min-width: 769px) {
      .about-section:before {
        background-image: url(../images/img-bg10.png);
        transform: rotate(180deg);
        height: 5.3vw; } }
  .about-section:last-of-type {
    margin-bottom: -7.4vw; }
    @media (min-width: 769px) {
      .about-section:last-of-type {
        margin-bottom: -5.7vw; } }
  @media (max-width: 768.98px) {
    .about-section.about-secondary {
      margin-top: 0; } }
  .about-section.about-secondary:before {
    display: none; }
  @media (max-width: 768.98px) {
    .about-section.about-secondary:after {
      display: none; } }
  @media (max-width: 768.98px) {
    .about-section h1 {
      font-size: 1.75rem; } }
  @media (min-width: 769px) {
    .about-section h1 br {
      display: none; } }
  .about-section .lists p {
    margin: 0.7rem 0 0.9rem; }

.about-gallery {
  transition: transform 0.2s ease-in-out;
  position: relative; }
  @media (max-width: 768.98px) {
    .about-gallery {
      padding: 0 0 3.125rem; } }
  @media (min-width: 769px) {
    .about-gallery {
      padding: 0 3.75rem; } }
  @media (max-width: 768.98px) {
    .about-gallery .blockquote p {
      color: #fff; } }
  .about-gallery h4 {
    text-transform: uppercase;
    font-weight: 700;
    margin: 0 0 0.625rem; }
    @media (min-width: 769px) {
      .about-gallery h4 {
        margin: 0 0 1.5625rem; } }
  @media (max-width: 768.98px) {
    .about-gallery .slick-arrow {
      color: #fff; } }
  @media (min-width: 769px) {
    .about-gallery .slick-arrow {
      top: 33%; } }
  .about-gallery .slick-arrow:hover {
    color: #003057; }
    @media (min-width: 769px) {
      .about-gallery .slick-arrow:hover {
        color: #fff; } }

.js-isotope-grid {
  display: block; }

@media (max-width: 768.98px) {
  .js-isotope-item.hidden {
    visibility: hidden;
    width: 0px !important;
    height: 0px !important;
    margin: 0px !important;
    padding: 0px !important; } }

.items-holder,
.items-holder-secondary {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.875rem;
  margin-right: -0.6875rem;
  margin-left: -0.6875rem; }
  .items-holder:last-child,
  .items-holder-secondary:last-child {
    margin-bottom: 0; }
  .items-holder a,
  .items-holder-secondary a {
    color: inherit; }
  .items-holder .item,
  .items-holder-secondary .item {
    margin-bottom: 3.75rem;
    padding-right: 0.6875rem;
    padding-left: 0.6875rem; }
    @media (max-width: 767px) {
      .items-holder .item,
      .items-holder-secondary .item {
        min-width: 100%; } }
    @media (min-width: 768px) {
      .items-holder .item,
      .items-holder-secondary .item {
        width: 50%; } }
    .items-holder .item .image-holder,
    .items-holder-secondary .item .image-holder {
      display: block;
      position: relative;
      overflow: hidden;
      margin: 0 auto 1.25rem;
      transform: translate3d(0, 0, 0); }
      .items-holder .item .image-holder img,
      .items-holder-secondary .item .image-holder img {
        transition: transform 0.3s ease-in-out;
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .items-holder .item strong,
    .items-holder-secondary .item strong {
      text-transform: uppercase;
      font-size: 1rem; }
    .items-holder .item p:last-child,
    .items-holder-secondary .item p:last-child {
      margin: 0; }
    .items-holder .item .video-link,
    .items-holder-secondary .item .video-link {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0; }
  .items-holder a.item,
  .items-holder-secondary a.item {
    display: block; }
    .items-holder a.item:hover,
    .items-holder-secondary a.item:hover {
      text-decoration: none;
      color: #FF8C00; }
      .items-holder a.item:hover .text-muted,
      .items-holder-secondary a.item:hover .text-muted {
        color: inherit !important; }
      .items-holder a.item:hover .image-holder img,
      .items-holder-secondary a.item:hover .image-holder img {
        transform: scale(1.2); }

.items-holder .item {
  text-align: center; }
  @media (min-width: 1024px) {
    .items-holder .item {
      width: 25%; } }
  .items-holder .item .image-holder {
    height: 17.5rem; }
    @media (min-width: 375px) {
      .items-holder .item .image-holder {
        height: 20.9375rem; } }
    @media (min-width: 1024px) and (max-width: 1440px) {
      .items-holder .item .image-holder {
        height: 14.375rem; } }
    @media (min-width: 1920px) {
      .items-holder .item .image-holder {
        height: 21.5625rem; } }
    .items-holder .item .image-holder.rounded-circle {
      width: 17.5rem; }
      @media (min-width: 375px) {
        .items-holder .item .image-holder.rounded-circle {
          width: 20.9375rem; } }
      @media (min-width: 1024px) and (max-width: 1440px) {
        .items-holder .item .image-holder.rounded-circle {
          width: 14.375rem; } }
      @media (min-width: 1920px) {
        .items-holder .item .image-holder.rounded-circle {
          width: 21.5625rem; } }
  @media (max-width: 768.98px) {
    .items-holder .item h3 {
      font-size: 1.75rem; } }

@media (min-width: 1024px) {
  .items-holder-secondary {
    margin-right: -3.125rem;
    margin-left: -3.125rem; } }

.items-holder-secondary .item {
  margin-bottom: 3.125rem; }
  @media (max-width: 768.98px) {
    .items-holder-secondary .item {
      text-align: center; } }
  @media (min-width: 769px) {
    .items-holder-secondary .item {
      text-align-last: left;
      margin-bottom: 4.375rem; } }
  @media (min-width: 1024px) {
    .items-holder-secondary .item {
      width: 50%;
      padding-left: 3.125rem;
      padding-right: 3.125rem; } }
  .items-holder-secondary .item .image-holder {
    width: 100%;
    height: 53vw; }
    @media (max-width: 768.98px) {
      .items-holder-secondary .item .image-holder {
        margin-bottom: 0.625rem; } }
    @media (min-width: 769px) {
      .items-holder-secondary .item .image-holder {
        height: 26vw; } }
    @media (min-width: 1920px) {
      .items-holder-secondary .item .image-holder {
        height: 19.375rem; } }
  @media (max-width: 768.98px) {
    .items-holder-secondary .item h3 {
      font-size: 1.25rem; } }

.info-section {
  position: relative;
  z-index: 1;
  padding: 0 0 9.2vw; }
  @media (min-width: 769px) {
    .info-section {
      padding-top: 1.25rem; } }
  .info-section:before {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    top: 99%;
    transform: translateY(-100%) rotate(180deg);
    height: 9.2vw;
    background-image: url(../images/img-bg14.png);
    background-position: top;
    z-index: -1; }
  @media (max-width: 768.98px) {
    .info-section:after {
      position: absolute;
      content: '';
      left: 0;
      right: 0;
      background-repeat: no-repeat;
      background-size: 100% auto;
      top: 8.2vw;
      transform: translateY(-100%);
      height: 9.2vw;
      background-image: url(../images/img-bg14.png);
      background-position: bottom;
      z-index: -1; } }
  @media (max-width: 768.98px) {
    .info-section.info-secondary {
      padding-top: 7.2vw; } }
  .info-section.info-secondary .info-inner {
    padding: 5rem 0 4.6875rem; }
    @media (min-width: 769px) {
      .info-section.info-secondary .info-inner {
        padding: 3.75rem 0 0; } }
    @media (max-width: 768.98px) {
      .info-section.info-secondary .info-inner:after {
        position: absolute;
        content: '';
        left: 0;
        right: 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        top: -1.5vw;
        transform: translateY(-100%);
        height: 9.2vw;
        background-image: url(../images/img-bg13.png);
        background-position: bottom;
        z-index: -1; } }
    @media (max-width: 768.98px) {
      .info-section.info-secondary .info-inner .features-holder-secondary {
        margin-top: -5.125rem; } }
    @media (max-width: 768.98px) {
      .info-section.info-secondary .info-inner .features-holder-secondary:after {
        position: absolute;
        content: '';
        left: 0;
        right: 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        top: 0;
        transform: translateY(-100%);
        height: 9.2vw;
        background-image: url(../images/img-bg13.png);
        background-position: bottom; } }
    @media (max-width: 768.98px) {
      .info-section.info-secondary .info-inner .features-holder-secondary .popup {
        display: block !important; } }
  .info-section + .map-section {
    margin-top: -9%; }
    @media (min-width: 375px) {
      .info-section + .map-section {
        margin-top: -7%; } }
    @media (min-width: 769px) {
      .info-section + .map-section {
        margin-top: -4%; } }
  @media (max-width: 768.98px) {
    .info-section .heading-holder {
      margin: 0 0 2.5rem; } }
  .info-section .heading-holder p {
    line-height: 1.75; }
    @media (min-width: 769px) {
      .info-section .heading-holder p {
        line-height: 1.35; } }
  @media (max-width: 768.98px) {
    .info-section .features-holder-secondary {
      margin: -3.75rem -1.25rem 3.125rem;
      padding: 2.8125rem 1.25rem 1.0625rem; } }
  @media (min-width: 769px) {
    .info-section .features-holder-secondary {
      transform: translateY(-50%);
      margin-top: -3.75rem;
      margin-bottom: 1.5625rem; } }

.info-inner {
  position: relative;
  background: #0168BC;
  padding: 3.75rem 0 0; }

.filter-section {
  padding: 5.3125rem 0; }
  @media (min-width: 769px) {
    .filter-section {
      padding: 5rem 0 5.3125rem; } }
  .filter-section h1 {
    margin: 0 0 2.625rem; }
  .filter-section .card-secondary .link-icon {
    top: 0; }

.filters-buttons {
  margin: 0 -0.625rem 0.75rem;
  display: flex;
  justify-content: center;
  flex-wrap: wrap; }
  @media (max-width: 768.98px) {
    .filters-buttons {
      justify-content: center; } }
  @media (min-width: 769px) {
    .filters-buttons {
      margin-bottom: 1.5625rem; } }
  .filters-buttons button {
    transition: background 0.3s ease-in-out, border 0.3s ease-in-out, color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
    font-size: 1.25rem;
    font-weight: 500;
    border-radius: 1.93rem;
    border: 0.0625rem solid #707070;
    background: #fff;
    margin: 0 0.625rem 1.75rem;
    padding: 0.3125rem 1.25rem;
    max-width: 19.0625rem;
    width: 100%; }
    @media (min-width: 376px) {
      .filters-buttons button {
        max-width: 31.25rem; } }
    @media (min-width: 769px) {
      .filters-buttons button {
        width: auto;
        box-shadow: 0 0 30px rgba(0, 0, 0, 0.16);
        white-space: nowrap;
        border-color: #fff;
        flex: 1 0;
        max-width: 16.5625rem;
        padding: 0.75rem 2.5rem; } }
    @media (min-width: 769px) {
      .filters-buttons button:first-child {
        flex: inherit; } }
    .filters-buttons button:focus {
      outline: none; }
    .filters-buttons button:hover {
      background: #FF8C00;
      border-color: #FF8C00;
      color: #fff;
      box-shadow: none; }
    .filters-buttons button.active {
      border-color: #FF8C00;
      background: #FF8C00;
      color: #fff; }
      @media (min-width: 769px) {
        .filters-buttons button.active {
          box-shadow: none; } }

.filter-form {
  display: flex;
  flex-wrap: wrap; }
  @media (max-width: 768.98px) {
    .filter-form {
      margin: 0 0 1.25rem; } }
  .filter-form h5 {
    font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif;
    margin: 0 0 0.5625rem; }
  .filter-form .form-check {
    padding: 0 0 1.375rem; }
    @media (min-width: 769px) {
      .filter-form .form-check {
        padding: 0; } }
  .filter-form .form-check-input {
    position: absolute;
    z-index: -1;
    opacity: 0;
    visibility: hidden; }
  .filter-form .form-check-label {
    padding: 0;
    font-size: 1.75rem;
    font-weight: 700;
    cursor: pointer; }
    @media (min-width: 769px) {
      .filter-form .form-check-label {
        padding: 0.125rem 0.6875rem;
        font-size: 1rem;
        display: block; } }
    .filter-form .form-check-label:hover {
      color: #FF8C00; }
      @media (min-width: 769px) {
        .filter-form .form-check-label:hover {
          color: #fff;
          background: #FF8C00; } }

.filter-form-item {
  position: relative;
  margin: 0 0 1.25rem; }
  @media (max-width: 768.98px) {
    .filter-form-item {
      width: 100%; } }
  @media (min-width: 769px) {
    .filter-form-item {
      margin-right: 2rem; } }
  .filter-form-item.popup-active .open:after {
    transform: translateY(-50%) rotateX(180deg); }
  .filter-form-item .open {
    position: relative;
    display: block;
    padding: 10px;
    font: 600 1rem/1.3 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
    border-radius: 0.1875rem;
    border: 0.0625rem solid #373a3c;
    background: #fff;
    padding: 0.375rem 2.1875rem 0.375rem 0.6875rem; }
    @media (min-width: 769px) {
      .filter-form-item .open {
        text-transform: uppercase;
        min-width: 10rem;
        max-width: 20rem; } }
    .filter-form-item .open:after {
      transition: transform 0.3s ease-in-out;
      content: "";
      font-family: 'icomoon';
      font-size: 1.25rem;
      line-height: 1;
      text-indent: 0;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 0.3125rem;
      font-weight: normal; }
    .filter-form-item .open:hover {
      text-decoration: none; }

.filter-drop {
  overflow: auto;
  display: none;
  background: rgba(0, 48, 87, 0.95);
  position: fixed; }
  @media (max-width: 768.98px) {
    .filter-drop {
      color: #fff;
      z-index: 999;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh; } }
  @media (min-width: 769px) {
    .filter-drop {
      position: absolute;
      border-radius: 0.1875rem;
      border: 0.0625rem solid #373a3c;
      background: #fff;
      left: 0;
      top: 100%;
      width: 100%;
      min-width: 18.75rem;
      z-index: 20;
      padding: 0.25rem 0;
      max-height: 18.75rem; } }

@media (max-width: 768.98px) {
  .filter-drop-holder {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2.5rem 2.5rem 3.75rem;
    height: calc(100vh - 60px);
    height: calc(var(--vh, 1vh) * 100 - 60px);
    overflow: auto;
    text-align: center;
    justify-content: center; } }

.heading-filter-drop {
  position: relative; }
  @media (max-width: 768.98px) {
    .heading-filter-drop {
      padding: 2.5rem 2.5rem 0; } }
  .heading-filter-drop h5 {
    text-transform: uppercase; }

.close-drop {
  position: absolute;
  top: 1.25rem;
  right: 1.875rem;
  font-size: 2.8125rem; }
  .close-drop:hover {
    text-decoration: none;
    color: #FF8C00; }

.map-section {
  position: relative;
  z-index: 5;
  margin: -6% 0 0; }
  @media (min-width: 769px) {
    .map-section {
      margin: -4% 0; } }
  .map-section:after {
    position: absolute;
    content: '';
    left: -0.3125rem;
    right: -0.3125rem;
    clip-path: url(#my-clip-path-mobile);
    top: -0.625rem;
    bottom: -0.625rem;
    background: #fff;
    z-index: -1; }
    @media (min-width: 769px) {
      .map-section:after {
        clip-path: url(#my-clip-path);
        top: -1.25rem;
        bottom: -1.25rem; } }
  @media (max-width: 768.98px) {
    .map-section.active-popup {
      z-index: 200; } }
  .map-section + [class*="section"],
  .map-section + [class^="section"] {
    padding-top: 3.25rem; }
    @media (min-width: 769px) {
      .map-section + [class*="section"],
      .map-section + [class^="section"] {
        padding-top: calc(4% + 100px); } }
    @media (min-width: 1920px) {
      .map-section + [class*="section"],
      .map-section + [class^="section"] {
        padding-top: calc(4% + 205px); } }

.map-block {
  position: relative;
  height: 126vw;
  margin: 0 -0.3125rem;
  clip-path: url(#my-clip-path-mobile); }
  @media (min-width: 769px) {
    .map-block {
      height: 53vw;
      clip-path: url(#my-clip-path); } }
  @media (min-width: 769px) {
    .map-block:after {
      transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
      position: absolute;
      content: '';
      left: -0.3125rem;
      right: -0.3125rem;
      top: 0;
      bottom: 0;
      background-color: rgba(22, 23, 25, 0.7);
      z-index: 1;
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      clip-path: url(#my-clip-path); } }
  @media (max-width: 768.98px) {
    .active-popup .map-block {
      clip-path: none; } }
  .active-popup .map-block:after {
    opacity: 1;
    visibility: visible; }
  .map-block .map-pins-img {
    position: absolute;
    width: 205%;
    left: -58%;
    top: 11%; }
    @media (min-width: 769px) {
      .map-block .map-pins-img {
        width: 100%;
        max-width: 65.5%;
        left: 11%;
        top: 11.5%; } }
  .map-block img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

.map-pin {
  position: absolute;
  border-radius: 50%;
  cursor: pointer;
  z-index: 999;
  width: 2vw;
  height: 2vw;
  top: 25%;
  left: 5%; }
  @media (min-width: 769px) {
    .map-pin {
      top: 21%;
      left: 32%;
      width: .65vw;
      height: .65vw; } }
  .active-popup .map-pin {
    z-index: 99;
    box-shadow: inset 0 0 0 0.15vw white; }

.popup-map {
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  background: #fff;
  opacity: 0;
  visibility: hidden; }
  @media (max-width: 768.98px) {
    .popup-map {
      width: 100vw;
      height: 100vh;
      overflow-x: hidden;
      overflow-y: auto; } }
  @media (min-width: 769px) {
    .popup-map {
      position: absolute;
      top: 0.7vw;
      left: 1vw;
      width: 27vw; } }
  .active-popup .popup-map {
    opacity: 1;
    visibility: visible; }
  .popup-map .close {
    width: 1.875rem;
    height: 1.875rem;
    color: #fff;
    font-weight: lighter;
    top: 0.375rem;
    position: absolute;
    right: 0.875rem;
    font-size: 4.6875rem; }
    .popup-map .close span {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .popup-map .card {
    font-size: 1rem;
    letter-spacing: .03em;
    line-height: 1.6; }
    @media (min-width: 769px) {
      .popup-map .card {
        font-size: .8vw;
        line-height: 1.7; } }
    .popup-map .card h4 {
      font-size: 0.875rem;
      font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
      margin: 0 0 0.1875rem; }
      @media (min-width: 769px) {
        .popup-map .card h4 {
          font-size: .8vw;
          margin: 0 0 0.2vw; } }
      .popup-map .card h4:last-child {
        margin: 0; }
    .popup-map .card p {
      margin: 0 0 1.875rem; }
      @media (min-width: 769px) {
        .popup-map .card p {
          margin: 0 0 1.5vw; } }
      .popup-map .card p:last-child {
        margin: 0; }
    .popup-map .card .link-arrow {
      font-size: inherit; }
    .popup-map .card .card-header,
    .popup-map .card .card-body {
      padding: 0.9375rem; }
      @media (min-width: 769px) {
        .popup-map .card .card-header,
        .popup-map .card .card-body {
          padding: .8vw; } }
    .popup-map .card .card-body {
      padding-bottom: 2.5rem; }
      @media (min-width: 769px) {
        .popup-map .card .card-body {
          padding-bottom: 2vw; } }
    .popup-map .card .card-header {
      background-position: 50% 50%;
      background-repeat: no-repeat;
      background-size: cover;
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-end;
      color: #fff;
      min-height: 18.125rem;
      z-index: 1; }
      @media (max-width: 768.98px) {
        .popup-map .card .card-header h4 {
          font-size: 0.875rem; } }
      @media (min-width: 769px) {
        .popup-map .card .card-header {
          min-height: 14.5vw; } }
      .popup-map .card .card-header:after {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        content: '';
        background-image: linear-gradient(180deg, rgba(22, 23, 25, 0) 0%, #161719 120%);
        z-index: -1; }
      .popup-map .card .card-header h3 {
        font-size: 1.5rem;
        font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif; }
        @media (min-width: 769px) {
          .popup-map .card .card-header h3 {
            font-size: 1.2vw;
            margin: 0 0 .4vw; } }

.my-clip-path,
.my-clip-path-mobile {
  position: absolute;
  width: 0;
  height: 0; }

.key-box {
  position: absolute;
  left: 1.25rem;
  bottom: 20px;
  max-width: 15.625rem;
  background: rgba(22, 23, 25, 0.5);
  color: #fff;
  padding: 0.9375rem 1.25rem;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5; }
  @media (min-width: 769px) {
    .key-box {
      max-width: 12.5vw;
      bottom: 7.3vw;
      left: 2vw;
      font-size: .8vw;
      padding: 1vw 1.65vw 1vw 1vw;
      font-weight: 700; } }
  .key-box h4 {
    font-size: 1rem;
    margin: 0 0 1.0625rem; }
    @media (min-width: 769px) {
      .key-box h4 {
        margin: 0 0 .6vw;
        font-size: 1vw; } }

.key-list li {
  position: relative;
  padding: 0 0 0 1.75rem;
  margin: 0 0 0.5rem; }
  .key-list li:last-child {
    margin: 0; }
  @media (min-width: 769px) {
    .key-list li {
      padding: 0 0 0 1.4vw;
      margin: 0 0 .2vw; } }
  .key-list li:after {
    position: absolute;
    content: '';
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    background: #fff;
    width: 0.75rem;
    height: 0.1875rem; }
    @media (min-width: 769px) {
      .key-list li:after {
        width: .65vw;
        height: .15vw; } }
  .key-list li.bullet:after {
    height: 0.75rem;
    border-radius: 50%; }
    @media (min-width: 769px) {
      .key-list li.bullet:after {
        height: .65vw; } }
  .key-list li.bullet.bullet-warning:after {
    background: #FE5000; }
  .key-list li.bullet.bullet-secondary:after {
    background: #FF8C00; }
  .key-list li.bullet.bullet-info:after {
    background: #0168BC; }

.content-section {
  font-family: "Poppins", "Helvetica Neue", Arial, sans-serif;
  padding: 5rem 0 1.5625rem; }
  @media (min-width: 769px) {
    .content-section {
      padding: 4.0625rem 0; } }
  @media (max-width: 768.98px) {
    .content-section h1 {
      margin: 0 0 1.0625rem; } }
  .content-section a :not(btn):hover {
    color: #FF8C00; }
  .content-section h2 {
    font-size: inherit;
    font-family: inherit;
    margin: 0 0 2rem; }
    .content-section h2 i {
      font-weight: 500; }
  .content-section p {
    letter-spacing: 0.02em; }
    @media (max-width: 768.98px) {
      .content-section p {
        line-height: 1.75; } }
    .content-section p:last-child {
      margin: 0; }
    .content-section p a {
      text-decoration: underline; }
  .content-section time {
    display: block;
    font-size: 1rem;
    text-transform: uppercase;
    margin: 0 0 1.25rem; }
    @media (max-width: 768.98px) {
      .content-section time {
        padding: 0 0.625rem; } }
    @media (min-width: 769px) {
      .content-section time {
        margin: 0 0 0.9375rem; } }
  .content-section .image-holder {
    margin-bottom: 1.4375rem; }
    @media (max-width: 1024.98px) {
      .content-section .image-holder {
        margin-left: -1.25rem;
        margin-right: -1.25rem; } }
    @media (min-width: 769px) {
      .content-section .image-holder {
        margin-bottom: 2.5rem; } }
  .content-section .heading-holder {
    position: relative;
    padding: 0 0.625rem; }
    @media (min-width: 1025px) {
      .content-section .heading-holder {
        padding: 0 0 2.0625rem;
        margin: 0; } }
    @media (max-width: 768.98px) {
      .content-section .heading-holder .social-list {
        margin-bottom: 0; } }
    @media (min-width: 1025px) {
      .content-section .heading-holder .social-list {
        position: absolute;
        flex-direction: column;
        top: 100%;
        right: -3.125rem; } }
    @media (min-width: 1025px) {
      .content-section .heading-holder .social-list li {
        margin-bottom: 1.5rem; } }
    .content-section .heading-holder .social-list a {
      font-size: 2.0625rem; }

.content-secondary-section {
  padding: 5rem 0 0;
  font-size: 1.25rem;
  letter-spacing: 0.02em;
  line-height: 1.5; }
  @media (min-width: 769px) {
    .content-secondary-section {
      padding: 5rem 0 1.5625rem; } }
  .content-secondary-section h1 {
    margin: 0 0 1.5625rem; }
    @media (max-width: 768.98px) {
      .content-secondary-section h1 {
        font-size: 3.25rem; } }
  .content-secondary-section p:last-child {
    margin: 0; }

.subscribe-section {
  padding: 3.4375rem 0 4.0625rem; }
  .subscribe-section + .filter-section {
    padding-top: 1.875rem; }
    .subscribe-section + .filter-section a {
      color: inherit; }
    @media (min-width: 769px) {
      .subscribe-section + .filter-section {
        padding-top: 0; } }
  @media (max-width: 768.98px) {
    .subscribe-section h1 {
      margin: 0 0 0.8125rem; } }

.gallery-section {
  padding: 0.9375rem 0; }
  @media (max-width: 768.98px) {
    .gallery-section {
      text-align: center; } }
  @media (min-width: 769px) {
    .gallery-section {
      padding: 1.875rem 0; } }
  .gallery-section h1 {
    font-size: 1.5rem;
    margin: 0 0 1.6875rem; }
    @media (min-width: 769px) {
      .gallery-section h1 {
        font-size: 2rem;
        margin: 0 0 1.25rem; } }

.gallery-holder {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 500; }
  @media (max-width: 768.98px) {
    .gallery-holder {
      margin: 0 -1.25rem; } }
  @media (min-width: 769px) {
    .gallery-holder {
      display: flex; } }
  @media (min-width: 1025px) {
    .gallery-holder {
      padding: 0 2.375rem 0 0; } }
  @media (min-width: 769px) {
    .gallery-holder .gallery-main {
      width: calc(100% - 150px);
      padding: 0 1.25rem 0 0; } }
  .gallery-holder .gallery-main .gallery-image {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    padding-top: 56.25%;
    height: 0; }
  .gallery-holder .gallery-main .slick-dots {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0.75rem; }
  .gallery-holder .gallery-main .slick-slide {
    position: relative; }
    @media (min-width: 769px) {
      .gallery-holder .gallery-main .slick-slide:hover .gallery-text {
        transform: translateX(0);
        background: rgba(255, 255, 255, 0.9); } }
  .gallery-holder .gallery-main .gallery-text {
    padding: 0 15%; }
    @media (min-width: 769px) {
      .gallery-holder .gallery-main .gallery-text {
        transition: transform 0.3s ease-in-out, background 0.3s ease-in-out;
        position: absolute;
        width: 52%;
        background: rgba(1, 104, 188, 0.9);
        top: 0;
        right: 0;
        bottom: 0;
        padding: 1.25rem;
        transform: translateX(calc(100% - 20px));
        height: 100%;
        overflow: auto;
        display: block; } }
    @media (min-width: 900px) {
      .gallery-holder .gallery-main .gallery-text {
        width: 42%; } }
    .gallery-holder .gallery-main .gallery-text p:last-child {
      margin: 0; }
  @media (min-width: 769px) {
    .gallery-holder .gallery-main .text-inner {
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      min-height: 100%; } }
  .gallery-holder .gallery-nav {
    height: 25rem;
    overflow: hidden; }
    @media (max-width: 768.98px) {
      .gallery-holder .gallery-nav {
        display: none; } }
    @media (min-width: 769px) {
      .gallery-holder .gallery-nav {
        width: 9.375rem; } }
    .gallery-holder .gallery-nav .slick-slide {
      background-position: 50% 50%;
      background-repeat: no-repeat;
      background-size: cover;
      height: 85px;
      margin: 0 0 1.25rem; }
    .gallery-holder .gallery-nav .slick-arrow {
      transition: background 0.3s ease-in-out;
      width: 150px;
      height: 85px;
      background: rgba(255, 255, 255, 0.5);
      border-radius: 0;
      transform: translate(0);
      color: rgba(0, 0, 0, 0.6);
      font-size: 2.5rem; }
      .gallery-holder .gallery-nav .slick-arrow:hover {
        background: rgba(255, 255, 255, 0.8); }
      .gallery-holder .gallery-nav .slick-arrow.slick-prev {
        top: 0; }
        .gallery-holder .gallery-nav .slick-arrow.slick-prev i {
          transform: rotate(90deg); }
      .gallery-holder .gallery-nav .slick-arrow.slick-next {
        top: auto;
        bottom: 0; }
        .gallery-holder .gallery-nav .slick-arrow.slick-next i {
          transform: rotate(90deg); }

.portfolio-holder {
  margin: 0 0 3.75rem; }
  @media (min-width: 769px) {
    .portfolio-holder {
      display: flex;
      margin: 0 0 10rem; } }
  .portfolio-holder .title-small {
    margin: 0 0 1.9375rem;
    font-size: 1rem; }
    @media (max-width: 768.98px) {
      .portfolio-holder .title-small {
        display: none; } }

.portfolio-pagination {
  transition: color 0.3s ease-in-out;
  font: 500 1.25rem/1.35 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  color: #575858;
  display: flex;
  flex-direction: column;
  align-items: flex-start; }
  @media (min-width: 1025px) {
    .portfolio-pagination {
      font-size: 1.75rem; } }
  .portfolio-pagination li {
    transition: padding 0.3s ease-in-out;
    position: relative;
    cursor: pointer;
    margin: 0 0 0.625rem; }
    @media (min-width: 1025px) {
      .portfolio-pagination li {
        margin: 0 0 1.375rem; } }
    .portfolio-pagination li:last-child {
      margin: 0; }
    .portfolio-pagination li:after {
      transition: visibility 0.3s ease-in-out, opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
      position: absolute;
      content: '';
      top: 0.8125rem;
      left: 0;
      height: 2px;
      width: 1.25rem;
      background: currentColor;
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transform: translateX(-1.5625rem); }
      @media (min-width: 1025px) {
        .portfolio-pagination li:after {
          top: 1.125rem;
          width: 1.5625rem; } }
    .portfolio-pagination li.active, .portfolio-pagination li:hover {
      color: #161719;
      padding-left: 1.75rem; }
      @media (min-width: 1025px) {
        .portfolio-pagination li.active, .portfolio-pagination li:hover {
          padding-left: 2.0625rem; } }
      .portfolio-pagination li.active:after, .portfolio-pagination li:hover:after {
        opacity: 1;
        visibility: visible;
        transform: translateX(0); }

@media (min-width: 769px) {
  .portfolio-content {
    flex: 1 0;
    padding: 0.9375rem 1.875rem 0 0; } }

@media (min-width: 1025px) {
  .portfolio-content {
    padding-right: 3.125rem; } }

@media (max-width: 768.98px) {
  .portfolio-gallery-holder {
    text-align: center;
    margin: 0 -1.25rem; } }

@media (min-width: 769px) {
  .portfolio-gallery-holder {
    width: 28.125rem;
    color: #fff; } }

@media (min-width: 1025px) {
  .portfolio-gallery-holder {
    width: 40.625rem; } }

@media (min-width: 769px) {
  .portfolio-gallery-holder .slick-track,
  .portfolio-gallery-holder .slick-list {
    display: flex; } }

.portfolio-gallery-holder .slick-slide {
  position: relative; }
  @media (max-width: 768.98px) {
    .portfolio-gallery-holder .slick-slide {
      padding: 0 1.25rem; } }
  @media (min-width: 769px) {
    .portfolio-gallery-holder .slick-slide {
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 28.125rem;
      padding: 3.125rem;
      background: rgba(0, 0, 0, 0.7);
      border-radius: 1.25rem;
      overflow: hidden; } }
  @media (min-width: 1025px) {
    .portfolio-gallery-holder .slick-slide {
      min-height: 40.625rem;
      padding: 3.125rem 5rem; } }

.portfolio-gallery-holder .title-small {
  color: #ebebeb; }

.portfolio-gallery-holder .gallery-image {
  color: #fff; }
  @media (max-width: 768.98px) {
    .portfolio-gallery-holder .gallery-image {
      display: flex;
      flex-direction: column;
      justify-content: center;
      position: relative;
      min-height: 20.9375rem;
      padding: 2.5rem;
      margin: 0 0 1.25rem; } }

@media (min-width: 769px) {
  .portfolio-gallery-holder .gallery-text {
    display: none; } }

.portfolio-gallery-holder .subtitle {
  color: inherit;
  text-transform: uppercase;
  font: 700 0.75rem/1.35 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: .1em;
  margin: 0 0 0.8125rem; }

.portfolio-gallery-holder h3 {
  font: 500 1.75rem/1.35 "Encode Sans", "Helvetica Neue", Arial, sans-serif; }

.portfolio-gallery-holder .tab-item {
  position: relative; }
  .portfolio-gallery-holder .tab-item.active {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 1.25rem;
    overflow: hidden;
    z-index: -1; }
  .portfolio-gallery-holder .tab-item:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: '';
    background: rgba(0, 0, 0, 0.7); }

.portfolio-gallery-holder .hover-tabset {
  font-size: 1.25rem;
  font-weight: 600; }
  @media (min-width: 1025px) {
    .portfolio-gallery-holder .hover-tabset {
      font-size: 1.75rem; } }
  .portfolio-gallery-holder .hover-tabset li {
    margin: 0 0 1.125rem; }
    @media (min-width: 1025px) {
      .portfolio-gallery-holder .hover-tabset li {
        margin: 0 0 1.5625rem; } }
  @media (min-width: 769px) {
    .portfolio-gallery-holder .hover-tabset a {
      color: #b9b9b9; } }
  .portfolio-gallery-holder .hover-tabset a:hover, .portfolio-gallery-holder .hover-tabset a.active {
    text-decoration: none; }
    @media (min-width: 769px) {
      .portfolio-gallery-holder .hover-tabset a:hover, .portfolio-gallery-holder .hover-tabset a.active {
        color: #fff; } }

.portfolio-gallery-holder .slick-dots {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0.75rem; }

@media (max-width: 768.98px) {
  .portfolio-pagination {
    display: none; } }

.featured-section .featured_sec_wrap {
  position: relative; }
  .featured-section .featured_sec_wrap .left_bg,
  .featured-section .featured_sec_wrap .right_bg {
    position: absolute;
    width: 0;
    height: 100%;
    top: 0;
    background: #fff;
    z-index: 1; }
  .featured-section .featured_sec_wrap .left_bg {
    left: 0; }
  .featured-section .featured_sec_wrap .right_bg {
    right: 0; }

.featured-section .featured_inner_wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: flex-end; }

.featured-section .featured-holder {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  transition: color 0.3s ease-in-out;
  position: relative;
  display: flex;
  align-items: center;
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
  padding: 5rem 0;
  text-align: center;
  color: #fff;
  z-index: 3;
  margin: 0 0 4.0625rem; }
  .featured-section .featured-holder:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: "";
    background: rgba(0, 0, 0, 0.3);
    z-index: -1; }
  .featured-section .featured-holder a {
    color: #fff; }
    .featured-section .featured-holder a:hover {
      color: #0168BC; }
  .featured-section .featured-holder .subtitle {
    text-transform: uppercase;
    color: inherit;
    font-weight: 700;
    font-size: 0.75rem; }
    @media (min-width: 769px) {
      .featured-section .featured-holder .subtitle {
        font-size: 1.25rem; } }
  .featured-section .featured-holder h1 {
    font-size: 3rem;
    font-weight: 400; }
    @media (min-width: 769px) {
      .featured-section .featured-holder h1 {
        font-size: 4.0625rem; } }
    @media (min-width: 1025px) {
      .featured-section .featured-holder h1 {
        font-size: 5rem; } }

.featured-inner {
  margin-bottom: 5rem;
  margin-bottom: 0; }
  @media (min-width: 1025px) {
    .featured-inner {
      margin-left: -1.875rem;
      margin-right: -1.875rem; } }
  @media (min-width: 1025px) {
    .featured-inner [class^="col"],
    .featured-inner [class*=" col"] {
      padding-left: 1.875rem;
      padding-right: 1.875rem; } }

.featured-box {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 25rem;
  overflow: hidden;
  border-radius: 0.625rem;
  z-index: 1;
  text-align: left;
  min-height: 37vh;
  margin: 0 0 3.125rem; }
  @media (max-width: 768.98px) {
    .featured-box {
      text-align: center;
      min-height: 20vh;
      margin: 0 0 1.125rem; } }
  .featured-box:hover .bg-stretch {
    transform: scale(1.2); }
  .featured-box .bg-stretch {
    transition: transform 0.3s ease-in-out;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1; }
  .featured-box .featured-text {
    background: rgba(255, 255, 255, 0.6);
    padding: 0.6875rem 2.5rem; }
  .featured-box a {
    color: initial; }
  .featured-box h3:last-child {
    margin: 0; }

body {
  overflow-anchor: none; }
  @media (min-width: 769px) {
    body {
      font-size: 1.25rem; } }

#wrapper {
  overflow: hidden;
  position: relative; }

#main {
  position: relative;
  background: #fff; }
  #main .content-section:first-child {
    padding-top: calc(70px + 6.5vw); }
    @media (min-width: 769px) {
      #main .content-section:first-child {
        padding-top: calc(65px + 6.5vw); } }

.container {
  width: 100%; }

noscript {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99999; }

.accessibility {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }

.accessibility:focus {
  position: static;
  width: auto;
  height: auto; }

img,
svg {
  max-width: 100%;
  height: auto; }

.section {
  padding: 4.0625rem 0; }
  @media (min-width: 769px) {
    .section {
      padding: 3.4375rem 0 5rem; } }
  @media (min-width: 769px) {
    .section:last-child {
      padding-bottom: 8.75rem; } }
  .section.secondary-section {
    padding: 4.0625rem 0 1.25rem; }
    @media (max-width: 768.98px) {
      .section.secondary-section {
        font-size: 1.25rem; } }
    @media (min-width: 769px) {
      .section.secondary-section {
        padding: 5rem 0 5.625rem; } }
    .section.secondary-section h1 {
      margin: 0 0 1.6875rem; }
      @media (max-width: 768.98px) {
        .section.secondary-section h1 {
          font-size: 3.25rem; } }
    @media (min-width: 769px) {
      .section.secondary-section .heading-holder {
        margin: 0 0 4.6875rem; } }
    .section.secondary-section .heading-holder h1 {
      margin: 0 0 0.3125rem; }
    .section.secondary-section .heading-holder p {
      font-family: "Encode Sans Condensed", "Helvetica Neue", Arial, sans-serif;
      line-height: 1.5;
      font-size: 1.25rem; }

.separator {
  display: inline-block;
  vertical-align: top;
  padding: 0 0.3125rem; }

.subtitle {
  display: block;
  color: #FF8C00;
  margin: 0 0 1.25rem; }

@media (max-width: 768.98px) {
  .heading-holder {
    font-size: 0.875rem; } }

@media (min-width: 769px) {
  .heading-holder {
    margin: 0 0 3.4375rem; } }

.heading-holder p {
  font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.75; }
  @media (min-width: 769px) {
    .heading-holder p {
      line-height: 1.3; } }

.bg-decor {
  position: relative;
  z-index: 1; }
  .bg-decor:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-position: 50% bottom;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    background-image: url(../images/img-bg15.png);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1; }

.js-tab-hidden {
  display: block !important;
  left: -9999px !important;
  position: absolute !important;
  top: -9999px !important; }

.font-family-secondary {
  font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif; }

.error404 #main,
.page-template-login #main,
.page-template-skyline #main {
  background-image: url(/wp-content/themes/understrap/images/skyline.png);
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center;
  background-size: 100%; }

#map {
  height: 989px;
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden; }
  #map img.blue {
    filter: invert(27%) sepia(46%) saturate(3123%) hue-rotate(190deg) brightness(94%) contrast(99%); }
  #map img.red {
    filter: invert(39%) sepia(90%) saturate(3004%) hue-rotate(360deg) brightness(98%) contrast(109%); }

#legend {
  background: #161719;
  padding: 20px;
  margin: 0 0 50px 20px;
  color: #fff;
  font-size: 15px; }
  #legend h3 {
    margin: 0 0 20px 0;
    font-size: 18px; }
  #legend img {
    vertical-align: middle;
    margin: 0 10px 0 0;
    width: unset;
    height: unset; }
  #legend div {
    margin: 0 0 5px 0; }

@media (min-width: 600px) and (max-width: 781px) {
  .wp-block-column {
    flex-basis: calc(100%) !important;
    flex-grow: 0; } }

@media (max-width: 781px) {
  .wp-block-column {
    padding-left: 20px;
    padding-right: 20px; } }

.popup-logo {
  position: absolute;
  top: -12%;
  left: -30%;
  height: 30%;
  width: 22%; }
  @media screen and (max-width: 1023px) {
    .popup-logo {
      left: 0%;
      top: -15%; } }

.absolute-center {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto; }

.aspect-ratio-wide {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover; }

body.admin-bar #header {
  top: 46px !important; }
  @media (min-width: 48.9375em) {
    body.admin-bar #header {
      top: 32px !important; } }
  @media (min-width: 769px) {
    body.admin-bar #header .hero-gallery {
      top: 46px !important; } }
  @media (min-width: 769px) and (min-width: 48.9375em) {
    body.admin-bar #header .hero-gallery {
      top: 32px !important; } }

#header {
  position: fixed !important;
  left: 0;
  right: 0;
  top: 0;
  z-index: 100;
  padding: 0.9375rem 0 7.5vw;
  pointer-events: none; }
  @media (min-width: 1025px) {
    #header {
      padding-bottom: 5.5vw; } }
  @media (min-width: 1025px) {
    #header {
      padding-bottom: 3.5vw; } }
  #header .container {
    pointer-events: auto; }
    @media (min-width: 1025px) {
      #header .container {
        max-width: 114.375rem;
        display: flex;
        align-items: center; } }
  @media (max-width: 1024.98px) {
    #header .dropdown a[aria-expanded="true"] + .dropdown-menu {
      transform: translate3d(0px, 0px, 0px) !important;
      position: relative !important;
      width: 100% !important;
      padding: 0 0 0 1.25rem; } }
  #header .dropdown-menu {
    border: none;
    border-radius: 0;
    background: transparent;
    color: #fff;
    left: 0;
    right: 0;
    top: -10px !important; }
    @media (min-width: 1025px) {
      #header .dropdown-menu {
        transition: all 0.25s;
        position: absolute;
        display: block;
        font-size: 1.25rem;
        padding: 3.35vw 0 1.4999vw;
        z-index: -2;
        opacity: 0;
        visibility: hidden;
        transform: translate3d(0px, 64px, 0px) !important; }
        #header .dropdown-menu.show {
          transition: all 0.325s;
          opacity: 1;
          visibility: visible; } }
  @media (min-width: 1025px) and (min-width: 1920px) {
    #header .dropdown-menu {
      transform: translate3d(0px, 76px, 0px) !important; }
      #header .dropdown-menu.show {
        top: 0 !important; } }
    @media (min-width: 1025px) {
      #header .dropdown-menu:before, #header .dropdown-menu:after {
        position: absolute;
        content: "";
        left: 0;
        right: 0;
        z-index: -1;
        background-repeat: no-repeat;
        background-size: 100% auto; } }
    @media (min-width: 1025px) {
      #header .dropdown-menu:before {
        top: 1px;
        height: 3.35vw;
        background-image: url(../images/img-bg02.png);
        background-position: bottom; } }
    @media (min-width: 1025px) {
      #header .dropdown-menu:after {
        top: calc(100% - 1px);
        transform: translateY(-100%);
        height: 1.5vw;
        background-image: url(../images/img-bg03.png);
        background-position: top; } }
    @media (min-width: 1025px) {
      #header .dropdown-menu h2 {
        font-size: 5rem; } }
    #header .dropdown-menu P {
      letter-spacing: 0.04em;
      font-family: "Encode Sans", "Helvetica Neue", Arial, sans-serif; }
  @media (min-width: 1025px) {
    #header .dropdown-menu-inner {
      display: flex;
      align-items: center;
      background-color: rgba(0, 48, 87, 0.95);
      min-height: 30.3125rem;
      padding: 1.875rem 0; } }

.bg-header {
  transition: opacity 0.3s ease-in-out;
  position: absolute;
  bottom: -1vw;
  left: 0;
  right: 0;
  z-index: -1;
  color: #fff; }
  @media (min-width: 769px) {
    .bg-header {
      color: #fefefe; } }
  .bg-header:after {
    position: absolute;
    content: "";
    background: currentColor;
    left: 0;
    right: 0;
    bottom: 6.5vw;
    height: 62.4375rem; }
  .fixed-position .bg-header {
    opacity: 0.98; }
  .bg-header svg {
    width: 100%; }

.logo-holder {
  position: relative;
  z-index: 1000;
  display: inline-block; }

.logo {
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  width: 7.0625rem; }
  @media (min-width: 1025px) {
    .logo {
      width: 14.375rem;
      margin: 0.375rem 1.25rem -0.375rem 0; } }
  @media (min-width: 1920px) {
    .logo {
      width: 20.3125rem; } }
  @media (max-width: 1024.98px) {
    .nav-active .logo {
      opacity: 0;
      visibility: hidden; } }
  .logo.logo-secondary {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }
    @media (max-width: 1024.98px) {
      .logo.logo-secondary {
        opacity: 0;
        visibility: hidden; } }
    @media (min-width: 1025px) {
      .logo.logo-secondary {
        display: none; } }
    @media (max-width: 1024.98px) {
      .nav-active .logo.logo-secondary {
        opacity: 1;
        visibility: visible; } }
  .logo img {
    width: 100%; }

@media (min-width: 1025px) {
  .main-nav {
    flex: 1 0; } }

@media (min-width: 1025px) {
  .main-nav .nav-secondary li {
    margin: 0 0 1.875rem; } }

@media (max-width: 1024.98px) {
  .main-nav .nav-secondary li:last-child a {
    padding-bottom: 0; } }

.main-nav .nav-secondary a {
  font-size: 1.25rem;
  font-weight: 500;
  pointer-events: auto; }
  @media (min-width: 1025px) {
    .main-nav .nav-secondary a {
      position: relative;
      font-size: 1.625rem;
      font-weight: 600;
      padding: 0 0 0.375rem; } }
  @media (min-width: 1025px) {
    .main-nav .nav-secondary a:after {
      transition: background 0.3s ease-in-out;
      position: absolute;
      content: "";
      height: 0.1875rem;
      background: #0168BC;
      left: 0;
      right: 0;
      bottom: 0; } }
  @media (max-width: 1024.98px) {
    .main-nav .nav-secondary a:hover {
      color: #FF8C00; } }
  @media (min-width: 1025px) {
    .main-nav .nav-secondary a:hover {
      transform: translateY(-5px); } }
  @media (min-width: 1025px) {
    .main-nav .nav-secondary a:hover:after {
      background: #fff; } }

.nav-opener {
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  width: 1.75rem;
  height: 1.625rem;
  float: right;
  position: relative;
  margin: -2.25rem -0.125rem 0; }
  @media (min-width: 1025px) {
    .nav-opener {
      display: none; } }
  .nav-drop .nav-opener {
    opacity: 1 !important;
    visibility: visible !important;
    width: 2.3125rem;
    position: absolute;
    top: 3.3125rem;
    right: 1rem; }
    .nav-drop .nav-opener:before, .nav-drop .nav-opener:after {
      transform: rotate(45deg);
      top: 50%;
      left: 0;
      right: 0; }
    .nav-drop .nav-opener:after {
      transform: rotate(-45deg); }
    .nav-drop .nav-opener span {
      opacity: 0; }
  .nav-opener:before, .nav-opener:after,
  .nav-opener span {
    background: #003057;
    position: absolute;
    top: 1.25rem;
    left: 0;
    right: 0;
    height: 0.25rem;
    border-radius: 0.25rem;
    transition: transform 0.2s linear; }
    .nav-drop .nav-opener:before, .nav-drop .nav-opener:after, .nav-drop
    .nav-opener span {
      background: #fff; }
  .nav-opener:before, .nav-opener:after {
    content: "";
    top: 0.75rem; }
  .nav-opener:after {
    top: 1.75rem; }
  .nav-active .nav-opener {
    opacity: 0;
    visibility: hidden; }

.nav-menu-holder {
  overflow: hidden;
  height: 100%; }
  @media (min-width: 1025px) {
    .nav-menu-holder {
      flex: 1 0; } }

.nav-menu {
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  position: static !important; }
  @media (max-width: 1024.98px) {
    .nav-menu {
      padding: 0 3.75rem 3.75rem;
      overflow: auto;
      height: 100%; } }
  @media (max-width: 374.98px) {
    .nav-menu {
      padding: 0 2.5rem 3.75rem; } }
  @media (min-width: 1025px) {
    .nav-menu {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      padding: 0 1.25rem 0 0; } }
  @media (min-width: 1025px) {
    .nav-menu > li {
      margin: 0 2.25rem 0 0; } }
  .nav-menu > li > a:hover {
    color: #FF8C00; }
    @media (min-width: 1025px) {
      .nav-menu > li > a:hover {
        color: #0168BC; } }
  .nav-menu > li.active {
    color: #FF8C00; }
    @media (min-width: 1025px) {
      .nav-menu > li.active {
        color: #0168BC; } }
  @media (min-width: 1025px) {
    .nav-menu > li:last-child {
      margin: 0; } }
  .nav-menu a {
    display: inline-block;
    vertical-align: middle;
    text-decoration: none;
    font-size: 1.75rem;
    color: inherit;
    font-weight: 700; }
    @media (max-width: 1024.98px) {
      .nav-menu a {
        padding: 0.4375rem 0; } }
    @media (min-width: 1025px) {
      .nav-menu a {
        color: inherit;
        font-size: 1.25rem; } }

.nav-drop {
  transition: transform 0.3s ease-in-out; }
  @media (max-width: 1024.98px) {
    .nav-drop {
      position: absolute;
      transform: translateY(calc(-100% - 11vw));
      top: 0;
      left: 0;
      right: 0;
      z-index: 999;
      background: rgba(0, 48, 87, 0.97);
      height: 100vh;
      color: #fff;
      padding: 5.5625rem 0 0; } }
  @media (min-width: 1025px) {
    .nav-drop {
      display: flex;
      align-items: center; } }
  @media (max-width: 1024.98px) {
    .nav-drop:after {
      position: absolute;
      content: "";
      left: 0;
      right: 0;
      z-index: -1;
      background-repeat: no-repeat;
      background-size: 100% auto;
      bottom: 0;
      transform: translateY(100%);
      height: 11vw;
      background-image: url(../images/img-bg04.png);
      background-position: top; } }
  @media (max-width: 1024.98px) {
    .nav-active .nav-drop {
      transform: translateY(0); } }

.resize-active * {
  transition: none !important; }

.lets_talk_btn {
  margin: 0 1.5rem 0 0; }

.header_search_wrap {
  align-self: baseline;
  margin-right: 5px;
  position: relative; }
  .header_search_wrap .header_search {
    position: absolute;
    top: -3px;
    right: 0;
    left: auto;
    bottom: 0; }
  .header_search_wrap .header_search_form_wrap {
    position: relative;
    width: 360px;
    display: none; }
    .header_search_wrap .header_search_form_wrap form .input-group-append {
      display: none; }
    .header_search_wrap .header_search_form_wrap form .form-control {
      border: none;
      border-bottom: 2px solid #1868bc;
      outline: none;
      box-shadow: none; }
      .header_search_wrap .header_search_form_wrap form .form-control::placeholder {
        opacity: 0; }

.header_search_icon_wrap {
  color: #1868bc;
  font-size: 20px;
  cursor: pointer; }

.mobile_header_search_wrap {
  display: none; }
  .mobile_header_search_wrap .form-control {
    border: none;
    border-bottom: 2px solid #ffffff;
    outline: none;
    box-shadow: none;
    background-color: transparent;
    color: #ffffff; }
    .mobile_header_search_wrap .form-control::placeholder {
      opacity: 0; }
  .mobile_header_search_wrap .input-group-append {
    margin-left: 0;
    position: relative; }
    .mobile_header_search_wrap .input-group-append:after {
      content: "\f002";
      font-family: "Font Awesome 5 Free";
      display: inline-block;
      font-weight: 900;
      font-size: 28px;
      color: #ffffff;
      position: absolute;
      bottom: 0;
      right: 0; }
    .mobile_header_search_wrap .input-group-append .submit {
      background-color: transparent;
      border: none;
      line-height: 0;
      text-indent: -1000px;
      padding: 0;
      margin: 0;
      border-bottom: 2px solid #ffffff;
      width: 32px; }

#footer {
  position: relative;
  font: 1rem/1.5 "Encode Sans", "Helvetica Neue", Arial, sans-serif;
  z-index: 10;
  padding: 7.4vw 0 0; }
  @media (min-width: 769px) {
    #footer {
      padding: 5.7vw 0 0; } }
  #footer:before {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    top: 0;
    height: 7.4vw;
    background-image: url(../images/img-bg06.png);
    background-position: bottom; }
    @media (min-width: 769px) {
      #footer:before {
        background-image: url(../images/img-bg05.png);
        height: 5.75vw; } }
  #footer a:not(.btn) {
    color: inherit; }
  #footer h1 {
    font: 1.75rem/1 "Felt That", cursive;
    margin: 0 0 0.875rem; }
    @media (min-width: 769px) {
      #footer h1 {
        font-size: 2.5rem; } }
    @media (min-width: 1025px) {
      #footer h1 {
        font-size: 3.125rem; } }
    @media (min-width: 1920px) {
      #footer h1 {
        font-size: 3.75rem; } }
  #footer .text-small {
    font-size: 0.75rem;
    font-weight: 500; }
  #footer h4 {
    font-family: inherit; }
    @media (min-width: 769px) {
      #footer h4 {
        font-size: 1rem; } }
  #footer address {
    margin-bottom: 1.1875rem; }
    @media (min-width: 769px) {
      #footer address {
        margin-bottom: 1.625rem; } }
  #footer a:not(.btn):hover {
    color: #FF8C00;
    text-decoration: none; }
  @media (max-width: 768.98px) {
    #footer .social-list {
      justify-content: center; } }
  @media (max-width: 1024.98px) {
    #footer .social-list {
      margin-bottom: 3.4375rem; } }
  @media (min-width: 375px) and (max-width: 768.98px) {
    #footer .social-list a {
      font-size: 2.75rem; } }
  #footer .social-list a:hover {
    color: inherit; }

.copy {
  display: block;
  font-size: 0.75rem;
  line-height: 1.2;
  margin: 0 0 0.6875rem; }

.logo-footer {
  margin: 0 0 1.5625rem; }
  @media (max-width: 768.98px) {
    .logo-footer {
      max-width: 21.875rem;
      margin-left: auto;
      margin-right: auto; } }
  @media (min-width: 769px) {
    .logo-footer {
      max-width: 18.75rem;
      margin: 0 0 1.25rem; } }
  .logo-footer img {
    width: 100%; }

.footer-inner {
  background: #ebebeb;
  padding: 2rem 0; }
  @media (min-width: 769px) {
    .footer-inner {
      padding: 3.25rem 0; } }

.footer-head {
  margin: 0 0 2.5rem; }
  @media (max-width: 768.98px) {
    .footer-head {
      text-align: center; } }
  @media (min-width: 769px) {
    .footer-head {
      margin: 0 0 4.0625rem; } }
  @media (min-width: 1025px) {
    .footer-head {
      margin: 0 0 7.1875rem; } }
  .footer-head .btn {
    transition: transform 0.3s ease-in-out, color 0.3s ease-in-out, background 0.3s ease-in-out, border 0.3s ease-in-out;
    padding: 0.875rem 1.25rem;
    min-width: 100%; }
    @media (min-width: 769px) {
      .footer-head .btn {
        min-width: 10rem; } }

.footer-navigation {
  line-height: 1.2;
  padding: 0.3125rem 0 2.125rem; }
  .footer-navigation li {
    margin: 0 0 0.375rem; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlcyI6WyJ0aGVtZS5zY3NzIiwidmVuZG9ycy9faW5jbHVkZS1tZWRpYS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvX2Z1bmN0aW9ucy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvX21peGlucy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvdmVuZG9yL19yZnMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fZGVwcmVjYXRlLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2hvdmVyLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2JhZGdlLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fYWxlcnQuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL19jYXJldC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3RzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL19mbG9hdC5zY3NzIiwiX2Jvb3RzdHJhcC1jdXN0b20uc2NzcyIsImJhc2UvX2Z1bmN0aW9ucy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJiYXNlL19oZWxwZXJzLnNjc3MiLCJ2ZW5kb3JzL19mb250cy5zY3NzIiwidmVuZG9ycy9faWNvbW9vbi5zY3NzIiwidmVuZG9ycy9fc2xpY2suc2NzcyIsInZlbmRvcnMvX2ZhbmN5Ym94LnNjc3MiLCJ2ZW5kb3JzL19hbmltYXRpb25zLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYXJkcy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2NpcmNsZS1saXN0LnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwtbGlzdC5zY3NzIiwiY29tcG9uZW50cy9faW5mby1saXN0LnNjc3MiLCJjb21wb25lbnRzL19zbGljay1jdXN0b20uc2NzcyIsImNvbXBvbmVudHMvX2hlcm8tc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9faW50cm8tc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL19kZXNjLXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX3Nwb3RsaWdodC1zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL19leHBlcnRpc2Utc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fYWJvdXQtc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fanMtaXNvdG9wZS1zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL19pdGVtcy1ob2xkZXIuc2NzcyIsImNvbXBvbmVudHMvX2luZm8tc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fZmlsdGVyLXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX21hcC1zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX3N1YnNjcmliZS1zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL19nYWxsZXJ5LXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX3BvcnRmb2xpby1ob2xkZXIuc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmVkLXNlY3Rpb24uc2NzcyIsImxheW91dC9fY29tbW9uLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLy8ga2V5d29yZHNcclxuJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcblx0J3NjcmVlbic6ICdzY3JlZW4nLFxyXG5cdCdwcmludCc6ICdwcmludCcsXHJcblx0J2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcclxuXHQnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXHJcblx0J3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcclxuXHQncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpJyxcclxuXHQncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMi41KSwgKG1pbi1yZXNvbHV0aW9uOiAyNDBkcGkpJ1xyXG4pO1xyXG5cclxuLy8gbGlnYXR1cmVkIG9wZXJhdG9ycyDiiaUg4omkXHJcblxyXG5AaW1wb3J0ICd2ZW5kb3JzL2luY2x1ZGUtbWVkaWEnO1xyXG5cclxuQGltcG9ydCBcInZlbmRvcnMvYm9vdHN0cmFwL2Z1bmN0aW9uc1wiO1xyXG5AaW1wb3J0IFwidmVuZG9ycy9ib290c3RyYXAvdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnNcIjtcclxuXHJcbkBpbXBvcnQgXCJib290c3RyYXAtY3VzdG9tXCI7XHJcblxyXG5AaW1wb3J0ICdiYXNlL2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ2Jhc2UvbWl4aW5zJztcclxuQGltcG9ydCAnYmFzZS9oZWxwZXJzJztcclxuXHJcbkBpbXBvcnQgXCJ2ZW5kb3JzL2ZvbnRzXCI7XHJcbkBpbXBvcnQgXCJ2ZW5kb3JzL2ljb21vb25cIjtcclxuQGltcG9ydCBcInZlbmRvcnMvc2xpY2tcIjtcclxuQGltcG9ydCBcInZlbmRvcnMvZmFuY3lib3hcIjtcclxuQGltcG9ydCBcInZlbmRvcnMvYW5pbWF0aW9uc1wiO1xyXG5cclxuQGltcG9ydCAnYmFzZS90eXBvZ3JhcGh5JztcclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9ucyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jaXJjbGUtbGlzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc29jaWFsLWxpc3QnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2luZm8tbGlzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpY2stY3VzdG9tJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9oZXJvLXNlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2ludHJvLXNlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2ZlYXR1cmUtc2VjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGVzYy1zZWN0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9zcG90bGlnaHQtc2VjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZXhwZXJ0aXNlLXNlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Fib3V0LXNlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2pzLWlzb3RvcGUtc2VjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaXRlbXMtaG9sZGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9pbmZvLXNlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2ZpbHRlci1zZWN0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tYXAtc2VjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC1zZWN0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9zdWJzY3JpYmUtc2VjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ2FsbGVyeS1zZWN0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wb3J0Zm9saW8taG9sZGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mZWF0dXJlZC1zZWN0aW9uJztcclxuXHJcbkBpbXBvcnQgJ2xheW91dC9jb21tb24nO1xyXG5AaW1wb3J0ICdsYXlvdXQvaGVhZGVyJztcclxuQGltcG9ydCAnbGF5b3V0L2Zvb3Rlcic7XHJcblxyXG4iLCJAY2hhcnNldCAnVVRGLTgnO1xyXG5cclxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXHJcbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcclxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXHJcbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XHJcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcclxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcclxuLy9cclxuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3NcclxuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40LjFcclxuLy9cclxuLy8gICAgICAgICAgICAgICAgaHR0cDovL2luY2x1ZGUtbWVkaWEuY29tXHJcbi8vXHJcbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxyXG4vLyAgICAgICAgICAgICAgICAgIEh1Z28gR2lyYXVkZWwgKEBodWdvZ2lyYXVkZWwpXHJcbi8vXHJcbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcclxuXHJcblxyXG4vLy8vXHJcbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYHBob25lYFxyXG4vLy8gICRicmVha3BvaW50czogKCdwaG9uZSc6IDMyMHB4KTtcclxuLy8vXHJcbiRicmVha3BvaW50czogKFxyXG4gICdwaG9uZSc6IDMyMHB4LFxyXG4gICd0YWJsZXQnOiA3NjhweCxcclxuICAnZGVza3RvcCc6IDEwMjRweFxyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgbWVkaWEgdHlwZSAoc2NyZWVuKVxyXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzdGF0aWMgZXhwcmVzc2lvbiB3aXRoIGxvZ2ljYWwgZGlzanVuY3Rpb24gKE9SIG9wZXJhdG9yKVxyXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxyXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXHJcbi8vLyAgKTtcclxuLy8vXHJcbiRtZWRpYS1leHByZXNzaW9uczogKFxyXG4gICdzY3JlZW4nOiAnc2NyZWVuJyxcclxuICAncHJpbnQnOiAncHJpbnQnLFxyXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXHJcbiAgJ2xhbmRzY2FwZSc6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknLFxyXG4gICdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXHJcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknLFxyXG4gICdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpJ1xyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cclxuLy8vXHJcbiR1bml0LWludGVydmFsczogKFxyXG4gICdweCc6IDEsXHJcbiAgJ2VtJzogMC4wMSxcclxuICAncmVtJzogMC4xXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xyXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIC5mb28ge1xyXG4vLy8gICAgY29sb3I6IHRvbWF0bztcclxuLy8vICB9XHJcbi8vL1xyXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3JcclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXHJcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gICAuZm9vIHtcclxuLy8vICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBObyBvdXRwdXQgKi9cclxuLy8vXHJcbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XHJcblxyXG4vLy8vXHJcbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkIFxyXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcclxuLy8vIHRvIGRldGVjdCBzdXBwb3J0LlxyXG4vLy8gXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQGZ1bmN0aW9uIGxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XHJcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiAkbWVzc2FnZTtcclxuICAgICRfOiBub29wKCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRtZXNzYWdlO1xyXG59XHJcblxyXG5cclxuLy8vIFxyXG4vLy8gV3JhcHBlciBtaXhpbiBmb3IgdGhlIGxvZyBmdW5jdGlvbiBzbyBpdCBjYW4gYmUgdXNlZCB3aXRoIGEgbW9yZSBmcmllbmRseVxyXG4vLy8gQVBJIHRoYW4gYEBpZiBsb2coJy4uJykge31gIG9yIGAkXzogbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXHJcbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXHJcbi8vLyBhbmQgdXNlIHRoZSBtaXhpbiBldmVyeXdoZXJlIGVsc2UgYmVjYXVzZSBpdCdzIG11Y2ggbW9yZSBlbGVnYW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXHJcbi8vL1xyXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XHJcbiAgQGlmIGxvZygkbWVzc2FnZSkge31cclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xyXG4vLy8gdG8gdHJpZ2dlciBhIGNvbXBpbGluZyBlcnJvciBhbmQgc3RvcCB0aGUgcHJvY2Vzcy5cclxuLy8vXHJcbkBmdW5jdGlvbiBub29wKCkge31cclxuXHJcbi8vL1xyXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xyXG4vLy9cclxuLy8vIEByZXR1cm4ge0Jvb2xlYW59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSBjb25kaXRpb25zIGFyZSBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnRcclxuLy8vXHJcbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XHJcbiAgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludCk7XHJcblxyXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xyXG4gICAgQGlmIGxvZygnYCN7JGltLW5vLW1lZGlhLWJyZWFrcG9pbnR9YCBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50LicpIHt9XHJcbiAgfSAgXHJcblxyXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xyXG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcclxuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxyXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XHJcbiAgICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XHJcbiAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFBhcnNpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcclxuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcclxuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxyXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxyXG4gICRfOiBsb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XHJcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XHJcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcclxuXHJcbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XHJcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XHJcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlIFxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuICAkdmFsdWU6IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yLWluZGV4ICsgc3RyLWxlbmd0aCgkb3BlcmF0b3IpKTtcclxuXHJcbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XHJcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkdmFsdWUpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcclxuICB9XHJcblxyXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XHJcblxyXG4gIEBpZiBub3QgJGludGVydmFsIHtcclxuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAgIC8vIHJlbHkgb24gdGhlIGBsb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXHJcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGxvZyguLikge31gIGluc3RlYWQuXHJcbiAgICAkXzogbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSArICRpbnRlcnZhbDtcclxuICB9IEBlbHNlIGlmICRvcGVyYXRvciA9PSAnPCcge1xyXG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBwYXJzZVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxyXG4vLy9cclxuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcclxuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXHJcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcclxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xyXG4gIH1cclxuXHJcbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XHJcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcblxyXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3RcclxuLy8vXHJcbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XHJcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xyXG4gICAgQHJldHVybiAoKTtcclxuICB9XHJcblxyXG4gICRyZXN1bHQ6ICgpO1xyXG5cclxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XHJcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcmVzdWx0O1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XHJcbi8vL1xyXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xyXG4gICAgQHJldHVybiAkdmFsdWU7XHJcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xyXG4gICAgJF86IGxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcclxuICB9XHJcbiAgXHJcbiAgJHJlc3VsdDogMDtcclxuICAkZGlnaXRzOiAwO1xyXG4gICRtaW51czogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSkgPT0gJy0nO1xyXG4gICRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcclxuICBcclxuICBAZm9yICRpIGZyb20gaWYoJG1pbnVzLCAyLCAxKSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XHJcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xyXG4gICAgXHJcbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XHJcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XHJcbiAgICAgICRkaWdpdHM6IDE7IFxyXG4gICAgfSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKTsgIFxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTs7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcclxuLy8vXHJcbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xyXG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XHJcbiAgXHJcbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xyXG4gICAgJF86IGxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XHJcbiAgfVxyXG4gIFxyXG4gIEByZXR1cm4gJHZhbHVlICogbWFwLWdldCgkdW5pdHMsICR1bml0KTtcclxufVxyXG5cclxuLy8vXHJcbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2YgXHJcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkIFxyXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpIFxyXG4vLy8gZm9yIGluc3RhbmNlLlxyXG4vLy9cclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xyXG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XHJcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xyXG5cclxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9IFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH0gXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggc2V0IGJyZWFrcG9pbnRzIHdpdGggY3VzdG9tIHZhbHVlc1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfSBcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9IFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH0gXHJcbi8vL1xyXG5AbWl4aW4gbWVkaWEoJGNvbmRpdGlvbnMuLi4pIHtcclxuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yIFxyXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XHJcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XHJcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9ICAgIFxyXG4gIH1cclxufSIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcclxuLy9cclxuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cclxuXHJcbi8vIEFzY2VuZGluZ1xyXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxyXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XHJcbiAgJHByZXYta2V5OiBudWxsO1xyXG4gICRwcmV2LW51bTogbnVsbDtcclxuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xyXG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcclxuICAgICAgLy8gRG8gbm90aGluZ1xyXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcclxuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcclxuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xyXG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcclxuICAgIH1cclxuICAgICRwcmV2LWtleTogJGtleTtcclxuICAgICRwcmV2LW51bTogJG51bTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFN0YXJ0cyBhdCB6ZXJvXHJcbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxyXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xyXG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcclxuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XHJcbiAgICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcclxuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XHJcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2BcclxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cclxuLy9cclxuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXHJcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxyXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcclxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XHJcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XHJcblxyXG4gIEBpZiAkaW5kZXgge1xyXG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkc3RyaW5nO1xyXG59XHJcblxyXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xyXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XHJcbiAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcImRhdGE6aW1hZ2Uvc3ZnK3htbFwiKSB7XHJcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XHJcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xyXG4gICAgICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwidXJsKFwiKSA9PSAxIHtcclxuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRzdHJpbmc7XHJcbn1cclxuXHJcbi8vIENvbG9yIGNvbnRyYXN0XHJcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XHJcbiAgJHI6IHJlZCgkY29sb3IpO1xyXG4gICRnOiBncmVlbigkY29sb3IpO1xyXG4gICRiOiBibHVlKCRjb2xvcik7XHJcblxyXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcclxuXHJcbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcclxuICAgIEByZXR1cm4gJGRhcms7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAcmV0dXJuICRsaWdodDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xyXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcclxuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xyXG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xyXG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xyXG59XHJcblxyXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcclxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XHJcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XHJcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcclxuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xyXG5cclxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xyXG59XHJcblxyXG4vLyBSZXR1cm4gdmFsaWQgY2FsY1xyXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xyXG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xyXG4gICAgQHJldHVybiAkdmFsdWUyO1xyXG4gIH1cclxuXHJcbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XHJcbiAgICBAcmV0dXJuICR2YWx1ZTE7XHJcbiAgfVxyXG5cclxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcclxuICAgIEByZXR1cm4gJHZhbHVlMSArICR2YWx1ZTI7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gKyAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgKyBcIikgKyAkdmFsdWUyKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIHN1YnRyYWN0KCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xyXG4gIEBpZiAkdmFsdWUxID09IG51bGwgYW5kICR2YWx1ZTIgPT0gbnVsbCB7XHJcbiAgICBAcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcclxuICAgIEByZXR1cm4gLSR2YWx1ZTI7XHJcbiAgfVxyXG5cclxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcclxuICAgIEByZXR1cm4gJHZhbHVlMTtcclxuICB9XHJcblxyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xyXG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xyXG59XHJcbiIsIi8vIFZhcmlhYmxlc1xyXG4vL1xyXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3JcclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXHJcblxyXG4vLyBDb2xvciBzeXN0ZW1cclxuXHJcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcclxuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xyXG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XHJcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcclxuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xyXG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XHJcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcclxuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xyXG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XHJcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcclxuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xyXG5cclxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcclxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcclxuJGdyYXlzOiBtYXAtbWVyZ2UoXHJcbiAgKFxyXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxyXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxyXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxyXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxyXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxyXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxyXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxyXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxyXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXHJcbiAgKSxcclxuICAkZ3JheXNcclxuKTtcclxuXHJcbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xyXG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcclxuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XHJcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xyXG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcclxuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XHJcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xyXG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcclxuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XHJcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XHJcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XHJcbiRjb2xvcnM6IG1hcC1tZXJnZShcclxuICAoXHJcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXHJcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcclxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxyXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxyXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXHJcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcclxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxyXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcclxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcclxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcclxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXHJcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxyXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxyXG4gICksXHJcbiAgJGNvbG9yc1xyXG4pO1xyXG5cclxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xyXG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xyXG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XHJcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xyXG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcclxuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcclxuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcclxuXHJcbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xyXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxyXG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXHJcbiAgKFxyXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxyXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXHJcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXHJcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXHJcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXHJcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcclxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXHJcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcclxuICApLFxyXG4gICR0aGVtZS1jb2xvcnNcclxuKTtcclxuXHJcbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcclxuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXHJcbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XHJcblxyXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cclxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcclxuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuXHJcbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cclxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxyXG4gIChcIjxcIixcIiUzY1wiKSxcclxuICAoXCI+XCIsXCIlM2VcIiksXHJcbiAgKFwiI1wiLFwiJTIzXCIpLFxyXG4gIChcIihcIixcIiUyOFwiKSxcclxuICAoXCIpXCIsXCIlMjlcIiksXHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gT3B0aW9uc1xyXG4vL1xyXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXHJcblxyXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xyXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XHJcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBTcGFjaW5nXHJcbi8vXHJcbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2VcclxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxyXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxyXG5cclxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcclxuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xyXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxyXG4kc3BhY2VyczogbWFwLW1lcmdlKFxyXG4gIChcclxuICAgIDA6IDAsXHJcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXHJcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcclxuICAgIDM6ICRzcGFjZXIsXHJcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXHJcbiAgICA1OiAoJHNwYWNlciAqIDMpXHJcbiAgKSxcclxuICAkc3BhY2Vyc1xyXG4pO1xyXG5cclxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxyXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xyXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxyXG4kc2l6ZXM6IG1hcC1tZXJnZShcclxuICAoXHJcbiAgICAyNTogMjUlLFxyXG4gICAgNTA6IDUwJSxcclxuICAgIDc1OiA3NSUsXHJcbiAgICAxMDA6IDEwMCUsXHJcbiAgICBhdXRvOiBhdXRvXHJcbiAgKSxcclxuICAkc2l6ZXNcclxuKTtcclxuXHJcblxyXG4vLyBCb2R5XHJcbi8vXHJcbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cclxuXHJcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XHJcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gTGlua3NcclxuLy9cclxuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxyXG5cclxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xyXG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xyXG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XHJcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcclxuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcclxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xyXG5cclxuLy8gUGFyYWdyYXBoc1xyXG4vL1xyXG4vLyBTdHlsZSBwIGVsZW1lbnQuXHJcblxyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnRzXHJcbi8vXHJcbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxyXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG4gIHhzOiAwLFxyXG4gIHNtOiA1NzZweCxcclxuICBtZDogNzY4cHgsXHJcbiAgbGc6IDk5MnB4LFxyXG4gIHhsOiAxMjAwcHhcclxuKSAhZGVmYXVsdDtcclxuXHJcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xyXG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xyXG5cclxuXHJcbi8vIEdyaWQgY29udGFpbmVyc1xyXG4vL1xyXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXHJcbiAgc206IDU0MHB4LFxyXG4gIG1kOiA3MjBweCxcclxuICBsZzogOTYwcHgsXHJcbiAgeGw6IDExNDBweFxyXG4pICFkZWZhdWx0O1xyXG5cclxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcclxuXHJcblxyXG4vLyBHcmlkIGNvbHVtbnNcclxuLy9cclxuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXHJcblxyXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcclxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcclxuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBDb21wb25lbnRzXHJcbi8vXHJcbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cclxuXHJcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcclxuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xyXG5cclxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xyXG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XHJcblxyXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xyXG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcclxuXHJcbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xyXG5cclxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XHJcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcclxuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xyXG5cclxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xyXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xyXG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XHJcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcclxuXHJcbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XHJcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XHJcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XHJcblxyXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcclxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcclxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcclxuICAoXHJcbiAgICAoMjEgOSksXHJcbiAgICAoMTYgOSksXHJcbiAgICAoNCAzKSxcclxuICAgICgxIDEpLFxyXG4gICksXHJcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xyXG4pO1xyXG5cclxuLy8gVHlwb2dyYXBoeVxyXG4vL1xyXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cclxuXHJcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxyXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xyXG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxyXG5cclxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXHJcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XHJcblxyXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xyXG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XHJcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcclxuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xyXG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XHJcblxyXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XHJcblxyXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XHJcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XHJcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XHJcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcclxuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcclxuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xyXG5cclxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG5cclxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcclxuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xyXG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XHJcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcclxuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xyXG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XHJcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcclxuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xyXG5cclxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcclxuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xyXG5cclxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xyXG5cclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG5cclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xyXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xyXG5cclxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcclxuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuXHJcbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XHJcblxyXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuXHJcbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XHJcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xyXG5cclxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBUYWJsZXNcclxuLy9cclxuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxyXG5cclxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xyXG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xyXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcclxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xyXG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XHJcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XHJcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xyXG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcclxuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XHJcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcclxuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XHJcblxyXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XHJcblxyXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcclxuXHJcbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xyXG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBCdXR0b25zICsgRm9ybXNcclxuLy9cclxuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXHJcblxyXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xyXG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XHJcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcclxuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcclxuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcclxuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcclxuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XHJcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQnV0dG9uc1xyXG4vL1xyXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cclxuXHJcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xyXG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcclxuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XHJcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcclxuXHJcbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xyXG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcclxuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XHJcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XHJcblxyXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcclxuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XHJcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xyXG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xyXG5cclxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcblxyXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xyXG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xyXG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XHJcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcclxuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcclxuXHJcbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcclxuXHJcbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG5cclxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xyXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XHJcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xyXG5cclxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEZvcm1zXHJcblxyXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcclxuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xyXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcclxuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xyXG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XHJcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xyXG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XHJcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcclxuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xyXG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcclxuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcclxuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xyXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xyXG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcclxuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcclxuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XHJcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xyXG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xyXG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15IC8gMikgIWRlZmF1bHQ7XHJcblxyXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcclxuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xyXG5cclxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XHJcblxyXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG5cclxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XHJcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcclxuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xyXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xyXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcclxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xyXG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xyXG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxyXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xyXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxyXG5cclxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xyXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XHJcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XHJcblxyXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcclxuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XHJcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcclxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcclxuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xyXG5cclxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcclxuXHJcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XHJcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcclxuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xyXG4kY3VzdG9tLWZpbGUtdGV4dDogKFxyXG4gIGVuOiBcIkJyb3dzZVwiXHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gRm9ybSB2YWxpZGF0aW9uXHJcblxyXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XHJcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcclxuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XHJcblxyXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcclxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xyXG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xyXG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcclxuXHJcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcclxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcclxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcclxuICAoXHJcbiAgICBcInZhbGlkXCI6IChcclxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcclxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcclxuICAgICksXHJcbiAgICBcImludmFsaWRcIjogKFxyXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXHJcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcclxuICAgICksXHJcbiAgKSxcclxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xyXG4pO1xyXG5cclxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxyXG4vL1xyXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcclxuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxyXG5cclxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcclxuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcclxuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcclxuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcclxuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcclxuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcclxuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBOYXZzXHJcblxyXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG5cclxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XHJcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xyXG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuXHJcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcblxyXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XHJcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIE5hdmJhclxyXG5cclxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XHJcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XHJcblxyXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuXHJcbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XHJcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xyXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xyXG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xyXG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XHJcblxyXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcclxuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG5cclxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcclxuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcclxuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcclxuXHJcbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XHJcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XHJcblxyXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gRHJvcGRvd25zXHJcbi8vXHJcbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cclxuXHJcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xyXG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XHJcblxyXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcclxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xyXG5cclxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG5cclxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG5cclxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XHJcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIFBhZ2luYXRpb25cclxuXHJcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xyXG5cclxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcblxyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XHJcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEp1bWJvdHJvblxyXG5cclxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcclxuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIENhcmRzXHJcblxyXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XHJcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XHJcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XHJcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XHJcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xyXG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xyXG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XHJcblxyXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcclxuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcclxuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcclxuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gVG9vbHRpcHNcclxuXHJcbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XHJcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XHJcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcclxuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xyXG5cclxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XHJcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xyXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcclxuXHJcbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcclxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XHJcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xyXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcclxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xyXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gUG9wb3ZlcnNcclxuXHJcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xyXG5cclxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcclxuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuXHJcbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xyXG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xyXG5cclxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xyXG5cclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gVG9hc3RzXHJcblxyXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcclxuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xyXG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XHJcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XHJcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xyXG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XHJcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xyXG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XHJcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xyXG5cclxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xyXG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcclxuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEJhZGdlc1xyXG5cclxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xyXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XHJcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XHJcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG5cclxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xyXG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xyXG5cclxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcclxuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxyXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXHJcbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIE1vZGFsc1xyXG5cclxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XHJcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XHJcblxyXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcclxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcclxuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcclxuXHJcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xyXG5cclxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcclxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xyXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xyXG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcclxuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcclxuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcclxuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XHJcblxyXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XHJcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xyXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcclxuXHJcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcclxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XHJcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xyXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcclxuXHJcbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XHJcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XHJcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XHJcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEFsZXJ0c1xyXG4vL1xyXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cclxuXHJcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcclxuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xyXG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xyXG5cclxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xyXG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcclxuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBQcm9ncmVzcyBiYXJzXHJcblxyXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xyXG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XHJcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcclxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xyXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XHJcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcclxuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gTGlzdCBncm91cFxyXG5cclxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xyXG5cclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcclxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XHJcblxyXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XHJcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcclxuXHJcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xyXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xyXG5cclxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xyXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcclxuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcclxuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xyXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcclxuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBGaWd1cmVzXHJcblxyXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XHJcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBCcmVhZGNydW1ic1xyXG5cclxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcclxuXHJcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcclxuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcclxuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XHJcblxyXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xyXG5cclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xyXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XHJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcclxuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xyXG5cclxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQ2Fyb3VzZWxcclxuXHJcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcclxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcclxuXHJcblxyXG4vLyBTcGlubmVyc1xyXG5cclxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcclxuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XHJcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xyXG5cclxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xyXG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xyXG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQ2xvc2VcclxuXHJcbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcclxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XHJcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcclxuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQ29kZVxyXG5cclxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XHJcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xyXG5cclxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XHJcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xyXG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcclxuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xyXG5cclxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xyXG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBVdGlsaXRpZXNcclxuXHJcbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcclxuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xyXG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcclxuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIFByaW50aW5nXHJcblxyXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcclxuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcclxuIiwiLy8gVG9nZ2xlc1xyXG4vL1xyXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cclxuXHJcbi8vIFZlbmRvclxyXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xyXG5cclxuLy8gRGVwcmVjYXRlXHJcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XHJcblxyXG4vLyBVdGlsaXRpZXNcclxuQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcclxuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcclxuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcclxuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcclxuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xyXG5cclxuLy8gQ29tcG9uZW50c1xyXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcclxuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcclxuXHJcbi8vIFNraW5zXHJcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcclxuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcclxuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XHJcblxyXG4vLyBMYXlvdXRcclxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XHJcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxyXG5cclxuLy8gU0NTUyBSRlMgbWl4aW5cclxuLy9cclxuLy8gQXV0b21hdGVkIGZvbnQtcmVzaXppbmdcclxuLy9cclxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xyXG5cclxuLy8gQ29uZmlndXJhdGlvblxyXG5cclxuLy8gQmFzZSBmb250IHNpemVcclxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcclxuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xyXG5cclxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XHJcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcclxuXHJcbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcclxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xyXG5cclxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXHJcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcclxuXHJcbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xyXG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xyXG59XHJcblxyXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxyXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcclxuXHJcbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcclxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xyXG5cclxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XHJcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXHJcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XHJcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcclxuXHJcbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXHJcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcclxuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XHJcbn1cclxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xyXG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xyXG59XHJcblxyXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXHJcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XHJcblxyXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXHJcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xyXG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcclxufVxyXG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XHJcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XHJcbn1cclxuXHJcbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXHJcbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xyXG4gIC8vIENhY2hlICRmcyB1bml0XHJcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcclxuXHJcbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxyXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xyXG5cclxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcclxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XHJcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcclxuICAgICRyZnMtc3RhdGljOiBudWxsO1xyXG4gICAgJHJmcy1mbHVpZDogbnVsbDtcclxuXHJcbiAgICAvLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXHJcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcclxuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XHJcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxyXG4gICAgQGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtIHtcclxuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHB4IHtcclxuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxyXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxyXG4gICAgQGlmICRmcyA+ICRyZnMtYmFzZS1mb250LXNpemUgYW5kICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcclxuICAgICAgJG1pbi13aWR0aDogbnVsbDtcclxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XHJcblxyXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxyXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XHJcblxyXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxyXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcclxuXHJcbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcclxuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcclxuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7JGZzLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skZnMtbWlufXB4KTtcclxuXHJcbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XHJcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xyXG5cclxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxyXG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JGZzLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XHJcblxyXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxyXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlbmRlcmluZ1xyXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XHJcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxyXG4gICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAkbXEtdmFsdWU6IG51bGw7XHJcblxyXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXHJcbiAgICAgIEBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSByZW0ge1xyXG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcclxuICAgICAgfVxyXG4gICAgICBAZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCB7XHJcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcclxuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxyXG4gICAgICAgIC8vIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXHJcbiAgICAgICAgJixcclxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxyXG4gICAgICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcclxuICAgICAgfVxyXG5cclxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xyXG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XHJcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcclxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XHJcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xyXG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XHJcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcclxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XHJcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGluIHVzZXMgUkZTIHRvIHJlc2NhbGUgZm9udCBzaXplc1xyXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcclxuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcclxufVxyXG5cclxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcclxuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcclxufVxyXG4iLCIvLyBEZXByZWNhdGUgbWl4aW5cclxuLy9cclxuLy8gVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBkZXByZWNhdGUgbWl4aW5zIG9yIGZ1bmN0aW9ucy5cclxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xyXG4vLyBzb21lIGRlcHJlY2F0ZWQgbWl4aW5zIHRvIHN1cHByZXNzIHRoZSB3YXJuaW5nIChmb3IgZXhhbXBsZSBpZiB0aGUgbWl4aW4gaXMgc3RpbGwgYmUgdXNlZCBpbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIEJvb3RzdHJhcClcclxuQG1peGluIGRlcHJlY2F0ZSgkbmFtZSwgJGRlcHJlY2F0ZS12ZXJzaW9uLCAkcmVtb3ZlLXZlcnNpb24sICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XHJcbiAgICBAd2FybiBcIiN7JG5hbWV9IGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgI3skZGVwcmVjYXRlLXZlcnNpb259LiBJdCB3aWxsIGJlIHJlbW92ZWQgZW50aXJlbHkgaW4gI3skcmVtb3ZlLXZlcnNpb259LlwiO1xyXG4gIH1cclxufVxyXG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxyXG4vL1xyXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XHJcbi8vXHJcbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcclxuLy9cclxuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxyXG5cclxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXHJcbi8vICAgIG1kXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgbWRcclxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcclxuLy8gICAgbWRcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcclxuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcclxuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcclxufVxyXG5cclxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgNTc2cHhcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcclxuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XHJcbn1cclxuXHJcbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXHJcbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XHJcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXHJcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcclxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxyXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgNzY3Ljk4cHhcclxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XHJcbn1cclxuXHJcbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXHJcbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxyXG4vL1xyXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxyXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcclxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcclxuLy8gICAgXCItc21cIlxyXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XHJcbn1cclxuXHJcbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cclxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuICBAaWYgJG1pbiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cclxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gIEBpZiAkbWF4IHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcclxuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XHJcblxyXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXHJcbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXHJcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcclxuXHJcbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXHJcbi8vXHJcbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xyXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xyXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXHJcbi8vXHJcbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXHJcbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cclxuLy9cclxuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcclxuXHJcbkBtaXhpbiBob3ZlcigpIHtcclxuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cclxufVxyXG5cclxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcclxuICAmLFxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzLFxyXG4gICY6YWN0aXZlIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG4iLCIvLyBJbWFnZSBNaXhpbnNcclxuLy8gLSBSZXNwb25zaXZlIGltYWdlXHJcbi8vIC0gUmV0aW5hIGltYWdlXHJcblxyXG5cclxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxyXG4vL1xyXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxyXG5cclxuQG1peGluIGltZy1mbHVpZCgpIHtcclxuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxyXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcblxyXG4vLyBSZXRpbmEgaW1hZ2VcclxuLy9cclxuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxyXG5cclxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xyXG5cclxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxyXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxyXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cclxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxyXG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcclxuICB9XHJcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcclxufVxyXG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcclxuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xyXG5cclxuICBAYXQtcm9vdCBhI3smfSB7XHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcclxuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgb3V0bGluZTogMDtcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xyXG5cclxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxyXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcclxufVxyXG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xyXG4vL1xyXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXHJcbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXHJcblxyXG5AbWl4aW4gc3Itb25seSgpIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxuICBoZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogLTFweDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cclxuLy9cclxuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxyXG4vL1xyXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXHJcblxyXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XHJcbiAgJjphY3RpdmUsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIGNsaXA6IGF1dG87XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gIH1cclxufVxyXG4iLCIvLyBTaXppbmcgc2hvcnRjdXRzXHJcblxyXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xyXG4gIHdpZHRoOiAkd2lkdGg7XHJcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBzaXplKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XHJcbn1cclxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcclxuICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICBsaW5lLWJyZWFrOiBhdXRvO1xyXG59XHJcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxyXG5cclxuLy8gVHlwb2dyYXBoeVxyXG5cclxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcclxuICB9XHJcbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XHJcbiAgICBhI3skcGFyZW50fSB7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xyXG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xyXG59XHJcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxyXG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXHJcbiAgZm9udDogMC8wIGE7XHJcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuXHJcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XHJcbn1cclxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxyXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXHJcblxyXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vLyBWaXNpYmlsaXR5XHJcblxyXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XHJcbiAgdmlzaWJpbGl0eTogJHZpc2liaWxpdHkgIWltcG9ydGFudDtcclxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW52aXNpYmxlKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XHJcbn1cclxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xyXG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuXHJcbiAgaHIge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcclxuICB9XHJcblxyXG4gIC5hbGVydC1saW5rIHtcclxuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBCdXR0b24gdmFyaWFudHNcclxuLy9cclxuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxyXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcclxuXHJcbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcclxuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcclxuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcclxuXHJcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XHJcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcclxuICB9XHJcblxyXG4gICY6Zm9jdXMsXHJcbiAgJi5mb2N1cyB7XHJcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcclxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xyXG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcclxuICAmLmRpc2FibGVkLFxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxyXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxyXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxyXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xyXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXHJcbiAgICB9XHJcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG5cclxuICBAaW5jbHVkZSBob3ZlcigpIHtcclxuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XHJcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyxcclxuICAmLmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcclxuICB9XHJcblxyXG4gICYuZGlzYWJsZWQsXHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG5cclxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcclxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcclxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcclxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCdXR0b24gc2l6ZXNcclxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XHJcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcclxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcclxufVxyXG4iLCJAbWl4aW4gY2FyZXQtZG93bigpIHtcclxuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMDtcclxuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG5AbWl4aW4gY2FyZXQtdXAoKSB7XHJcbiAgYm9yZGVyLXRvcDogMDtcclxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XHJcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xyXG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XHJcbn1cclxuXHJcbkBtaXhpbiBjYXJldC1sZWZ0KCkge1xyXG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcclxuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XHJcbiAgQGlmICRlbmFibGUtY2FyZXQge1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcclxuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xyXG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xyXG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XHJcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gUGFnaW5hdGlvblxyXG5cclxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XHJcbiAgLnBhZ2UtbGluayB7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLnBhZ2UtaXRlbSB7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgLnBhZ2UtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgLnBhZ2UtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTGlzdHNcclxuXHJcbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxyXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4iLCIvLyBMaXN0IEdyb3Vwc1xyXG5cclxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xyXG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuXHJcbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xyXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xyXG4vL1xyXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcclxuXHJcbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuICBoZWlnaHQ6IDA7XHJcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XHJcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XHJcbn1cclxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXHJcbi8vXHJcbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXHJcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXHJcbi8vXHJcbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxyXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxyXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXHJcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cclxuLy9cclxuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXHJcbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcclxuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcclxuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcclxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcclxufVxyXG5cclxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xyXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcclxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XHJcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxyXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcclxuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG5cclxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxMDAlO1xyXG4gICAgei1pbmRleDogNTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcclxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xyXG4gICAgbWFyZ2luLXRvcDogLjFyZW07XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XHJcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcclxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9ybS1jb250cm9sIHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxyXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XHJcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XHJcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdXN0b20tc2VsZWN0IHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtYmcgbm8tcmVwZWF0ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm0tY2hlY2staW5wdXQge1xyXG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xyXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXHJcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGN1c3RvbSBmaWxlXHJcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gVGFibGVzXHJcblxyXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xyXG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XHJcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cclxuICAudGFibGUtI3skc3RhdGV9IHtcclxuICAgICYsXHJcbiAgICA+IHRoLFxyXG4gICAgPiB0ZCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xyXG4gICAgICB0aCxcclxuICAgICAgdGQsXHJcbiAgICAgIHRoZWFkIHRoLFxyXG4gICAgICB0Ym9keSArIHRib2R5IHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcclxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cclxuICAudGFibGUtaG92ZXIge1xyXG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xyXG5cclxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xyXG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcclxuXHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuXHJcbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcclxuXHJcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIGEjeyRwYXJlbnR9LFxyXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XHJcbn1cclxuXHJcbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctZ3JhZGllbnQtdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC41LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xyXG59XHJcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxyXG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXHJcblxyXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXHJcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xyXG4gICRyZXR1cm46ICgpO1xyXG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcclxuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcclxuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgQHJldHVybiAkcmV0dXJuO1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XHJcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XHJcbiAgICAkcmVzdWx0OiAoKTtcclxuXHJcbiAgICBAaWYgKGxlbmd0aCgkc2hhZG93KSA9PSAxKSB7XHJcbiAgICAgIC8vIFdlIGNhbiBwYXNzIGBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO2BcclxuICAgICAgJHJlc3VsdDogJHNoYWRvdztcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAvLyBGaWx0ZXIgdG8gYXZvaWQgaW52YWxpZCBwcm9wZXJ0aWVzIGZvciBleGFtcGxlIGBib3gtc2hhZG93OiBub25lLCAxcHggMXB4IGJsYWNrO2BcclxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHNoYWRvdykge1xyXG4gICAgICAgIEBpZiBudGgoJHNoYWRvdywgJGkpICE9IFwibm9uZVwiIHtcclxuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJHNoYWRvdywgJGkpLCBcImNvbW1hXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmIChsZW5ndGgoJHJlc3VsdCkgPiAwKSB7XHJcbiAgICAgIGJveC1zaGFkb3c6ICRyZXN1bHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEdyYWRpZW50c1xyXG5cclxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xyXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcclxuLy9cclxuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cclxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxufVxyXG5cclxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxufVxyXG5cclxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcclxufVxyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3RcclxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcclxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcclxuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xyXG4gIH1cclxuXHJcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcclxuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XHJcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XHJcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xyXG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XHJcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcclxuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcclxuICAmOjphZnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICB9XHJcbn1cclxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxyXG4vL1xyXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cclxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cclxuXHJcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xyXG4gICVncmlkLWNvbHVtbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcclxuICB9XHJcblxyXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xyXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xyXG5cclxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xyXG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xyXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcclxuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcclxuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb2wjeyRpbmZpeH0sXHJcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xyXG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcclxuICAgICAgLmNvbCN7JGluZml4fSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMDtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTQxMFxyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XHJcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XHJcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xyXG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XHJcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XHJcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxyXG5cclxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XHJcblxyXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcclxuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cclxuICAgICAgfVxyXG5cclxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XHJcbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXHJcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XHJcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxyXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLy8gR3JpZCBzeXN0ZW1cclxuLy9cclxuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxyXG5cclxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xyXG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG59XHJcblxyXG5cclxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxyXG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xyXG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xyXG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XHJcbn1cclxuXHJcbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxyXG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcclxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XHJcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcclxufVxyXG5cclxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xyXG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xyXG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxyXG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxyXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxyXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcclxufVxyXG5cclxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XHJcbiAgZmxleDogMCAwIGF1dG87XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcclxufVxyXG5cclxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xyXG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xyXG59XHJcblxyXG4vLyBSb3cgY29sdW1uc1xyXG4vL1xyXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cclxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XHJcbi8vIHN0eWxlIGdyaWQuXHJcbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcclxuICAmID4gKiB7XHJcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcclxuICAgIG1heC13aWR0aDogMTAwJSAvICRjb3VudDtcclxuICB9XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG5AbWl4aW4gZmxvYXQtbGVmdCgpIHtcclxuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xyXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbGVmdGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcclxufVxyXG5AbWl4aW4gZmxvYXQtcmlnaHQoKSB7XHJcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1yaWdodGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcclxufVxyXG5AbWl4aW4gZmxvYXQtbm9uZSgpIHtcclxuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbm9uZWAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcclxufVxyXG4iLCIvLyBjdXN0b20gdmFyaWFibGVzIGFuZCBvdmVycmlkZSBib290c3RyYXAgdmFyaWFibGVzXHJcblxyXG4kYm9keS1iZzogI2ZmZjtcclxuXHJcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcclxuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xyXG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XHJcbiRncmF5LTMwMDogI2ViZWJlYjtcclxuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xyXG4kZ3JheS01MDA6ICNiOWI5Yjk7XHJcbiRncmF5LTYwMDogIzU3NTg1ODtcclxuJGdyYXktNzAwOiAjMzczYTNjO1xyXG4kZ3JheS04MDA6ICM3MDcwNzA7XHJcbiRncmF5LTkwMDogIzE2MTcxOTtcclxuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xyXG5cclxuJGdyYXlzOiAoKTtcclxuXHJcbiRibHVlOiAgICAgIzAwMzA1NztcclxuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XHJcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xyXG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcclxuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XHJcbiRvcmFuZ2U6ICAjRkU1MDAwO1xyXG4keWVsbG93OiAgI0ZGOEMwMDtcclxuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XHJcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xyXG4kY3lhbjogICAgIzAxNjhCQztcclxuXHJcbiRjb2xvcnM6ICgpO1xyXG4kY29sb3JzOiBtYXAtbWVyZ2UoKFxyXG5cImJsdWVcIjogICAgICAgJGJsdWUsXHJcblwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxyXG5cInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcclxuXCJwaW5rXCI6ICAgICAgICRwaW5rLFxyXG5cInJlZFwiOiAgICAgICAgJHJlZCxcclxuXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXHJcblwieWVsbG93XCI6ICAgICAkeWVsbG93LFxyXG5cImdyZWVuXCI6ICAgICAgJGdyZWVuLFxyXG5cInRlYWxcIjogICAgICAgJHRlYWwsXHJcblwiY3lhblwiOiAgICAgICAkY3lhbixcclxuXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcclxuXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcclxuXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxyXG4pLCAkY29sb3JzKTtcclxuXHJcbiRwcmltYXJ5OiAgICAgICAkYmx1ZTtcclxuJHNlY29uZGFyeTogICAgICR5ZWxsb3c7XHJcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XHJcbiRpbmZvOiAgICAgICAgICAkY3lhbjtcclxuJHdhcm5pbmc6ICAgICAgICRvcmFuZ2U7XHJcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xyXG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMzAwO1xyXG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xyXG5cclxuJHRoZW1lLWNvbG9yczogKCk7XHJcblxyXG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXHJcbihcclxuXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxyXG5cInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcclxuXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxyXG5cImluZm9cIjogICAgICAgJGluZm8sXHJcblwid2FybmluZ1wiOiAgICAkd2FybmluZyxcclxuXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXHJcblwibGlnaHRcIjogICAgICAkbGlnaHQsXHJcblwiZGFya1wiOiAgICAgICAkZGFya1xyXG4pLFxyXG4kdGhlbWUtY29sb3JzXHJcbik7XHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnRzXHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG54czogMCxcclxuc206IDM3NXB4LFxyXG5tZDogNzY5cHgsXHJcbmxnOiAxMDI1cHgsXHJcbnhsOiAxOTIwcHhcclxuKTtcclxuXHJcbi8vIEdyaWQgY29udGFpbmVyc1xyXG5cclxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXHJcbnNtOiA3NjhweCxcclxubWQ6IDEwMjRweCxcclxubGc6IDE0OTBweCxcclxueGw6IDE0OTBweFxyXG4pO1xyXG5cclxuLy8gR3JpZCBjb2x1bW5zXHJcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDQwcHg7XHJcblxyXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xyXG4kc3BhY2VyczogKCk7XHJcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoKFxyXG4wOiAwLFxyXG4xOiAoJHNwYWNlciAqIC4zNzUpLFxyXG4yOiAoJHNwYWNlciAqIC42NSksXHJcbjM6ICRzcGFjZXIsXHJcbjQ6ICgkc3BhY2VyICogMS41KSxcclxuNTogKCRzcGFjZXIgKiAyLjUpLFxyXG42OiAoJHNwYWNlciAqIDMuNyksXHJcbjc6ICgkc3BhY2VyICogNSksXHJcbjg6ICgkc3BhY2VyICogNy4xMjUpLFxyXG45OiAoJHNwYWNlciAqIDguNDUpLFxyXG4xMDogKCRzcGFjZXIgKiAxMClcclxuKSwgJHNwYWNlcnMpO1xyXG5cclxuJGJhc2UtbWluLXdpZHRoOiAzMjBweDtcclxuXHJcbi8vIFRoaXMgaXMgdGhlIGRlZmF1bHQgaHRtbCBhbmQgYm9keSBmb250LXNpemUgZm9yIHRoZSBiYXNlIHJlbSB2YWx1ZS5cclxuJHJlbS1iYXNlOiAxNnB4O1xyXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1O1xyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgICAxLjhyZW07XHJcblxyXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAnRW5jb2RlIFNhbnMgQ29uZGVuc2VkJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG4kZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk6ICAnRW5jb2RlIFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuJGZvbnQtZmFtaWx5LXNlY29uZGFyeTogICAgICAgJ1BvcHBpbnMnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuJGZvbnQtZmFtaWx5LXRoaXJkOiAgICAgICAgICAgJ0ZlbHQgVGhhdCcsIGN1cnNpdmU7XHJcblxyXG5cclxuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDA7XHJcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNjAwO1xyXG5cclxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcmVtO1xyXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcclxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjU7XHJcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4zcmVtO1xyXG5cclxuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1cHggNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xMXB4IC02cHggMzBweCByZ2JhKDIyLCAyMywgMjUsIDAuMjcpO1xyXG5cclxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjI1cmVtO1xyXG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4yNXJlbTtcclxuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjkzcmVtO1xyXG5cclxuXHJcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdDtcclxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0O1xyXG5cclxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAycmVtO1xyXG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNXJlbTtcclxuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjVyZW07XHJcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMXJlbTtcclxuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcmVtO1xyXG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb250LWZhbWlseS1iYXNlO1xyXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbDtcclxuXHJcbiRhbmltYXRpb24tc3BlZWQ6IDAuM3M7XHJcbiRiYXNlLWR1cmF0aW9uOiAuNzVzO1xyXG5cclxuXHJcbi8vIEJ1dHRvbnNcclxuXHJcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgIDAuNzczcmVtO1xyXG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAxLjg3NXJlbTtcclxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgLjE4N3JlbTtcclxuXHJcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgIDFyZW07XHJcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtO1xyXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICA3MDA7XHJcblxyXG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBub25lO1xyXG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkYnRuLWJveC1zaGFkb3c7XHJcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRidG4tYm94LXNoYWRvdztcclxuXHJcbi8vYmxvY2txdW90ZVxyXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICBpbmhlcml0O1xyXG5cclxuLy8gQ2FyZHNcclxuXHJcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDFyZW07XHJcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIDA7XHJcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIDA7XHJcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDA7XHJcblxyXG4vLyBQYWdpbmF0aW9uXHJcblxyXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwO1xyXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNXJlbTtcclxuXHJcbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRibGFjaztcclxuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIDA7XHJcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5cclxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgbm9uZTtcclxuXHJcbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRzZWNvbmRhcnk7XHJcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICB0cmFuc3BhcmVudDtcclxuXHJcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRwYWdpbmF0aW9uLWNvbG9yO1xyXG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgdHJhbnNwYXJlbnQ7XHJcblxyXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdHJhbnNwYXJlbnQ7XHJcblxyXG4vLyBGb3Jtc1xyXG5cclxuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgIDFyZW07XHJcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk7XHJcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAxcmVtO1xyXG5cclxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTYwMDtcclxuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRwcmltYXJ5O1xyXG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgLjEyNXJlbTtcclxuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIG5vbmU7XHJcblxyXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgMDtcclxuXHJcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAkcHJpbWFyeTtcclxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIDMuMTI1cmVtO1xyXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwO1xyXG5cclxuLy8gQmFkZ2VzXHJcblxyXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVyZW07XHJcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgIDgwMDtcclxuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1cmVtO1xyXG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNTVyZW07XHJcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIDA7XHJcblxyXG5cclxuXHJcblxyXG4iLCIvL1xyXG4vLyBAZnVuY3Rpb25zXHJcbi8vXHJcblxyXG4vLyBTVFJJUCBVTklUXHJcbi8vIEl0IHN0cmlwcyB0aGUgdW5pdCBvZiBtZWFzdXJlIGFuZCByZXR1cm5zIGl0XHJcbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcclxuXHRAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcclxufVxyXG5cclxuLy8gQ09OVkVSVCBUTyBSRU1cclxuQGZ1bmN0aW9uIGNvbnZlcnQtdG8tcmVtKCR2YWx1ZSwgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xyXG5cdCR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZS12YWx1ZSkgKiAxcmVtO1xyXG5cdEBpZiAoJHZhbHVlID09IDByZW0pIHsgJHZhbHVlOiAwOyB9IC8vIFR1cm4gMHJlbSBpbnRvIDBcclxuXHRAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuLy8gUkVNIENBTENcclxuXHJcbi8vIE5ldyBTeW50YXgsIGFsbG93cyB0byBvcHRpb25hbGx5IGNhbGN1bGF0ZSBvbiBhIGRpZmZlcmVudCBiYXNlIHZhbHVlIHRvIGNvdW50ZXIgY29tcG91bmRpbmcgZWZmZWN0IG9mIHJlbSdzLlxyXG4vLyBDYWxsIHdpdGggMSwgMiwgMyBvciA0IHBhcmFtZXRlcnMsICdweCcgaXMgbm90IHJlcXVpcmVkIGJ1dCBzdXBwb3J0ZWQ6XHJcbi8vXHJcbi8vICAgcmVtLWNhbGMoMTAgMjAgMzBweCA0MCk7XHJcbi8vXHJcbi8vIFNwYWNlIGRlbGltaXRlZCwgaWYgeW91IHdhbnQgdG8gZGVsaW1pdCB1c2luZyBjb21tYSdzLCB3cmFwIGl0IGluIGFub3RoZXIgcGFpciBvZiBicmFja2V0c1xyXG4vL1xyXG4vLyAgIHJlbS1jYWxjKCgxMCwgMjAsIDMwLCA0MHB4KSk7XHJcbi8vXHJcbi8vIE9wdGlvbmFsbHkgY2FsbCB3aXRoIGEgZGlmZmVyZW50IGJhc2UgKGVnOiA4cHgpIHRvIGNhbGN1bGF0ZSByZW0uXHJcbi8vXHJcbi8vICAgcmVtLWNhbGMoMTZweCAzMnB4IDQ4cHgsIDhweCk7XHJcbi8vXHJcbi8vIElmIHlvdSByZXF1aXJlIHRvIGNvbW1hIHNlcGFyYXRlIHlvdXIgbGlzdFxyXG4vL1xyXG4vLyAgIHJlbS1jYWxjKCgxNnB4LCAzMnB4LCA0OCksIDhweCk7XHJcblxyXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xyXG5cdCRtYXg6IGxlbmd0aCgkdmFsdWVzKTtcclxuXHRcclxuXHRAaWYgJG1heCA9PSAxIHsgQHJldHVybiBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgMSksICRiYXNlLXZhbHVlKTsgfVxyXG5cdFxyXG5cdCRyZW1WYWx1ZXM6ICgpO1xyXG5cdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XHJcblx0XHQkcmVtVmFsdWVzOiBhcHBlbmQoJHJlbVZhbHVlcywgY29udmVydC10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UtdmFsdWUpKTtcclxuXHR9XHJcblx0QHJldHVybiAkcmVtVmFsdWVzO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XHJcblx0JHJlbVZhbHVlczogcmVtLWNhbGMoJHZhbHVlcywgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSk7XHJcblx0XHJcblx0JG1heDogbGVuZ3RoKCRyZW1WYWx1ZXMpO1xyXG5cdFxyXG5cdEBpZiAkbWF4ID09IDEgeyBAcmV0dXJuIHN0cmlwLXVuaXQobnRoKCRyZW1WYWx1ZXMsIDEpKSAqIDFlbTsgfVxyXG5cdFxyXG5cdCRlbVZhbHVlczogKCk7XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4IHtcclxuXHRcdCRlbVZhbHVlczogYXBwZW5kKCRlbVZhbHVlcywgc3RyaXAtdW5pdChudGgoJHJlbVZhbHVlcywgJGkpKSAqIDFlbSk7XHJcblx0fVxyXG5cdEByZXR1cm4gJGVtVmFsdWVzO1xyXG59XHJcblxyXG4vLy8gY29sb3JzIGJsYWNrICYgd2hpdGVcclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAubXktY2xhc3Mge1xyXG4vLy8gICAgIGJhY2tncm91bmQ6IGJsYWNrKDAuMTUpO1xyXG4vLy8gICAgIGNvbG9yOiB3aGl0ZSgwLjkpO1xyXG4vLy8gICB9XHJcbkBmdW5jdGlvbiBibGFjaygkb3BhY2l0eSl7XHJcblx0QHJldHVybiByZ2JhKGJsYWNrLCAkb3BhY2l0eSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB3aGl0ZSgkb3BhY2l0eSl7XHJcblx0QHJldHVybiByZ2JhKHdoaXRlLCAkb3BhY2l0eSk7XHJcbn1cclxuIiwiLy8gdmVydGljYWwgYWxpZ24gZWwgaW5zaWRlIHBhcmVudCB3aXRoIGZpeGVkIGhlaWdodC9taW4taGVpZ2h0XHJcbi8vIHVzYWdlXHJcbi8vIGh0bWwgLSAucGFyZW50Pi5jaGlsZFxyXG4vLyBzY3NzIC0gQGluY2x1ZGUgdi1hbGlnbjtcclxuLy8gICAgIG9yIEBpbmNsdWRlIHYtYWxpZ24oMjUwcHgpO1xyXG4vLyAgICAgb3IgQGluY2x1ZGUgdi1hbGlnbigyNTBweCwgYm90dG9tLCBiZWZvcmUpO1xyXG4vL1xyXG5AbWl4aW4gdi1hbGlnbigkdmEtaGVpZ2h0OiAxMDAlLCAkdmEtZGlyZWN0aW9uOiBtaWRkbGUsICR2YS1wc2V1ZG86IGFmdGVyKSB7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG5cdCY6I3skdmEtcHNldWRvfSB7XHJcblx0ICBjb250ZW50OiAnJztcclxuXHQgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgIHZlcnRpY2FsLWFsaWduOiAkdmEtZGlyZWN0aW9uO1xyXG5cdCAgd2lkdGg6IDA7XHJcblx0ICBtaW4taGVpZ2h0OiAkdmEtaGVpZ2h0O1xyXG5cdH1cclxuXHJcblx0PiAqIHtcclxuXHQgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcblx0ICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICB2ZXJ0aWNhbC1hbGlnbjogJHZhLWRpcmVjdGlvbjtcclxuXHQgIG1heC13aWR0aDogOTklO1xyXG5cdH1cclxuICB9XHJcblxyXG4gIC8vIHZlcnRpY2FsIGFsaWduIGEgcGFpciBvZiBjaGlsZCBlbCBpbnNpZGUgcGFyZW50XHJcbiAgLy8gdXNhZ2VcclxuICAvLyBodG1sIC0gLnBvc3Q+LmltYWdlKy50ZXh0XHJcbiAgLy8gc2NzcyAtIEBpbmNsdWRlIHYtYWxpZ24tcGFpcihpbWFnZSwgdGV4dCk7XHJcbiAgLy8gICAgIG9yIEBpbmNsdWRlIHYtYWxpZ24tcGFpcihpbWFnZSwgdGV4dCwgYm90dG9tKTtcclxuICAvLyAgICAgb3IgQGluY2x1ZGUgdi1hbGlnbi1wYWlyKGltYWdlLCB0ZXh0LCBtaWRkbGUsIDIwMHB4KTtcclxuICAvL1xyXG4gIEBtaXhpbiB2LWFsaWduLXBhaXIoJGNoaWxkLW5hbWUxLCAkY2hpbGQtbmFtZTIsICR2YWxpZ246IG1pZGRsZSwgJHdpZHRoMTogYXV0bywgJHdpZHRoMjogYXV0bykge1xyXG5cdGRpc3BsYXk6IHRhYmxlO1xyXG5cclxuXHQuI3skY2hpbGQtbmFtZTF9IHtcclxuXHQgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblx0ICB2ZXJ0aWNhbC1hbGlnbjogJHZhbGlnbjtcclxuXHQgIHdpZHRoOiAkd2lkdGgxO1xyXG5cdH1cclxuXHJcblx0LiN7JGNoaWxkLW5hbWUyfSB7XHJcblx0ICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cdCAgdmVydGljYWwtYWxpZ246ICR2YWxpZ247XHJcblx0ICB3aWR0aDogJHdpZHRoMjtcclxuXHR9XHJcbiAgfVxyXG5cclxuICAvLyB2ZXJ0aWNhbCBhbGlnbiBlbFxyXG4gIC8vIHVzYWdlOiBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbi1lbDtcclxuICAvL1xyXG4gIEBtaXhpbiB2ZXJ0aWNhbC1hbGlnbi1lbCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB9XHJcblxyXG4gIC8vLyBNaXhpbiBoZWxwaW5nIGRlZmluaW5nIGJvdGggYHdpZHRoYCBhbmQgYGhlaWdodGAgc2ltdWx0YW5lb3VzbHkuXHJcbiAgLy8vXHJcbiAgLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4gIC8vL1xyXG4gIC8vLyBAYWNjZXNzIHB1YmxpY1xyXG4gIC8vL1xyXG4gIC8vLyBAcGFyYW0ge0xlbmd0aH0gJHdpZHRoIC0gRWxlbWVudOKAmXMgYHdpZHRoYFxyXG4gIC8vLyBAcGFyYW0ge0xlbmd0aH0gJGhlaWdodCAoJHdpZHRoKSAtIEVsZW1lbnTigJlzIGBoZWlnaHRgXHJcbiAgLy8vXHJcbiAgLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4gIC8vLyAgIC5mb28ge1xyXG4gIC8vLyAgICAgQGluY2x1ZGUgc2l6ZSgxMGVtKTtcclxuICAvLy8gICB9XHJcbiAgLy8vXHJcbiAgLy8vICAgLmJhciB7XHJcbiAgLy8vICAgICBAaW5jbHVkZSBzaXplKDEwMCUsIDEwZW0pO1xyXG4gIC8vLyAgIH1cclxuICAvLy9cclxuICAvLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIG91dHB1dFxyXG4gIC8vLyAgIC5mb28ge1xyXG4gIC8vLyAgICAgd2lkdGg6IDEwZW07XHJcbiAgLy8vICAgICBoZWlnaHQ6IDEwZW07XHJcbiAgLy8vICAgfVxyXG4gIC8vL1xyXG4gIC8vLyAgIC5iYXIge1xyXG4gIC8vLyAgICAgd2lkdGg6IDEwMCU7XHJcbiAgLy8vICAgICBoZWlnaHQ6IDEwZW07XHJcbiAgLy8vICAgfVxyXG4gIC8vL1xyXG4gIEBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XHJcblx0d2lkdGg6ICR3aWR0aDtcclxuXHRoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgfVxyXG5cclxuICAvLy8gZm9udC1zbW90aGluZ1xyXG4gIC8vLyBAaW5jbHVkZSBmb250LXNtb290aGluZyhvbik7XHJcbiAgLy8vIEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nKG9mZik7XHJcbiAgQG1peGluIGZvbnQtc21vb3RoaW5nKCR2YWx1ZTogb24pIHtcclxuXHRAaWYgJHZhbHVlID09IG9uIHtcclxuXHQgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cdCAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuXHR9QGVsc2Uge1xyXG5cdCAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XHJcblx0ICAtbW96LW9zeC1mb250LXNtb290aGluZzogYXV0bztcclxuXHR9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIEhpZGVzIHRoZSB0ZXh0IGluIGFuIGVsZW1lbnQsIGNvbW1vbmx5IHVzZWQgdG8gc2hvdyBhbiBpbWFnZS4gU29tZSBlbGVtZW50cyB3aWxsIG5lZWQgYmxvY2stbGV2ZWwgc3R5bGVzIGFwcGxpZWQuXHJcbiAgLy8vXHJcbiAgLy8vIEBsaW5rIGh0dHA6Ly96ZWxkbWFuLmNvbS8yMDEyLzAzLzAxL3JlcGxhY2luZy10aGUtOTk5OXB4LWhhY2stbmV3LWltYWdlLXJlcGxhY2VtZW50XHJcbiAgLy8vXHJcbiAgLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4gIC8vLyAgIC5lbGVtZW50IHtcclxuICAvLy8gICAgIEBpbmNsdWRlIGhpZGUtdGV4dDtcclxuICAvLy8gICB9XHJcbiAgLy8vXHJcbiAgLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuICAvLy8gICAuZWxlbWVudCB7XHJcbiAgLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIC8vLyAgICAgdGV4dC1pbmRlbnQ6IDEwMSU7XHJcbiAgLy8vICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIC8vLyAgIH1cclxuICAvLy9cclxuICBAbWl4aW4gaGlkZS10ZXh0IHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtaW5kZW50OiAxMDElO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIENyZWF0ZXMgYSB2aXN1YWwgdHJpYW5nbGUuXHJcbiAgLy8vIE1peGluIHRha2VzICgkc2l6ZSwgJGNvbG9yLCAkZGlyZWN0aW9uKVxyXG4gIC8vLyBUaGUgJHNpemUgYXJndW1lbnQgY2FuIHRha2Ugb25lIG9yIHR3byB2YWx1ZXPigJR3aWR0aCBoZWlnaHQuXHJcbiAgLy8vIFRoZSAkY29sb3IgYXJndW1lbnQgY2FuIHRha2Ugb25lIG9yIHR3b1xyXG4gIC8vLyB2YWx1ZXPigJRmb3JlZ3JvdW5kLWNvbG9yIGJhY2tncm91bmQtY29sb3IuXHJcbiAgLy8vXHJcbiAgLy8vIEBhdXRob3IgaHR0cDovL2JvdXJib24uaW8vZG9jcy8jdHJpYW5nbGVcclxuICAvLy9cclxuICAvLy8gJGRpcmVjdGlvbjpcclxuICAvLy8gdXAsIGRvd24sIGxlZnQsIHJpZ2h0LCB1cC1yaWdodCwgdXAtbGVmdCwgZG93bi1yaWdodCwgZG93bi1sZWZ0XHJcbiAgLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4gIC8vLyAgIEBpbmNsdWRlIHRyaWFuZ2xlKDEycHgsIGdyYXksIGRvd24pO1xyXG4gIC8vLyAgIEBpbmNsdWRlIHRyaWFuZ2xlKDEycHggNnB4LCBncmF5IGJsdWUsIHVwLWxlZnQpO1xyXG4gIC8vL1xyXG4gIEBtaXhpbiB0cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCAkZGlyZWN0aW9uKSB7XHJcblx0JHdpZHRoOiBudGgoJHNpemUsIDEpO1xyXG5cdCRoZWlnaHQ6IG50aCgkc2l6ZSwgbGVuZ3RoKCRzaXplKSk7XHJcblx0JGZvcmVncm91bmQtY29sb3I6IG50aCgkY29sb3IsIDEpO1xyXG5cdCRiYWNrZ3JvdW5kLWNvbG9yOiBpZihsZW5ndGgoJGNvbG9yKSA9PSAyLCBudGgoJGNvbG9yLCAyKSwgdHJhbnNwYXJlbnQpO1xyXG5cdGhlaWdodDogMDtcclxuXHR3aWR0aDogMDtcclxuXHJcblx0QGlmICgkZGlyZWN0aW9uID09IHVwKSBvciAoJGRpcmVjdGlvbiA9PSBkb3duKSBvciAoJGRpcmVjdGlvbiA9PSByaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gbGVmdCkge1xyXG5cdCAgJHdpZHRoOiAkd2lkdGggLyAyO1xyXG5cdCAgJGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQvMik7XHJcblxyXG5cdCAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuXHRcdGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHRib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHQgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XHJcblx0XHRib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHRib3JkZXItbGVmdDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuXHRcdGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHQgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcclxuXHRcdGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHRib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHRcdGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblx0ICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XHJcblx0XHRib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHRib3JkZXItcmlnaHQ6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblx0XHRib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0ICB9XHJcblx0fSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSB1cC1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gdXAtbGVmdCkge1xyXG5cdCAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuXHJcblx0ICBAaWYgJGRpcmVjdGlvbiA9PSB1cC1yaWdodCB7XHJcblx0XHRib3JkZXItbGVmdDogICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHQgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cC1sZWZ0IHtcclxuXHRcdGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdCAgfVxyXG5cdH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gZG93bi1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gZG93bi1sZWZ0KSB7XHJcblx0ICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG5cclxuXHQgIEBpZiAkZGlyZWN0aW9uID09IGRvd24tcmlnaHQge1xyXG5cdFx0Ym9yZGVyLWxlZnQ6ICAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0ICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93bi1sZWZ0IHtcclxuXHRcdGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdCAgfVxyXG5cdH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtdXApIHtcclxuXHQgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XHJcblx0ICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdCAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcclxuXHR9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LWRvd24pIHtcclxuXHQgIGJvcmRlci1jb2xvcjogJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XHJcblx0ICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdCAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcclxuXHR9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXJpZ2h0KSB7XHJcblx0ICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG5cdCAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHQgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XHJcblx0fSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC1sZWZ0KSB7XHJcblx0ICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdCAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHQgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XHJcblx0fVxyXG4gIH1cclxuXHJcblxyXG4gIC8vLyBBbmltYXRlIGNzcyBwcm9wZXJ0aWVzXHJcbiAgLy8gdXNhZ2VcclxuICAvLyBzY3NzIC0gQGluY2x1ZGUgYW5pbWF0ZShjb2xvcik7XHJcbiAgLy8gICAgIG9yIEBpbmNsdWRlIGFuaW1hdGUoY29sb3Igd2lkdGgpO1xyXG4gIC8vICAgICBvciBAaW5jbHVkZSBhbmltYXRlKGNvbG9yIHdpZHRoLCAxcywgbGluZWFyKTtcclxuICAvL1xyXG4gICRhbmltYXRpb24tc3BlZWQ6IDAuM3MgIWRlZmF1bHQ7XHJcblxyXG4gIEBtaXhpbiBhbmltYXRlKCRwcm9wZXJ0aWVzLCAkZHVyYXRpb246ICRhbmltYXRpb24tc3BlZWQsICRlYXNpbmc6IGVhc2UtaW4tb3V0KSB7XHJcblx0JGxpc3Q6ICgpO1xyXG5cdEBlYWNoICRwcm9wIGluICRwcm9wZXJ0aWVzIHtcclxuXHQgICRzdHI6ICN7JHByb3B9ICN7JGR1cmF0aW9ufSAjeyRlYXNpbmd9O1xyXG5cdCAgJGxpc3Q6IGpvaW4oJGxpc3QsICN7JHN0cn0sIGNvbW1hKTtcclxuXHR9XHJcblx0dHJhbnNpdGlvbjogJGxpc3Q7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIE1peGluIGZvciBzdHlsaW5nIGZvcm0tcGxhY2Vob2xkZXJzXHJcbiAgLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4gIC8vLyAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcclxuICAvLy8gICAgY29sb3I6ICMzMzM7XHJcbiAgLy8vICAgfVxyXG4gIC8vL1xyXG4gIC8vLyAgIGlucHV0W3R5cGU9J3RleHQnXSxcclxuICAvLy8gICBpbnB1dFt0eXBlPSd0ZWwnXSxcclxuICAvLy8gICBpbnB1dFt0eXBlPSdlbWFpbCddIHtcclxuICAvLy8gICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcclxuICAvLy8gICAgICBjb2xvcjogcmVkO1xyXG4gIC8vLyAgICAgfVxyXG4gIC8vLyAgIH1cclxuXHJcbiAgQG1peGluIHBsYWNlaG9sZGVyIHtcclxuXHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuXHQgIEBjb250ZW50O1xyXG5cdH1cclxuXHJcblx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XHJcblx0ICBvcGFjaXR5OiAxO1xyXG5cdCAgQGNvbnRlbnQ7XHJcblx0fVxyXG5cclxuXHQmOi1tb3otcGxhY2Vob2xkZXIge1xyXG5cdCAgQGNvbnRlbnQ7XHJcblx0fVxyXG5cclxuXHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcblx0ICBAY29udGVudDtcclxuXHR9XHJcblxyXG5cdCYucGxhY2Vob2xkZXIge1xyXG5cdCAgQGNvbnRlbnQ7XHJcblx0fVxyXG4gIH1cclxuXHJcbiAgLy8vIEZvbnQtc2l6ZSBweCB0byByZW0gY2FsY1xyXG4gIC8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuICAvLy8gc2VsZWN0b3Ige1xyXG4gIC8vLyAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDE2cHgpO1xyXG4gIC8vLyB9XHJcblxyXG4gIEBtaXhpbiByZW0tZm9udC1zaXplKCRweC1zaXplKSB7XHJcblx0Zm9udC1zaXplOiAkcHgtc2l6ZTtcclxuXHRmb250LXNpemU6ICgkcHgtc2l6ZSAvIDEwcHgpICsgcmVtO1xyXG4gIH1cclxuXHJcbiAgLy9mb250LWZhY2VcclxuICBAbWl4aW4gZm9udC1mYWNlKCRmb250LW5hbWUsICRmb250LXBhdGgsICR3ZWlnaHQsICRzdHlsZSkge1xyXG5cdEBmb250LWZhY2Uge1xyXG5cdCAgZm9udC1mYW1pbHk6ICcjeyRmb250LW5hbWV9JztcclxuXHQgIHNyYzogdXJsKCdmb250cy8jeyRmb250LXBhdGh9LndvZmYyJykgZm9ybWF0KCd3b2ZmJyksXHJcblx0XHQgICB1cmwoJ2ZvbnRzLyN7JGZvbnQtcGF0aH0ud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG5cdCAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XHJcblx0ICBmb250LXN0eWxlOiAkc3R5bGU7XHJcblx0fVxyXG4gIH1cclxuXHJcbiAgLy8gQnV0dG9uIHNpemVzXHJcbiAgQG1peGluIGJ1dHRvbi1jb2xvcigkYnRuLWJhY2tncm91bmQsICRidG4tY29sb3IsICRidG4tYm9yZGVyLWNvbG9yLCAkYnRuLWhvdmVyLWJhY2tncm91bmQsICRidG4taG92ZXItY29sb3IpIHtcclxuXHRiYWNrZ3JvdW5kOiAkYnRuLWJhY2tncm91bmQ7XHJcblx0Y29sb3I6ICRidG4tY29sb3I7XHJcblx0Ym9yZGVyLWNvbG9yOiAkYnRuLWJvcmRlci1jb2xvcjtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0ICBiYWNrZ3JvdW5kOiAkYnRuLWhvdmVyLWJhY2tncm91bmQ7XHJcblx0ICBjb2xvcjogJGJ0bi1ob3Zlci1jb2xvcjtcclxuXHR9XHJcbiAgfVxyXG5cclxuICBAbWl4aW4gYWRkLXBhcmFtcygpIHtcclxuXHRAZWFjaCAkdmFsLCAkbWVkaWEgaW4gJGdyaWQge1xyXG5cdCAgJi5kZi1yci0jeyR2YWx9IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCfiiaUnICsgJG1lZGlhKSB7XHJcblx0XHQgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdH1cclxuXHQgIH1cclxuXHJcblx0ICAmLmRmLWFpYy0jeyR2YWx9IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCfiiaUnICsgJG1lZGlhKSB7XHJcblx0XHQgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHR9XHJcblx0ICB9XHJcblx0fVxyXG4gIH1cclxuXHJcbiAgLy8gZmxleCBncmlkXHJcbiAgQG1peGluIGZsZXgtZ3JpZCgpIHtcclxuXHRAZWFjaCAkdmFsLCAkbWVkaWEgaW4gJGdyaWQge1xyXG5cdCAgQGZvciAkZ3V0dGVyIGZyb20gMSB0aHJvdWdoIDEyIHtcclxuXHRcdC5jb2wtI3skdmFsfS0jeyRndXR0ZXJ9IHtcclxuXHRcdCAgQGluY2x1ZGUgbWVkaWEoJ+KJpScgKyAkbWVkaWEpIHtcclxuXHRcdFx0ZmxleDogMSAwIGNhbGMoMTAwJSAvIDEyICogI3skZ3V0dGVyfSk7XHJcblx0XHRcdG1heC13aWR0aDogY2FsYygxMDAlIC8gMTIgKiAjeyRndXR0ZXJ9KTtcclxuXHRcdCAgfVxyXG5cdFx0fVxyXG5cdCAgfVxyXG5cclxuXHQgIEBmb3IgJGd1dHRlciBmcm9tIDAgdGhyb3VnaCAxMSB7XHJcblx0XHQuY29sLW9mZnNldC0jeyR2YWx9LSN7JGd1dHRlcn0ge1xyXG5cdFx0ICBAaW5jbHVkZSBtZWRpYSgn4omlJyArICRtZWRpYSkge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKiAjeyRndXR0ZXJ9KTtcclxuXHRcdCAgfVxyXG5cdFx0fVxyXG5cdCAgfVxyXG5cdH1cclxuICB9XHJcblxyXG4gIEBtaXhpbiB2LWNlbnRlcigkbWluLWhlaWdodDogNDAwcHgpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cclxuXHQ+ICoge1xyXG5cdCAgbWluLWhlaWdodDogJG1pbi1oZWlnaHQ7XHJcblx0ICBkaXNwbGF5OiBmbGV4O1xyXG5cdCAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHQgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdCAgd2lkdGg6IDEwMCU7XHJcblx0fVxyXG4gIH1cclxuXHJcbiAgLy8gZm9yIGFic29sdXRlIHBvc2l0aW9uIGJsb2NrXHJcbiAgQG1peGluIGFic29sdXRlKCR0b3A6IDAsICRib3R0b206IDAsICRsZWZ0OiAwLCAkcmlnaHQ6IDApIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAkdG9wO1xyXG5cdGJvdHRvbTogJGJvdHRvbTtcclxuXHRsZWZ0OiAkbGVmdDtcclxuXHRyaWdodDogJHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLy8gYmFja2dyb3VuZCBpbWVnZSBzdHlsZXNcclxuICBAbWl4aW4gYmctc3RyZXRjaCgkYWxpZ25YOiA1MCUsICRhbGlnblk6IDUwJSkge1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246ICRhbGlnblggJGFsaWduWTtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgfVxyXG5cclxuICAvLyBpbnNlcnQgaWNvbiBmcm9tIGN1c3RvbSBmb250IGljb21vb25cclxuICBAbWl4aW4gaWNvbW9vbigkY29udGVudDogXCJcXGU5MDJcIiwgJGZvbnQtc2l6ZTogaW5oZXJpdCkge1xyXG5cdGNvbnRlbnQ6ICRjb250ZW50O1xyXG5cdGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XHJcblx0Zm9udC1zaXplOiAkZm9udC1zaXplO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRleHQtaW5kZW50OiAwO1xyXG4gIH1cclxuIiwiLy8gbGlzdCByZXNldFxyXG4lbGlzdHJlc2V0IHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4vLyBjbGVhcmZpeFxyXG4lY2xlYXJmaXgge1xyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGNsZWFyOiBib3RoO1xyXG5cdH1cclxufVxyXG5cclxuLmNsZWFyZml4IHtcclxuXHRAZXh0ZW5kICVjbGVhcmZpeDtcclxufVxyXG5cclxuXHJcbi8vIHRyYW5zaXRpb25cclxuJXRyYW5zaXRpb24ge1xyXG5cdHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi8vIGp1c3RpZnkgbmF2XHJcbiVqdXN0aWZ5IHtcclxuXHR0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG5cdGZvbnQtc2l6ZTogMXB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAwcHg7XHJcblx0PiAqIHtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XHJcblx0XHRsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcblx0fVxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0fVxyXG59XHJcblxyXG5cclxuXHJcbi8vLyAqIEhlbHBlciBjbGFzcyB0byB0cnVuY2F0ZSBhbmQgYWRkIGVsbGlwc2lzIHRvIGEgc3RyaW5nIHRvbyBsb25nIGZvciBpdCB0byBmaXRcclxuLy8vICogb24gYSBzaW5nbGUgbGluZS5cclxuLy8vICogMS4gUHJldmVudCBjb250ZW50IGZyb20gd3JhcHBpbmcsIGZvcmNpbmcgaXQgb24gYSBzaW5nbGUgbGluZS5cclxuLy8vICogMi4gQWRkIGVsbGlwc2lzIGF0IHRoZSBlbmQgb2YgdGhlIGxpbmUuXHJcblxyXG4uZWxsaXBzaXMge1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7IC8qIDEgKi9cclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgLyogMiAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuIiwiXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2Fucyc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fucy1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbmRlbnNlZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc0NvbmRlbnNlZC1TZW1pQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtU2VtaUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbmRlbnNlZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc0NvbmRlbnNlZC1CbGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtQmxhY2sud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIFNlbWkgQ29uZGVuc2VkJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zU2VtaUNvbmRlbnNlZC1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMgQ29uZGVuc2VkIEV4TGlnaHQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtRXh0cmFMaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtRXh0cmFMaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtRXh0cmFMaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtRXh0cmFMaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMgQ29uZGVuc2VkJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zQ29uZGVuc2VkLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zQ29uZGVuc2VkLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbmRlbnNlZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc0NvbmRlbnNlZC1NZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zQ29uZGVuc2VkLU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMgU2VtaSBDb25kZW5zZWQgRXhCZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtRXh0cmFCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtRXh0cmFCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBTZW1pIENvbmRlbnNlZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtTWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBTZW1pIENvbmRlbnNlZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtVGhpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNTZW1pQ29uZGVuc2VkLVRoaW4ud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2Fucyc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fucy1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fucy1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2Fucyc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fucy1CbGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtQmxhY2sud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIFNlbWkgQ29uZGVuc2VkJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zU2VtaUNvbmRlbnNlZC1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnRW5jb2RlIFNhbnMnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtU2VtaUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLVNlbWlCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBDb25kZW5zZWQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtRXh0cmFCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc0NvbmRlbnNlZC1FeHRyYUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLUV4dHJhQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnMtRXh0cmFCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBDb25kZW5zZWQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNTZW1pQ29uZGVuc2VkLVNlbWlCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc1NlbWlDb25kZW5zZWQtU2VtaUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLVRoaW4ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9FbmNvZGVTYW5zLVRoaW4ud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0VuY29kZSBTYW5zIENvbmRlbnNlZCc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc0NvbmRlbnNlZC1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvRW5jb2RlU2Fuc0NvbmRlbnNlZC1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdFbmNvZGUgU2FucyBDb25kZW5zZWQnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtVGhpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0VuY29kZVNhbnNDb25kZW5zZWQtVGhpbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnRmVsdCBUaGF0JztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9GZWx0VGhhdC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ZlbHRUaGF0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcblxyXG4iLCJAZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xyXG4gIHNyYzogIHVybCgnLi4vZm9udHMvaWNvbW9vbi5lb3Q/ZXYwdzltJyk7XHJcbiAgc3JjOiAgdXJsKCcuLi9mb250cy9pY29tb29uLmVvdD9ldjB3OW0jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICB1cmwoJy4uL2ZvbnRzL2ljb21vb24udHRmP2V2MHc5bScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgIHVybCgnLi4vZm9udHMvaWNvbW9vbi53b2ZmP2V2MHc5bScpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgdXJsKCcuLi9mb250cy9pY29tb29uLnN2Zz9ldjB3OW0jaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiaWNvbi1cIl06bm90KCNhZG1pbm1lbnUgKikge1xyXG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXHJcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xyXG4gIHNwZWFrOiBuZXZlcjtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICBsaW5lLWhlaWdodDogMTtcclxuXHJcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG5cclxuLmljb24tc2lnbi1vdXQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwNVwiO1xyXG59XHJcbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDBcIjtcclxufVxyXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwMVwiO1xyXG59XHJcbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDJcIjtcclxufVxyXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwM1wiO1xyXG59XHJcbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwNlwiO1xyXG59XHJcbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwN1wiO1xyXG59XHJcbi5pY29uLWFycm93LW5leHQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwYVwiO1xyXG59XHJcbi5pY29uLWFycm93LXByZXY6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwYlwiO1xyXG59XHJcbi5pY29uLWNsb3NlOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDhcIjtcclxufVxyXG4uaWNvbi1wbGF5OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDlcIjtcclxufVxyXG4uaWNvbi1hcnJvdy1kb3duOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDRcIjtcclxufVxyXG4uaWNvbi1jaGVjazpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFxlYTEwXCI7XHJcbn1cclxuIiwiLyogU2xpY2sgc2xpZGVyIHN0eWxlcyAqL1xyXG5cclxuLnNsaWNrLXNsaWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XHJcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmLmRyYWdnaW5nIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcclxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcblxyXG4uc2xpY2stdHJhY2sge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1zbGlkZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgJi5kcmFnZ2luZyBpbWcge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59IiwiYm9keS5jb21wZW5zYXRlLWZvci1zY3JvbGxiYXIge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5mYW5jeWJveC1hY3RpdmUge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLmZhbmN5Ym94LWlzLWhpZGRlbiB7XHJcbiAgbGVmdDogLTk5OTlweDtcclxuICBtYXJnaW46IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgdG9wOiAtOTk5OXB4O1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuLmZhbmN5Ym94LWNvbnRhaW5lciB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB0b3A6IDA7XHJcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xyXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiA5OTk5MjtcclxufVxyXG5cclxuLmZhbmN5Ym94LWNvbnRhaW5lciAqIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4uZmFuY3lib3gtb3V0ZXIsXHJcbi5mYW5jeWJveC1pbm5lcixcclxuLmZhbmN5Ym94LWJnLFxyXG4uZmFuY3lib3gtc3RhZ2Uge1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1vdXRlciB7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbn1cclxuXHJcbi5mYW5jeWJveC1iZyB7XHJcbiAgYmFja2dyb3VuZDogcmdiKDMwLCAzMCwgMzApO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdDtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xyXG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjQ3LCAwLCAuNzQsIC43MSk7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1pcy1vcGVuIC5mYW5jeWJveC1iZyB7XHJcbiAgb3BhY2l0eTogLjk7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjIsIC42MSwgLjM2LCAxKTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWluZm9iYXIsXHJcbi5mYW5jeWJveC10b29sYmFyLFxyXG4uZmFuY3lib3gtY2FwdGlvbixcclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiB7XHJcbiAgZGlyZWN0aW9uOiBsdHI7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UsIHZpc2liaWxpdHkgMHMgZWFzZSAuMjVzO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB6LWluZGV4OiA5OTk5NztcclxufVxyXG5cclxuLmZhbmN5Ym94LXNob3ctaW5mb2JhciAuZmFuY3lib3gtaW5mb2JhcixcclxuLmZhbmN5Ym94LXNob3ctdG9vbGJhciAuZmFuY3lib3gtdG9vbGJhcixcclxuLmZhbmN5Ym94LXNob3ctY2FwdGlvbiAuZmFuY3lib3gtY2FwdGlvbixcclxuLmZhbmN5Ym94LXNob3ctbmF2IC5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24ge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UgMHMsIHZpc2liaWxpdHkgMHMgZWFzZSAwcztcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG59XHJcblxyXG4uZmFuY3lib3gtaW5mb2JhciB7XHJcbiAgY29sb3I6ICNjY2M7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xyXG4gIGhlaWdodDogNDRweDtcclxuICBsZWZ0OiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiA0NHB4O1xyXG4gIG1pbi13aWR0aDogNDRweDtcclxuICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcclxuICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgdG9wOiAwO1xyXG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4uZmFuY3lib3gtdG9vbGJhciB7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc3RhZ2Uge1xyXG4gIGRpcmVjdGlvbjogbHRyO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICB6LWluZGV4OiA5OTk5NDtcclxufVxyXG5cclxuLmZhbmN5Ym94LWlzLW9wZW4gLmZhbmN5Ym94LXN0YWdlIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUge1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyAvKiBVc2luZyB3aXRob3V0IHByZWZpeCB3b3VsZCBicmVhayBJRTExICovXHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICBwYWRkaW5nOiA0NHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDk5OTk0O1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGU6OmJlZm9yZSB7XHJcbiAgY29udGVudDogJyc7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB3aWR0aDogMDtcclxufVxyXG5cclxuLmZhbmN5Ym94LWlzLXNsaWRpbmcgLmZhbmN5Ym94LXNsaWRlLFxyXG4uZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzLFxyXG4uZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQsXHJcbi5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taW1hZ2Uge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogNDRweCAwO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlOjpiZWZvcmUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taHRtbCB7XHJcbiAgcGFkZGluZzogNnB4O1xyXG59XHJcblxyXG4uZmFuY3lib3gtY29udGVudCB7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBvdmVyZmxvdzogYXV0bztcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgcGFkZGluZzogNDRweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlIC5mYW5jeWJveC1jb250ZW50IHtcclxuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjUsIDAsIC4xNCwgMSk7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG1heC13aWR0aDogbm9uZTtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIHotaW5kZXg6IDk5OTk1O1xyXG59XHJcblxyXG4uZmFuY3lib3gtY2FuLXpvb21PdXQgLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIGN1cnNvcjogem9vbS1vdXQ7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYW4tem9vbUluIC5mYW5jeWJveC1jb250ZW50IHtcclxuICBjdXJzb3I6IHpvb20taW47XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYW4tc3dpcGUgLmZhbmN5Ym94LWNvbnRlbnQsXHJcbi5mYW5jeWJveC1jYW4tcGFuIC5mYW5jeWJveC1jb250ZW50IHtcclxuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcclxuICBjdXJzb3I6IGdyYWI7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1pcy1ncmFiYmluZyAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xyXG4gIGN1cnNvcjogZ3JhYmJpbmc7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jb250YWluZXIgW2RhdGEtc2VsZWN0YWJsZT0ndHJ1ZSddIHtcclxuICBjdXJzb3I6IHRleHQ7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1pbWFnZSxcclxuLmZhbmN5Ym94LXNwYWNlYmFsbCB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gIG1heC13aWR0aDogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZhbmN5Ym94LXNwYWNlYmFsbCB7XHJcbiAgei1pbmRleDogMTtcclxufVxyXG5cclxuLmZhbmN5Ym94LXNsaWRlLS12aWRlbyAuZmFuY3lib3gtY29udGVudCxcclxuLmZhbmN5Ym94LXNsaWRlLS1tYXAgLmZhbmN5Ym94LWNvbnRlbnQsXHJcbi5mYW5jeWJveC1zbGlkZS0tcGRmIC5mYW5jeWJveC1jb250ZW50LFxyXG4uZmFuY3lib3gtc2xpZGUtLWlmcmFtZSAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQ6ICMwMDA7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0tbWFwIC5mYW5jeWJveC1jb250ZW50IHtcclxuICBiYWNrZ3JvdW5kOiAjZTVlM2RmO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUtLWlmcmFtZSAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxufVxyXG5cclxuLmZhbmN5Ym94LXZpZGVvLFxyXG4uZmFuY3lib3gtaWZyYW1lIHtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1hcmdpbjogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEZpeCBpT1MgKi9cclxuLmZhbmN5Ym94LWlmcmFtZSB7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4uZmFuY3lib3gtZXJyb3Ige1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gIG1heC13aWR0aDogNDAwcHg7XHJcbiAgcGFkZGluZzogNDBweDtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWVycm9yIHAge1xyXG4gIGNvbG9yOiAjNDQ0O1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMjBweDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLyogQnV0dG9ucyAqL1xyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgzMCwgMzAsIDMwLCAuNik7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGhlaWdodDogNDRweDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcclxuICB3aWR0aDogNDRweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbixcclxuLmZhbmN5Ym94LWJ1dHRvbjp2aXNpdGVkLFxyXG4uZmFuY3lib3gtYnV0dG9uOmxpbmsge1xyXG4gIGNvbG9yOiAjY2NjO1xyXG59XHJcblxyXG4uZmFuY3lib3gtYnV0dG9uOmhvdmVyIHtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbjpmb2N1cyB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbi5mYW5jeWJveC1mb2N1cyB7XHJcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbltkaXNhYmxlZF0sXHJcbi5mYW5jeWJveC1idXR0b25bZGlzYWJsZWRdOmhvdmVyIHtcclxuICBjb2xvcjogIzg4ODtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLyogRml4IElFMTEgKi9cclxuLmZhbmN5Ym94LWJ1dHRvbiBkaXYge1xyXG4gIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbiBzdmcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1idXR0b24gc3ZnIHBhdGgge1xyXG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICBzdHJva2Utd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1idXR0b24tLXBsYXkgc3ZnOm50aC1jaGlsZCgyKSxcclxuLmZhbmN5Ym94LWJ1dHRvbi0tZnNlbnRlciBzdmc6bnRoLWNoaWxkKDIpIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZmFuY3lib3gtYnV0dG9uLS1wYXVzZSBzdmc6bnRoLWNoaWxkKDEpLFxyXG4uZmFuY3lib3gtYnV0dG9uLS1mc2V4aXQgc3ZnOm50aC1jaGlsZCgxKSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmZhbmN5Ym94LXByb2dyZXNzIHtcclxuICBiYWNrZ3JvdW5kOiAjZmY1MjY4O1xyXG4gIGhlaWdodDogMnB4O1xyXG4gIGxlZnQ6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDA7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogMDtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcclxuICB6LWluZGV4OiA5OTk5ODtcclxufVxyXG4vKiBDbG9zZSBidXR0b24gb24gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgaHRtbCBjb250ZW50ICovXHJcblxyXG4uZmFuY3lib3gtY2xvc2Utc21hbGwge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIGNvbG9yOiAjY2NjO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBvcGFjaXR5OiAuODtcclxuICBwYWRkaW5nOiA4cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAtMTJweDtcclxuICB0b3A6IC00NHB4O1xyXG4gIHotaW5kZXg6IDQwMTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmhvdmVyIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUtLWh0bWwgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcclxuICBjb2xvcjogY3VycmVudENvbG9yO1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlLmZhbmN5Ym94LWlzLXNjYWxpbmcgLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5mYW5jeWJveC1pcy1zY2FsaW5nIC5mYW5jeWJveC1jbG9zZS1zbWFsbCxcclxuLmZhbmN5Ym94LWlzLXpvb21hYmxlLmZhbmN5Ym94LWNhbi1wYW4gLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBOYXZpZ2F0aW9uIGFycm93cyAqL1xyXG5cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcclxuICBoZWlnaHQ6IDEwMHB4O1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogY2FsYyg1MCUgLSA1MHB4KTtcclxuICB3aWR0aDogNzBweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiBkaXYge1xyXG4gIHBhZGRpbmc6IDdweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfbGVmdCB7XHJcbiAgbGVmdDogMDtcclxuICBsZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gIHBhZGRpbmc6IDMxcHggMjZweCAzMXB4IDZweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfcmlnaHQge1xyXG4gIHBhZGRpbmc6IDMxcHggNnB4IDMxcHggMjZweDtcclxuICByaWdodDogMDtcclxuICByaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbn1cclxuXHJcbi8qIENhcHRpb24gKi9cclxuXHJcbi5mYW5jeWJveC1jYXB0aW9uIHtcclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICB0byB0b3AsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIC44NSkgMCUsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4zKSA1MCUsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xNSkgNjUlLFxyXG4gICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDc1KSA3NS41JSxcclxuICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjAzNykgODIuODUlLFxyXG4gICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDE5KSA4OCUsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDEwMCVcclxuICApO1xyXG4gIGJvdHRvbTogMDtcclxuICBjb2xvcjogI2VlZTtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsZWZ0OiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgcGFkZGluZzogNzVweCA0NHB4IDI1cHggNDRweDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICByaWdodDogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgei1pbmRleDogOTk5OTY7XHJcbn1cclxuXHJcbi8vIEBzdXBwb3J0cyAocGFkZGluZzogbWF4KDBweCkpIHtcclxuLy8gICAuZmFuY3lib3gtY2FwdGlvbiB7XHJcbi8vICAgICBwYWRkaW5nOiA3NXB4IG1heCg0NHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgbWF4KDI1cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSkgbWF4KDQ0cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuLmZhbmN5Ym94LWNhcHRpb24tLXNlcGFyYXRlIHtcclxuICBtYXJnaW4tdG9wOiAtNTBweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LWNhcHRpb25fX2JvZHkge1xyXG4gIG1heC1oZWlnaHQ6IDUwdmg7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxufVxyXG5cclxuLmZhbmN5Ym94LWNhcHRpb24gYSxcclxuLmZhbmN5Ym94LWNhcHRpb24gYTpsaW5rLFxyXG4uZmFuY3lib3gtY2FwdGlvbiBhOnZpc2l0ZWQge1xyXG4gIGNvbG9yOiAjY2NjO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWNhcHRpb24gYTpob3ZlciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi8qIExvYWRpbmcgaW5kaWNhdG9yICovXHJcblxyXG4uZmFuY3lib3gtbG9hZGluZyB7XHJcbiAgYW5pbWF0aW9uOiBmYW5jeWJveC1yb3RhdGUgMXMgbGluZWFyIGluZmluaXRlO1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogNHB4IHNvbGlkICM4ODg7XHJcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW46IC0yNXB4IDAgMCAtMjVweDtcclxuICBvcGFjaXR5OiAuNztcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICB3aWR0aDogNTBweDtcclxuICB6LWluZGV4OiA5OTk5OTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYW5jeWJveC1yb3RhdGUge1xyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIFRyYW5zaXRpb24gZWZmZWN0cyAqL1xyXG5cclxuLmZhbmN5Ym94LWFuaW1hdGVkIHtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIC4yNSwgMSk7XHJcbn1cclxuXHJcbi8qIHRyYW5zaXRpb25FZmZlY3Q6IHNsaWRlICovXHJcblxyXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG59XHJcblxyXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXNsaWRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcclxuICBvcGFjaXR5OiAxO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbn1cclxuXHJcbi8qIHRyYW5zaXRpb25FZmZlY3Q6IGZhZGUgKi9cclxuXHJcbi5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyxcclxuLmZhbmN5Ym94LWZ4LWZhZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiB6b29tLWluLW91dCAqL1xyXG5cclxuLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2Zvcm06IHNjYWxlM2QoMS41LCAxLjUsIDEuNSk7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC16b29tLWluLW91dC5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2Zvcm06IHNjYWxlM2QoLjUsIC41LCAuNSk7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC16b29tLWluLW91dC5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XHJcbiAgb3BhY2l0eTogMTtcclxuICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbn1cclxuXHJcbi8qIHRyYW5zaXRpb25FZmZlY3Q6IHJvdGF0ZSAqL1xyXG5cclxuLmZhbmN5Ym94LWZ4LXJvdGF0ZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xyXG59XHJcblxyXG4uZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC1yb3RhdGUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG59XHJcblxyXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiBjaXJjdWxhciAqL1xyXG5cclxuLmZhbmN5Ym94LWZ4LWNpcmN1bGFyLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMCwgMCkgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG59XHJcblxyXG4uZmFuY3lib3gtZngtY2lyY3VsYXIuZmFuY3lib3gtc2xpZGUtLW5leHQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG59XHJcblxyXG4uZmFuY3lib3gtZngtY2lyY3VsYXIuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcblxyXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiB0dWJlICovXHJcblxyXG4uZmFuY3lib3gtZngtdHViZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNjYWxlKC4xKSBza2V3KC0xMGRlZyk7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC10dWJlLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNjYWxlKC4xKSBza2V3KDEwZGVnKTtcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXR1YmUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGUoMSk7XHJcbn1cclxuXHJcbi8qIFN0eWxpbmcgZm9yIFNtYWxsLVNjcmVlbiBEZXZpY2VzICovXHJcbkBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xyXG4gIC5mYW5jeWJveC1zbGlkZSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcclxuICB9XHJcblxyXG4gIC5mYW5jeWJveC1zbGlkZS0taW1hZ2Uge1xyXG4gICAgcGFkZGluZzogNnB4IDA7XHJcbiAgfVxyXG5cclxuICAuZmFuY3lib3gtY2xvc2Utc21hbGwge1xyXG4gICAgcmlnaHQ6IC02cHg7XHJcbiAgfVxyXG5cclxuICAuZmFuY3lib3gtc2xpZGUtLWltYWdlIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjNGU0ZTRlO1xyXG4gICAgY29sb3I6ICNmMmY0ZjY7XHJcbiAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgcGFkZGluZzogNnB4O1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMzZweDtcclxuICB9XHJcblxyXG4gIC5mYW5jeWJveC1jYXB0aW9uIHtcclxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XHJcbiAgfVxyXG5cclxuICAvLyBAc3VwcG9ydHMgKHBhZGRpbmc6IG1heCgwcHgpKSB7XHJcbiAgLy8gICAuZmFuY3lib3gtY2FwdGlvbiB7XHJcbiAgLy8gICAgIHBhZGRpbmctbGVmdDogbWF4KDEycHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xyXG4gIC8vICAgICBwYWRkaW5nLXJpZ2h0OiBtYXgoMTJweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xyXG4gIC8vICAgfVxyXG4gIC8vIH1cclxufVxyXG5cclxuLyogU2hhcmUgKi9cclxuXHJcbi5mYW5jeWJveC1zaGFyZSB7XHJcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgcGFkZGluZzogMzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZSBoMSB7XHJcbiAgY29sb3I6ICMyMjI7XHJcbiAgZm9udC1zaXplOiAzNXB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbWFyZ2luOiAwIDAgMjBweCAwO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmUgcCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uIHtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsaW5lLWhlaWdodDogNDBweDtcclxuICBtYXJnaW46IDAgNXB4IDEwcHggNXB4O1xyXG4gIG1pbi13aWR0aDogMTMwcHg7XHJcbiAgcGFkZGluZzogMCAxNXB4O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b246dmlzaXRlZCxcclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b246bGluayB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uOmhvdmVyIHtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1mYiB7XHJcbiAgYmFja2dyb3VuZDogIzNiNTk5ODtcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLWZiOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kOiAjMzQ0ZTg2O1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tcHQge1xyXG4gIGJhY2tncm91bmQ6ICNiZDA4MWQ7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1wdDpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogI2FhMDcxOTtcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLXR3IHtcclxuICBiYWNrZ3JvdW5kOiAjMWRhMWYyO1xyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tdHc6aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICMwZDk1ZTg7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uIHN2ZyB7XHJcbiAgaGVpZ2h0OiAyNXB4O1xyXG4gIG1hcmdpbi1yaWdodDogN3B4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IC0xcHg7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB3aWR0aDogMjVweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24gc3ZnIHBhdGgge1xyXG4gIGZpbGw6ICNmZmY7XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9faW5wdXQge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZDdkNztcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIGNvbG9yOiAjNWQ1YjViO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBtYXJnaW46IDEwcHggMCAwIDA7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIFRodW1icyAqL1xyXG5cclxuLmZhbmN5Ym94LXRodW1icyB7XHJcbiAgYmFja2dyb3VuZDogI2RkZDtcclxuICBib3R0b206IDA7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xyXG4gIHBhZGRpbmc6IDJweCAycHggNHB4IDJweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogMjEycHg7XHJcbiAgei1pbmRleDogOTk5OTU7XHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnMteCB7XHJcbiAgb3ZlcmZsb3cteDogYXV0bztcclxuICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaG93LXRodW1icyAuZmFuY3lib3gtdGh1bWJzIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC1pbm5lciB7XHJcbiAgcmlnaHQ6IDIxMnB4O1xyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzX19saXN0IHtcclxuICBmb250LXNpemU6IDA7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzLXggLmZhbmN5Ym94LXRodW1ic19fbGlzdCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmZhbmN5Ym94LXRodW1icy15IC5mYW5jeWJveC10aHVtYnNfX2xpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICB3aWR0aDogN3B4O1xyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzLXkgLmZhbmN5Ym94LXRodW1ic19fbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwgMCwgMCwgLjMpO1xyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzLXkgLmZhbmN5Ym94LXRodW1ic19fbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gIGJhY2tncm91bmQ6ICMyYTJhMmE7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMSk7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIGhlaWdodDogNzVweDtcclxuICBtYXJnaW46IDJweDtcclxuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xyXG4gIG1heC13aWR0aDogY2FsYyg1MCUgLSA0cHgpO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHdpZHRoOiAxMDBweDtcclxufVxyXG5cclxuLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhOjpiZWZvcmUge1xyXG4gIGJvcmRlcjogNnB4IHNvbGlkICNmZjUyNjg7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zaXRpb246IGFsbCAuMnMgY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCk7XHJcbiAgei1pbmRleDogOTk5OTE7XHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnNfX2xpc3QgYTpmb2N1czo6YmVmb3JlIHtcclxuICBvcGFjaXR5OiAuNTtcclxufVxyXG5cclxuLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhLmZhbmN5Ym94LXRodW1icy1hY3RpdmU6OmJlZm9yZSB7XHJcbiAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLyogU3R5bGluZyBmb3IgU21hbGwtU2NyZWVuIERldmljZXMgKi9cclxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAuZmFuY3lib3gtdGh1bWJzIHtcclxuICAgIHdpZHRoOiAxMTBweDtcclxuICB9XHJcbiAgLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC1pbm5lciB7XHJcbiAgICByaWdodDogMTEwcHg7XHJcbiAgfVxyXG4gIC5mYW5jeWJveC10aHVtYnNfX2xpc3QgYSB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpO1xyXG4gIH1cclxufVxyXG4iLCIvLyBhbmltYXRpb25zIG9uIHRoZSBwYWdlXHJcbi5mYWRlSW4sXHJcbi5mYWRlSW5VcCxcclxuLmZhZGVJbkRvd24sXHJcbi5mYWRlSW5MZWZ0LFxyXG4uZmFkZUluUmlnaHQge1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuLmZhZGVJbi5pbi12aWV3cG9ydCxcclxuLmluLXZpZXdwb3J0IC5mYWRlSW57XHJcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdC8vIGFuaW1hdGlvbi1kZWxheTogMS4ycztcclxuXHRhbmltYXRpb24tZHVyYXRpb246ICRiYXNlLWR1cmF0aW9uO1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluIHtcclxuXHQwJSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxuXHJcblx0NjAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcblxyXG4uZmFkZUluVXAuaW4tdmlld3BvcnQsXHJcbi5pbi12aWV3cG9ydCAuZmFkZUluVXAge1xyXG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdC8vIGFuaW1hdGlvbi1kZWxheTogMS4ycztcclxuXHRhbmltYXRpb24tZHVyYXRpb246ICRiYXNlLWR1cmF0aW9uO1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluVXAge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG5cdH1cclxuXHJcblx0NjAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDBweCwgMCk7XHJcblx0fVxyXG59XHJcblxyXG4uZmFkZUluRG93bi5pbi12aWV3cG9ydCxcclxuLmluLXZpZXdwb3J0IC5mYWRlSW5Eb3duIHtcclxuXHRhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdC8vIGFuaW1hdGlvbi1kZWxheTogMC41cztcclxuXHRhbmltYXRpb24tZHVyYXRpb246ICRiYXNlLWR1cmF0aW9uO1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XHJcblx0MCUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG5cdH1cclxuXHJcblx0NjAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4uZmFkZUluTGVmdC5pbi12aWV3cG9ydCxcclxuLmluLXZpZXdwb3J0IC5mYWRlSW5MZWZ0IHtcclxuXHRhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdC8vIGFuaW1hdGlvbi1kZWxheTogMC4xcztcclxuXHRhbmltYXRpb24tZHVyYXRpb246ICRiYXNlLWR1cmF0aW9uO1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XHJcblx0MCUge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwcHgsIDAsIDApO1xyXG5cdH1cclxuXHJcblx0NjAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4uZmFkZUluUmlnaHQuaW4tdmlld3BvcnQsXHJcbi5pbi12aWV3cG9ydCAuZmFkZUluUmlnaHQge1xyXG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdC8vIGFuaW1hdGlvbi1kZWxheTogMC4xcztcclxuXHRhbmltYXRpb24tZHVyYXRpb246ICRiYXNlLWR1cmF0aW9uO1xyXG5cdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xyXG5cdDAlIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwcHgsIDAsIDApO1xyXG5cdH1cclxuXHJcblx0NjAlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IG5vbmU7XHJcblx0fVxyXG59XHJcbiIsImgxLFxyXG4uaDEsXHJcbmgyLFxyXG4uaDIsXHJcbmgzLFxyXG4uaDMsXHJcbmg0LFxyXG4uaDQsXHJcbmg1LFxyXG4uaDUsXHJcbmg2LFxyXG4uaDYsXHJcbi5oIHtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG5cclxuICBhIHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuaDEsXHJcbi5oMSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg0OCk7XHJcbiAgfVxyXG5cclxuICAmLnRpdGxlLXNtIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDIzKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA0MCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5oMSB7XHJcbiAgJi5oMyB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAzMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5oMixcclxuLmgyIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcclxuICB9XHJcbn1cclxuXHJcbmgzLFxyXG4uaDMge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xyXG4gIH1cclxufVxyXG5cclxuaDQsXHJcbi5oNCB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcbiAgfVxyXG59XHJcblxyXG5hIHtcclxuICBAaW5jbHVkZSBhbmltYXRlKGNvbG9yIGJhY2tncm91bmQgYm9yZGVyIG9wYWNpdHkgdHJhbnNmb3JtIGJveC1zaGFkb3cpO1xyXG4gIGNvbG9yOiAkY3lhbjtcclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IHJnYmEoMCwgMCwgMCwgMC4xKSBhdXRvIDFweDtcclxuICB9XHJcbn1cclxuXHJcbi5ibG9ja3F1b3RlIHtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMzY7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDEwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNpdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzIpO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNtYWxsIHtcclxuICBmb250LXdlaWdodDogaW5oZXJpdDtcclxuICBmb250LXNpemU6IDc0JTtcclxufVxyXG5cclxudGltZSB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG5cclxuICAmLnNtYWxsIHtcclxuICAgIGZvbnQtc2l6ZTogODAlO1xyXG4gIH1cclxufVxyXG5cclxuLmJhZGdlIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAmLmJhZGdlLWRhcmsge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzAsIDMyLCAwLjgpO1xyXG4gIH1cclxufVxyXG5cclxuLnRpdGxlLXNtYWxsIHtcclxuICBmb250OiA2MDAgMC43NXJlbS8xLjUgJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTUpO1xyXG59XHJcblxyXG4udGV4dC1tdXRlZCB7XHJcbiAgLmJnLXByaW1hcnkgJiB7XHJcbiAgICBjb2xvcjogI2I5YjliOSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLnRleHQtaG9sZGVyIHtcclxuICBtYXJnaW46IDAgYXV0byByZW0tY2FsYygyMCk7XHJcbiAgbWF4LXdpZHRoOiByZW0tY2FsYygzNjUpO1xyXG59XHJcbiIsIi5idG4ge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg3IDIxKTtcclxuICB9XHJcblxyXG4gICYuYnRuLWluZm8sXHJcbiAgJi5idG4tbGlnaHQsXHJcbiAgJi5idG4tcHJpbWFyeSxcclxuICAmLmJ0bi1zdWNjZXNzLFxyXG4gICYuYnRuLWRhbmdlcixcclxuICAmLmJ0bi13YXJuaW5nLFxyXG4gICYuYnRuLWRhcmssXHJcbiAgJi5nZm9ybV9idXR0b24ge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeTtcclxuICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYnRuLWxpZ2h0IHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5idG4tc2Vjb25kYXJ5IHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5saW5rLWljb24ge1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjUpO1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmxpbmstYXJyb3cge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGNvbG9yOiAkaW5mbztcclxuICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtKTtcclxuICAgIEBpbmNsdWRlIGljb21vb24oJGNvbnRlbnQ6IFwiXFxlOTBhXCIsICRmb250LXNpemU6IDAuNzVyZW0pO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6ICRzZWNvbmRhcnk7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwgLTUwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2xvc2Uge1xyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5saW5rLWJhY2sge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBmb250OiA3MDAgMXJlbS8xLjUgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIG1hcmdpbjogcmVtLWNhbGMoMCAwIDU4KTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtKTtcclxuICAgIEBpbmNsdWRlIGljb21vb24oJGNvbnRlbnQ6IFwiXFxlOTBiXCIsICRmb250LXNpemU6IDAuNzVyZW0pO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJGluZm87XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01cHgsIC01MCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmF3YXJkc193cmFwIHtcclxuICBhIHtcclxuICAgIGZvbnQ6IDcwMCAxcmVtLzEuNSAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBjb2xvcjogJGluZm87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5tb3JlLWJ1dHRvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBwYWRkaW5nOiByZW0tY2FsYygwIDAgMjMpO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBjb2xvcjogJHByaW1hcnk7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgQGluY2x1ZGUgaWNvbW9vbigkY29udGVudDogXCJcXGU5MDRcIiwgJGZvbnQtc2l6ZTogMS44cmVtKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG4gIH1cclxufVxyXG5cclxuLnZpZGVvLWxpbmsge1xyXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg0NSk7XHJcbiAgfVxyXG5cclxuICAuaWNvbi1wbGF5IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyMiwgMjMsIDI1LCAwLjcpO1xyXG4gICAgd2lkdGg6IHJlbS1jYWxjKDgwKTtcclxuICAgIGhlaWdodDogcmVtLWNhbGMoODApO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgd2lkdGg6IHJlbS1jYWxjKDEwMCk7XHJcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMTAwKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtKTtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMCAxMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAuaWNvbi1wbGF5IHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmNhcmQge1xyXG4gIGZvbnQ6IDFyZW0vMS4yNSAkZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk7XHJcblxyXG4gIC5jYXJkLWhlYWRlciB7XHJcbiAgICBzdmcge1xyXG4gICAgICBAaW5jbHVkZSBhbmltYXRlKHRyYW5zZm9ybSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIC5jYXJkLWhlYWRlciB7XHJcbiAgICAgIHN2ZyB7XHJcbiAgICAgICAgZmlsbDogJHNlY29uZGFyeTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcblxyXG4gICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgZmlsbDogJHNlY29uZGFyeTtcclxuICAgICAgICAgIHN0cm9rZTogJHNlY29uZGFyeTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGluay1hcnJvdyB7XHJcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmNhcmQtc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgIC5jYXJkLWhlYWRlciB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxMDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtZm9vdGVyIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtYm9keSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxNCk7XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxMik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbmEge1xyXG4gICY6aG92ZXIge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgaDIsXHJcbiAgICBoMyxcclxuICAgIGg0LFxyXG4gICAgaDUsXHJcbiAgICBoNiB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuYS5jYXJkLXNlY29uZGFyeSxcclxuYS5jYXJkLFxyXG5hLmNhcmQtdGhpcmQsXHJcbi5jYXJkLXRoaXJkIHtcclxuICBoMixcclxuICBoMyxcclxuICBoNCxcclxuICBoNSxcclxuICBoNiB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRlKGNvbG9yKTtcclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgIC5saW5rLWljb24ge1xyXG4gICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbWFnZSB7XHJcbiAgICAgIHotaW5kZXg6IDE7ICAgICAgXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyAgICAgICBcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCxcclxuICAgIGg1LFxyXG4gICAgaDYge1xyXG4gICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNhcmQtc2Vjb25kYXJ5LFxyXG4uY2FyZCxcclxuLmNhcmQtdGhpcmQge1xyXG4gIHAge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMjApO1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgyLFxyXG4gIGgzLFxyXG4gIGg0LFxyXG4gIGg1LFxyXG4gIGg2IHtcclxuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4gIH1cclxuXHJcbiAgaDMge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDQge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgLmxpbmstYXJyb3cge1xyXG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjUpO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLXRoaXJkIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyNSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA0MCk7XHJcbiAgfVxyXG5cclxuICAuY2FyZC1pbWFnZSB7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxNjgpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICB3aWR0aDogcmVtLWNhbGMoMzAwKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMDApO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtKTtcclxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saW5rLWljb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiByZW0tY2FsYygyMyk7XHJcbiAgICByaWdodDogcmVtLWNhbGMoMjUpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICByaWdodDogcmVtLWNhbGMoNjMpO1xyXG4gICAgfVxyXG4gICAgLmxpbmtfaWNvbl9kZCB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkLWJvZHkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIGZsZXg6IDEgMDtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSA5MCAxNSA0MCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iYWRnZSB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNSk7XHJcbiAgfVxyXG5cclxuICBoMSxcclxuICAuaDEsXHJcbiAgaDIsXHJcbiAgLmgyLFxyXG4gIGgzLFxyXG4gIC5oMyxcclxuICBoNCxcclxuICAuaDQsXHJcbiAgaDUsXHJcbiAgLmg1LFxyXG4gIGg2LFxyXG4gIC5oNixcclxuICAuaCB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZHMtaG9sZGVyLXRoaXJkIHtcclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2NSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZC1oZWFkZXIge1xyXG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XHJcbiAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcclxuICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNSk7XHJcbn1cclxuXHJcbi5jYXJkLWJvZHkge1xyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gIH1cclxufVxyXG5cclxuLmNhcmQtZm9vdGVyIHtcclxuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xyXG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XHJcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xyXG4gIH1cclxufVxyXG5cclxuLmNhcmRzLWhvbGRlciB7XHJcbiAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMTApO1xyXG4gIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTApO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0zMCk7XHJcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTMwKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTQwKTtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNDApO1xyXG4gIH1cclxuXHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKC00MCk7XHJcbiAgfVxyXG5cclxuICA+IFtjbGFzc149XCJjb2xcIl0sXHJcbiAgPiBbY2xhc3MqPVwiIGNvbFwiXSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygzMCk7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMwKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg0MCk7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIC5jYXJkIHtcclxuICAgICAgICAmLmNhcmQtc2Vjb25kYXJ5IHtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xyXG5cclxuICAgICAgJi5jYXJkLXNlY29uZGFyeSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoOTApO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5mb3JtLWNvbnRyb2wge1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAxLjY1cmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXHJcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0LFxyXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgZmxleDogMSAxIDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi5zdWJzY3JpYmUtZm9ybSB7XHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMC40Mzc1cmVtIDAuNXJlbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgd2lkdGg6IHJlbS1jYWxjKDIxNSk7XHJcbiAgICB9XHJcblxyXG4gICAgaSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3Bhbi5idG4ge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnZS10ZW1wbGF0ZS1sb2dpbiB7XHJcbiAgbGFiZWwge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICAjd3Atc3VibWl0IHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkVuY29kZSBTYW5zIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAxLjMxMjVyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAxNjhiYztcclxuICAgIGJvcmRlci1jb2xvcjogIzAxNjhiYztcclxuXHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LFxyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsXHJcbiAgICAgIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCxcclxuICAgICAgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBib3JkZXItY29sb3I6ICNmZjhjMDA7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZjhjMDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5sb2dpbi13cmFwIHtcclxuICB9XHJcbn1cclxuLnNreWxpbmUge1xyXG4gIC5nZm9ybV9oZWFkaW5nIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC5nZm9ybV90aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDgpO1xyXG4gICAgfVxyXG4gICAgLmdmb3JtX2Rlc2NyaXB0aW9uIHtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiRW5jb2RlIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgIH1cclxuICB9XHJcbiAgLmdmb3JtX2JvZHkge1xyXG4gICAgc2VsZWN0LmdmaWVsZF9zZWxlY3Qge1xyXG4gICAgICBwYWRkaW5nOiA2cHggMCA2cHggM3B4O1xyXG4gICAgfVxyXG4gICAgLmZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IHtcclxuICAgICAgLmdmaWVsZF9kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmdmaWVsZF9kZXNjcmlwdGlvbiB7XHJcbiAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE2cHgvMjJweCBcIkVuY29kZSBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIixcclxuICAgICAgICBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgIH1cclxuICB9XHJcbiAgLmdmb3JtX2Zvb3RlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzNzY4O1xyXG4gICAgICBib3JkZXItY29sb3I6ICMwMDM3Njg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBib2xkIDE2cHgvMjRweCBFbmNvZGUgU2FucyBDb25kZW5zZWQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0LCBjb2xvciAwLjNzIGVhc2UtaW4tb3V0LFxyXG4gICAgICAgIGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dCwgYm9yZGVyIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICNmZjhjMDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmOGMwMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jc2VhcmNoZm9ybXtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgLmZpZWxkLmZvcm0tY29udHJvbHtcclxuICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgIHdpZHRoOiAxJTtcclxuICAgIH1cclxuICAgIC5pbnB1dC1ncm91cC1hcHBlbmR7XHJcbiAgICAgIHdpZHRoOiB1bnNldDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0uMTI1cmVtO1xyXG4gICAgICBpbnB1dHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLnBhZ2luYXRpb24ge1xyXG4gIGZvbnQ6IDUwMCAwLjc1cmVtLzEuMiAkZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucGFnZS1saW5rIHtcclxuICAgIHBhZGRpbmctbGVmdDogMC44cmVtO1xyXG4gICAgcGFkZGluZy1yaWdodDogMC44cmVtO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuODdyZW07XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuODdyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5jaXJjbGUtbGlzdCB7XHJcblx0QGV4dGVuZCAlbGlzdHJlc2V0O1xyXG5cdG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcclxuXHJcblx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdGxpIHtcclxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bGkge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDAgMCAyOCk7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdGNvbnRlbnQ6ICfigKInO1xyXG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgNyAwIDApO1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5zb2NpYWwtbGlzdCB7XHJcblx0QGV4dGVuZCAlbGlzdHJlc2V0O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdG1hcmdpbjogcmVtLWNhbGMoMCAtNSAxNSk7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAtMTAgMTUpO1xyXG5cdH1cclxuXHJcblx0bGkge1xyXG5cdFx0bWFyZ2luOiByZW0tY2FsYygwIDUgIDUpO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuXHRcdFx0bWFyZ2luOiByZW0tY2FsYygwIDEwIDUpXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzcpO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDM2MGRlZyk7XHJcblx0XHRcdGNvbG9yOiBpbmhlcml0O1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuaW5mby1saXN0IHtcclxuICBAZXh0ZW5kICVsaXN0cmVzZXQ7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygyMyk7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMjg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMTI1O1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDIwKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcclxuICB9XHJcblxyXG4gIGxpIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDE1KTtcclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zbGljay1hcnJvdyB7XHJcblx0QGluY2x1ZGUgYW5pbWF0ZShjb2xvciBib3JkZXIpO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6ICRwcmltYXJ5O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogMDtcclxuXHR6LWluZGV4OiA5OTk5O1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvdHRvbTogMDtcclxuXHRwYWRkaW5nOiByZW0tY2FsYygxMCk7XHJcblx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdHRvcDogNTAlO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0Ym90dG9tOiBhdXRvO1xyXG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMCk7XHJcblx0fVxyXG5cclxuXHQmOmZvY3VzIHtcclxuXHRcdG91dGxpbmU6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGNvbG9yOiAkaW5mbztcclxuXHR9XHJcblxyXG5cdCYuc2xpY2stcHJldiB7XHJcblx0XHRsZWZ0OiByZW0tY2FsYygtMTUpO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuc2xpY2stbmV4dCB7XHJcblx0XHRyaWdodDogcmVtLWNhbGMoLTE1KTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNsaWNrLWRvdHMge1xyXG5cdEBleHRlbmQgJWxpc3RyZXNldDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbjogcmVtLWNhbGMoMCAtNCk7XHJcblx0aGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcblx0ei1pbmRleDogOTk7XHJcblxyXG5cdGxpIHtcclxuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDAgNCk7XHJcblx0fVxyXG5cclxuXHRidXR0b24ge1xyXG5cdFx0QGluY2x1ZGUgYW5pbWF0ZShiYWNrZ3JvdW5kKTtcclxuXHRcdHRleHQtaW5kZW50OiAtOTk5OTk5OXB4O1xyXG5cdFx0d2lkdGg6IHJlbS1jYWxjKDEwKTtcclxuXHRcdGhlaWdodDogcmVtLWNhbGMoMTApO1xyXG5cdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdGJhY2tncm91bmQ6IDA7XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC40KTtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblxyXG5cdFx0Jjpmb2N1cyB7XHJcblx0XHRcdG91dGxpbmU6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnNsaWNrLWFjdGl2ZSxcclxuXHQuc2xpY2stYWN0aXZlLWl0ZW0ge1xyXG5cdFx0YnV0dG9uIHtcclxuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmhlcm8tc2VjdGlvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg3MDApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLy8gbWluLWhlaWdodDogcmVtLWNhbGMoODc1KTtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gIH1cclxufVxyXG52aWRlby52aWQtYmcge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogLTEwO1xyXG59XHJcbi5oZXJvLWdhbGxlcnkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICBsaW5lLWhlaWdodDogMS4zMztcclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE2MTcxOTtcclxuICAgIG9wYWNpdHk6IDAuNDtcclxuICB9XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcclxuICB9XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgdG9wOiA2MHB4O1xyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnRuIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpY2stc2xpZGUge1xyXG4gICAgQGluY2x1ZGUgYmctc3RyZXRjaDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgbWluLWhlaWdodDogOTB2aDtcclxuICAgIHBhZGRpbmc6IGNhbGMoNzBweCArIDYuNXZ3KSAwIGNhbGMoMzVweCArIDkuMnZ3KTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDcwMCk7XHJcbiAgICAgIHBhZGRpbmc6IGNhbGMoMTQwcHggKyA2LjV2dykgMCBjYWxjKDEwMHB4ICsgNy4xdncpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoODc1KTtcclxuICAgICAgcGFkZGluZzogY2FsYygyMDBweCArIDYuNXZ3KSAwIGNhbGMoMTAwcHggKyA3LjF2dyk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggKyA2MHB4KTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgYWJzb2x1dGU7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgICAgdG9wOiAxMDElO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICAgICAgaGVpZ2h0OiA5LjJ2dztcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzEzLnBuZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpY2stbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBbY2xhc3NePVwiYnRuLW91dGxpbmUtXCJdLFxyXG4gIFtjbGFzcyo9XCIgYnRuLW91dGxpbmUtXCJdIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgfVxyXG5cclxuICAuc2xpY2stZG90cyB7XHJcbiAgICBAZXh0ZW5kICVsaXN0cmVzZXQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDEyKTtcclxuXHJcbiAgICAgICYuc2xpY2stYWN0aXZlIHtcclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDgpO1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgd2lkdGgpO1xyXG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcclxuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQpO1xyXG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygxMCk7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IDA7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbmZvO1xyXG4gICAgICBvcGFjaXR5OiAwLjM7XHJcblxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZ2FsbGVyeS1kb3RzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDk5OTtcclxuICAgIHRvcDogMTAwcHg7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMDY0KTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjApO1xyXG4gICAgdG9wOiBjYWxjKDE1MXB4ICsgNi41dncpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNDk3KTtcclxuICAgICAgdG9wOiBjYWxjKDIxMXB4ICsgNi41dncpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDM3KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTA2NCk7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgNjApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNDk3KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zZWFyY2hfcGFnZV9oZXJve1xyXG4gIG1hcmdpbi10b3A6IDE3NXB4O1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICBtYXJnaW4tdG9wOiA3NXB4O1xyXG4gIH1cclxufVxyXG4iLCIuaW50cm8tc2VjdGlvbiB7XHJcblx0QGluY2x1ZGUgYmctc3RyZXRjaDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Y29sb3I6ICR3aGl0ZTtcclxuXHR6LWluZGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblxyXG5cdCsgLmJ0biB7XHJcblx0XHQrIFtjbGFzc149XCJzZWN0aW9uXCJdLFxyXG5cdFx0KyBbY2xhc3MqPVwiIHNlY3Rpb25cIl0ge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0XHRwYWRkaW5nLXRvcDogMTA3cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIGFic29sdXRlO1xyXG5cdFx0Y29udGVudDonJztcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIsIDIzLCAyNSwgMC40KTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxuXHJcblx0Ky5idG4ge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xyXG5cdFx0dG9wOiByZW0tY2FsYyg2MDApO1xyXG5cdFx0ei1pbmRleDogMTA7XHJcblx0XHRtaW4td2lkdGg6IHJlbS1jYWxjKDE1NSk7XHJcblx0XHRib3gtc2hhZG93OiByZW0tY2FsYygwIDAgMjApIHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHR9XHJcblxyXG5cdC5jb250YWluZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg0MCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuaGVhZGluZy1ob2xkZXIge1xyXG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYyg5NSk7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHJcblx0XHRoMSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDUpO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNjApO1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDgwKTtcclxuXHRcdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAyNSk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEwMCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuaDEge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aDEge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA5MDA7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDAuN3JlbTtcclxuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg1MCk7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDY1KTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoODApO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmludHJvLWlubmVyIHtcclxuXHRwYWRkaW5nOiBjYWxjKDcwcHggKyA2LjV2dykgMCByZW0tY2FsYygzNSk7XHJcblx0bWluLWhlaWdodDogY2FsYyg2MDBweCAtIDI3cHgpO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRtaW4taGVpZ2h0OiByZW0tY2FsYyg3MDApO1xyXG5cdFx0cGFkZGluZzogY2FsYyg1MHB4ICsgNi41dncpIDAgMTk1cHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRtaW4taGVpZ2h0OiByZW0tY2FsYyg3NTApO1xyXG5cdH1cclxufVxyXG4iLCIuZmVhdHVyZS1zZWN0aW9uIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoNDAgMCk7XHJcbiAgei1pbmRleDogMTtcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIG1hcmdpbjogLTcuMXZ3IDAgMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICB0b3A6IDElO1xyXG4gICAgICBoZWlnaHQ6IDcuMXZ3O1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzA3LnBuZyk7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmVhdHVyZXMtaG9sZGVyLFxyXG4uZmVhdHVyZXMtaG9sZGVyLXNlY29uZGFyeSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuLmZlYXR1cmVzLWhvbGRlciB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIG1hcmdpbi10b3A6IC0zLjN2dztcclxuICB9XHJcbn1cclxuXHJcbltjbGFzc149XCJmZWF0dXJlcy1ob2xkZXJcIl0gW2NsYXNzKj1cIiBmZWF0dXJlcy1ob2xkZXJcIl0ge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTUpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMTUpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0zNSk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0zNSk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmVhdHVyZXMtaG9sZGVyLXNlY29uZGFyeSB7XHJcbiAgbWF4LXdpZHRoOiByZW0tY2FsYyg5MDApO1xyXG4gIG1heC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTAwKTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjUpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMzUpO1xyXG4gIH1cclxuXHJcbiAgLmZlYXR1cmUtdGl0bGUge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgdmlzaWJpbGl0eSk7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiByZW0tY2FsYygxMCk7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgei1pbmRleDogMTA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnRuIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDIyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlLWlubmVyIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgLmZlYXR1cmUtdGl0bGUge1xyXG4gICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuICAgIH1cclxuXHJcbiAgICAuZmVhdHVyZXMtaG9sZGVyLXNlY29uZGFyeSAmIHtcclxuICAgICAgLmZlYXR1cmUtdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mZWF0dXJlLWljb24ge1xyXG4gICAgICAmLmljb24tZGV2ZWxvcG1lbnQge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMikgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMyUsIC0xNiUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5pY29uLXN1cnZleWluZyB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgyLjUpIHRyYW5zbGF0ZSgyJSwgMjQlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaWNvbi11dGlsaXRpZXMge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KSByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGUoMCwgLTE3JSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmljb24td29ya3Mge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KSB0cmFuc2xhdGUoMCwgMTIlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZlYXR1cmUtaXRlbSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIzKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMzMpO1xyXG4gICAgZmxleDogMSAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xyXG4gICAgbWluLXdpZHRoOiByZW0tY2FsYygxODApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgbWluLXdpZHRoOiByZW0tY2FsYygyNjApO1xyXG4gIH1cclxuXHJcbiAgJi5wb3B1cC1hY3RpdmUge1xyXG4gICAgLnBvcHVwIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZlYXR1cmVzLWhvbGRlci1zZWNvbmRhcnkgJiB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDM5IDEwKTtcclxuICAgICAgbWluLXdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZlYXR1cmVzLWhvbGRlciAmIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE1KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzUpO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygzNSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucG9wdXAge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgdmlzaWJpbGl0eSk7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwMCk7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCAwIDEwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDAgMCAxMjApO1xyXG4gICAgICByaWdodDogcmVtLWNhbGMoMTApO1xyXG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDAwKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB3aWR0aDogcmVtLWNhbGMoOTk5KTtcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDk5OSk7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2FybmluZztcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDg1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxMDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxMyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGluay1hcnJvdyB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBvcHVwLWlubmVyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA1KTtcclxuICB9XHJcblxyXG4gIGgyIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobWQpIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmZlYXR1cmVzLWhvbGRlci1zZWNvbmRhcnkgJiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOm50aC1vZi10eXBlKDQpLFxyXG4gICY6bnRoLW9mLXR5cGUoNSksXHJcbiAgJjpudGgtb2YtdHlwZSg2KSB7XHJcbiAgICAucG9wdXAge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAwKTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwMCAwIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMjAgMCAwKTtcclxuICAgICAgICBsZWZ0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5pY29ucy01e1xyXG4gICAgJjpudGgtb2YtdHlwZSgzKXsgICAgICBcclxuICAgICAgLnBvcHVwIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDMwMHB4XHJcbiAgICAgICAgfSAgICBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZlYXR1cmUtaWNvbiB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICB3aWR0aDogcmVtLWNhbGMoODYpO1xyXG4gIGhlaWdodDogcmVtLWNhbGMoODYpO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICB3aWR0aDogcmVtLWNhbGMoMTIwKTtcclxuICAgIGhlaWdodDogcmVtLWNhbGMoMTIwKTtcclxuICB9XHJcblxyXG4gICYuaWNvbi1kZXZlbG9wbWVudCB7XHJcbiAgICBpbWcge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDMlLCAtMTYlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXN1cnZleWluZyB7XHJcbiAgICBpbWcge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIuNSkgdHJhbnNsYXRlKDIlLCAyNCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmljb24tdXRpbGl0aWVzIHtcclxuICAgIGltZyB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KSByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGUoMCwgLTE3JSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaWNvbi13b3JrcyB7XHJcbiAgICBpbWcge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSkgdHJhbnNsYXRlKDAsIDEyJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIH1cclxufVxyXG5cclxuLmZlYXR1cmUtYm9keSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICBmbGV4OiAxIDA7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDAgMCAyNSk7XHJcbiAgfVxyXG59XHJcbiIsIi5kZXNjLXNlY3Rpb24ge1xyXG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk7XHJcblx0cGFkZGluZzogcmVtLWNhbGMoMCAwIDUwKTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0cGFkZGluZzogcmVtLWNhbGMoODAgMCk7XHJcblx0fVxyXG5cclxuXHRoMSB7XHJcblx0XHRmb250OiA0LjYyNXJlbS8uOTUgJGZvbnQtZmFtaWx5LXRoaXJkO1xyXG5cdFx0bWFyZ2luOiByZW0tY2FsYygwIDAgMTQpO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg4MCk7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIwKTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYwKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IC4wMmVtO1xyXG5cdH1cclxufVxyXG5cclxuLmRlc2MtaG9sZGVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdGxlZnQ6IHJlbS1jYWxjKC0yMCk7XHJcblx0XHRcdHJpZ2h0OiByZW0tY2FsYygtMjApO1xyXG5cdFx0XHR0b3A6IHJlbS1jYWxjKDI4MCk7XHJcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoMzc1KTtcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMyUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgNDclKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5kZXNjLWxpc3QtaW1hZ2VzIHtcclxuXHRAZXh0ZW5kICVsaXN0cmVzZXQ7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR3aWR0aDogcmVtLWNhbGMoNTMxKTtcclxuXHRoZWlnaHQ6IHJlbS1jYWxjKDUzMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdG1hcmdpbjogMCAwIHJlbS1jYWxjKC0yMTApO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHR3aWR0aDogcmVtLWNhbGMoMzgwKTtcclxuXHRcdGhlaWdodDogcmVtLWNhbGMoMzgwKTtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAzMCAwIDApO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0d2lkdGg6IHJlbS1jYWxjKDUwMCk7XHJcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDUwMCk7XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgODAgMCAwKTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuXHRcdHdpZHRoOiByZW0tY2FsYyg1ODYpO1xyXG5cdFx0aGVpZ2h0OiByZW0tY2FsYyg1ODYpO1xyXG5cdFx0bWFyZ2luOiByZW0tY2FsYygwIDE1NSAwIDApO1xyXG5cdH1cclxuXHJcblx0LmltYWdlLWl0ZW0ge1xyXG5cdFx0QGluY2x1ZGUgYW5pbWF0ZShvcGFjaXR5IHZpc2liaWxpdHkpO1xyXG5cdFx0QGluY2x1ZGUgYWJzb2x1dGU7XHJcblx0XHRAaW5jbHVkZSBiZy1zdHJldGNoO1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGFic29sdXRlO1xyXG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRcdFx0ei1pbmRleDogLTE7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNyk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZGVzYy10ZXh0IHtcclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0ZmxleDogMSAwO1xyXG5cdH1cclxufSIsIi5zcG90bGlnaHQtc2VjdGlvbiB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlLXNlY29uZGFyeTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0bWFyZ2luOiAwIDAgLTUuNXZ3O1xyXG5cdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHR9XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRncmF5LTMwMDtcclxuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSA0LjV2dyk7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdHotaW5kZXg6IC0yO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRoZWlnaHQ6IDV2dztcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbWctYmcxMC5wbmcpO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XHJcblx0XHRcdHotaW5kZXg6IDI7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG5cdFx0XHRoZWlnaHQ6IDR2dztcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCsgKiB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiA2LjV2dyAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDQuNnZ3ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRoMSB7XHJcblx0XHRjb2xvcjogJHByaW1hcnk7XHJcblx0XHRmb250LXdlaWdodDogOTAwO1xyXG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0MCk7XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDYwKTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoODApO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnN1YnRpdGxlIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblxyXG5cdFx0Ji5oMyB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwIHtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAuMDJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi5zcG90bGlnaHQtaW5uZXIge1xyXG5cdEBpbmNsdWRlIGJnLXN0cmV0Y2goJGFsaWduWDogYm90dG9tLCAkYWxpZ25ZOiBjZW50ZXIpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHRwYWRkaW5nOiByZW0tY2FsYyg0MiAwIDUwKTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdHBhZGRpbmc6IDQuNXZ3IDAgNi41dnc7XHJcblx0XHRtaW4taGVpZ2h0OiA0MHZ3O1xyXG5cdH1cclxufVxyXG5cclxuLmJnLXNwb3RsaWdodCB7XHJcblx0QGluY2x1ZGUgYWJzb2x1dGU7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0ei1pbmRleDogLTE7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRjb250ZW50OicnO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAjMTYxNzE5O1xyXG5cdFx0XHRoZWlnaHQ6IGNhbGMoMTAwJSAtIDQuNXZ3KTtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0ei1pbmRleDogLTI7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRzcGFuIHtcclxuXHRcdEBpbmNsdWRlIGFic29sdXRlO1xyXG5cdFx0QGluY2x1ZGUgYmctc3RyZXRjaCgkYWxpZ25YOiBib3R0b20sICRhbGlnblk6IGNlbnRlcik7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNwb3RsaWdodC1pbWFnZSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAzNSk7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRvYmplY3QtZml0OiBjb3ZlcjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAyN3Z3O1xyXG5cdFx0aGVpZ2h0OiAyN3Z3O1xyXG5cdFx0Ym90dG9tOiA2LjV2dztcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRyaWdodDogOS41dnc7XHJcblx0XHRib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZztcclxuXHR9XHJcblxyXG5cdGltZyB7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNwb3RsaWdodC10ZXh0IHtcclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg1MCA1MCA1MCAwKTtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAyN3Z3IC0gOS41dncpO1xyXG5cclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNzUwKTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuZXhwZXJ0aXNlLXNlY3Rpb24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoNTAgMCAzMCk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxMDgwKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDEyODApO1xyXG4gIH1cclxufVxyXG5cclxuLmV4cGVydGlzZS1pbWFnZS1saXN0IHtcclxuICBAZXh0ZW5kICVsaXN0cmVzZXQ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogcmVtLWNhbGMoMTIyNSk7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCk7XHJcbiAgdG9wOiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIG9wYWNpdHk6IDAuNTtcclxuICB6LWluZGV4OiAtMTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgbGkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgdG9wOiAxJTtcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgIHRvcDogMjQlO1xyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgYm90dG9tOiAyOSU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoNCkge1xyXG4gICAgICBib3R0b206IDElO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmV4cGVydGlzZS1ob2xkZXItc2Vjb25kYXJ5IHtcclxuICAuc2xpY2stdHJhY2ssXHJcbiAgLnNsaWNrLWxpc3Qge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5bY2xhc3NePVwiZXhwZXJ0aXNlLWhvbGRlclwiXSxcclxuW2NsYXNzKj1cImV4cGVydGlzZS1ob2xkZXJcIl0ge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMTApO1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0xMCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTQwKTtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNDApO1xyXG4gIH1cclxuXHJcbiAgW2NsYXNzXj1cImNvbC1cIl0sXHJcbiAgW2NsYXNzKj1cIiBjb2wtXCJdIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmV4cGVydGlzZS1ob2xkZXItc2Vjb25kYXJ5IHtcclxuICBbY2xhc3NePVwiY29sLVwiXSxcclxuICBbY2xhc3MqPVwiIGNvbC1cIl0ge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpY2stbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMCAtNDApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWNrLXNsaWRlIHtcclxuICAgIHdpZHRoOiByZW0tY2FsYygyNzApO1xyXG4gICAgd2lkdGg6IHJlbS1jYWxjKDI3MCk7XHJcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDMyMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICB3aWR0aDogcmVtLWNhbGMoMzIwKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg0MDApO1xyXG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZXhwZXJ0aXNlLWJveCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgZm9udDogMXJlbS8xLjUgJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG4gIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDM3KTtcclxuICB6LWluZGV4OiAxO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgbWluLWhlaWdodDogY2FsYyh2YXIoLS12aCwgMXZoKSAqIDEwMCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDYxNyk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCA0MCk7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA0Mik7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNTAgNjUpO1xyXG4gIH1cclxuXHJcbiAgJi5leHBlcnRpc2UtYm94LWNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgICB0b3A6IDk5JTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIGhlaWdodDogOS4ydnc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbWctYmcxNC5wbmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcclxuICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgLmV4cGVydGlzZS1pbWFnZSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZXhwZXJ0aXNlLWJvZHkge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUob3BhY2l0eSB2aXNpYmlsaXR5KTtcclxuICAgIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxLCAxMDQsIDE4OCwgMC4yKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgxLCAxMDQsIDE4OCwgMC4zKTtcclxuICAgIH1cclxuXHJcbiAgICAuZXhwZXJ0aXNlLWhvbGRlci1zZWNvbmRhcnkgJiB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZXhwZXJ0aXNlLWhvbGRlci1zZWNvbmRhcnkgJiB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjIwKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMTU1KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZXhwZXJ0aXNlLWJveC1sZyB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCAzMCA1MCAzOSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRpbmZvO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIC5leHBlcnRpc2UtaG9sZGVyLXNlY29uZGFyeSAmIHtcclxuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMzY1KTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg1MTApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmV4cGVydGlzZS1ib2R5IHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZXhwZXJ0aXNlLWJveC1tZCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIGZsZXg6IDEgMDtcclxuICAgIH1cclxuXHJcbiAgICAuZXhwZXJ0aXNlLWhvbGRlci1zZWNvbmRhcnkgJiB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDI0NSk7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMzUwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNtYWxsIHtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XHJcbiAgICB9XHJcblxyXG4gICAgLmV4cGVydGlzZS1ob2xkZXItc2Vjb25kYXJ5ICYge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgZm9udDogNzAwIDJyZW0vMS4yNiAkZm9udC1mYW1pbHktYmFzZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM3KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjApO1xyXG4gICAgfVxyXG5cclxuICAgIC5leHBlcnRpc2UtaG9sZGVyLXNlY29uZGFyeSAmIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgfVxyXG4gIGgzIHtcclxuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDEwKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmxpbmstYXJyb3cge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyNSk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcclxuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdWJ0aXRsZSB7XHJcbiAgICBmb250OiAyLjVyZW0vMSAkZm9udC1mYW1pbHktdGhpcmQ7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyMCk7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDQ1KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg4MCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmV4cGVydGlzZS1ob2xkZXItc2Vjb25kYXJ5ICYge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAzMCk7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg1MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDY2KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmV4cGVydGlzZS1ib2R5IHtcclxuICBAaW5jbHVkZSBhbmltYXRlKHRyYW5zZm9ybSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgfVxyXG5cclxuICAuZXhwZXJ0aXNlLWhvbGRlci1zZWNvbmRhcnkgJiB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZXhwZXJ0aXNlLWltYWdlIHtcclxuICBAaW5jbHVkZSBhbmltYXRlKHRyYW5zZm9ybSk7XHJcbiAgQGluY2x1ZGUgYWJzb2x1dGU7XHJcbiAgQGluY2x1ZGUgYmctc3RyZXRjaDtcclxuICB6LWluZGV4OiAtMTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gIC5leHBlcnRpc2UtaG9sZGVyLXNlY29uZGFyeSAmIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYWJvdXQtc2VjdGlvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQ6ICRzZWNvbmRhcnk7XHJcbiAgei1pbmRleDogMTtcclxuICBwYWRkaW5nOiAwIDAgMTEuM3Z3O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgbWFyZ2luLXRvcDogMTEuM3Z3O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNTAgMCkgY2FsYyg1LjN2dyArIDc1cHgpO1xyXG4gIH1cclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgei1pbmRleDogLTE7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgdG9wOiAtMTEuM3Z3O1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzExLnBuZyk7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcclxuICAgICAgaGVpZ2h0OiAxMS4zdnc7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbWctYmcxMS5zdmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgYm90dG9tOiByZW0tY2FsYygtMik7XHJcbiAgICBoZWlnaHQ6IDExLjN2dztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaW1nLWJnMTIucG5nKTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaW1nLWJnMTAucG5nKTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgaGVpZ2h0OiA1LjN2dztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6bGFzdC1vZi10eXBlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IC03LjR2dztcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IC01Ljd2dztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYWJvdXQtc2Vjb25kYXJ5IHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xyXG4gICAgfVxyXG5cclxuICAgIGJyIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmxpc3RzIHtcclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDAuN3JlbSAwIDAuOXJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5hYm91dC1nYWxsZXJ5IHtcclxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDUwKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgNjApO1xyXG4gIH1cclxuXHJcbiAgLmJsb2NrcXVvdGUge1xyXG4gICAgcCB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGg0IHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTApO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMjUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWNrLWFycm93IHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgdG9wOiAzMyU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIlxyXG4uanMtaXNvdG9wZS1ncmlkIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmpzLWlzb3RvcGUtaXRlbSB7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0Ji5oaWRkZW57XHJcblx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHRcdFx0d2lkdGg6IDBweCFpbXBvcnRhbnQ7XHJcblx0XHRcdGhlaWdodDogMHB4IWltcG9ydGFudDtcclxuXHRcdFx0bWFyZ2luOjBweCFpbXBvcnRhbnQ7XHJcblx0XHRcdHBhZGRpbmc6IDBweCFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxufSIsIi5pdGVtcy1ob2xkZXIsXHJcbi5pdGVtcy1ob2xkZXItc2Vjb25kYXJ5IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XHJcbiAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMTEpO1xyXG4gIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTEpO1xyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICBhIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gIH1cclxuICAuaXRlbSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMSk7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDExKTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS1ob2xkZXIge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBtYXJnaW46IDAgYXV0byByZW0tY2FsYygyMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzdHJvbmcge1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudmlkZW8tbGluayB7XHJcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYS5pdGVtIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG5cclxuICAgICAgLnRleHQtbXV0ZWQge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pbWFnZS1ob2xkZXIge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaXRlbXMtaG9sZGVyIHtcclxuICAuaXRlbSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgICB3aWR0aDogMjUlO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS1ob2xkZXIge1xyXG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI4MCk7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMzUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMzApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNDUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnJvdW5kZWQtY2lyY2xlIHtcclxuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjgwKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMzNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSB7XHJcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjMwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzNDUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5pdGVtcy1ob2xkZXItc2Vjb25kYXJ5IHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC01MCk7XHJcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTUwKTtcclxuICB9XHJcblxyXG4gIC5pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgdGV4dC1hbGlnbi1sYXN0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MCk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDUwKTtcclxuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNTApO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS1ob2xkZXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiA1M3Z3O1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyNnZ3O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMTApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuaW5mby1zZWN0aW9uIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMTtcclxuXHRwYWRkaW5nOiAwIDAgOS4ydnc7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcblx0fVxyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRjb250ZW50OicnO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG5cdFx0dG9wOiA5OSU7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpIHJvdGF0ZSgxODBkZWcpO1xyXG5cdFx0aGVpZ2h0OiA5LjJ2dztcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaW1nLWJnMTQucG5nKTtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRjb250ZW50OicnO1xyXG5cdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcblx0XHRcdHRvcDogOC4ydnc7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcblx0XHRcdGhlaWdodDogOS4ydnc7XHJcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaW1nLWJnMTQucG5nKTtcclxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tO1xyXG5cdFx0XHR6LWluZGV4OiAtMTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaW5mby1zZWNvbmRhcnkge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiA3LjJ2dztcclxuXHRcdH1cclxuXHJcblx0XHQuaW5mby1pbm5lciB7XHJcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDgwIDAgNzUpO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwIDAgMCk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0Y29udGVudDonJztcclxuXHRcdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuXHRcdFx0XHRcdHRvcDogLTEuNXZ3O1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuXHRcdFx0XHRcdGhlaWdodDogOS4ydnc7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzEzLnBuZyk7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XHJcblx0XHRcdFx0XHR6LWluZGV4OiAtMTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5mZWF0dXJlcy1ob2xkZXItc2Vjb25kYXJ5IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKC04Mik7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRcdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuXHRcdFx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDkuMnZ3O1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzEzLnBuZyk7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC5wb3B1cHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQrLm1hcC1zZWN0aW9uIHtcclxuXHRcdG1hcmdpbi10b3A6IC05JTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IC03JTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IC00JTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5oZWFkaW5nLWhvbGRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0bWFyZ2luOiByZW0tY2FsYygwIDAgNDApO1xyXG5cdFx0fVxyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMS43NTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4zNTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmZlYXR1cmVzLWhvbGRlci1zZWNvbmRhcnkge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRcdG1hcmdpbjogcmVtLWNhbGMoLTYwIC0yMCA1MCk7XHJcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQ1IDIwIDE3KTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTYwKTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmluZm8taW5uZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kOiAkaW5mbztcclxuXHRwYWRkaW5nOiByZW0tY2FsYyg2MCAwIDApO1xyXG59IiwiLmZpbHRlci1zZWN0aW9uIHtcclxuXHRwYWRkaW5nOiByZW0tY2FsYyg4NSAwKTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0cGFkZGluZzogcmVtLWNhbGMoODAgMCA4NSk7XHJcblx0fVxyXG5cclxuXHRoMSB7XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCA0Mik7XHJcblx0fVxyXG5cclxuXHQuY2FyZC1zZWNvbmRhcnkge1xyXG5cdFx0LmxpbmstaWNvbiB7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5maWx0ZXJzLWJ1dHRvbnMge1xyXG5cdG1hcmdpbjogcmVtLWNhbGMoMCAtMTAgMTIpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xyXG5cdH1cclxuXHJcblx0YnV0dG9uIHtcclxuXHRcdEBpbmNsdWRlIGFuaW1hdGUoYmFja2dyb3VuZCBib3JkZXIgY29sb3IgYm94LXNoYWRvdyk7XHJcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcclxuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZztcclxuXHRcdGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGdyYXktODAwO1xyXG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdFx0bWFyZ2luOiByZW0tY2FsYygwIDEwIDI4KTtcclxuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDUgMjApO1xyXG5cdFx0bWF4LXdpZHRoOiByZW0tY2FsYygzMDUpO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDM3NnB4KSB7XHJcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNTAwKTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xyXG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0ZmxleDogMSAwO1xyXG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDI2NSk7XHJcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEyIDQwKTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRcdGZsZXg6IGluaGVyaXQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmOmZvY3VzIHtcclxuXHRcdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeTtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5O1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYuYWN0aXZlIHtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5maWx0ZXItZm9ybSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0bWFyZ2luOiByZW0tY2FsYygwIDAgMjApO1xyXG5cdH1cclxuXHJcblx0aDUge1xyXG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlLXNlY29uZGFyeTtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDkpO1xyXG5cdH1cclxuXHJcblx0LmZvcm0tY2hlY2sge1xyXG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMCAwIDIyKTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuZm9ybS1jaGVjay1pbnB1dCB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XHJcblx0fVxyXG5cclxuXHQuZm9ybS1jaGVjay1sYWJlbCB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyOCk7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMiAxMSk7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6ICRzZWNvbmRhcnk7XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZmlsdGVyLWZvcm0taXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1hcmdpbjogcmVtLWNhbGMoMCAwIDIwKTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzIpO1xyXG5cdH1cclxuXHJcblx0Ji5wb3B1cC1hY3RpdmUge1xyXG5cdFx0Lm9wZW4ge1xyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlWCgxODBkZWcpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQub3BlbiB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBhZGRpbmc6IDEwcHg7XHJcblx0XHRmb250OiA2MDAgMXJlbS8xLjMgJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XHJcblx0XHRib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRncmF5LTcwMDtcclxuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYgMzUgNiAxMSk7XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRtaW4td2lkdGg6IHJlbS1jYWxjKDE2MCk7XHJcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoMzIwKTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0QGluY2x1ZGUgYW5pbWF0ZSh0cmFuc2Zvcm0pO1xyXG5cdFx0XHRAaW5jbHVkZSBpY29tb29uKCRjb250ZW50OiBcIlxcZTkwNFwiLCAkZm9udC1zaXplOiAxLjI1cmVtKSA7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDUpO1xyXG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdH1cclxufVxyXG5cclxuLmZpbHRlci1kcm9wIHtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgNDgsIDg3LCAuOTUpO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0ei1pbmRleDogOTk5O1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAxMDB2dztcclxuXHRcdGhlaWdodDogMTAwdmg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcclxuXHRcdGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGdyYXktNzAwO1xyXG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHRvcDogMTAwJTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWluLXdpZHRoOiByZW0tY2FsYygzMDApO1xyXG5cdFx0ei1pbmRleDogMjA7XHJcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg0IDApO1xyXG5cdFx0bWF4LWhlaWdodDogcmVtLWNhbGMoMzAwKTtcclxuXHR9XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcC1ob2xkZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0cGFkZGluZzogcmVtLWNhbGMoNDAgNDAgNjApO1xyXG5cdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjBweCk7XHJcblx0XHRoZWlnaHQ6IGNhbGModmFyKC0tdmgsIDF2aCkgKiAxMDAgLSA2MHB4KTtcclxuXHRcdG92ZXJmbG93OiBhdXRvO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGluZy1maWx0ZXItZHJvcCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwIDQwIDApO1xyXG5cdH1cclxuXHJcblx0aDUge1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR9XHJcbn1cclxuXHJcbi5jbG9zZS1kcm9wIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiByZW0tY2FsYygyMCk7XHJcblx0cmlnaHQ6IHJlbS1jYWxjKDMwKTtcclxuXHRmb250LXNpemU6IHJlbS1jYWxjKDQ1KTtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRjb2xvcjogJHNlY29uZGFyeTtcclxuXHR9XHJcbn1cclxuIiwiLm1hcC1zZWN0aW9uIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogNTtcclxuXHRtYXJnaW46IC02JSAwIDA7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdG1hcmdpbjogLTQlIDA7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRsZWZ0OiByZW0tY2FsYygtNSk7XHJcblx0XHRyaWdodDogcmVtLWNhbGMoLTUpO1xyXG5cdFx0Y2xpcC1wYXRoOiB1cmwoI215LWNsaXAtcGF0aC1tb2JpbGUpO1xyXG5cdFx0dG9wOiByZW0tY2FsYygtMTApO1xyXG5cdFx0Ym90dG9tOiByZW0tY2FsYygtMTApO1xyXG5cdFx0YmFja2dyb3VuZDogJGJvZHktYmc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdGNsaXAtcGF0aDogdXJsKCNteS1jbGlwLXBhdGgpO1xyXG5cdFx0XHR0b3A6IHJlbS1jYWxjKC0yMCk7XHJcblx0XHRcdGJvdHRvbTogcmVtLWNhbGMoLTIwKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuYWN0aXZlLXBvcHVwIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHR6LWluZGV4OiAyMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQrIFtjbGFzcyo9XCJzZWN0aW9uXCJdLFxyXG5cdCsgW2NsYXNzXj1cInNlY3Rpb25cIl0ge1xyXG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDUyKTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiBjYWxjKDQlICsgMTAwcHgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IGNhbGMoNCUgKyAyMDVweCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubWFwLWJsb2NrIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ly9oZWlnaHQ6IDE2NXZ3O1xyXG5cdGhlaWdodDogMTI2dnc7XHJcblx0bWFyZ2luOiAwIHJlbS1jYWxjKC01KTtcclxuXHRjbGlwLXBhdGg6IHVybCgjbXktY2xpcC1wYXRoLW1vYmlsZSk7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdGhlaWdodDogNTN2dztcclxuXHRcdGNsaXAtcGF0aDogdXJsKCNteS1jbGlwLXBhdGgpO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdEBpbmNsdWRlIGFuaW1hdGUob3BhY2l0eSB2aXNpYmlsaXR5KTtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRjb250ZW50OicnO1xyXG5cdFx0XHRsZWZ0OiByZW0tY2FsYygtNSk7XHJcblx0XHRcdHJpZ2h0OiByZW0tY2FsYygtNSk7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyLCAyMywgMjUsIDAuNyk7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRcdGNsaXAtcGF0aDogdXJsKCNteS1jbGlwLXBhdGgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmFjdGl2ZS1wb3B1cCAmIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRjbGlwLXBhdGg6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubWFwLXBpbnMtaW1nIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAyMDUlO1xyXG5cdFx0bGVmdDogLTU4JTtcclxuXHRcdHRvcDogMTElO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRtYXgtd2lkdGg6IDY1LjUlO1xyXG5cdFx0XHRsZWZ0OiAxMSU7XHJcblx0XHRcdHRvcDogMTEuNSU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRpbWcge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRvYmplY3QtZml0OiBjb3ZlcjtcclxuXHR9XHJcbn1cclxuXHJcbi5tYXAtcGluIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdC8vIGJhY2tncm91bmQ6ICR3YXJuaW5nO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR6LWluZGV4OiA5OTk7XHJcblx0d2lkdGg6IDJ2dztcclxuXHRoZWlnaHQ6IDJ2dztcclxuXHR0b3A6IDI1JTtcclxuXHRsZWZ0OiA1JTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0dG9wOiAyMSU7XHJcblx0XHRsZWZ0OiAzMiU7XHJcblx0XHR3aWR0aDogLjY1dnc7XHJcblx0XHRoZWlnaHQ6IC42NXZ3O1xyXG5cdH1cclxuXHJcblx0LmFjdGl2ZS1wb3B1cCAmIHtcclxuXHRcdHotaW5kZXg6IDk5O1xyXG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgLjE1dncgcmdiYSgyNTUsMjU1LDI1NSwxKTtcclxuXHR9XHJcbn1cclxuXHJcbi5wb3B1cC1tYXAge1xyXG5cdEBpbmNsdWRlIGFuaW1hdGUob3BhY2l0eSB2aXNpYmlsaXR5KTtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0ei1pbmRleDogOTk7XHJcblx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdHdpZHRoOiAxMDB2dztcclxuXHRcdGhlaWdodDogMTAwdmg7XHJcblx0XHRvdmVyZmxvdy14OiBoaWRkZW47XHJcblx0XHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwLjd2dztcclxuXHRcdGxlZnQ6IDF2dztcclxuXHRcdHdpZHRoOiAyN3Z3O1xyXG5cdH1cclxuXHJcblx0LmFjdGl2ZS1wb3B1cCAmIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdH1cclxuXHJcblx0LmNsb3NlIHtcclxuXHRcdHdpZHRoOiByZW0tY2FsYygzMCk7XHJcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcclxuXHRcdGNvbG9yOiAkd2hpdGU7XHJcblx0XHRmb250LXdlaWdodDogbGlnaHRlcjtcclxuXHRcdHRvcDogcmVtLWNhbGMoNik7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogcmVtLWNhbGMoMTQpO1xyXG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg3NSk7XHJcblxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuY2FyZCB7XHJcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAuMDNlbTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxLjY7XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRmb250LXNpemU6IC44dnc7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjc7XHJcblx0XHR9XHJcblxyXG5cdFx0aDQge1xyXG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAzKTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IC44dnc7XHJcblx0XHRcdFx0bWFyZ2luOiAwIDAgMC4ydnc7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0cCB7XHJcblx0XHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDMwKTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHRtYXJnaW46IDAgMCAxLjV2dztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQubGluay1hcnJvdyB7XHJcblx0XHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRcdH1cclxuXHJcblx0XHQuY2FyZC1oZWFkZXIsXHJcblx0XHQuY2FyZC1ib2R5IHtcclxuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTUpO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IC44dnc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuY2FyZC1ib2R5IHtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMnZ3O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LmNhcmQtaGVhZGVyIHtcclxuXHRcdFx0QGluY2x1ZGUgYmctc3RyZXRjaDtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRtaW4taGVpZ2h0OiByZW0tY2FsYygyOTApO1xyXG5cdFx0XHR6LWluZGV4OiAxO1xyXG5cclxuXHRcdFx0aDQge1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdFx0bWluLWhlaWdodDogMTQuNXZ3O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBhYnNvbHV0ZTtcclxuXHRcdFx0XHRjb250ZW50OicnO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjIsIDIzLCAyNSwgMCkgMCUsICMxNjE3MTkgMTIwJSk7XHJcblx0XHRcdFx0ei1pbmRleDogLTE7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGgzIHtcclxuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcclxuXHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XHJcblxyXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4ydnc7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgMCAuNHZ3O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLm15LWNsaXAtcGF0aCxcclxuLm15LWNsaXAtcGF0aC1tb2JpbGUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR3aWR0aDogMDtcclxuXHRoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi5rZXktYm94IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogcmVtLWNhbGMoMjApO1xyXG5cdGJvdHRvbTogMjBweDtcclxuXHRtYXgtd2lkdGg6IHJlbS1jYWxjKDI1MCk7XHJcblx0YmFja2dyb3VuZDogcmdiYSgyMiwgMjMsIDI1LCAwLjUpO1xyXG5cdGNvbG9yOiAkd2hpdGU7XHJcblx0cGFkZGluZzogcmVtLWNhbGMoMTUgMjApO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdG1heC13aWR0aDogMTIuNXZ3O1xyXG5cdFx0Ym90dG9tOiA3LjN2dztcclxuXHRcdGxlZnQ6IDJ2dztcclxuXHRcdGZvbnQtc2l6ZTogLjh2dztcclxuXHRcdHBhZGRpbmc6IDF2dyAxLjY1dncgMXZ3IDF2dztcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0fVxyXG5cclxuXHRoNCB7XHJcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDE3KTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdG1hcmdpbjogMCAwIC42dnc7XHJcblx0XHRcdGZvbnQtc2l6ZTogMXZ3O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmtleS1saXN0IHtcclxuXHRAZXh0ZW5kICVsaXN0cmVzZXQ7XHJcblxyXG5cdGxpIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDAgMCAwIDI4KTtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDgpO1xyXG5cclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdHBhZGRpbmc6IDAgMCAwIDEuNHZ3O1xyXG5cdFx0XHRtYXJnaW46IDAgMCAuMnZ3O1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDEyKTtcclxuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYygzKTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0XHR3aWR0aDogLjY1dnc7XHJcblx0XHRcdFx0aGVpZ2h0OiAuMTV2dztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuYnVsbGV0IHtcclxuXHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYygxMik7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cclxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IC42NXZ3O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ji5idWxsZXQtd2FybmluZyB7XHJcblx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2FybmluZztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYuYnVsbGV0LXNlY29uZGFyeSB7XHJcblx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ji5idWxsZXQtaW5mbyB7XHJcblx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkaW5mbztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuY29udGVudC1zZWN0aW9uIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeTtcclxuICBwYWRkaW5nOiByZW0tY2FsYyg4MCAwIDI1KTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjUgMCk7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICA6bm90KGJ0bikge1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDIge1xyXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgICBtYXJnaW46IDAgMCAycmVtO1xyXG5cclxuICAgIGkge1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBsaW5lLWhlaWdodDogMS43NTtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGltZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDIwKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaW1hZ2UtaG9sZGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIzKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCk7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTIwKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oZWFkaW5nLWhvbGRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCAzMyk7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc29jaWFsLWxpc3Qge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYygtNTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250ZW50LXNlY29uZGFyeS1zZWN0aW9uIHtcclxuICBwYWRkaW5nOiByZW0tY2FsYyg4MCAwIDApO1xyXG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoODAgMCAyNSk7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyNSk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zdWJzY3JpYmUtc2VjdGlvbiB7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoNTUgMCA2NSk7XHJcblxyXG4gICsgLmZpbHRlci1zZWN0aW9uIHtcclxuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDEzKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmdhbGxlcnktc2VjdGlvbiB7XHJcblx0cGFkZGluZzogcmVtLWNhbGMoMTUgMCk7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzAgMCk7XHJcblx0fVxyXG5cclxuXHRoMSB7XHJcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDI3KTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xyXG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAyMCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZ2FsbGVyeS1ob2xkZXIge1xyXG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgLTIwKTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDM4IDAgMCk7XHJcblx0fVxyXG5cclxuXHQuZ2FsbGVyeS1tYWluIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDE1MHB4KTtcclxuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMCAyMCAwIDApO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5nYWxsZXJ5LWltYWdlIHtcclxuXHRcdFx0QGluY2x1ZGUgYmctc3RyZXRjaDtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHQvL2hlaWdodDogcmVtLWNhbGMoMjEwKTtcclxuXHRcdFx0cGFkZGluZy10b3A6IDU2LjI1JTtcclxuXHRcdFx0aGVpZ2h0OiAwO1xyXG5cdFx0XHQvLyBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0Ly8gXHRtYXJnaW46IHJlbS1jYWxjKDAgMCAxNSk7XHJcblx0XHRcdC8vIFx0cGFkZGluZy10b3A6IDU2LjI1JTtcclxuXHRcdFx0Ly8gfVxyXG5cclxuXHRcdFx0Ly8gQG1lZGlhIChtaW4td2lkdGg6IDM3NnB4KSB7XHJcblx0XHRcdC8vIFx0aGVpZ2h0OiByZW0tY2FsYygzMDApO1xyXG5cdFx0XHQvLyBcdHBhZGRpbmctdG9wOiA1Ni4yNSU7XHJcblx0XHRcdC8vIH1cclxuXHJcblx0XHRcdC8vIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0Ly8gXHRoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XHJcblx0XHRcdC8vIFx0cGFkZGluZy10b3A6IDU2LjI1JTtcclxuXHRcdFx0Ly8gfVxyXG5cdFx0fVxyXG5cclxuXHRcdC5zbGljay1kb3RzIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHRcdFx0Ym90dG9tOiByZW0tY2FsYygxMilcclxuXHRcdH1cclxuXHJcblx0XHQuc2xpY2stc2xpZGUge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdFx0XHQuZ2FsbGVyeS10ZXh0IHtcclxuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45KTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuZ2FsbGVyeS10ZXh0IHtcclxuXHRcdFx0cGFkZGluZzogMCAxNSU7XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0ZSh0cmFuc2Zvcm0gYmFja2dyb3VuZCk7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHdpZHRoOiA1MiU7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgxLCAxMDQsIDE4OCwgLjkpO1xyXG5cdFx0XHRcdHRvcDogMDtcclxuXHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMjApO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDEwMCUgLSAyMHB4KSk7XHJcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdG92ZXJmbG93OiBhdXRvO1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuXHRcdFx0XHR3aWR0aDogNDIlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRwIHtcclxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC50ZXh0LWlubmVyIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5nYWxsZXJ5LW5hdiB7XHJcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDE1MCk7XHJcblx0XHR9XHJcblxyXG5cdFx0LnNsaWNrLXNsaWRlIHtcclxuXHRcdFx0QGluY2x1ZGUgYmctc3RyZXRjaDtcclxuXHRcdFx0aGVpZ2h0OiA4NXB4O1xyXG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAyMCk7XHJcblx0XHR9XHJcblxyXG5cdFx0LnNsaWNrLWFycm93IHtcclxuXHRcdFx0QGluY2x1ZGUgYW5pbWF0ZShiYWNrZ3JvdW5kKTtcclxuXHRcdFx0d2lkdGg6IDE1MHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDg1cHg7XHJcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwKTtcclxuXHRcdFx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgLjYpO1xyXG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcclxuXHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLnNsaWNrLXByZXYge1xyXG5cdFx0XHRcdHRvcDogMDtcclxuXHJcblx0XHRcdFx0aSB7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLnNsaWNrLW5leHQge1xyXG5cdFx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblxyXG5cdFx0XHRcdGkge1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5wb3J0Zm9saW8taG9sZGVyIHtcclxuXHRtYXJnaW46IHJlbS1jYWxjKDAgMCA2MCk7XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAxNjApO1xyXG5cdH1cclxuXHJcblx0LnRpdGxlLXNtYWxsIHtcclxuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDMxKTtcclxuXHRcdGZvbnQtc2l6ZTogMXJlbTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5wb3J0Zm9saW8tcGFnaW5hdGlvbiB7XHJcblx0QGV4dGVuZCAlbGlzdHJlc2V0O1xyXG5cdEBpbmNsdWRlIGFuaW1hdGUoY29sb3IpO1xyXG5cdGZvbnQ6IDUwMCAxLjI1cmVtLzEuMzUgJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG5cdGNvbG9yOiAkZ3JheS02MDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcclxuXHR9XHJcblxyXG5cdGxpIHtcclxuXHRcdEBpbmNsdWRlIGFuaW1hdGUocGFkZGluZyk7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAxMCk7XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAyMik7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAaW5jbHVkZSBhbmltYXRlKHZpc2liaWxpdHkgb3BhY2l0eSB0cmFuc2Zvcm0pO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRcdHRvcDogcmVtLWNhbGMoMTMpO1xyXG5cdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRoZWlnaHQ6IDJweDtcclxuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDIwKTtcclxuXHRcdFx0YmFja2dyb3VuZDogY3VycmVudENvbG9yO1xyXG5cdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XHJcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVtLWNhbGMoLTI1KSk7XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdFx0dG9wOiByZW0tY2FsYygxOCk7XHJcblx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDI1KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuYWN0aXZlLFxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGNvbG9yOiAkYm9keS1jb2xvcjtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygyOCk7XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMyk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5wb3J0Zm9saW8tY29udGVudCB7XHJcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0ZmxleDogMSAwO1xyXG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMTUgMzAgMCAwKTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUwKTtcclxuXHR9XHJcbn1cclxuXHJcbi5wb3J0Zm9saW8tZ2FsbGVyeS1ob2xkZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0bWFyZ2luOiByZW0tY2FsYygwIC0yMCk7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHR3aWR0aDogcmVtLWNhbGMoNDUwKTtcclxuXHRcdGNvbG9yOiAkd2hpdGU7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHR3aWR0aDogcmVtLWNhbGMoNjUwKTtcclxuXHR9XHJcblxyXG5cdC5zbGljay10cmFjayxcclxuXHQuc2xpY2stbGlzdCB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc2xpY2stc2xpZGUge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDIwKTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHRtaW4taGVpZ2h0OiByZW0tY2FsYyg0NTApO1xyXG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg1MCk7XHJcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjcpO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDY1MCk7XHJcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDUwIDgwKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC50aXRsZS1zbWFsbCB7XHJcblx0XHRjb2xvcjogJGdyYXktMzAwO1xyXG5cdH1cclxuXHJcblx0LmdhbGxlcnktaW1hZ2Uge1xyXG5cdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0bWluLWhlaWdodDogcmVtLWNhbGMoMzM1KTtcclxuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNDApO1xyXG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAyMCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuZ2FsbGVyeS10ZXh0IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5zdWJ0aXRsZSB7XHJcblx0XHRjb2xvcjogaW5oZXJpdDtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRmb250OiA3MDAgLjc1cmVtLzEuMzUgJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IC4xZW07XHJcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgMCAxMyk7XHJcblx0fVxyXG5cclxuXHRoMyB7XHJcblx0XHRmb250OiA1MDAgMS43NXJlbS8xLjM1ICRmb250LWZhbWlseS1iYXNlLXNlY29uZGFyeTtcclxuXHR9XHJcblxyXG5cdC50YWItaXRlbSB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0Ji5hY3RpdmUge1xyXG5cdFx0XHRAaW5jbHVkZSBhYnNvbHV0ZTtcclxuXHRcdFx0QGluY2x1ZGUgYmctc3RyZXRjaDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAaW5jbHVkZSBhYnNvbHV0ZTtcclxuXHRcdFx0Y29udGVudDonJztcclxuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNyk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuaG92ZXItdGFic2V0IHtcclxuXHRcdEBleHRlbmQgJWxpc3RyZXNldDtcclxuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGxpIHtcclxuXHRcdFx0bWFyZ2luOiByZW0tY2FsYygwIDAgMTgpO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0XHRcdG1hcmdpbjogcmVtLWNhbGMoMCAwIDI1KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGEge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcblx0XHRcdFx0Y29sb3I6ICRncmF5LTUwMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpob3ZlcixcclxuXHRcdFx0Ji5hY3RpdmUge1xyXG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5zbGljay1kb3RzIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHRcdGJvdHRvbTogcmVtLWNhbGMoMTIpXHJcblx0fVxyXG59XHJcblxyXG4ucG9ydGZvbGlvLXBhZ2luYXRpb24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn0iLCIuZmVhdHVyZWQtc2VjdGlvbiB7XHJcbiAgLmZlYXR1cmVkX3NlY193cmFwIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAubGVmdF9iZyxcclxuICAgIC5yaWdodF9iZyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG4gICAgLmxlZnRfYmcge1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gICAgLnJpZ2h0X2JnIHtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5mZWF0dXJlZF9pbm5lcl93cmFwIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gIH1cclxuICAuZmVhdHVyZWQtaG9sZGVyIHtcclxuICAgIEBpbmNsdWRlIGJnLXN0cmV0Y2g7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRlKGNvbG9yKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICBtaW4taGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwKTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDApO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHotaW5kZXg6IDM7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA2NSk7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGluZm87XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3VidGl0bGUge1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDgpO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1pbm5lciB7XHJcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoODApO1xyXG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDApO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTMwKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTMwKTtcclxuICB9XHJcblxyXG4gIC8vICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gIC8vICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTUwKTtcclxuICAvLyAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtNTApO1xyXG4gIC8vICAgfVxyXG5cclxuICBbY2xhc3NePVwiY29sXCJdLFxyXG4gIFtjbGFzcyo9XCIgY29sXCJdIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDMwKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAvLyAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNTApO1xyXG4gICAgLy8gICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1MCk7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmVhdHVyZWQtYm94IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0MDApO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTApO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBtaW4taGVpZ2h0OiAzN3ZoO1xyXG4gIG1hcmdpbjogcmVtLWNhbGMoMCAwIDUwKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtaW4taGVpZ2h0OiAyMHZoO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTgpO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICAuYmctc3RyZXRjaCB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iZy1zdHJldGNoIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtKTtcclxuICAgIEBpbmNsdWRlIGJnLXN0cmV0Y2g7XHJcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxuXHJcbiAgLmZlYXR1cmVkLXRleHQge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTEgNDApO1xyXG4gIH1cclxuICBhIHtcclxuICAgIGNvbG9yOiBpbml0aWFsO1xyXG4gIH1cclxuICBoMyB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsImh0bWwge1xyXG4gIC8vc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcbn1cclxuYm9keSB7XHJcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gIH1cclxufVxyXG5cclxuI3dyYXBwZXIge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQ6ICRib2R5LWJnO1xyXG5cclxuICAuY29udGVudC1zZWN0aW9uIHtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyg3MHB4ICsgNi41dncpO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDY1cHggKyA2LjV2dyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250YWluZXIge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5ub3NjcmlwdCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDk5OTk5O1xyXG59XHJcblxyXG4uYWNjZXNzaWJpbGl0eSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IC0xMDAwMHB4O1xyXG4gIHRvcDogYXV0bztcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5hY2Nlc3NpYmlsaXR5OmZvY3VzIHtcclxuICBwb3NpdGlvbjogc3RhdGljO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuaW1nLFxyXG5zdmcge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5zZWN0aW9uIHtcclxuICBwYWRkaW5nOiByZW0tY2FsYyg2NSAwKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNTUgMCA4MCk7XHJcbiAgfVxyXG5cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTQwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuc2Vjb25kYXJ5LXNlY3Rpb24ge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjUgMCAyMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoODAgMCA5MCk7XHJcbiAgICB9XHJcblxyXG4gICAgaDEge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyNyk7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDUyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkaW5nLWhvbGRlciB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA3NSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgxIHtcclxuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA1KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcCB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zZXBhcmF0b3Ige1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHBhZGRpbmc6IHJlbS1jYWxjKDAgNSk7XHJcbn1cclxuXHJcbi5zdWJ0aXRsZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgY29sb3I6ICRzZWNvbmRhcnk7XHJcbiAgbWFyZ2luOiByZW0tY2FsYygwIDAgMjApO1xyXG59XHJcblxyXG4uaGVhZGluZy1ob2xkZXIge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA1NSk7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZS1zZWNvbmRhcnk7XHJcbiAgICBsaW5lLWhlaWdodDogMS43NTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYmctZGVjb3Ige1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gICAgQGluY2x1ZGUgYmctc3RyZXRjaCgkYWxpZ25YOiA1MCUsICRhbGlnblk6IGJvdHRvbSk7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbWctYmcxNS5wbmcpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxufVxyXG5cclxuLmpzLXRhYi1oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgbGVmdDogLTk5OTlweCAhaW1wb3J0YW50O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gIHRvcDogLTk5OTlweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZm9udC1mYW1pbHktc2Vjb25kYXJ5IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4uZXJyb3I0MDQsXHJcbi5wYWdlLXRlbXBsYXRlLWxvZ2luLFxyXG4ucGFnZS10ZW1wbGF0ZS1za3lsaW5lIHtcclxuICAjbWFpbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL3VuZGVyc3RyYXAvaW1hZ2VzL3NreWxpbmUucG5nKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuI21hcCB7XHJcbiAgaGVpZ2h0OiA5ODlweDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAvLzogNTR2aDtcclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICAmLmJsdWUge1xyXG4gICAgICBmaWx0ZXI6IGludmVydCgyNyUpIHNlcGlhKDQ2JSkgc2F0dXJhdGUoMzEyMyUpIGh1ZS1yb3RhdGUoMTkwZGVnKVxyXG4gICAgICAgIGJyaWdodG5lc3MoOTQlKSBjb250cmFzdCg5OSUpO1xyXG4gICAgfVxyXG4gICAgJi5yZWQge1xyXG4gICAgICBmaWx0ZXI6IGludmVydCgzOSUpIHNlcGlhKDkwJSkgc2F0dXJhdGUoMzAwNCUpIGh1ZS1yb3RhdGUoMzYwZGVnKVxyXG4gICAgICAgIGJyaWdodG5lc3MoOTglKSBjb250cmFzdCgxMDklKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNsZWdlbmQge1xyXG4gIGJhY2tncm91bmQ6ICMxNjE3MTk7XHJcbiAgcGFkZGluZzogMjBweDtcclxuICBtYXJnaW46IDAgMCA1MHB4IDIwcHg7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1zaXplOiAxNXB4O1xyXG4gIC8vICAgYm9yZGVyOiAzcHggc29saWQgIzAwMDtcclxuICBoMyB7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIHdpZHRoOiB1bnNldDtcclxuICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgfVxyXG4gIGRpdiB7XHJcbiAgICBtYXJnaW46IDAgMCA1cHggMDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDc4MXB4KSB7XHJcbiAgLndwLWJsb2NrLWNvbHVtbiB7XHJcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUpICFpbXBvcnRhbnQ7XHJcbiAgICBmbGV4LWdyb3c6IDA7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3ODFweCkge1xyXG4gIC53cC1ibG9jay1jb2x1bW4ge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICB9XHJcbn1cclxuLnBvcHVwLWxvZ28ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC0xMiU7XHJcbiAgbGVmdDogLTMwJTtcclxuICBoZWlnaHQ6IDMwJTtcclxuICB3aWR0aDogMjIlO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgIGxlZnQ6IDAlO1xyXG4gICAgdG9wOiAtMTUlO1xyXG4gIH1cclxufVxyXG5cclxuLmFic29sdXRlLWNlbnRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICBtYXJnaW46IGF1dG87XHJcbn1cclxuLmFzcGVjdC1yYXRpby13aWRlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgYXNwZWN0LXJhdGlvOiAxNi85O1xyXG4gIG9iamVjdC1maXQ6IGNvdmVyO1xyXG59XHJcbiIsImJvZHkuYWRtaW4tYmFyIHtcclxuICAjaGVhZGVyIHtcclxuICAgIHRvcDogNDZweCAhaW1wb3J0YW50O1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjkzNzVlbSkge1xyXG4gICAgICB0b3A6IDMycHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVyby1nYWxsZXJ5IHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHRvcDogNDZweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC45Mzc1ZW0pIHtcclxuICAgICAgICAgIHRvcDogMzJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jaGVhZGVyIHtcclxuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB6LWluZGV4OiAxMDA7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMTUpIDAgNy41dnc7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1LjV2dztcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzLjV2dztcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE4MzApO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRyb3Bkb3duIHtcclxuICAgIGEge1xyXG4gICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcclxuICAgICAgICArIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDAgMCAyMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAtMTBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgLy90cmFuc2l0aW9uOiBhbGwgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjMsIDAuMDMsIDAuMzEsIDAuNDMpO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC0xMDAlLCAwcHgpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgcGFkZGluZzogMy4zNXZ3IDAgMS40OTk5dnc7XHJcbiAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCA2NHB4LCAwcHgpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAmLnNob3cge1xyXG4gICAgICAgIC8vICAgdHJhbnNpdGlvbjogYWxsIDAuMzI1cyBjdWJpYy1iZXppZXIoMC4xMSwgMC44LCAwLjI0LCAwLjkpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjMyNXM7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDc2cHgsIDBweCkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB0b3A6IDFweDtcclxuICAgICAgICBoZWlnaHQ6IDMuMzV2dztcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzAyLnBuZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDFweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICAgICAgICBoZWlnaHQ6IDEuNXZ3O1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaW1nLWJnMDMucG5nKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFAge1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xyXG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRyb3Bkb3duLW1lbnUtaW5uZXIge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDQ4LCA4NywgMC45NSk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQ4NSk7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJnLWhlYWRlciB7XHJcbiAgQGluY2x1ZGUgYW5pbWF0ZShvcGFjaXR5KTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm90dG9tOiAtMXZ3O1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgei1pbmRleDogLTE7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgY29sb3I6ICNmZWZlZmU7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDYuNXZ3O1xyXG4gICAgaGVpZ2h0OiByZW0tY2FsYyg5OTkpO1xyXG4gIH1cclxuXHJcbiAgLmZpeGVkLXBvc2l0aW9uICYge1xyXG4gICAgb3BhY2l0eTogMC45ODtcclxuICB9XHJcblxyXG4gIHN2ZyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi5sb2dvLWhvbGRlciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDEwMDA7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4ubG9nbyB7XHJcbiAgQGluY2x1ZGUgYW5pbWF0ZShvcGFjaXR5IHZpc2liaWxpdHkpO1xyXG4gIC8vd2lkdGg6IHJlbS1jYWxjKDk2KTtcclxuICB3aWR0aDogcmVtLWNhbGMoMTEzKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLy93aWR0aDogcmVtLWNhbGMoMjAwKTtcclxuICAgIHdpZHRoOiByZW0tY2FsYygyMzApO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYyg2IDIwIC02IDApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgLy93aWR0aDogcmVtLWNhbGMoMjg5KTtcclxuICAgIHdpZHRoOiByZW0tY2FsYygzMjUpO1xyXG4gIH1cclxuXHJcbiAgLm5hdi1hY3RpdmUgJiB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5sb2dvLXNlY29uZGFyeSB7XHJcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LWFjdGl2ZSAmIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4ubWFpbi1uYXYge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIGZsZXg6IDEgMDtcclxuICB9XHJcblxyXG4gIC5uYXYtc2Vjb25kYXJ5IHtcclxuICAgIEBleHRlbmQgJWxpc3RyZXNldDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAzMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCA2KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZShiYWNrZ3JvdW5kKTtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGluZm87XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5uYXYtb3BlbmVyIHtcclxuICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgdmlzaWJpbGl0eSk7XHJcbiAgd2lkdGg6IHJlbS1jYWxjKDI4KTtcclxuICBoZWlnaHQ6IHJlbS1jYWxjKDI2KTtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbjogcmVtLWNhbGMoLTM2IC0yIDApO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLm5hdi1kcm9wICYge1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IHJlbS1jYWxjKDM3KTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogcmVtLWNhbGMoNTMpO1xyXG4gICAgcmlnaHQ6IHJlbS1jYWxjKDE2KTtcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIsXHJcbiAgc3BhbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgbGluZWFyO1xyXG5cclxuICAgIC5uYXYtZHJvcCAmIHtcclxuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgdG9wOiByZW0tY2FsYygxMik7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIHRvcDogcmVtLWNhbGMoMjgpO1xyXG4gIH1cclxuXHJcbiAgLm5hdi1hY3RpdmUgJiB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIH1cclxufVxyXG5cclxuLm5hdi1tZW51LWhvbGRlciB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIGZsZXg6IDEgMDtcclxuICB9XHJcbn1cclxuXHJcbi5uYXYtbWVudSB7XHJcbiAgQGluY2x1ZGUgYW5pbWF0ZShvcGFjaXR5IHZpc2liaWxpdHkpO1xyXG4gIEBleHRlbmQgJWxpc3RyZXNldDtcclxuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCA2MCA2MCk7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCA2MCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjAgMCAwKTtcclxuICB9XHJcblxyXG4gID4gbGkge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMzYgMCAwKTtcclxuICAgIH1cclxuXHJcbiAgICA+IGEge1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJHNlY29uZGFyeTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICAgY29sb3I6ICRpbmZvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgY29sb3I6ICRpbmZvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICA+IGxpOmxhc3QtY2hpbGQoKSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg3IDApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm5hdi1kcm9wIHtcclxuICBAaW5jbHVkZSBhbmltYXRlKHRyYW5zZm9ybSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTEwMCUgLSAxMXZ3KSk7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDQ4LCA4NywgMC45Nyk7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDg5IDAgMCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICAgIGhlaWdodDogMTF2dztcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pbWctYmcwNC5wbmcpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2LWFjdGl2ZSAmIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucmVzaXplLWFjdGl2ZSAqIHtcclxuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5sZXRzX3RhbGtfYnRuIHtcclxuICBtYXJnaW46IHJlbS1jYWxjKDAgMjQgMCAwKTtcclxufVxyXG4uaGVhZGVyX3NlYXJjaF93cmFwIHtcclxuICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcclxuICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLmhlYWRlcl9zZWFyY2gge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtM3B4O1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gIH1cclxuICAuaGVhZGVyX3NlYXJjaF9mb3JtX3dyYXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDM2MHB4O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZvcm0ge1xyXG4gICAgICAuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE4NjhiYztcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmhlYWRlcl9zZWFyY2hfaWNvbl93cmFwIHtcclxuICBjb2xvcjogIzE4NjhiYztcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5tb2JpbGVfaGVhZGVyX3NlYXJjaF93cmFwIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmZmZmY7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgIH1cclxuICAgIC5zdWJtaXQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmZmZmY7XHJcbiAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIjZm9vdGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZm9udDogMXJlbS8xLjUgJGZvbnQtZmFtaWx5LWJhc2Utc2Vjb25kYXJ5O1xyXG4gIHotaW5kZXg6IDEwO1xyXG4gIHBhZGRpbmc6IDcuNHZ3IDAgMDtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgcGFkZGluZzogNS43dncgMCAwO1xyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgIHRvcDogMDtcclxuICAgIGhlaWdodDogNy40dnc7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzA2LnBuZyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzA1LnBuZyk7XHJcbiAgICAgIGhlaWdodDogNS43NXZ3O1xyXG4gICAgfVxyXG4gIH1cclxuICBhIHtcclxuICAgICY6bm90KC5idG4pIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGgxIHtcclxuICAgIGZvbnQ6IDEuNzVyZW0vMSAkZm9udC1mYW1pbHktdGhpcmQ7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg2MCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgfVxyXG5cclxuICBoNCB7XHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWRkcmVzcyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxOSk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhOm5vdCguYnRuKSB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zb2NpYWwtbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDU1KTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHNtKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0NCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29weSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxMSk7XHJcbn1cclxuXHJcbi5sb2dvLWZvb3RlciB7XHJcbiAgbWFyZ2luOiByZW0tY2FsYygwIDAgMjUpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMzUwKTtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMjApO1xyXG4gIH1cclxuXHJcbiAgaW1nIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuLmZvb3Rlci1pbm5lciB7XHJcbiAgYmFja2dyb3VuZDogJGdyYXktMzAwO1xyXG4gIHBhZGRpbmc6IHJlbS1jYWxjKDMyIDApO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1MiAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXItaGVhZCB7XHJcbiAgbWFyZ2luOiByZW0tY2FsYygwIDAgNDApO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDY1KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDExNSk7XHJcbiAgfVxyXG5cclxuICAuYnRuIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUodHJhbnNmb3JtIGNvbG9yIGJhY2tncm91bmQgYm9yZGVyKTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE0IDIwKTtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMTYwKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXItbmF2aWdhdGlvbiB7XHJcbiAgQGV4dGVuZCAlbGlzdHJlc2V0O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoNSAwIDM0KTtcclxuXHJcbiAgbGkge1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgNik7XHJcbiAgfVxyXG59XHJcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FtREFBLEFYQ0EsWVdEWSxFQ0FaLFlBQVksRUNBWixVQUFVLEVDaURWLFdBQVcsRUM3QlgsYUFBYSxDQW9HWCxXQUFXLEVHN0RiLGlCQUFpQixFRXhDakIscUJBQXFCLEVNNFNyQixTQUFTLEVJN1NULHFCQUFxQixFQTRFckIseUJBQXlCLENBb0d4QixhQUFhLEVHNkNkLFNBQVMsQ0FLUCxjQUFjLEVBMkloQixTQUFTLEVDaE9ULGtCQUFrQixDbEM5SlA7RUFDVixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLElBQUksR0FDaEI7O0FBV0QsQUFQQyxTQU9RLEFBUFAsTUFBTSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJLEdBQ1g7O0FBd0NGLEFBQUEsU0FBUyxDQUFDO0VBQ1QsV0FBVyxFQUFFLE1BQU07RUFBRSxPQUFPO0VBQzVCLGFBQWEsRUFBRSxRQUFRO0VBQUUsT0FBTztFQUNoQyxRQUFRLEVBQUUsTUFBTSxHQUNoQjs7QUN4REQsVUFBVTtFQUNOLFdBQVcsRUFBRSxhQUFhO0VBQzFCLEdBQUcsRUFBRSxzQ0FBc0MsQ0FBQyxlQUFlLEVBQ3ZELHFDQUFxQyxDQUFDLGNBQWM7RUFDeEQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLEdBQUcsRUFBRSxrREFBa0QsQ0FBQyxlQUFlLEVBQ25FLGlEQUFpRCxDQUFDLGNBQWM7RUFDcEUsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLEdBQUcsRUFBRSwrQ0FBK0MsQ0FBQyxlQUFlLEVBQ2hFLDhDQUE4QyxDQUFDLGNBQWM7RUFDakUsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsNEJBQTRCO0VBQ3pDLEdBQUcsRUFBRSxrREFBa0QsQ0FBQyxlQUFlLEVBQ25FLGlEQUFpRCxDQUFDLGNBQWM7RUFDcEUsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsK0JBQStCO0VBQzVDLEdBQUcsRUFBRSxvREFBb0QsQ0FBQyxlQUFlLEVBQ3JFLG1EQUFtRCxDQUFDLGNBQWM7RUFDdEUsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsYUFBYTtFQUMxQixHQUFHLEVBQUUsMkNBQTJDLENBQUMsZUFBZSxFQUM1RCwwQ0FBMEMsQ0FBQyxjQUFjO0VBQzdELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLHVCQUF1QjtFQUNwQyxHQUFHLEVBQUUsaURBQWlELENBQUMsZUFBZSxFQUNsRSxnREFBZ0QsQ0FBQyxjQUFjO0VBQ25FLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLHVCQUF1QjtFQUNwQyxHQUFHLEVBQUUsZ0RBQWdELENBQUMsZUFBZSxFQUNqRSwrQ0FBK0MsQ0FBQyxjQUFjO0VBQ2xFLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLGlDQUFpQztFQUM5QyxHQUFHLEVBQUUsdURBQXVELENBQUMsZUFBZSxFQUN4RSxzREFBc0QsQ0FBQyxjQUFjO0VBQ3pFLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLDRCQUE0QjtFQUN6QyxHQUFHLEVBQUUsb0RBQW9ELENBQUMsZUFBZSxFQUNyRSxtREFBbUQsQ0FBQyxjQUFjO0VBQ3RFLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLDRCQUE0QjtFQUN6QyxHQUFHLEVBQUUsa0RBQWtELENBQUMsZUFBZSxFQUNuRSxpREFBaUQsQ0FBQyxjQUFjO0VBQ3BFLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLGFBQWE7RUFDMUIsR0FBRyxFQUFFLHVDQUF1QyxDQUFDLGVBQWUsRUFDeEQsc0NBQXNDLENBQUMsY0FBYztFQUN6RCxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTs7QUFHdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSxhQUFhO0VBQzFCLEdBQUcsRUFBRSxxQ0FBcUMsQ0FBQyxlQUFlLEVBQ3RELG9DQUFvQyxDQUFDLGNBQWM7RUFDdkQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsYUFBYTtFQUMxQixHQUFHLEVBQUUsc0NBQXNDLENBQUMsZUFBZSxFQUN2RCxxQ0FBcUMsQ0FBQyxjQUFjO0VBQ3hELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLGFBQWE7RUFDMUIsR0FBRyxFQUFFLHdDQUF3QyxDQUFDLGVBQWUsRUFDekQsdUNBQXVDLENBQUMsY0FBYztFQUMxRCxXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsTUFBTTs7QUFHdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSw0QkFBNEI7RUFDekMsR0FBRyxFQUFFLHFEQUFxRCxDQUFDLGVBQWUsRUFDdEUsb0RBQW9ELENBQUMsY0FBYztFQUN2RSxXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsTUFBTTs7QUFHdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSxhQUFhO0VBQzFCLEdBQUcsRUFBRSx5Q0FBeUMsQ0FBQyxlQUFlLEVBQzFELHdDQUF3QyxDQUFDLGNBQWM7RUFDM0QsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLEdBQUcsRUFBRSxtREFBbUQsQ0FBQyxlQUFlLEVBQ3BFLGtEQUFrRCxDQUFDLGNBQWM7RUFDckUsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07O0FBR3RCLFVBQVU7RUFDTixXQUFXLEVBQUUsYUFBYTtFQUMxQixHQUFHLEVBQUUsMENBQTBDLENBQUMsZUFBZSxFQUMzRCx5Q0FBeUMsQ0FBQyxjQUFjO0VBQzVELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLHVCQUF1QjtFQUNwQyxHQUFHLEVBQUUsc0RBQXNELENBQUMsZUFBZSxFQUN2RSxxREFBcUQsQ0FBQyxjQUFjO0VBQ3hFLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFVBQVUsRUFBRSxNQUFNOztBQUd0QixVQUFVO0VBQ04sV0FBVyxFQUFFLGFBQWE7RUFDMUIsR0FBRyxFQUFFLHFDQUFxQyxDQUFDLGVBQWUsRUFDdEQsb0NBQW9DLENBQUMsY0FBYztFQUN2RCxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTs7QUFHdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSx1QkFBdUI7RUFDcEMsR0FBRyxFQUFFLDhDQUE4QyxDQUFDLGVBQWUsRUFDL0QsNkNBQTZDLENBQUMsY0FBYztFQUNoRSxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTs7QUFHdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSx1QkFBdUI7RUFDcEMsR0FBRyxFQUFFLDhDQUE4QyxDQUFDLGVBQWUsRUFDL0QsNkNBQTZDLENBQUMsY0FBYztFQUNoRSxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTTs7QUFHdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSxXQUFXO0VBQ3hCLEdBQUcsRUFBRSw4QkFBOEIsQ0FBQyxlQUFlLEVBQy9DLDZCQUE2QixDQUFDLGNBQWM7RUFDaEQsV0FBVyxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLE1BQU07O0FDOUx0QixVQUFVO0VBQ1IsV0FBVyxFQUFFLFNBQVM7RUFDdEIsR0FBRyxFQUFHLGtDQUFrQztFQUN4QyxHQUFHLEVBQUcsd0NBQXdDLENBQUMsMkJBQTJCLEVBQ3hFLGtDQUFrQyxDQUFDLGtCQUFrQixFQUNyRCxtQ0FBbUMsQ0FBQyxjQUFjLEVBQ2xELDBDQUEwQyxDQUFDLGFBQWE7RUFDMUQsV0FBVyxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLE1BQU07RUFDbEIsWUFBWSxFQUFFLEtBQUs7O0NBR3JCLEFBQUEsQUFBQSxLQUFDLEVBQU8sT0FBTyxBQUFkLElBQWlCLEFBQUEsS0FBQyxFQUFPLE9BQU8sQUFBZCxDQUFlLElBQUssQ0FBQSxVQUFVLENBQUMsQ0FBQyxFQUFFO0VBQ25ELGdGQUFnRjtFQUNoRixXQUFXLEVBQUUsb0JBQW9CO0VBQ2pDLEtBQUssRUFBRSxLQUFLO0VBQ1osVUFBVSxFQUFFLE1BQU07RUFDbEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsWUFBWSxFQUFFLE1BQU07RUFDcEIsY0FBYyxFQUFFLElBQUk7RUFDcEIsV0FBVyxFQUFFLENBQUM7RUFFZCx1Q0FBdUM7RUFDdkMsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyx1QkFBdUIsRUFBRSxTQUFTLEdBQ25DOztBQUVELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBQztFQUNwQixPQUFPLEVBQUUsT0FBTyxHQUNqQjs7QUFDRCxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQUM7RUFDcEIsT0FBTyxFQUFFLE9BQU8sR0FDakI7O0FBQ0QsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFDO0VBQ3JCLE9BQU8sRUFBRSxPQUFPLEdBQ2pCOztBQUNELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBQztFQUNwQixPQUFPLEVBQUUsT0FBTyxHQUNqQjs7QUFDRCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQUM7RUFDckIsT0FBTyxFQUFFLE9BQU8sR0FDakI7O0FBQ0QsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFDO0VBQ25CLE9BQU8sRUFBRSxPQUFPLEdBQ2pCOztBQUNELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBQztFQUNuQixPQUFPLEVBQUUsT0FBTyxHQUNqQjs7QUFDRCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBQztFQUN0QixPQUFPLEVBQUUsT0FBTyxHQUNqQjs7QUFDRCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBQztFQUN0QixPQUFPLEVBQUUsT0FBTyxHQUNqQjs7QUFDRCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQUM7RUFDakIsT0FBTyxFQUFFLE9BQU8sR0FDakI7O0FBQ0QsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFDO0VBQ2hCLE9BQU8sRUFBRSxPQUFPLEdBQ2pCOztBQUNELEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFDO0VBQ3RCLE9BQU8sRUFBRSxPQUFPLEdBQ2pCOztBQUNELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBQztFQUNqQixPQUFPLEVBQUUsT0FBTyxHQUNqQjs7QUNqRUQseUJBQXlCO0FBRXpCLEFBQUEsYUFBYSxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxVQUFVLEVBQUUsVUFBVTtFQUN0QixxQkFBcUIsRUFBRSxJQUFJO0VBQzNCLG1CQUFtQixFQUFFLElBQUk7RUFDekIsa0JBQWtCLEVBQUUsSUFBSTtFQUN4QixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGdCQUFnQixFQUFFLEtBQUs7RUFDdkIsWUFBWSxFQUFFLEtBQUs7RUFDbkIsMkJBQTJCLEVBQUUsV0FBVyxHQUMzQzs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQyxHQVFiO0VBYkQsQUFNSSxXQU5PLEFBTU4sTUFBTSxDQUFDO0lBQ0osT0FBTyxFQUFFLElBQUksR0FDaEI7RUFSTCxBQVNJLFdBVE8sQUFTTixTQUFTLENBQUM7SUFDUCxNQUFNLEVBQUUsT0FBTztJQUNmLE1BQU0sRUFBRSxJQUFJLEdBQ2Y7O0FBR0wsQUFBQSxhQUFhLENBQUMsWUFBWTtBQUMxQixhQUFhLENBQUMsV0FBVyxDQUFDO0VBQ3RCLGlCQUFpQixFQUFFLG9CQUFvQjtFQUN2QyxjQUFjLEVBQUUsb0JBQW9CO0VBQ3BDLGFBQWEsRUFBRSxvQkFBb0I7RUFDbkMsWUFBWSxFQUFFLG9CQUFvQjtFQUNsQyxTQUFTLEVBQUUsb0JBQW9CLEdBQ2xDOztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLENBQUM7RUFDUCxHQUFHLEVBQUUsQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLLEdBWWpCO0VBaEJELEFBS0ksWUFMUSxBQUtQLE9BQU8sRUFMWixZQUFZLEFBTVAsTUFBTSxDQUFDO0lBQ0osT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsS0FBSyxHQUNqQjtFQVRMLEFBVUksWUFWUSxBQVVQLE1BQU0sQ0FBQztJQUNKLEtBQUssRUFBRSxJQUFJLEdBQ2Q7RUFDRCxBQUFBLGNBQWMsQ0FibEIsWUFBWSxDQWFTO0lBQ2IsVUFBVSxFQUFFLE1BQU0sR0FDckI7O0FBR0wsQUFBQSxZQUFZLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLEdBQUc7RUFDZixPQUFPLEVBQUUsSUFBSSxHQXdCaEI7R0F2QkcsQUFBQSxBQUFBLEdBQUMsQ0FBSSxLQUFLLEFBQVQsRUFMTCxZQUFZLENBS007SUFDVixLQUFLLEVBQUUsS0FBSyxHQUNmO0VBUEwsQUFRSSxZQVJRLENBUVIsR0FBRyxDQUFDO0lBQ0EsT0FBTyxFQUFFLEtBQUssR0FDakI7RUFWTCxBQVdJLFlBWFEsQUFXUCxjQUFjLENBQUMsR0FBRyxDQUFDO0lBQ2hCLE9BQU8sRUFBRSxJQUFJLEdBQ2hCO0VBYkwsQUFjSSxZQWRRLEFBY1AsU0FBUyxDQUFDLEdBQUcsQ0FBQztJQUNYLGNBQWMsRUFBRSxJQUFJLEdBQ3ZCO0VBQ0QsQUFBQSxrQkFBa0IsQ0FqQnRCLFlBQVksQ0FpQmE7SUFDakIsT0FBTyxFQUFFLEtBQUssR0FDakI7RUFDRCxBQUFBLGNBQWMsQ0FwQmxCLFlBQVksQ0FvQlM7SUFDYixVQUFVLEVBQUUsTUFBTSxHQUNyQjtFQUNELEFBQUEsZUFBZSxDQXZCbkIsWUFBWSxDQXVCVTtJQUNkLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLElBQUk7SUFDWixNQUFNLEVBQUUscUJBQXFCLEdBQ2hDOztBQUdMLEFBQUEsWUFBWSxBQUFBLGFBQWEsQ0FBQztFQUN0QixPQUFPLEVBQUUsSUFBSSxHQUNoQjs7QUMzRkQsQUFBQSxJQUFJLEFBQUEseUJBQXlCLENBQUM7RUFDNUIsUUFBUSxFQUFFLE1BQU0sR0FDakI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixJQUFJLEVBQUUsT0FBTztFQUNiLE1BQU0sRUFBRSxDQUFDO0VBQ1QsUUFBUSxFQUFFLG1CQUFtQjtFQUM3QixHQUFHLEVBQUUsT0FBTztFQUNaLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsMkJBQTJCLEVBQUUsTUFBTTtFQUNuQyxNQUFNLEVBQUUsSUFBSTtFQUNaLElBQUksRUFBRSxDQUFDO0VBQ1AsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsS0FBSztFQUNmLDJCQUEyQixFQUFFLFdBQVc7RUFDeEMsR0FBRyxFQUFFLENBQUM7RUFDTixnQkFBZ0IsRUFBRSxZQUFZO0VBQzlCLFlBQVksRUFBRSxZQUFZO0VBQzFCLFNBQVMsRUFBRSxhQUFhO0VBQ3hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDLENBQUMsQ0FBQztFQUNwQixVQUFVLEVBQUUsVUFBVSxHQUN2Qjs7QUFFRCxBQUFBLGVBQWU7QUFDZixlQUFlO0FBQ2YsWUFBWTtBQUNaLGVBQWUsQ0FBQztFQUNkLE1BQU0sRUFBRSxDQUFDO0VBQ1QsSUFBSSxFQUFFLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsQ0FBQztFQUNSLEdBQUcsRUFBRSxDQUFDLEdBQ1A7O0FBRUQsQUFBQSxlQUFlLENBQUM7RUFDZCwwQkFBMEIsRUFBRSxLQUFLO0VBQ2pDLFVBQVUsRUFBRSxJQUFJLEdBQ2pCOztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1gsVUFBVSxFQUFFLE9BQWU7RUFDM0IsT0FBTyxFQUFFLENBQUM7RUFDVixtQkFBbUIsRUFBRSxPQUFPO0VBQzVCLG1CQUFtQixFQUFFLE9BQU87RUFDNUIsMEJBQTBCLEVBQUUsaUNBQThCLEdBQzNEOztBQUVELEFBQUEsaUJBQWlCLENBQUMsWUFBWSxDQUFDO0VBQzdCLE9BQU8sRUFBRSxFQUFFO0VBQ1gsMEJBQTBCLEVBQUUsaUNBQThCLEdBQzNEOztBQUVELEFBQUEsaUJBQWlCO0FBQ2pCLGlCQUFpQjtBQUNqQixpQkFBaUI7QUFDakIsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUM7RUFDcEMsU0FBUyxFQUFFLEdBQUc7RUFDZCxPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSwwQ0FBMEM7RUFDdEQsVUFBVSxFQUFFLE1BQU07RUFDbEIsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLHNCQUFzQixDQUFDLGlCQUFpQjtBQUN4QyxzQkFBc0IsQ0FBQyxpQkFBaUI7QUFDeEMsc0JBQXNCLENBQUMsaUJBQWlCO0FBQ3hDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDO0VBQ3ZELE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLDJDQUEyQztFQUN2RCxVQUFVLEVBQUUsT0FBTyxHQUNwQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLElBQUk7RUFDZixzQkFBc0IsRUFBRSxvQkFBb0I7RUFDNUMsTUFBTSxFQUFFLElBQUk7RUFDWixJQUFJLEVBQUUsQ0FBQztFQUNQLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsY0FBYyxFQUFFLFVBQVU7RUFDMUIsT0FBTyxFQUFFLE1BQU07RUFDZixjQUFjLEVBQUUsSUFBSTtFQUNwQixHQUFHLEVBQUUsQ0FBQztFQUNOLHFCQUFxQixFQUFFLElBQUk7RUFDM0IsbUJBQW1CLEVBQUUsSUFBSTtFQUN6QixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUVELEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsS0FBSyxFQUFFLENBQUM7RUFDUixHQUFHLEVBQUUsQ0FBQyxHQUNQOztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ2QsU0FBUyxFQUFFLEdBQUc7RUFDZCxRQUFRLEVBQUUsT0FBTztFQUNqQixTQUFTLEVBQUUsYUFBYTtFQUN4QixPQUFPLEVBQUUsS0FBSyxHQUNmOztBQUVELEFBQUEsaUJBQWlCLENBQUMsZUFBZSxDQUFDO0VBQ2hDLFFBQVEsRUFBRSxNQUFNLEdBQ2pCOztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ2QsMkJBQTJCLEVBQUUsTUFBTTtFQUFFLDJDQUEyQztFQUNoRixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxJQUFJO0VBQ1osSUFBSSxFQUFFLENBQUM7RUFDUCxPQUFPLEVBQUUsSUFBSTtFQUNiLFFBQVEsRUFBRSxJQUFJO0VBQ2QsMEJBQTBCLEVBQUUsS0FBSztFQUNqQyxPQUFPLEVBQUUsSUFBSTtFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sbUJBQW1CLEVBQUUsa0JBQWtCO0VBQ3ZDLFdBQVcsRUFBRSxNQUFNO0VBQ25CLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLGVBQWUsQUFBQSxRQUFRLENBQUM7RUFDdEIsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsWUFBWTtFQUNyQixTQUFTLEVBQUUsQ0FBQztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osY0FBYyxFQUFFLE1BQU07RUFDdEIsS0FBSyxFQUFFLENBQUMsR0FDVDs7QUFFRCxBQUFBLG9CQUFvQixDQUFDLGVBQWU7QUFDcEMseUJBQXlCO0FBQ3pCLHdCQUF3QjtBQUN4QixxQkFBcUIsQ0FBQztFQUNwQixPQUFPLEVBQUUsS0FBSyxHQUNmOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDckIsUUFBUSxFQUFFLE1BQU07RUFDaEIsT0FBTyxFQUFFLE1BQU0sR0FDaEI7O0FBRUQsQUFBQSxzQkFBc0IsQUFBQSxRQUFRLENBQUM7RUFDN0IsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFFRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLE9BQU8sRUFBRSxHQUFHLEdBQ2I7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsWUFBWTtFQUNyQixNQUFNLEVBQUUsQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFJO0VBQ2YsUUFBUSxFQUFFLElBQUk7RUFDZCwwQkFBMEIsRUFBRSxLQUFLO0VBQ2pDLE9BQU8sRUFBRSxJQUFJO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsY0FBYyxFQUFFLE1BQU0sR0FDdkI7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQyxpQkFBaUIsQ0FBQztFQUN2Qyx5QkFBeUIsRUFBRSw2QkFBMkI7RUFDdEQsMkJBQTJCLEVBQUUsTUFBTTtFQUNuQyxVQUFVLEVBQUUsV0FBVztFQUN2QixpQkFBaUIsRUFBRSxTQUFTO0VBQzVCLGVBQWUsRUFBRSxTQUFTO0VBQzFCLElBQUksRUFBRSxDQUFDO0VBQ1AsU0FBUyxFQUFFLElBQUk7RUFDZixRQUFRLEVBQUUsT0FBTztFQUNqQixPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sb0JBQW9CLEVBQUUsUUFBUTtFQUM5QixnQkFBZ0IsRUFBRSxRQUFRO0VBQzFCLG1CQUFtQixFQUFFLGtCQUFrQjtFQUN2QyxtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsZUFBZSxFQUFFLElBQUk7RUFDckIsV0FBVyxFQUFFLElBQUk7RUFDakIsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDO0VBQ3RDLE1BQU0sRUFBRSxRQUFRLEdBQ2pCOztBQUVELEFBQUEsb0JBQW9CLENBQUMsaUJBQWlCLENBQUM7RUFDckMsTUFBTSxFQUFFLE9BQU8sR0FDaEI7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQyxpQkFBaUI7QUFDckMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUM7RUFDbEMsTUFBTSxFQUFFLFlBQVk7RUFDcEIsTUFBTSxFQUFFLElBQUksR0FDYjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDO0VBQ3RDLE1BQU0sRUFBRSxnQkFBZ0I7RUFDeEIsTUFBTSxFQUFFLFFBQVEsR0FDakI7O0FBRUQsQUFBQSxtQkFBbUIsRUFBQyxBQUFBLGVBQUMsQ0FBZ0IsTUFBTSxBQUF0QixFQUF3QjtFQUMzQyxNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEsZUFBZTtBQUNmLG1CQUFtQixDQUFDO0VBQ2xCLFVBQVUsRUFBRSxXQUFXO0VBQ3ZCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsTUFBTSxFQUFFLElBQUk7RUFDWixJQUFJLEVBQUUsQ0FBQztFQUNQLE1BQU0sRUFBRSxDQUFDO0VBQ1QsVUFBVSxFQUFFLElBQUk7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sbUJBQW1CLEVBQUUsSUFBSTtFQUN6QixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUVELEFBQUEsc0JBQXNCLENBQUMsaUJBQWlCO0FBQ3hDLG9CQUFvQixDQUFDLGlCQUFpQjtBQUN0QyxvQkFBb0IsQ0FBQyxpQkFBaUI7QUFDdEMsdUJBQXVCLENBQUMsaUJBQWlCLENBQUM7RUFDeEMsTUFBTSxFQUFFLElBQUk7RUFDWixRQUFRLEVBQUUsT0FBTztFQUNqQixPQUFPLEVBQUUsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQyxpQkFBaUIsQ0FBQztFQUN2QyxVQUFVLEVBQUUsSUFBSSxHQUNqQjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDLGlCQUFpQixDQUFDO0VBQ3JDLFVBQVUsRUFBRSxPQUFPLEdBQ3BCOztBQUVELEFBQUEsdUJBQXVCLENBQUMsaUJBQWlCLENBQUM7RUFDeEMsVUFBVSxFQUFFLElBQUksR0FDakI7O0FBRUQsQUFBQSxlQUFlO0FBQ2YsZ0JBQWdCLENBQUM7RUFDZixVQUFVLEVBQUUsV0FBVztFQUN2QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLElBQUk7RUFDWixNQUFNLEVBQUUsQ0FBQztFQUNULFFBQVEsRUFBRSxNQUFNO0VBQ2hCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxhQUFhO0FBQ2IsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLElBQUksRUFBRSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUMsR0FDUDs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFQUNkLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsU0FBUyxFQUFFLEtBQUs7RUFDaEIsT0FBTyxFQUFFLElBQUk7RUFDYixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsZUFBZSxDQUFDLENBQUMsQ0FBQztFQUNoQixLQUFLLEVBQUUsSUFBSTtFQUNYLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUVELGFBQWE7QUFFYixBQUFBLGdCQUFnQixDQUFDO0VBQ2YsVUFBVSxFQUFFLHFCQUFvQjtFQUNoQyxNQUFNLEVBQUUsQ0FBQztFQUNULGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLElBQUk7RUFDWixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxJQUFJO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLFNBQVM7RUFDckIsY0FBYyxFQUFFLEdBQUc7RUFDbkIsVUFBVSxFQUFFLE9BQU87RUFDbkIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxBQUFBLGdCQUFnQjtBQUNoQixnQkFBZ0IsQUFBQSxRQUFRO0FBQ3hCLGdCQUFnQixBQUFBLEtBQUssQ0FBQztFQUNwQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsZ0JBQWdCLEFBQUEsTUFBTSxDQUFDO0VBQ3JCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBRUQsQUFBQSxnQkFBZ0IsQUFBQSxNQUFNLENBQUM7RUFDckIsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFFRCxBQUFBLGdCQUFnQixBQUFBLGVBQWUsQ0FBQztFQUM5QixPQUFPLEVBQUUsVUFBVSxHQUNwQjs7QUFFRCxBQUFBLGdCQUFnQixDQUFBLEFBQUEsUUFBQyxBQUFBO0FBQ2pCLGdCQUFnQixDQUFBLEFBQUEsUUFBQyxBQUFBLENBQVMsTUFBTSxDQUFDO0VBQy9CLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLE9BQU87RUFDZixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUVELGNBQWM7QUFDZCxBQUFBLGdCQUFnQixDQUFDLEdBQUcsQ0FBQztFQUNuQixNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEsZ0JBQWdCLENBQUMsR0FBRyxDQUFDO0VBQ25CLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLElBQUk7RUFDWixRQUFRLEVBQUUsT0FBTztFQUNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztFQUN4QixJQUFJLEVBQUUsWUFBWTtFQUNsQixZQUFZLEVBQUUsQ0FBQyxHQUNoQjs7QUFFRCxBQUFBLHNCQUFzQixDQUFDLEdBQUcsQUFBQSxVQUFXLENBQUEsQ0FBQztBQUN0Qyx5QkFBeUIsQ0FBQyxHQUFHLEFBQUEsVUFBVyxDQURILENBQUMsRUFDSztFQUN6QyxPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUVELEFBQUEsdUJBQXVCLENBQUMsR0FBRyxBQUFBLFVBQVcsQ0FBQSxDQUFDO0FBQ3ZDLHdCQUF3QixDQUFDLEdBQUcsQUFBQSxVQUFXLENBREQsQ0FBQyxFQUNHO0VBQ3hDLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixVQUFVLEVBQUUsT0FBTztFQUNuQixNQUFNLEVBQUUsR0FBRztFQUNYLElBQUksRUFBRSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLENBQUM7RUFDUixHQUFHLEVBQUUsQ0FBQztFQUNOLGFBQWEsRUFBRSxTQUFTO0VBQ3hCLFNBQVMsRUFBRSxTQUFTO0VBQ3BCLG9CQUFvQixFQUFFLENBQUM7RUFDdkIsZ0JBQWdCLEVBQUUsQ0FBQztFQUNuQixtQkFBbUIsRUFBRSxTQUFTO0VBQzlCLDBCQUEwQixFQUFFLE1BQU07RUFDbEMsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFDRCwwREFBMEQ7QUFFMUQsQUFBQSxxQkFBcUIsQ0FBQztFQUNwQixVQUFVLEVBQUUsV0FBVztFQUN2QixNQUFNLEVBQUUsQ0FBQztFQUNULGFBQWEsRUFBRSxDQUFDO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLE9BQU87RUFDZixPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxHQUFHO0VBQ1osUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEtBQUs7RUFDWixHQUFHLEVBQUUsS0FBSztFQUNWLE9BQU8sRUFBRSxHQUFHLEdBQ2I7O0FBRUQsQUFBQSxxQkFBcUIsQUFBQSxNQUFNLENBQUM7RUFDMUIsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUVELEFBQUEscUJBQXFCLENBQUMscUJBQXFCLENBQUM7RUFDMUMsS0FBSyxFQUFFLFlBQVk7RUFDbkIsT0FBTyxFQUFFLElBQUk7RUFDYixLQUFLLEVBQUUsQ0FBQztFQUNSLEdBQUcsRUFBRSxDQUFDLEdBQ1A7O0FBRUQsQUFBQSxzQkFBc0IsQUFBQSxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQztFQUMzRCxRQUFRLEVBQUUsTUFBTSxHQUNqQjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDLHFCQUFxQjtBQUMxQyxxQkFBcUIsQUFBQSxpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQztFQUMzRCxPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUVELHVCQUF1QjtBQUV2QixBQUFBLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDO0VBQ3BDLGVBQWUsRUFBRSxXQUFXO0VBQzVCLE1BQU0sRUFBRSxLQUFLO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsZ0JBQWdCO0VBQ3JCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBRUQsQUFBQSxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUM7RUFDeEMsT0FBTyxFQUFFLEdBQUcsR0FDYjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDLDRCQUE0QixDQUFDO0VBQ2hELElBQUksRUFBRSxDQUFDO0VBQ1AsSUFBSSxFQUFFLHlCQUF5QjtFQUMvQixPQUFPLEVBQUUsa0JBQWtCLEdBQzVCOztBQUVELEFBQUEsb0JBQW9CLENBQUMsNkJBQTZCLENBQUM7RUFDakQsT0FBTyxFQUFFLGtCQUFrQjtFQUMzQixLQUFLLEVBQUUsQ0FBQztFQUNSLEtBQUssRUFBRSwwQkFBMEIsR0FDbEM7O0FBRUQsYUFBYTtBQUViLEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsVUFBVSxFQUFFLDBNQVNYO0VBQ0QsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSTtFQUNYLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsSUFBSSxFQUFFLENBQUM7RUFDUCxXQUFXLEVBQUUsR0FBRztFQUNoQixPQUFPLEVBQUUsbUJBQW1CO0VBQzVCLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLEtBQUssRUFBRSxDQUFDO0VBQ1IsVUFBVSxFQUFFLE1BQU07RUFDbEIsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFRRCxBQUFBLDJCQUEyQixDQUFDO0VBQzFCLFVBQVUsRUFBRSxLQUFLLEdBQ2xCOztBQUVELEFBQUEsdUJBQXVCLENBQUM7RUFDdEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsUUFBUSxFQUFFLElBQUk7RUFDZCxjQUFjLEVBQUUsR0FBRyxHQUNwQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDLENBQUM7QUFDbkIsaUJBQWlCLENBQUMsQ0FBQyxBQUFBLEtBQUs7QUFDeEIsaUJBQWlCLENBQUMsQ0FBQyxBQUFBLFFBQVEsQ0FBQztFQUMxQixLQUFLLEVBQUUsSUFBSTtFQUNYLGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUVELEFBQUEsaUJBQWlCLENBQUMsQ0FBQyxBQUFBLE1BQU0sQ0FBQztFQUN4QixLQUFLLEVBQUUsSUFBSTtFQUNYLGVBQWUsRUFBRSxTQUFTLEdBQzNCOztBQUVELHVCQUF1QjtBQUV2QixBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLFNBQVMsRUFBRSxrQ0FBa0M7RUFDN0MsVUFBVSxFQUFFLFdBQVc7RUFDdkIsTUFBTSxFQUFFLGNBQWM7RUFDdEIsbUJBQW1CLEVBQUUsSUFBSTtFQUN6QixhQUFhLEVBQUUsR0FBRztFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLElBQUksRUFBRSxHQUFHO0VBQ1QsTUFBTSxFQUFFLGVBQWU7RUFDdkIsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxHQUFHO0VBQ1IsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsS0FBSyxHQUNmOztBQUVELFVBQVUsQ0FBVixlQUFVO0VBQ1IsSUFBSTtJQUNGLFNBQVMsRUFBRSxjQUFjOztBQUk3Qix3QkFBd0I7QUFFeEIsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQiwwQkFBMEIsRUFBRSwyQkFBMEIsR0FDdkQ7O0FBRUQsNkJBQTZCO0FBRTdCLEFBQUEsa0JBQWtCLEFBQUEseUJBQXlCLENBQUM7RUFDMUMsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsd0JBQXdCLEdBQ3BDOztBQUVELEFBQUEsa0JBQWtCLEFBQUEscUJBQXFCLENBQUM7RUFDdEMsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsdUJBQXVCLEdBQ25DOztBQUVELEFBQUEsa0JBQWtCLEFBQUEsd0JBQXdCLENBQUM7RUFDekMsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsb0JBQW9CLEdBQ2hDOztBQUVELDRCQUE0QjtBQUU1QixBQUFBLGlCQUFpQixBQUFBLHlCQUF5QjtBQUMxQyxpQkFBaUIsQUFBQSxxQkFBcUIsQ0FBQztFQUNyQyxPQUFPLEVBQUUsQ0FBQztFQUNWLDBCQUEwQixFQUFFLDhCQUE0QixHQUN6RDs7QUFFRCxBQUFBLGlCQUFpQixBQUFBLHdCQUF3QixDQUFDO0VBQ3hDLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBRUQsbUNBQW1DO0FBRW5DLEFBQUEsd0JBQXdCLEFBQUEseUJBQXlCLENBQUM7RUFDaEQsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsc0JBQXNCLEdBQ2xDOztBQUVELEFBQUEsd0JBQXdCLEFBQUEscUJBQXFCLENBQUM7RUFDNUMsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsc0JBQW1CLEdBQy9COztBQUVELEFBQUEsd0JBQXdCLEFBQUEsd0JBQXdCLENBQUM7RUFDL0MsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsZ0JBQWdCLEdBQzVCOztBQUVELDhCQUE4QjtBQUU5QixBQUFBLG1CQUFtQixBQUFBLHlCQUF5QixDQUFDO0VBQzNDLE9BQU8sRUFBRSxDQUFDO0VBQ1YsYUFBYSxFQUFFLGVBQWU7RUFDOUIsU0FBUyxFQUFFLGVBQWUsR0FDM0I7O0FBRUQsQUFBQSxtQkFBbUIsQUFBQSxxQkFBcUIsQ0FBQztFQUN2QyxPQUFPLEVBQUUsQ0FBQztFQUNWLGFBQWEsRUFBRSxjQUFjO0VBQzdCLFNBQVMsRUFBRSxjQUFjLEdBQzFCOztBQUVELEFBQUEsbUJBQW1CLEFBQUEsd0JBQXdCLENBQUM7RUFDMUMsT0FBTyxFQUFFLENBQUM7RUFDVixhQUFhLEVBQUUsWUFBWTtFQUMzQixTQUFTLEVBQUUsWUFBWSxHQUN4Qjs7QUFFRCxnQ0FBZ0M7QUFFaEMsQUFBQSxxQkFBcUIsQUFBQSx5QkFBeUIsQ0FBQztFQUM3QyxPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyx3QkFBd0IsR0FDckQ7O0FBRUQsQUFBQSxxQkFBcUIsQUFBQSxxQkFBcUIsQ0FBQztFQUN6QyxPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyx1QkFBdUIsR0FDcEQ7O0FBRUQsQUFBQSxxQkFBcUIsQUFBQSx3QkFBd0IsQ0FBQztFQUM1QyxPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxvQkFBb0IsR0FDakQ7O0FBRUQsNEJBQTRCO0FBRTVCLEFBQUEsaUJBQWlCLEFBQUEseUJBQXlCLENBQUM7RUFDekMsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFVBQVMsQ0FBQyxZQUFZLEdBQzNEOztBQUVELEFBQUEsaUJBQWlCLEFBQUEscUJBQXFCLENBQUM7RUFDckMsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFVBQVMsQ0FBQyxXQUFXLEdBQ3pEOztBQUVELEFBQUEsaUJBQWlCLEFBQUEsd0JBQXdCLENBQUM7RUFDeEMsU0FBUyxFQUFFLG9CQUFvQixDQUFDLFFBQVEsR0FDekM7O0FBRUQsc0NBQXNDO0FBQ3RDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sVUFBVSxFQUFFLEtBQUs7RUF2Z0JqQyxBQUFBLGVBQWUsQ0F3Z0JHO0lBQ2QsWUFBWSxFQUFFLEdBQUc7SUFDakIsYUFBYSxFQUFFLEdBQUcsR0FDbkI7RUF6ZUgsQUFBQSxzQkFBc0IsQ0EyZUc7SUFDckIsT0FBTyxFQUFFLEtBQUssR0FDZjtFQTdQSCxBQUFBLHFCQUFxQixDQStQRztJQUNwQixLQUFLLEVBQUUsSUFBSSxHQUNaO0VBRUQsQUFBQSxzQkFBc0IsQ0FBQyxxQkFBcUIsQ0FBQztJQUMzQyxVQUFVLEVBQUUsT0FBTztJQUNuQixLQUFLLEVBQUUsT0FBTztJQUNkLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsR0FBRztJQUNaLEtBQUssRUFBRSxDQUFDO0lBQ1IsR0FBRyxFQUFFLENBQUM7SUFDTixLQUFLLEVBQUUsSUFBSSxHQUNaO0VBNU1ILEFBQUEsaUJBQWlCLENBOE1HO0lBQ2hCLFlBQVksRUFBRSxJQUFJO0lBQ2xCLGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQVVILFdBQVc7QUFFWCxBQUFBLGVBQWUsQ0FBQztFQUNkLFVBQVUsRUFBRSxPQUFPO0VBQ25CLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFNBQVMsRUFBRSxHQUFHO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFFRCxBQUFBLGVBQWUsQ0FBQyxFQUFFLENBQUM7RUFDakIsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLE1BQU0sRUFBRSxVQUFVLEdBQ25COztBQUVELEFBQUEsZUFBZSxDQUFDLENBQUMsQ0FBQztFQUNoQixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULGFBQWEsRUFBRSxHQUFHO0VBQ2xCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLElBQUk7RUFDakIsTUFBTSxFQUFFLGNBQWM7RUFDdEIsU0FBUyxFQUFFLEtBQUs7RUFDaEIsT0FBTyxFQUFFLE1BQU07RUFDZixlQUFlLEVBQUUsSUFBSTtFQUNyQixVQUFVLEVBQUUsT0FBTztFQUNuQixtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsZUFBZSxFQUFFLElBQUk7RUFDckIsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLE1BQU0sR0FDcEI7O0FBRUQsQUFBQSx1QkFBdUIsQUFBQSxRQUFRO0FBQy9CLHVCQUF1QixBQUFBLEtBQUssQ0FBQztFQUMzQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsdUJBQXVCLEFBQUEsTUFBTSxDQUFDO0VBQzVCLGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUVELEFBQUEsMkJBQTJCLENBQUM7RUFDMUIsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0FBRUQsQUFBQSwyQkFBMkIsQUFBQSxNQUFNLENBQUM7RUFDaEMsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQztFQUMxQixVQUFVLEVBQUUsT0FBTyxHQUNwQjs7QUFFRCxBQUFBLDJCQUEyQixBQUFBLE1BQU0sQ0FBQztFQUNoQyxVQUFVLEVBQUUsT0FBTyxHQUNwQjs7QUFFRCxBQUFBLDJCQUEyQixDQUFDO0VBQzFCLFVBQVUsRUFBRSxPQUFPLEdBQ3BCOztBQUVELEFBQUEsMkJBQTJCLEFBQUEsTUFBTSxDQUFDO0VBQ2hDLFVBQVUsRUFBRSxPQUFPLEdBQ3BCOztBQUVELEFBQUEsdUJBQXVCLENBQUMsR0FBRyxDQUFDO0VBQzFCLE1BQU0sRUFBRSxJQUFJO0VBQ1osWUFBWSxFQUFFLEdBQUc7RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLElBQUk7RUFDVCxjQUFjLEVBQUUsTUFBTTtFQUN0QixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsdUJBQXVCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztFQUMvQixJQUFJLEVBQUUsSUFBSSxHQUNYOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDckIsVUFBVSxFQUFFLFdBQVc7RUFDdkIsTUFBTSxFQUFFLENBQUM7RUFDVCxhQUFhLEVBQUUsaUJBQWlCO0VBQ2hDLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLEtBQUssRUFBRSxPQUFPO0VBQ2QsU0FBUyxFQUFFLElBQUk7RUFDZixNQUFNLEVBQUUsVUFBVTtFQUNsQixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBRUQsWUFBWTtBQUVaLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLENBQUM7RUFDVCwwQkFBMEIsRUFBRSxLQUFLO0VBQ2pDLGtCQUFrQixFQUFFLHdCQUF3QjtFQUM1QyxPQUFPLEVBQUUsZUFBZTtFQUN4QixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsQ0FBQztFQUNSLDJCQUEyQixFQUFFLGdCQUFnQjtFQUM3QyxHQUFHLEVBQUUsQ0FBQztFQUNOLEtBQUssRUFBRSxLQUFLO0VBQ1osT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUVELEFBQUEscUJBQXFCLENBQUMsZ0JBQWdCLENBQUM7RUFDckMsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDLGVBQWUsQ0FBQztFQUNwQyxLQUFLLEVBQUUsS0FBSyxHQUNiOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDckIsU0FBUyxFQUFFLENBQUM7RUFDWixNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsVUFBVSxFQUFFLE1BQU07RUFDbEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixXQUFXLEVBQUUsTUFBTTtFQUNuQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsa0JBQWtCLENBQUMsc0JBQXNCLENBQUM7RUFDeEMsUUFBUSxFQUFFLE1BQU0sR0FDakI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQyxzQkFBc0IsQUFBQSxtQkFBbUIsQ0FBQztFQUMzRCxLQUFLLEVBQUUsR0FBRyxHQUNYOztBQUVELEFBQUEsa0JBQWtCLENBQUMsc0JBQXNCLEFBQUEseUJBQXlCLENBQUM7RUFDakUsVUFBVSxFQUFFLElBQUk7RUFDaEIsYUFBYSxFQUFFLElBQUk7RUFDbkIsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxrQkFBaUIsR0FDNUM7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQyxzQkFBc0IsQUFBQSx5QkFBeUIsQ0FBQztFQUNqRSxVQUFVLEVBQUUsT0FBTztFQUNuQixhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFFRCxBQUFBLHNCQUFzQixDQUFDLENBQUMsQ0FBQztFQUN2QiwyQkFBMkIsRUFBRSxNQUFNO0VBQ25DLG1CQUFtQixFQUFFLE1BQU07RUFDM0IsZ0JBQWdCLEVBQUUsa0JBQWlCO0VBQ25DLG1CQUFtQixFQUFFLGFBQWE7RUFDbEMsaUJBQWlCLEVBQUUsU0FBUztFQUM1QixlQUFlLEVBQUUsS0FBSztFQUN0QixNQUFNLEVBQUUsT0FBTztFQUNmLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixNQUFNLEVBQUUsR0FBRztFQUNYLFVBQVUsRUFBRSxnQkFBZ0I7RUFDNUIsU0FBUyxFQUFFLGVBQWU7RUFDMUIsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsTUFBTTtFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLDJCQUEyQixFQUFFLFdBQVc7RUFDeEMsS0FBSyxFQUFFLEtBQUssR0FDYjs7QUFFRCxBQUFBLHNCQUFzQixDQUFDLENBQUMsQUFBQSxRQUFRLENBQUM7RUFDL0IsTUFBTSxFQUFFLGlCQUFpQjtFQUN6QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxFQUFFO0VBQ1gsSUFBSSxFQUFFLENBQUM7RUFDUCxPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxDQUFDO0VBQ1IsR0FBRyxFQUFFLENBQUM7RUFDTixVQUFVLEVBQUUsR0FBRyxDQUFDLElBQUcsQ0FBQyxvQ0FBZ0M7RUFDcEQsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLHNCQUFzQixDQUFDLENBQUMsQUFBQSxNQUFNLEFBQUEsUUFBUSxDQUFDO0VBQ3JDLE9BQU8sRUFBRSxFQUFFLEdBQ1o7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQyxDQUFDLEFBQUEsdUJBQXVCLEFBQUEsUUFBUSxDQUFDO0VBQ3RELE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBRUQsc0NBQXNDO0FBQ3RDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUF6R2hDLEFBQUEsZ0JBQWdCLENBMEdHO0lBQ2YsS0FBSyxFQUFFLEtBQUssR0FDYjtFQW5GSCxBQUFBLHFCQUFxQixDQUFDLGVBQWUsQ0FvRkc7SUFDcEMsS0FBSyxFQUFFLEtBQUssR0FDYjtFQWpESCxBQUFBLHNCQUFzQixDQUFDLENBQUMsQ0FrREc7SUFDdkIsU0FBUyxFQUFFLGlCQUFpQixHQUM3Qjs7QUM1M0JILEFBQUEsT0FBTztBQUNQLFNBQVM7QUFDVCxXQUFXO0FBQ1gsV0FBVztBQUNYLFlBQVksQ0FBQztFQUNaLFVBQVUsRUFBRSxNQUFNLEdBQ2xCOztBQUVELEFBQUEsT0FBTyxBQUFBLFlBQVk7QUFDbkIsWUFBWSxDQUFDLE9BQU8sQ0FBQTtFQUNuQixjQUFjLEVBQUUsTUFBTTtFQUN0QixVQUFVLEVBQUUsT0FBTztFQUVuQixrQkFBa0IsRVIySUgsS0FBSTtFUTFJbkIsbUJBQW1CLEVBQUUsSUFBSSxHQUN6Qjs7QUFFRCxVQUFVLENBQVYsTUFBVTtFQUNULEVBQUU7SUFDRCxPQUFPLEVBQUUsQ0FBQztFQUdYLEdBQUc7SUFDRixPQUFPLEVBQUUsQ0FBQzs7QUFJWixBQUFBLFNBQVMsQUFBQSxZQUFZO0FBQ3JCLFlBQVksQ0FBQyxTQUFTLENBQUM7RUFDdEIsY0FBYyxFQUFFLFFBQVE7RUFDeEIsVUFBVSxFQUFFLE9BQU87RUFFbkIsa0JBQWtCLEVSd0hILEtBQUk7RVF2SG5CLG1CQUFtQixFQUFFLElBQUksR0FDekI7O0FBRUQsVUFBVSxDQUFWLFFBQVU7RUFDVCxFQUFFO0lBQ0QsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsdUJBQXVCO0VBR25DLEdBQUc7SUFDRixPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSxzQkFBc0I7O0FBSW5DLEFBQUEsV0FBVyxBQUFBLFlBQVk7QUFDdkIsWUFBWSxDQUFDLFdBQVcsQ0FBQztFQUN4QixjQUFjLEVBQUUsVUFBVTtFQUMxQixVQUFVLEVBQUUsT0FBTztFQUVuQixrQkFBa0IsRVJtR0gsS0FBSTtFUWxHbkIsbUJBQW1CLEVBQUUsSUFBSSxHQUN6Qjs7QUFFRCxVQUFVLENBQVYsVUFBVTtFQUNULEVBQUU7SUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSx3QkFBd0I7RUFHcEMsR0FBRztJQUNGLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLElBQUk7O0FBSWpCLEFBQUEsV0FBVyxBQUFBLFlBQVk7QUFDdkIsWUFBWSxDQUFDLFdBQVcsQ0FBQztFQUN4QixjQUFjLEVBQUUsVUFBVTtFQUMxQixVQUFVLEVBQUUsT0FBTztFQUVuQixrQkFBa0IsRVI4RUgsS0FBSTtFUTdFbkIsbUJBQW1CLEVBQUUsSUFBSSxHQUN6Qjs7QUFFRCxVQUFVLENBQVYsVUFBVTtFQUNULEVBQUU7SUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSx3QkFBd0I7RUFHcEMsR0FBRztJQUNGLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLElBQUk7O0FBSWpCLEFBQUEsWUFBWSxBQUFBLFlBQVk7QUFDeEIsWUFBWSxDQUFDLFlBQVksQ0FBQztFQUN6QixjQUFjLEVBQUUsV0FBVztFQUMzQixVQUFVLEVBQUUsT0FBTztFQUVuQixrQkFBa0IsRVJ5REgsS0FBSTtFUXhEbkIsbUJBQW1CLEVBQUUsSUFBSSxHQUN6Qjs7QUFFRCxVQUFVLENBQVYsV0FBVTtFQUNULEVBQUU7SUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSx1QkFBdUI7RUFHbkMsR0FBRztJQUNGLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLElBQUk7O0FDNUdqQixBQUFBLEVBQUU7QUFDRixHQUFHO0FBQ0gsRUFBRTtBQUNGLEdBQUc7QUFDSCxFQUFFO0FBQ0YsR0FBRztBQUNILEVBQUU7QUFDRixHQUFHO0FBQ0gsRUFBRTtBQUNGLEdBQUc7QUFDSCxFQUFFO0FBQ0YsR0FBRztBQUNILEVBQUUsQ0FBQztFQUNELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGNBQWMsRUFBRSxVQUFVLEdBUTNCO0VBdEJELEFBaUJJLEVBakJGLENBZ0JBLENBQUMsQUFDRSxNQUFNO0VBaEJYLEdBQUcsQ0FlRCxDQUFDLEFBQ0UsTUFBTTtFQWZYLEVBQUUsQ0FjQSxDQUFDLEFBQ0UsTUFBTTtFQWRYLEdBQUcsQ0FhRCxDQUFDLEFBQ0UsTUFBTTtFQWJYLEVBQUUsQ0FZQSxDQUFDLEFBQ0UsTUFBTTtFQVpYLEdBQUcsQ0FXRCxDQUFDLEFBQ0UsTUFBTTtFQVhYLEVBQUUsQ0FVQSxDQUFDLEFBQ0UsTUFBTTtFQVZYLEdBQUcsQ0FTRCxDQUFDLEFBQ0UsTUFBTTtFQVRYLEVBQUUsQ0FRQSxDQUFDLEFBQ0UsTUFBTTtFQVJYLEdBQUcsQ0FPRCxDQUFDLEFBQ0UsTUFBTTtFQVBYLEVBQUUsQ0FNQSxDQUFDLEFBQ0UsTUFBTTtFQU5YLEdBQUcsQ0FLRCxDQUFDLEFBQ0UsTUFBTTtFQUxYLEVBQUUsQ0FJQSxDQUFDLEFBQ0UsTUFBTSxDQUFDO0lBQ04sZUFBZSxFQUFFLElBQUk7SUFDckIsS0FBSyxFVEtELE9BQU8sR1NKWjs7QXZDd0NELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFdUNwQzVCLEFBQUEsRUFBRTtFQUNGLEdBQUcsQ0FBQztJQUVBLFNBQVMsRVJmSixJQUFtRCxHUTZCM0Q7O0FBakJELEFBTUUsRUFOQSxBQU1DLFNBQVM7QUFMWixHQUFHLEFBS0EsU0FBUyxDQUFDO0VBQ1QsTUFBTSxFUmxCc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR1E0QnpEO0V2Q2lDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXVDakQvQixBQU1FLEVBTkEsQUFNQyxTQUFTO0lBTFosR0FBRyxBQUtBLFNBQVMsQ0FBQztNQUlQLFNBQVMsRVJ0Qk4sTUFBbUQsR1E0QnpEO0V2Q29CQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SXVDcEM1QixBQU1FLEVBTkEsQUFNQyxTQUFTO0lBTFosR0FBRyxBQUtBLFNBQVMsQ0FBQztNQVFQLE1BQU0sRVJ6Qm9CLENBQUMsQ0FBRCxDQUFDLENBRHhCLE1BQW1ELEdRNEJ6RDs7QUFHSCxBQUNFLEVBREEsQUFDQyxHQUFHLENBQUM7RUFDSCxNQUFNLEVSaENzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHUXNDekQ7RXZDdUJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJdUM5Qi9CLEFBQ0UsRUFEQSxBQUNDLEdBQUcsQ0FBQztNQUlELFdBQVcsRUFBRSxHQUFHLEdBRW5COztBdkNVQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RXVDUDVCLEFBQUEsRUFBRTtFQUNGLEdBQUcsQ0FBQztJQUVBLFNBQVMsRVI1Q0osSUFBbUQsR1E4QzNEOztBdkNFRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RXVDQTVCLEFBQUEsRUFBRTtFQUNGLEdBQUcsQ0FBQztJQUVBLFNBQVMsRVJuREosT0FBbUQsR1FxRDNEOztBdkNMRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RXVDTzVCLEFBQUEsRUFBRTtFQUNGLEdBQUcsQ0FBQztJQUVBLFNBQVMsRVIxREosT0FBbUQsR1E0RDNEOztBQUVELEFBQUEsQ0FBQyxDQUFDO0VQcUpELFVBQVUsRUFGVyxzQkFBTyxFQUFQLDJCQUFPLEVBQVAsdUJBQU8sRUFBUCx3QkFBTyxFQUFQLDBCQUFPLEVBQVAsMkJBQU87RU9qSjNCLEtBQUssRVRqREcsT0FBTyxHU3FEaEI7RUFORCxBQUdFLENBSEQsQUFHRSxNQUFNLENBQUM7SUFDTixPQUFPLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FDckM7O0FBR0gsQUFBQSxXQUFXLENBQUM7RUFDVixXQUFXLEVBQUUsR0FBRyxHQTRCakI7RXZDbkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJdUNzQjVCLEFBQUEsV0FBVyxDQUFDO01BSVIsU0FBUyxFUjFFSixPQUFtRCxHUW1HM0Q7RUE3QkQsQUFPRSxXQVBTLENBT1QsQ0FBQyxDQUFDO0lBQ0EsV0FBVyxFQUFFLElBQUksR0FLbEI7SXZDdEJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNdUNTL0IsQUFPRSxXQVBTLENBT1QsQ0FBQyxDQUFDO1FBSUUsTUFBTSxFUmhGb0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQsR1FtRnpEO0VBYkgsQUFlRSxXQWZTLENBZVQsSUFBSSxDQUFDO0lBQ0gsT0FBTyxFQUFFLEtBQUs7SUFDZCxXQUFXLEVBQUUsR0FBRztJQUNoQixVQUFVLEVBQUUsTUFBTTtJQUNsQixXQUFXLEVBQUUsR0FBRztJQUNoQixTQUFTLEVSMUZKLElBQW1EO0lRMkZ4RCxjQUFjLEVBQUUsU0FBUyxHQU8xQjtJdkNsREMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO011Q3NCNUIsQUFlRSxXQWZTLENBZVQsSUFBSSxDQUFDO1FBU0QsU0FBUyxFUjlGTixPQUFtRDtRUStGdEQsV0FBVyxFUi9GUixJQUFtRDtRUWdHdEQsV0FBVyxFQUFFLEdBQUcsR0FFbkI7O0FBR0gsQUFBQSxNQUFNLENBQUM7RUFDTCxXQUFXLEVBQUUsT0FBTztFQUNwQixTQUFTLEVBQUUsR0FBRyxHQUNmOztBQUVELEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFVEhpQix1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVSxHU1F6RjtFQU5ELEFBR0UsSUFIRSxBQUdELE1BQU0sQ0FBQztJQUNOLFNBQVMsRUFBRSxHQUFHLEdBQ2Y7O0FBR0gsQUFBQSxNQUFNLENBQUM7RUFDTCxjQUFjLEVBQUUsU0FBUyxHQUsxQjtFQU5ELEFBR0UsTUFISSxBQUdILFdBQVcsQ0FBQztJQUNYLFVBQVUsRUFBRSxxQkFBcUIsR0FDbEM7O0FBR0gsQUFBQSxZQUFZLENBQUM7RUFDWCxJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENUakJPLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtFU2tCOUUsY0FBYyxFQUFFLFNBQVM7RUFDekIsT0FBTyxFQUFFLEtBQUs7RUFDZCxNQUFNLEVSN0h3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHUStIM0Q7O0FBR0MsQUFBQSxXQUFXLENBRGIsV0FBVyxDQUNLO0VBQ1osS0FBSyxFQUFFLGtCQUFrQixHQUMxQjs7QUFHSCxBQUFBLFlBQVksQ0FBQztFQUNYLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxDUnhJUCxPQUFtRDtFUXlJMUQsU0FBUyxFUnpJRixVQUFtRCxHUTBJM0Q7O0FDdEpELEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFVm1IaUIsdUJBQXVCLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVU7RVVsSHhGLGNBQWMsRUFBRSxTQUFTLEdBZ0MxQjtFeEMwQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0l3QzVENUIsQUFBQSxJQUFJLENBQUM7TUFLRCxPQUFPLEVUT0YsU0FBbUQsQ0FBbkQsU0FBbUQsR1NzQjNEO0VBbENELEFBZ0JJLElBaEJBLEFBUUQsU0FBUyxBQVFQLE1BQU0sRUFoQlgsSUFBSSxBQVNELFVBQVUsQUFPUixNQUFNLEVBaEJYLElBQUksQUFVRCxZQUFZLEFBTVYsTUFBTSxFQWhCWCxJQUFJLEFBV0QsWUFBWSxBQUtWLE1BQU0sRUFoQlgsSUFBSSxBQVlELFdBQVcsQUFJVCxNQUFNLEVBaEJYLElBQUksQUFhRCxZQUFZLEFBR1YsTUFBTSxFQWhCWCxJQUFJLEFBY0QsU0FBUyxBQUVQLE1BQU0sRUFoQlgsSUFBSSxBQWVELGFBQWEsQUFDWCxNQUFNLENBQUM7SUFDTixZQUFZLEVWT1IsT0FBTztJVU5YLFVBQVUsRVZNTixPQUFPLEdVTFo7RUFuQkwsQUF1QkksSUF2QkEsQUFzQkQsVUFBVSxBQUNSLE1BQU0sQ0FBQztJQUNOLEtBQUssRTVDakJBLElBQUksRzRDa0JWO0VBekJMLEFBNkJJLElBN0JBLEFBNEJELGNBQWMsQUFDWixNQUFNLENBQUM7SUFDTixZQUFZLEVWWlAsT0FBTztJVWFaLFVBQVUsRVZiTCxPQUFPLEdVY2I7O0FBSUwsQUFBQSxVQUFVLENBQUM7RUFDVCxTQUFTLEVUekJGLFNBQW1EO0VTMEIxRCxLQUFLLEVBQUUsT0FBTyxHQU1mO0VBUkQsQUFJRSxVQUpRLEFBSVAsTUFBTSxDQUFDO0lBQ04sS0FBSyxFVmpCQyxPQUFPO0lVa0JiLGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUdILEFBQUEsV0FBVyxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLEdBQUc7RUFDbkIsU0FBUyxFVHRDRixPQUFtRDtFU3VDMUQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFVnpCRyxPQUFPO0VVMEJmLGFBQWEsRVR6Q04sUUFBbUQ7RVMwQzFELFdBQVcsRVY4RGlCLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVLEdVdEN6RjtFeENsQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0l3Q2Q1QixBQUFBLFdBQVcsQ0FBQztNQVdSLGFBQWEsRVQ3Q1IsU0FBbUQsR1NrRTNEO0VBaENELEFBY0UsV0FkUyxBQWNSLE1BQU0sQ0FBQztJUm1LVCxVQUFVLEVBRlcsMEJBQU87SUFpSjVCLE9BQU8sRVFoVHVCLElBQU87SVJpVHJDLFdBQVcsRUFBRSxTQUFTO0lBQ3RCLFNBQVMsRVFsVDBDLE9BQU87SVJtVDFELFdBQVcsRUFBRSxDQUFDO0lBQ2QsV0FBVyxFQUFFLENBQUM7SVFuVFgsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixTQUFTLEVBQUUsa0JBQWtCO0lBQzdCLEtBQUssRUFBRSxDQUFDO0lBQ1IsV0FBVyxFQUFFLE1BQU0sR0FDcEI7RUF0QkgsQUF3QkUsV0F4QlMsQUF3QlIsTUFBTSxDQUFDO0lBQ04sZUFBZSxFQUFFLElBQUk7SUFDckIsS0FBSyxFVmhEQyxPQUFPLEdVcURkO0lBL0JILEFBNEJJLFdBNUJPLEFBd0JSLE1BQU0sQUFJSixNQUFNLENBQUM7TUFDTixTQUFTLEVBQUUsb0JBQW9CLEdBQ2hDOztBQUlMLEFBQ0UsTUFESSxBQUNILE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBR0gsQUFBQSxVQUFVLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsWUFBWTtFQUNyQixjQUFjLEVBQUUsR0FBRztFQUNuQixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENWMEJVLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVO0VVekJ4RixTQUFTLEVUL0VGLElBQW1EO0VTZ0YxRCxXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVBQUUsT0FBTztFQUNkLFlBQVksRVRsRkwsUUFBbUQ7RVNtRjFELGNBQWMsRUFBRSxTQUFTO0VBQ3pCLE1BQU0sRVRuRndCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdTNEczRDtFeEM1REcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0l3QzBCNUIsQUFBQSxVQUFVLENBQUM7TUFhUCxZQUFZLEVUdkZQLFNBQW1ELEdTNEczRDtFQWxDRCxBQWdCRSxVQWhCUSxBQWdCUCxNQUFNLENBQUM7SVJ5SFQsVUFBVSxFQUZXLDBCQUFPO0lBaUo1QixPQUFPLEVRdFF1QixJQUFPO0lSdVFyQyxXQUFXLEVBQUUsU0FBUztJQUN0QixTQUFTLEVReFEwQyxPQUFPO0lSeVExRCxXQUFXLEVBQUUsQ0FBQztJQUNkLFdBQVcsRUFBRSxDQUFDO0lRelFYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsU0FBUyxFQUFFLGtCQUFrQjtJQUM3QixJQUFJLEVBQUUsQ0FBQztJQUNQLFdBQVcsRUFBRSxNQUFNLEdBQ3BCO0VBeEJILEFBMEJFLFVBMUJRLEFBMEJQLE1BQU0sQ0FBQztJQUNOLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLEtBQUssRVZ2RkMsT0FBTyxHVTRGZDtJQWpDSCxBQThCSSxVQTlCTSxBQTBCUCxNQUFNLEFBSUosTUFBTSxDQUFDO01BQ04sU0FBUyxFQUFFLHFCQUFxQixHQUNqQzs7QUFJTCxBQUNFLFlBRFUsQ0FDVixDQUFDLENBQUM7RUFDQSxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENWUlEsdUJBQXVCLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVU7RVVTdEYsU0FBUyxFVGpISixJQUFtRDtFU2tIeEQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFVnZHQyxPQUFPO0VVd0diLGNBQWMsRUFBRSxTQUFTLEdBTTFCO0VBWkgsQUFRSSxZQVJRLENBQ1YsQ0FBQyxBQU9FLE1BQU0sQ0FBQztJQUNOLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLEtBQUssRVZ6R0QsT0FBTyxHVTBHWjs7QUFHTCxBQUFBLFlBQVksQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxHQUFHO0VBQ25CLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFVGhJdUIsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQ7RVNrSTFELGNBQWMsRUFBRSxTQUFTO0VBQ3pCLFNBQVMsRVRuSUYsSUFBbUQ7RVNvSTFELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEtBQUssRVYvSEksT0FBTztFVWdJaEIsVUFBVSxFQUFFLFdBQVcsR0FrQnhCO0VBNUJELEFBWUUsWUFaVSxBQVlULE1BQU0sQ0FBQztJUjBOVCxPQUFPLEVRek51QixJQUFPO0lSME5yQyxXQUFXLEVBQUUsU0FBUztJQUN0QixTQUFTLEVRM04wQyxNQUFNO0lSNE56RCxXQUFXLEVBQUUsQ0FBQztJQUNkLFdBQVcsRUFBRSxDQUFDO0lRNU5YLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLElBQUksRUFBRSxHQUFHO0lBQ1QsU0FBUyxFQUFFLGdCQUFnQjtJQUMzQixNQUFNLEVBQUUsQ0FBQztJQUNULFdBQVcsRUFBRSxNQUFNLEdBQ3BCO0VBbkJILEFBcUJFLFlBckJVLEFBcUJULE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7RUF2QkgsQUF5QkUsWUF6QlUsQUF5QlQsTUFBTSxDQUFDO0lBQ04sS0FBSyxFVjFJQyxPQUFPLEdVMklkOztBQUdILEFBQUEsV0FBVyxDQUFDO0VBQ1YsT0FBTyxFQUFFLFdBQVc7RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsZUFBZSxFQUFFLE1BQU07RUFDdkIsY0FBYyxFQUFFLEdBQUc7RUFDbkIsU0FBUyxFVC9KRixNQUFtRCxHU21NM0Q7RXhDbkpHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJd0MwRzVCLEFBQUEsV0FBVyxDQUFDO01BUVIsU0FBUyxFVGxLSixTQUFtRCxHU21NM0Q7RUF6Q0QsQUFXRSxXQVhTLENBV1QsVUFBVSxDQUFDO0lBQ1QsT0FBTyxFQUFFLElBQUk7SUFDYixXQUFXLEVBQUUsTUFBTTtJQUNuQixlQUFlLEVBQUUsTUFBTTtJQUN2QixhQUFhLEVBQUUsR0FBRztJQUNsQixLQUFLLEU1Qy9LRSxJQUFJO0k0Q2dMWCxVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLEtBQUssRVQ1S0EsSUFBbUQ7SVM2S3hELE1BQU0sRVQ3S0QsSUFBbUQsR1N3THpEO0l4Q3hJQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXdDMEc1QixBQVdFLFdBWFMsQ0FXVCxVQUFVLENBQUM7UUFXUCxLQUFLLEVUaExGLE9BQW1EO1FTaUx0RCxNQUFNLEVUakxILE9BQW1ELEdTd0x6RDtJQTlCSCxBQTBCSSxXQTFCTyxDQVdULFVBQVUsQUFlUCxPQUFPLENBQUM7TVIrQlosVUFBVSxFQUZXLDBCQUFPO01RM0J2QixNQUFNLEVUckxvQixDQUFDLENBQUQsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQsR1N1THZEO0VBN0JMLEFBZ0NFLFdBaENTLEFBZ0NSLE1BQU0sQ0FBQztJQUNOLGVBQWUsRUFBRSxJQUFJLEdBT3RCO0lBeENILEFBb0NNLFdBcENLLEFBZ0NSLE1BQU0sQ0FHTCxVQUFVLEFBQ1AsT0FBTyxDQUFDO01BQ1AsU0FBUyxFQUFFLFdBQVcsR0FDdkI7O0FDNU1QLEFBQUEsS0FBSyxDQUFDO0VBQ0osSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENYcUhhLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVSxHV2pFL0U7RUFyREQsQUFJSSxLQUpDLENBR0gsWUFBWSxDQUNWLEdBQUcsQ0FBQztJVDJOUCxVQUFVLEVBRlcsMEJBQU8sR1N2TnhCO0VBTkwsQUFXTSxLQVhELEFBU0YsTUFBTSxDQUNMLFlBQVksQ0FDVixHQUFHLENBQUM7SUFDRixJQUFJLEVYWUYsT0FBTztJV1hULFNBQVMsRUFBRSxVQUFVLEdBTXRCO0lBbkJQLEFBZVEsS0FmSCxBQVNGLE1BQU0sQ0FDTCxZQUFZLENBQ1YsR0FBRyxDQUlELElBQUksQ0FBQztNQUNILElBQUksRVhRSixPQUFPO01XUFAsTUFBTSxFWE9OLE9BQU8sR1dOUjtFQWxCVCxBQXNCSSxLQXRCQyxBQVNGLE1BQU0sQ0FhTCxXQUFXLENBQUM7SUFDVixLQUFLLEVYQ0QsT0FBTztJV0FYLFNBQVMsRUFBRSxVQUFVLEdBQ3RCO0VBekJMLEFBNEJFLEtBNUJHLEFBNEJGLGVBQWUsQ0FBQztJQUNmLFVBQVUsRUFBRSxXQUFXLEdBdUJ4QjtJekNRQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXlDNUQ1QixBQStCSSxLQS9CQyxBQTRCRixlQUFlLENBR2QsWUFBWSxDQUFDO1FBRVQsVUFBVSxFVnJCVCxPQUFtRCxHVXVCdkQ7SUFuQ0wsQUFxQ0ksS0FyQ0MsQUE0QkYsZUFBZSxDQVNkLFlBQVksQ0FBQztNQUNYLGNBQWMsRUFBRSxDQUFDLEdBQ2xCO0lBdkNMLEFBeUNJLEtBekNDLEFBNEJGLGVBQWUsQ0FhZCxVQUFVLENBQUM7TUFDVCxXQUFXLEVWOUJSLFFBQW1ELEdVbUN2RDtNQS9DTCxBQTRDTSxLQTVDRCxBQTRCRixlQUFlLENBYWQsVUFBVSxBQUdQLFdBQVcsQ0FBQztRQUNYLGNBQWMsRUFBRSxDQUFDLEdBQ2xCO0lBOUNQLEFBaURJLEtBakRDLEFBNEJGLGVBQWUsQ0FxQmQsRUFBRSxDQUFDO01BQ0QsTUFBTSxFVnJDb0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsT0FBbUQsR1V1Q3ZEOztBQUdMLEFBQ0UsQ0FERCxBQUNFLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBRSxJQUFJLEdBUXRCO0VBVkgsQUFHSSxDQUhILEFBQ0UsTUFBTSxDQUVMLEVBQUU7RUFITixDQUFDLEFBQ0UsTUFBTSxDQUdMLEVBQUU7RUFKTixDQUFDLEFBQ0UsTUFBTSxDQUlMLEVBQUU7RUFMTixDQUFDLEFBQ0UsTUFBTSxDQUtMLEVBQUU7RUFOTixDQUFDLEFBQ0UsTUFBTSxDQU1MLEVBQUUsQ0FBQztJQUNELGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUdMLEFBSUUsQ0FKRCxBQUFBLGVBQWUsQ0FJZCxFQUFFO0FBSkosQ0FBQyxBQUFBLGVBQWUsQ0FLZCxFQUFFO0FBTEosQ0FBQyxBQUFBLGVBQWUsQ0FNZCxFQUFFO0FBTkosQ0FBQyxBQUFBLGVBQWUsQ0FPZCxFQUFFO0FBUEosQ0FBQyxBQUFBLGVBQWUsQ0FRZCxFQUFFO0FBUEosQ0FBQyxBQUFBLEtBQUssQ0FHSixFQUFFO0FBSEosQ0FBQyxBQUFBLEtBQUssQ0FJSixFQUFFO0FBSkosQ0FBQyxBQUFBLEtBQUssQ0FLSixFQUFFO0FBTEosQ0FBQyxBQUFBLEtBQUssQ0FNSixFQUFFO0FBTkosQ0FBQyxBQUFBLEtBQUssQ0FPSixFQUFFO0FBTkosQ0FBQyxBQUFBLFdBQVcsQ0FFVixFQUFFO0FBRkosQ0FBQyxBQUFBLFdBQVcsQ0FHVixFQUFFO0FBSEosQ0FBQyxBQUFBLFdBQVcsQ0FJVixFQUFFO0FBSkosQ0FBQyxBQUFBLFdBQVcsQ0FLVixFQUFFO0FBTEosQ0FBQyxBQUFBLFdBQVcsQ0FNVixFQUFFO0FBTEosV0FBVyxDQUNULEVBQUU7QUFESixXQUFXLENBRVQsRUFBRTtBQUZKLFdBQVcsQ0FHVCxFQUFFO0FBSEosV0FBVyxDQUlULEVBQUU7QUFKSixXQUFXLENBS1QsRUFBRSxDQUFDO0VUcUpKLFVBQVUsRUFGVyxzQkFBTyxHU2pKMUI7O0FBVkgsQUFZRSxDQVpELEFBQUEsZUFBZSxBQVliLE1BQU07QUFYVCxDQUFDLEFBQUEsS0FBSyxBQVdILE1BQU07QUFWVCxDQUFDLEFBQUEsV0FBVyxBQVVULE1BQU07QUFUVCxXQUFXLEFBU1IsTUFBTSxDQUFDO0VBQ04sZUFBZSxFQUFFLElBQUksR0FxQnRCO0VBbENILEFBZUksQ0FmSCxBQUFBLGVBQWUsQUFZYixNQUFNLENBR0wsVUFBVTtFQWRkLENBQUMsQUFBQSxLQUFLLEFBV0gsTUFBTSxDQUdMLFVBQVU7RUFiZCxDQUFDLEFBQUEsV0FBVyxBQVVULE1BQU0sQ0FHTCxVQUFVO0VBWmQsV0FBVyxBQVNSLE1BQU0sQ0FHTCxVQUFVLENBQUM7SUFDVCxLQUFLLEVYMURELE9BQU8sR1cyRFo7RUFqQkwsQUFtQkksQ0FuQkgsQUFBQSxlQUFlLEFBWWIsTUFBTSxDQU9MLFdBQVc7RUFsQmYsQ0FBQyxBQUFBLEtBQUssQUFXSCxNQUFNLENBT0wsV0FBVztFQWpCZixDQUFDLEFBQUEsV0FBVyxBQVVULE1BQU0sQ0FPTCxXQUFXO0VBaEJmLFdBQVcsQUFTUixNQUFNLENBT0wsV0FBVyxDQUFDO0lBQ1YsT0FBTyxFQUFFLENBQUMsR0FJWDtJQXhCTCxBQXFCTSxDQXJCTCxBQUFBLGVBQWUsQUFZYixNQUFNLENBT0wsV0FBVyxDQUVULEdBQUc7SUFwQlQsQ0FBQyxBQUFBLEtBQUssQUFXSCxNQUFNLENBT0wsV0FBVyxDQUVULEdBQUc7SUFuQlQsQ0FBQyxBQUFBLFdBQVcsQUFVVCxNQUFNLENBT0wsV0FBVyxDQUVULEdBQUc7SUFsQlQsV0FBVyxBQVNSLE1BQU0sQ0FPTCxXQUFXLENBRVQsR0FBRyxDQUFDO01BQ0YsU0FBUyxFQUFFLFVBQVUsR0FDdEI7RUF2QlAsQUEwQkksQ0ExQkgsQUFBQSxlQUFlLEFBWWIsTUFBTSxDQWNMLEVBQUU7RUExQk4sQ0FBQyxBQUFBLGVBQWUsQUFZYixNQUFNLENBZUwsRUFBRTtFQTNCTixDQUFDLEFBQUEsZUFBZSxBQVliLE1BQU0sQ0FnQkwsRUFBRTtFQTVCTixDQUFDLEFBQUEsZUFBZSxBQVliLE1BQU0sQ0FpQkwsRUFBRTtFQTdCTixDQUFDLEFBQUEsZUFBZSxBQVliLE1BQU0sQ0FrQkwsRUFBRTtFQTdCTixDQUFDLEFBQUEsS0FBSyxBQVdILE1BQU0sQ0FjTCxFQUFFO0VBekJOLENBQUMsQUFBQSxLQUFLLEFBV0gsTUFBTSxDQWVMLEVBQUU7RUExQk4sQ0FBQyxBQUFBLEtBQUssQUFXSCxNQUFNLENBZ0JMLEVBQUU7RUEzQk4sQ0FBQyxBQUFBLEtBQUssQUFXSCxNQUFNLENBaUJMLEVBQUU7RUE1Qk4sQ0FBQyxBQUFBLEtBQUssQUFXSCxNQUFNLENBa0JMLEVBQUU7RUE1Qk4sQ0FBQyxBQUFBLFdBQVcsQUFVVCxNQUFNLENBY0wsRUFBRTtFQXhCTixDQUFDLEFBQUEsV0FBVyxBQVVULE1BQU0sQ0FlTCxFQUFFO0VBekJOLENBQUMsQUFBQSxXQUFXLEFBVVQsTUFBTSxDQWdCTCxFQUFFO0VBMUJOLENBQUMsQUFBQSxXQUFXLEFBVVQsTUFBTSxDQWlCTCxFQUFFO0VBM0JOLENBQUMsQUFBQSxXQUFXLEFBVVQsTUFBTSxDQWtCTCxFQUFFO0VBM0JOLFdBQVcsQUFTUixNQUFNLENBY0wsRUFBRTtFQXZCTixXQUFXLEFBU1IsTUFBTSxDQWVMLEVBQUU7RUF4Qk4sV0FBVyxBQVNSLE1BQU0sQ0FnQkwsRUFBRTtFQXpCTixXQUFXLEFBU1IsTUFBTSxDQWlCTCxFQUFFO0VBMUJOLFdBQVcsQUFTUixNQUFNLENBa0JMLEVBQUUsQ0FBQztJQUNELEtBQUssRVh6RUQsT0FBTztJVzBFWCxlQUFlLEVBQUUsSUFBSSxHQUN0Qjs7QUFJTCxBQUdFLGVBSGEsQ0FHYixDQUFDO0FBRkgsS0FBSyxDQUVILENBQUM7QUFESCxXQUFXLENBQ1QsQ0FBQyxDQUFDO0VBQ0EsTUFBTSxFVjlGc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsT0FBbUQsR1VvR3pEO0VBVEgsQUFNSSxlQU5XLENBR2IsQ0FBQyxBQUdFLFdBQVc7RUFMaEIsS0FBSyxDQUVILENBQUMsQUFHRSxXQUFXO0VBSmhCLFdBQVcsQ0FDVCxDQUFDLEFBR0UsV0FBVyxDQUFDO0lBQ1gsTUFBTSxFQUFFLENBQUMsR0FDVjs7QUFSTCxBQVdFLGVBWGEsQ0FXYixFQUFFO0FBWEosZUFBZSxDQVliLEVBQUU7QUFaSixlQUFlLENBYWIsRUFBRTtBQWJKLGVBQWUsQ0FjYixFQUFFO0FBZEosZUFBZSxDQWViLEVBQUU7QUFkSixLQUFLLENBVUgsRUFBRTtBQVZKLEtBQUssQ0FXSCxFQUFFO0FBWEosS0FBSyxDQVlILEVBQUU7QUFaSixLQUFLLENBYUgsRUFBRTtBQWJKLEtBQUssQ0FjSCxFQUFFO0FBYkosV0FBVyxDQVNULEVBQUU7QUFUSixXQUFXLENBVVQsRUFBRTtBQVZKLFdBQVcsQ0FXVCxFQUFFO0FBWEosV0FBVyxDQVlULEVBQUU7QUFaSixXQUFXLENBYVQsRUFBRSxDQUFDO0VBQ0QsV0FBVyxFQUFFLE9BQU8sR0FDckI7O0F6Qy9DQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7RXlDOEIvQixBQW1CRSxlQW5CYSxDQW1CYixFQUFFO0VBbEJKLEtBQUssQ0FrQkgsRUFBRTtFQWpCSixXQUFXLENBaUJULEVBQUUsQ0FBQztJQUVDLFNBQVMsRVZoSE4sT0FBbUQsR1VrSHpEOztBekNyREMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0V5QzhCL0IsQUF5QkUsZUF6QmEsQ0F5QmIsRUFBRTtFQXhCSixLQUFLLENBd0JILEVBQUU7RUF2QkosV0FBVyxDQXVCVCxFQUFFLENBQUM7SUFFQyxTQUFTLEVWdEhOLE9BQW1EO0lVdUh0RCxXQUFXLEVBQUUsR0FBRyxHQUVuQjs7QUE5QkgsQUFnQ0UsZUFoQ2EsQ0FnQ2IsRUFBRTtBQS9CSixLQUFLLENBK0JILEVBQUU7QUE5QkosV0FBVyxDQThCVCxFQUFFLENBQUM7RUFDRCxNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQWxDSCxBQW9DRSxlQXBDYSxDQW9DYixXQUFXO0FBbkNiLEtBQUssQ0FtQ0gsV0FBVztBQWxDYixXQUFXLENBa0NULFdBQVcsQ0FBQztFQUNWLEtBQUssRVgvSEUsT0FBTztFV2dJZCxTQUFTLEVWaklKLElBQW1EO0VVa0l4RCxXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVWbklSLFNBQW1ELEdVd0l6RDtFQTdDSCxBQTBDSSxlQTFDVyxDQW9DYixXQUFXLEFBTVIsTUFBTTtFQXpDWCxLQUFLLENBbUNILFdBQVcsQUFNUixNQUFNO0VBeENYLFdBQVcsQ0FrQ1QsV0FBVyxBQU1SLE1BQU0sQ0FBQztJQUNOLEtBQUssRVgxSEQsT0FBTyxHVzJIWjs7QUFJTCxBQUFBLFdBQVcsQ0FBQztFQUNWLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFVjVJd0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR1U4TzNEO0V6QzlMRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SXlDMkY1QixBQUFBLFdBQVcsQ0FBQztNQUtSLE9BQU8sRUFBRSxJQUFJO01BQ2IsTUFBTSxFVmhKc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsTUFBbUQsR1U4TzNEO0VBbkdELEFBU0UsV0FUUyxDQVNULFdBQVcsQ0FBQztJQUNWLFVBQVUsRVZySkwsT0FBbUQ7SVVzSnhELFFBQVEsRUFBRSxNQUFNO0lBQ2hCLE9BQU8sRUFBRSxDQUFDLEdBa0JYO0l6Q3pIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXlDMkY1QixBQVNFLFdBVFMsQ0FTVCxXQUFXLENBQUM7UUFNUixLQUFLLEVWMUpGLFFBQW1ELEdVeUt6RDtJekN6SEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO015QzJGNUIsQUFTRSxXQVRTLENBU1QsV0FBVyxDQUFDO1FBVVIsS0FBSyxFVjlKRixRQUFtRCxHVXlLekQ7SUE5QkgsQUFzQkksV0F0Qk8sQ0FTVCxXQUFXLENBYVQsR0FBRyxDQUFDO01Ua0RQLFVBQVUsRUFGVywwQkFBTztNUzlDdkIsVUFBVSxFQUFFLEtBQUs7TUFDakIsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLFFBQVEsRUFBRSxRQUFRO01BQ2xCLE9BQU8sRUFBRSxDQUFDLEdBQ1g7RUE3QkwsQUFnQ0UsV0FoQ1MsQ0FnQ1QsVUFBVSxDQUFDO0lBQ1QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFVjdLRSxTQUFtRDtJVThLeEQsS0FBSyxFVjlLQSxTQUFtRDtJVStLeEQsU0FBUyxFVi9LSixTQUFtRCxHVXlMekQ7SXpDeklDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNeUMyRjdCLEFBZ0NFLFdBaENTLENBZ0NULFVBQVUsQ0FBQztRQU9QLEtBQUssRVZsTEYsU0FBbUQsR1V5THpEO0lBOUNILEFBMENNLFdBMUNLLENBZ0NULFVBQVUsQ0FTUixhQUFhLEFBQ1YsTUFBTSxDQUFDO01BQ04sT0FBTyxFQUFFLElBQUksR0FDZDtFQTVDUCxBQWdERSxXQWhEUyxDQWdEVCxVQUFVLENBQUM7SUFDVCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVWN0xGLFFBQW1ELEdVcU56RDtJekN4SkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO015QzhFL0IsQUFnREUsV0FoRFMsQ0FnRFQsVUFBVSxDQUFDO1FBS1AsVUFBVSxFQUFFLE1BQU0sR0FxQnJCO0l6Q3JLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXlDMkY1QixBQWdERSxXQWhEUyxDQWdEVCxVQUFVLENBQUM7UUFTUCxPQUFPLEVBQUUsSUFBSTtRQUNiLGNBQWMsRUFBRSxNQUFNO1FBQ3RCLGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLFdBQVcsRUFBRSxVQUFVO1FBQ3ZCLElBQUksRUFBRSxHQUFHO1FBQ1QsT0FBTyxFVnpNSixTQUFtRCxDQUM1QixDQUFDLEdVb045QjtJekNyS0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO015QzJGNUIsQUFnREUsV0FoRFMsQ0FnRFQsVUFBVSxDQUFDO1FBa0JQLE9BQU8sRVY3TUosU0FBbUQsQ0FBbkQsUUFBbUQsQ0FBbkQsU0FBbUQsQ0FBbkQsTUFBbUQsR1VxTnpEO0l6Q3hKQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TXlDOEUvQixBQXFFSSxXQXJFTyxDQWdEVCxVQUFVLEFBcUJQLFdBQVcsQ0FBQztRQUVULGNBQWMsRUFBRSxDQUFDLEdBRXBCO0VBekVMLEFBNEVFLFdBNUVTLENBNEVULE1BQU0sQ0FBQztJQUNMLE1BQU0sRVZ2TnNCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEdVeU56RDtFQTlFSCxBQWdGRSxXQWhGUyxDQWdGVCxFQUFFO0VBaEZKLFdBQVcsQ0FpRlQsR0FBRztFQWpGTCxXQUFXLENBa0ZULEVBQUU7RUFsRkosV0FBVyxDQW1GVCxHQUFHO0VBbkZMLFdBQVcsQ0FvRlQsRUFBRTtFQXBGSixXQUFXLENBcUZULEdBQUc7RUFyRkwsV0FBVyxDQXNGVCxFQUFFO0VBdEZKLFdBQVcsQ0F1RlQsR0FBRztFQXZGTCxXQUFXLENBd0ZULEVBQUU7RUF4RkosV0FBVyxDQXlGVCxHQUFHO0VBekZMLFdBQVcsQ0EwRlQsRUFBRTtFQTFGSixXQUFXLENBMkZULEdBQUc7RUEzRkwsV0FBVyxDQTRGVCxFQUFFLENBQUM7SUFDRCxjQUFjLEVBQUUsSUFBSSxHQUtyQjtJQWxHSCxBQStGSSxXQS9GTyxDQWdGVCxFQUFFLEFBZUMsV0FBVztJQS9GaEIsV0FBVyxDQWlGVCxHQUFHLEFBY0EsV0FBVztJQS9GaEIsV0FBVyxDQWtGVCxFQUFFLEFBYUMsV0FBVztJQS9GaEIsV0FBVyxDQW1GVCxHQUFHLEFBWUEsV0FBVztJQS9GaEIsV0FBVyxDQW9GVCxFQUFFLEFBV0MsV0FBVztJQS9GaEIsV0FBVyxDQXFGVCxHQUFHLEFBVUEsV0FBVztJQS9GaEIsV0FBVyxDQXNGVCxFQUFFLEFBU0MsV0FBVztJQS9GaEIsV0FBVyxDQXVGVCxHQUFHLEFBUUEsV0FBVztJQS9GaEIsV0FBVyxDQXdGVCxFQUFFLEFBT0MsV0FBVztJQS9GaEIsV0FBVyxDQXlGVCxHQUFHLEFBTUEsV0FBVztJQS9GaEIsV0FBVyxDQTBGVCxFQUFFLEFBS0MsV0FBVztJQS9GaEIsV0FBVyxDQTJGVCxHQUFHLEFBSUEsV0FBVztJQS9GaEIsV0FBVyxDQTRGVCxFQUFFLEFBR0MsV0FBVyxDQUFDO01BQ1gsTUFBTSxFQUFFLENBQUMsR0FDVjs7QXpDNUxELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFeUNnTTVCLEFBQ0UsbUJBRGlCLEFBQ2hCLFdBQVcsQ0FBQztJQUVULGFBQWEsRVZuUFYsU0FBbUQsR1VxUHpEOztBQUdILEFBQUEsWUFBWSxDQUFDO0VBQ1gsVUFBVSxFQUFFLE9BQU87RUFDbkIsV0FBVyxFVjFQSixRQUFtRDtFVTJQMUQsY0FBYyxFVjNQUCxTQUFtRCxHVTRQM0Q7O0FBRUQsQUFDRSxVQURRLEFBQ1AsV0FBVyxDQUFDO0VBQ1gsY0FBYyxFVmhRVCxPQUFtRCxHVWlRekQ7O0FBR0gsQUFBQSxZQUFZLENBQUM7RUFDWCxVQUFVLEVBQUUsT0FBTztFQUNuQixXQUFXLEVWdFFKLFFBQW1EO0VVdVExRCxjQUFjLEVWdlFQLFFBQW1ELEdVNlEzRDtFekM3TkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0l5Q29ONUIsQUFBQSxZQUFZLENBQUM7TUFNVCxXQUFXLEVBQUUsQ0FBQztNQUNkLGNBQWMsRVYzUVQsU0FBbUQsR1U2UTNEOztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osWUFBWSxFVmhSTCxTQUFtRDtFVWlSMUQsV0FBVyxFVmpSSixTQUFtRCxHVW9VM0Q7RXpDcFJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJeUMrTjdCLEFBQUEsYUFBYSxDQUFDO01BS1YsWUFBWSxFVnBSUCxTQUFtRDtNVXFSeEQsV0FBVyxFVnJSTixTQUFtRCxHVW9VM0Q7RXpDcFJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJeUMrTjdCLEFBQUEsYUFBYSxDQUFDO01BVVYsWUFBWSxFVnpSUCxPQUFtRDtNVTBSeEQsV0FBVyxFVjFSTixPQUFtRCxHVW9VM0Q7RUFyREQsQUFjRSxhQWRXLEFBY1YsV0FBVyxDQUFDO0lBQ1gsYUFBYSxFVjlSUixPQUFtRCxHVStSekQ7RUFoQkgsQUFrQkUsYUFsQlcsSUFrQlQsQUFBQSxLQUFDLEVBQU8sS0FBSyxBQUFaO0VBbEJMLGFBQWEsSUFtQlQsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLEVBQWU7SUFDaEIsYUFBYSxFVm5TUixRQUFtRDtJVW9TeEQsWUFBWSxFVnBTUCxRQUFtRCxHVW1VekQ7SXpDblJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNeUMrTjdCLEFBa0JFLGFBbEJXLElBa0JULEFBQUEsS0FBQyxFQUFPLEtBQUssQUFBWjtNQWxCTCxhQUFhLElBbUJULEFBQUEsS0FBQyxFQUFPLE1BQU0sQUFBYixFQUFlO1FBUWQsYUFBYSxFVjFTVixNQUFtRDtRVTJTdEQsWUFBWSxFVjNTVCxNQUFtRCxHVW1VekQ7SXpDdFFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNeUNrTi9CLEFBaUNRLGFBakNLLElBa0JULEFBQUEsS0FBQyxFQUFPLEtBQUssQUFBWixDQWFBLFdBQVcsQ0FDVixLQUFLLEFBQ0YsZUFBZTtNQWpDeEIsYUFBYSxJQW1CVCxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsQ0FZQSxXQUFXLENBQ1YsS0FBSyxBQUNGLGVBQWUsQ0FBQztRQUViLGFBQWEsRUFBRSxDQUFDLEdBRW5CO0lBckNULEFBeUNJLGFBekNTLElBa0JULEFBQUEsS0FBQyxFQUFPLEtBQUssQUFBWixFQXVCRCxLQUFLO0lBekNULGFBQWEsSUFtQlQsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLEVBc0JELEtBQUssQ0FBQztNQUNKLGFBQWEsRVZ6VFYsTUFBbUQsR1VrVXZEO01BbkRMLEFBNENNLGFBNUNPLElBa0JULEFBQUEsS0FBQyxFQUFPLEtBQUssQUFBWixFQXVCRCxLQUFLLEFBR0YsZUFBZTtNQTVDdEIsYUFBYSxJQW1CVCxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsRUFzQkQsS0FBSyxBQUdGLGVBQWUsQ0FBQztRQUNmLGFBQWEsRVY1VFosUUFBbUQsR1VpVXJEO1F6Q2pSSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7VXlDK041QixBQTRDTSxhQTVDTyxJQWtCVCxBQUFBLEtBQUMsRUFBTyxLQUFLLEFBQVosRUF1QkQsS0FBSyxBQUdGLGVBQWU7VUE1Q3RCLGFBQWEsSUFtQlQsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiLEVBc0JELEtBQUssQUFHRixlQUFlLENBQUM7WUFJYixhQUFhLEVWL1RkLFFBQW1ELEdVaVVyRDs7QUM3VVAsQUFBQSxhQUFhLENBQUM7RUFDWixjQUFjLEVBQUUsTUFBTSxHQU12QjtFMUNxREcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0kwQzVENUIsQUFBQSxhQUFhLENBQUM7TUFJVixTQUFTLEVYUUosT0FBbUQ7TVdQeEQsT0FBTyxFOUNrWW1CLFFBQU8sQzhDbFlQLE9BQU8sR0FFcEM7O0ExQ2tFRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7RTBDaEUvQixBQUFBLG1CQUFtQixDQUFDO0lBRWhCLFdBQVcsRUFBRSxDQUFDO0lBQ2QsS0FBSyxFQUFFLElBQUksR0FFZDs7QTFDMkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtFMEN6RC9CLEFBQUEsWUFBWSxHQUFHLGFBQWE7RUFDNUIsWUFBWSxHQUFHLHVCQUF1QjtFQUN0QyxZQUFZLEdBQUcsY0FBYztFQUM3QixZQUFZLEdBQUcsWUFBWSxDQUFDO0lBRXhCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFQUFFLElBQUksR0FFZDs7QUFFRCxBQUNFLGVBRGEsQ0FDYixhQUFhLENBQUM7RUFDWixPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUFNLEdBT3BCO0VBVkgsQUFLSSxlQUxXLENBQ2IsYUFBYSxDQUlYLElBQUksQ0FBQztJQUNILFdBQVcsRUFBRSxNQUFNO0lBQ25CLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLGFBQWEsRUFBRSxRQUFRLEdBQ3hCOztBQVRMLEFBWUUsZUFaYSxDQVliLElBQUksQ0FBQztFQUNILE9BQU8sRUFBRSxXQUFXO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0I7RUFDekIsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVaOEswQixRQUFRO0VZN0s1QyxTQUFTLEVYakNKLE9BQW1ELEdXMkN6RDtFMUNLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7STBDbEM1QixBQVlFLGVBWmEsQ0FZYixJQUFJLENBQUM7TUFVRCxLQUFLLEVYcENGLFVBQW1ELEdXMkN6RDtFQTdCSCxBQXlCSSxlQXpCVyxDQVliLElBQUksQ0FhRixDQUFDLENBQUM7SUFDQSxTQUFTLEVYeENOLFFBQW1EO0lXeUN0RCxXQUFXLEVBQUUsTUFBTSxHQUNwQjs7QUE1QkwsQUErQkUsZUEvQmEsQ0ErQmIsSUFBSSxBQUFBLElBQUksQ0FBQztFQUNQLGNBQWMsRUFBRSxJQUFJLEdBQ3JCOztBQUdILEFBQ0Usb0JBRGtCLENBQ2xCLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxLQUFLO0VBQ2QsY0FBYyxFQUFFLFNBQVMsR0FDMUI7O0FBSkgsQUFLRSxvQkFMa0IsQ0FLbEIsVUFBVSxDQUFDO0VBQ1QsV0FBVyxFQUFFLDREQUE0RDtFQUN6RSxjQUFjLEVBQUUsU0FBUztFQUN6QixPQUFPLEVBQUUsbUJBQW1CO0VBQzVCLE9BQU8sRUFBRSx1QkFBdUI7RUFDaEMsS0FBSyxFQUFFLElBQUk7RUFDWCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLFlBQVksRUFBRSxPQUFPO0VBRXJCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFFLE9BQU87RUFDdEIsa0JBQWtCLEVBQUUsMkhBRVU7RUFDOUIsVUFBVSxFQUFFLDBIQUNrRCxHQU0vRDtFQTVCSCxBQXdCSSxvQkF4QmdCLENBS2xCLFVBQVUsQUFtQlAsTUFBTSxDQUFDO0lBQ04sWUFBWSxFQUFFLE9BQU87SUFDckIsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0FBS0wsQUFDRSxRQURNLENBQ04sY0FBYyxDQUFDO0VBQ2IsVUFBVSxFQUFFLE1BQU0sR0FPbkI7RUFUSCxBQUdJLFFBSEksQ0FDTixjQUFjLENBRVosWUFBWSxDQUFDO0lBQ1gsU0FBUyxFWHRGTixJQUFtRCxHV3VGdkQ7RUFMTCxBQU1JLFFBTkksQ0FDTixjQUFjLENBS1osa0JBQWtCLENBQUM7SUFDakIsV0FBVyxFQUFFLGtEQUFrRCxHQUNoRTs7QUFSTCxBQVdJLFFBWEksQ0FVTixXQUFXLENBQ1QsTUFBTSxBQUFBLGNBQWMsQ0FBQztFQUNuQixPQUFPLEVBQUUsYUFBYSxHQUN2Qjs7QUFiTCxBQWVNLFFBZkUsQ0FVTixXQUFXLENBSVQsd0JBQXdCLENBQ3RCLG1CQUFtQixDQUFDO0VBQ2xCLFdBQVcsRUFBRSxHQUFHLEdBQ2pCOztBQWpCUCxBQW1CSSxRQW5CSSxDQVVOLFdBQVcsQ0FTVCxtQkFBbUIsQ0FBQztFQUNsQixJQUFJLEVBQUUsa0ZBQ2EsR0FDcEI7O0FBdEJMLEFBd0JFLFFBeEJNLENBd0JOLGFBQWEsQ0FBQztFQUNaLFVBQVUsRUFBRSxNQUFNLEdBaUJuQjtFQTFDSCxBQTBCSSxRQTFCSSxDQXdCTixhQUFhLENBRVgsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixFQUFlO0lBQ25CLE1BQU0sRUFBRSxJQUFJO0lBQ1osTUFBTSxFQUFFLElBQUk7SUFDWixLQUFLLEVBQUUsSUFBSTtJQUNYLGdCQUFnQixFQUFFLE9BQU87SUFDekIsWUFBWSxFQUFFLE9BQU87SUFDckIsYUFBYSxFQUFFLEdBQUc7SUFDbEIsSUFBSSxFQUFFLGtEQUFrRDtJQUN4RCxVQUFVLEVBQUUseUdBQzBDO0lBQ3RELE9BQU8sRUFBRSxjQUFjLEdBS3hCO0lBekNMLEFBcUNNLFFBckNFLENBd0JOLGFBQWEsQ0FFWCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBV0gsTUFBTSxDQUFDO01BQ04sWUFBWSxFQUFFLE9BQU87TUFDckIsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0ExQzdESCxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7RTBDaUVoQyxBQUVJLFdBRk8sQ0FFUCxNQUFNLEFBQUEsYUFBYSxDQUFBO0lBQ2pCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFQUFFLEVBQUUsR0FDVjtFQUxMLEFBTUksV0FOTyxDQU1QLG1CQUFtQixDQUFBO0lBQ2pCLEtBQUssRUFBRSxLQUFLO0lBQ1osV0FBVyxFQUFFLFFBQVEsR0FJdEI7SUFaTCxBQVNNLFdBVEssQ0FNUCxtQkFBbUIsQ0FHakIsS0FBSyxDQUFBO01BQ0gsV0FBVyxFQUFFLEdBQUcsR0FDakI7O0FDckpQLEFBQUEsV0FBVyxDQUFDO0VBQ1YsSUFBSSxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDYnFITyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVU7RWFwSDlFLFNBQVMsRVpVRixJQUFtRCxHWVMzRDtFM0N1Q0csTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0kyQzVENUIsQUFBQSxXQUFXLENBQUM7TUFJUixTQUFTLEVaUUosSUFBbUQsR1lTM0Q7RUFyQkQsQUFRSSxXQVJPLENBT1QsRUFBRSxBQUNDLE9BQU8sQ0FBQztJQUNQLFdBQVcsRUFBRSxHQUFHLEdBQ2pCO0VBVkwsQUFhRSxXQWJTLENBYVQsVUFBVSxDQUFDO0lBQ1QsWUFBWSxFQUFFLE1BQU07SUFDcEIsYUFBYSxFQUFFLE1BQU0sR0FLdEI7STNDd0NDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNMkM1RDVCLEFBYUUsV0FiUyxDQWFULFVBQVUsQ0FBQztRQUlQLFlBQVksRUFBRSxPQUFPO1FBQ3JCLGFBQWEsRUFBRSxPQUFPLEdBRXpCOztBQ3BCSCxBQUFBLFlBQVksQ0FBQztFQUVaLGFBQWEsRWRnSGdCLE1BQU0sR2MxRm5DO0VBeEJELEFBTUcsWUFOUyxBQUlWLFdBQVcsQ0FDWCxFQUFFLEFBQ0EsV0FBVyxDQUFDO0lBQ1osY0FBYyxFQUFFLENBQUMsR0FDakI7RUFSSixBQVlDLFlBWlcsQ0FZWCxFQUFFLENBQUM7SUFDRixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsWUFBWTtJQUNyQixLQUFLLEVBQUUsSUFBSTtJQUNYLE9BQU8sRWJIdUIsQ0FBQyxDQUFELENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEdhVzFEO0lBdkJGLEFBa0JFLFlBbEJVLENBWVgsRUFBRSxBQU1BLE9BQU8sQ0FBQztNQUNSLE9BQU8sRUFBRSxZQUFZO01BQ3JCLE9BQU8sRUFBRSxJQUFJO01BQ2IsTUFBTSxFYlJ1QixDQUFDLENBRHhCLFNBQW1ELENBQzVCLENBQUMsQ0FBRCxDQUFDLEdhUzlCOztBQ3RCSCxBQUFBLFlBQVksQ0FBQztFQUVaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLElBQUk7RUFDZixNQUFNLEVkU3lCLENBQUMsQ0FEeEIsVUFBbUQsQ0FBbkQsU0FBbUQsR2NxQjNEO0U3QzJCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7STZDNUQ1QixBQUFBLFlBQVksQ0FBQztNQU9YLE1BQU0sRWRNd0IsQ0FBQyxDQUR4QixTQUFtRCxDQUFuRCxTQUFtRCxHY3FCM0Q7RUFqQ0QsQUFVQyxZQVZXLENBVVgsRUFBRSxDQUFDO0lBQ0YsTUFBTSxFZEV3QixDQUFDLENBRHhCLFNBQW1ELENBQW5ELFNBQW1ELEdjSTFEO0k3QzRDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TTZDNUQ1QixBQVVDLFlBVlcsQ0FVWCxFQUFFLENBQUM7UUFJRCxNQUFNLEVkRHVCLENBQUMsQ0FEeEIsUUFBbUQsQ0FBbkQsU0FBbUQsR2NJMUQ7RUFoQkYsQUFrQkMsWUFsQlcsQ0FrQlgsQ0FBQyxDQUFDO0lBQ0QsU0FBUyxFZFBGLFNBQW1EO0ljUTFELE9BQU8sRUFBRSxZQUFZO0lBQ3JCLGNBQWMsRUFBRSxHQUFHO0lBQ25CLGVBQWUsRUFBRSxJQUFJLEdBVXJCO0lBaENGLEFBd0JFLFlBeEJVLENBa0JYLENBQUMsQUFNQyxNQUFNLENBQUM7TUFDUCxTQUFTLEVBQUUsZUFBZTtNQUMxQixLQUFLLEVBQUUsT0FBTyxHQUtkO003QzBDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7UTZDekUvQixBQXdCRSxZQXhCVSxDQWtCWCxDQUFDLEFBTUMsTUFBTSxDQUFDO1VBS04sU0FBUyxFQUFFLElBQUksR0FFaEI7O0FDL0JILEFBQUEsVUFBVSxDQUFDO0VBRVQsU0FBUyxFZlVGLFNBQW1EO0VlVDFELFNBQVMsRWZTRixPQUFtRDtFZVIxRCxXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsS0FBSztFQUNsQixXQUFXLEVBQUUsR0FBRztFQUNoQixPQUFPLEVmTXVCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEdlWTNEO0U5Q29DRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SThDNUQ1QixBQUFBLFVBQVUsQ0FBQztNQVVQLFNBQVMsRWZFSixPQUFtRDtNZUR4RCxTQUFTLEVmQ0osT0FBbUQsR2VZM0Q7RUF4QkQsQUFjRSxVQWRRLENBY1IsRUFBRSxDQUFDO0lBQ0QsTUFBTSxFZkZzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHZUl6RDtFQWhCSCxBQW1CSSxVQW5CTSxDQWtCUixDQUFDLEFBQ0UsTUFBTSxDQUFDO0lBQ04sZUFBZSxFQUFFLElBQUk7SUFDckIsS0FBSyxFaEJHRCxPQUFPLEdnQkZaOztBQ3RCTCxBQUFBLFlBQVksQ0FBQztFZitOWixVQUFVLEVBRlcsc0JBQU8sRUFBUCx1QkFBTztFZTNONUIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixlQUFlLEVBQUUsTUFBTTtFQUN2QixLQUFLLEVqQllLLE9BQU87RWlCWGpCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLENBQUM7RUFDYixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLE9BQU87RUFDZixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRWhCRkMsUUFBbUQ7RWdCRzNELFNBQVMsRWhCSEQsT0FBbUQsR2dCbUMzRDtFL0NhRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SStDNUQ1QixBQUFBLFlBQVksQ0FBQztNQWtCWCxHQUFHLEVBQUUsR0FBRztNQUNSLFNBQVMsRUFBRSxnQkFBZ0I7TUFDM0IsTUFBTSxFQUFFLElBQUk7TUFDWixTQUFTLEVoQlRGLFFBQW1ELEdnQm1DM0Q7RUEvQ0QsQUF3QkMsWUF4QlcsQUF3QlYsTUFBTSxDQUFDO0lBQ1AsT0FBTyxFQUFFLElBQUksR0FDYjtFQTFCRixBQTRCQyxZQTVCVyxBQTRCVixNQUFNLENBQUM7SUFDUCxLQUFLLEVqQkZHLE9BQU8sR2lCR2Y7RUE5QkYsQUFnQ0MsWUFoQ1csQUFnQ1YsV0FBVyxDQUFDO0lBQ1osSUFBSSxFaEJyQkcsVUFBbUQsR2dCMEIxRDtJL0NzQkUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00rQzVENUIsQUFnQ0MsWUFoQ1csQUFnQ1YsV0FBVyxDQUFDO1FBSVgsSUFBSSxFQUFFLENBQUMsR0FFUjtFQXRDRixBQXdDQyxZQXhDVyxBQXdDVixXQUFXLENBQUM7SUFDWixLQUFLLEVoQjdCRSxVQUFtRCxHZ0JrQzFEO0kvQ2NFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNK0M1RDVCLEFBd0NDLFlBeENXLEFBd0NWLFdBQVcsQ0FBQztRQUlYLEtBQUssRUFBRSxDQUFDLEdBRVQ7O0FBR0YsQUFBQSxXQUFXLENBQUM7RUFFWCxPQUFPLEVBQUUsSUFBSTtFQUNiLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLE1BQU0sRWhCeEN5QixDQUFDLENBRHhCLFFBQW1EO0VnQjBDM0QsTUFBTSxFaEIxQ0UsUUFBbUQ7RWdCMkMzRCxPQUFPLEVBQUUsRUFBRSxHQWtDWDtFQXhDRCxBQVFDLFdBUlUsQ0FRVixFQUFFLENBQUM7SUFDRixPQUFPLEVoQjdDdUIsQ0FBQyxDQUR4QixPQUFtRCxHZ0IrQzFEO0VBVkYsQUFZQyxXQVpVLENBWVYsTUFBTSxDQUFDO0lma0tQLFVBQVUsRUFGVywyQkFBTztJZTlKM0IsV0FBVyxFQUFFLFVBQVU7SUFDdkIsS0FBSyxFaEJwREUsUUFBbUQ7SWdCcUQxRCxNQUFNLEVoQnJEQyxRQUFtRDtJZ0JzRDFELE1BQU0sRUFBRSxJQUFJO0lBQ1osYUFBYSxFQUFFLEdBQUc7SUFDbEIsT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsQ0FBQztJQUNiLFVBQVUsRUFBRSx3QkFBdUI7SUFDbkMsTUFBTSxFQUFFLE9BQU8sR0FVZjtJQWhDRixBQXlCRSxXQXpCUyxDQVlWLE1BQU0sQUFhSixNQUFNLENBQUM7TUFDUCxPQUFPLEVBQUUsSUFBSSxHQUNiO0lBM0JILEFBNkJFLFdBN0JTLENBWVYsTUFBTSxBQWlCSixNQUFNLENBQUM7TUFDUCxVQUFVLEVBQUUsd0JBQXVCLEdBQ25DO0VBL0JILEFBb0NFLFdBcENTLENBa0NWLGFBQWEsQ0FFWixNQUFNO0VBcENSLFdBQVcsQ0FtQ1Ysa0JBQWtCLENBQ2pCLE1BQU0sQ0FBQztJQUNOLFVBQVUsRUFBRSx3QkFBdUIsR0FDbkM7O0FDdkZILEFBQUEsYUFBYSxDQUFDO0VBQ1osUUFBUSxFQUFFLFFBQVEsR0FVbkI7RWhEaURHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJZ0Q1RDVCLEFBQUEsYUFBYSxDQUFDO01BSVYsVUFBVSxFakJRTCxRQUFtRCxHaUJEM0Q7RWhEaURHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJZ0Q1RDdCLEFBQUEsYUFBYSxDQUFDO01BU1YsVUFBVSxFQUFFLEtBQUssR0FFcEI7O0FBQ0QsQUFBQSxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFJO0VBQ2YsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLEdBQUcsR0FDYjs7QUFDRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFNBQVMsRWpCVkYsSUFBbUQ7RWlCVzFELFdBQVcsRUFBRSxJQUFJLEdBaUxsQjtFQXBMRCxBQUlFLGFBSlcsQUFJVixPQUFPLENBQUM7SUFDUCxPQUFPLEVBQUUsRUFBRTtJQUNYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxDQUFDO0lBQ04sTUFBTSxFQUFFLENBQUM7SUFDVCxJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxDQUFDO0lBQ1IsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixPQUFPLEVBQUUsR0FBRyxHQUNiO0VoRDJCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWdEeEM1QixBQUFBLGFBQWEsQ0FBQztNQWVWLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFdBQVcsRWxCa0ZlLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtNa0JqRjVFLFFBQVEsRUFBRSxLQUFLO01BQ2YsR0FBRyxFQUFFLENBQUM7TUFDTixJQUFJLEVBQUUsQ0FBQztNQUNQLEtBQUssRUFBRSxJQUFJO01BQ1gsU0FBUyxFakI3QkosTUFBbUQsR2lCNEwzRDtFaEQ1SUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lnRHhDN0IsQUFBQSxhQUFhLENBQUM7TUF3QlYsR0FBRyxFQUFFLElBQUksR0E0Slo7RUFwTEQsQUEyQkUsYUEzQlcsQ0EyQlgsRUFBRSxDQUFDO0lBQ0QsY0FBYyxFQUFFLFVBQVU7SUFDMUIsTUFBTSxFakJwQ3NCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdpQjBDekQ7SWhETUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO01nRHhDNUIsQUEyQkUsYUEzQlcsQ0EyQlgsRUFBRSxDQUFDO1FBS0MsTUFBTSxFakJ2Q29CLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEdpQjBDekQ7RWhEbUJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJZ0RyRC9CLEFBb0NFLGFBcENXLENBb0NYLElBQUksQ0FBQztNQUVELFFBQVEsRUFBRSxRQUFRO01BQ2xCLElBQUksRUFBRSxHQUFHO01BQ1QsU0FBUyxFQUFFLGdCQUFnQjtNQUMzQixNQUFNLEVBQUUsQ0FBQztNQUNULFdBQVcsRUFBRSxNQUFNLEdBRXRCO0VBNUNILEFBOENFLGFBOUNXLENBOENYLFlBQVksQ0FBQztJaEJxU2QsbUJBQW1CLEVBRFMsR0FBRyxDQUFXLEdBQUc7SUFFN0MsaUJBQWlCLEVBQUUsU0FBUztJQUM1QixlQUFlLEVBQUUsS0FBSztJZ0JyU25CLE9BQU8sRUFBRSxJQUFJO0lBQ2IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFcEQvREUsSUFBSTtJb0RnRVgsVUFBVSxFQUFFLElBQUk7SUFDaEIsT0FBTyxFQUFFLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxrQkFBa0I7SUFDaEQsT0FBTyxFQUFFLENBQUMsR0FrQ1g7SWhEL0NDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNZ0R4QzVCLEFBOENFLGFBOUNXLENBOENYLFlBQVksQ0FBQztRQVNULFVBQVUsRWpCL0RQLFFBQW1EO1FpQmdFdEQsT0FBTyxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxtQkFBbUIsR0ErQnJEO0loRC9DQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWdEeEM3QixBQThDRSxhQTlDVyxDQThDWCxZQUFZLENBQUM7UUFjVCxVQUFVLEVqQnBFUCxVQUFtRDtRaUJxRXRELE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1CO1FBQ2xELFVBQVUsRUFBRSxrQkFBa0IsR0F5QmpDO0lBdkZILEFBaUVJLGFBakVTLENBOENYLFlBQVksQUFtQlQsTUFBTSxDQUFDO01oQnlRWCxRQUFRLEVBQUUsUUFBUTtNQUNsQixHQUFHLEVBRm9CLENBQUM7TUFHeEIsTUFBTSxFQUg2QixDQUFDO01BSXBDLElBQUksRUFKeUMsQ0FBQztNQUs5QyxLQUFLLEVBTG1ELENBQUM7TWdCdFFwRCxPQUFPLEVBQUUsRUFBRTtNQUNYLFVBQVUsRUFBRSxrQkFBa0I7TUFDOUIsT0FBTyxFQUFFLEVBQUUsR0FDWjtJaERqQkQsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO01nRHJEL0IsQUF3RUksYUF4RVMsQ0E4Q1gsWUFBWSxBQTBCVCxPQUFPLENBQUM7UUFFTCxRQUFRLEVBQUUsUUFBUTtRQUNsQixPQUFPLEVBQUUsRUFBRTtRQUNYLElBQUksRUFBRSxDQUFDO1FBQ1AsS0FBSyxFQUFFLENBQUM7UUFDUixpQkFBaUIsRUFBRSxTQUFTO1FBQzVCLGVBQWUsRUFBRSxTQUFTO1FBQzFCLEdBQUcsRUFBRSxJQUFJO1FBQ1QsU0FBUyxFQUFFLGlCQUFpQjtRQUM1QixNQUFNLEVBQUUsS0FBSztRQUNiLGdCQUFnQixFQUFFLDJCQUEyQjtRQUM3QyxtQkFBbUIsRUFBRSxHQUFHLEdBRTNCO0VoRGpDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SWdEckQvQixBQXlGRSxhQXpGVyxDQXlGWCxXQUFXLENBQUM7TUFFUixLQUFLLEVBQUUsSUFBSSxHQUVkO0VBN0ZILEFBK0ZFLGFBL0ZXLEVBK0ZYLEFBQUEsS0FBQyxFQUFPLGNBQWMsQUFBckI7RUEvRkgsYUFBYSxFQWdHWCxBQUFBLEtBQUMsRUFBTyxlQUFlLEFBQXRCLEVBQXdCO0lBQ3ZCLEtBQUssRXBEOUdFLElBQUksR29EK0daO0VBbEdILEFBb0dFLGFBcEdXLENBb0dYLFdBQVcsQ0FBQztJQUVWLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLENBQUMsR0FtQ1Y7SUExSUgsQUF5R0ksYUF6R1MsQ0FvR1gsV0FBVyxDQUtULEVBQUUsQ0FBQztNQUNELE1BQU0sRWpCakhvQixDQUFDLENBQUQsQ0FBQyxDQUR4QixPQUFtRCxHaUIwSHZEO01BbEhMLEFBNkdRLGFBN0dLLENBb0dYLFdBQVcsQ0FLVCxFQUFFLEFBR0MsYUFBYSxDQUNaLE1BQU0sQ0FBQztRQUNMLEtBQUssRWpCdEhOLE1BQW1EO1FpQnVIbEQsT0FBTyxFQUFFLENBQUMsR0FDWDtJQWhIVCxBQW9ISSxhQXBIUyxDQW9HWCxXQUFXLENBZ0JULE1BQU0sQ0FBQztNaEJ1RlYsVUFBVSxFQUZXLHdCQUFPLEVBQVAsc0JBQU87TWdCbkZ2QixXQUFXLEVBQUUsT0FBTztNQUNwQixLQUFLLEVqQi9IRixPQUFtRDtNaUJnSXRELE1BQU0sRWpCaElILE9BQW1EO01pQmlJdEQsTUFBTSxFQUFFLElBQUk7TUFDWixhQUFhLEVqQmxJVixRQUFtRDtNaUJtSXRELE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLENBQUM7TUFDYixNQUFNLEVBQUUsT0FBTztNQUNmLGNBQWMsRUFBRSxJQUFJO01BQ3BCLGdCQUFnQixFbEJ4SFosT0FBTztNa0J5SFgsT0FBTyxFQUFFLEdBQUcsR0FTYjtNQXpJTCxBQWtJTSxhQWxJTyxDQW9HWCxXQUFXLENBZ0JULE1BQU0sQUFjSCxNQUFNLENBQUM7UUFDTixPQUFPLEVBQUUsSUFBSSxHQUNkO01BcElQLEFBc0lNLGFBdElPLENBb0dYLFdBQVcsQ0FnQlQsTUFBTSxBQWtCSCxNQUFNLENBQUM7UUFDTixPQUFPLEVBQUUsQ0FBQyxHQUNYO0VBeElQLEFBNElFLGFBNUlXLENBNElYLGFBQWEsQ0FBQztJQUNaLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxHQUFHO0lBQ1osR0FBRyxFQUFFLEtBQUs7SUFDVixJQUFJLEVBQUUsR0FBRztJQUNULFNBQVMsRUFBRSxnQkFBZ0I7SUFDM0IsS0FBSyxFQUFFLElBQUk7SUFDWCxjQUFjLEVBQUUsSUFBSTtJQUNwQixTQUFTLEVqQjVKSixPQUFtRDtJaUI2SnhELE9BQU8sRWpCNUpxQixDQUFDLENBRHhCLE9BQW1EO0lpQjhKeEQsR0FBRyxFQUFFLG1CQUFtQixHQVN6QjtJaER2SEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01nRHhDN0IsQUE0SUUsYUE1SVcsQ0E0SVgsYUFBYSxDQUFDO1FBYVYsU0FBUyxFakJqS04sVUFBbUQ7UWlCa0t0RCxHQUFHLEVBQUUsbUJBQW1CLEdBSzNCO0VBL0pILEFBaUtFLGFBaktXLENBaUtYLFVBQVUsQ0FBQztJQUNULE9BQU8sRWpCektxQixDQUFDLENBRHhCLFFBQW1ELEdpQjJMekQ7SWhEM0lDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNZ0R4QzVCLEFBaUtFLGFBaktXLENBaUtYLFVBQVUsQ0FBQztRQUlQLE9BQU8sRWpCNUttQixDQUFDLENBRHhCLFNBQW1ELEdpQjJMekQ7SWhEM0lDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNZ0R4QzVCLEFBaUtFLGFBaktXLENBaUtYLFVBQVUsQ0FBQztRQVFQLFNBQVMsRWpCakxOLE9BQW1EO1FpQmtMdEQsT0FBTyxFakJqTG1CLENBQUMsQ0FEeEIsT0FBbUQsR2lCMkx6RDtJaEQzSUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01nRHhDN0IsQUFpS0UsYUFqS1csQ0FpS1gsVUFBVSxDQUFDO1FBYVAsU0FBUyxFakJ0TE4sVUFBbUQsR2lCMkx6RDs7QUFFSCxBQUFBLGlCQUFpQixDQUFBO0VBQ2YsVUFBVSxFQUFFLEtBQUssR0FJbEI7RWhEcklHLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJZ0RnSWhDLEFBQUEsaUJBQWlCLENBQUE7TUFHYixVQUFVLEVBQUUsSUFBSSxHQUVuQjs7QUM5TUQsQUFBQSxjQUFjLENBQUM7RWpCdVdkLG1CQUFtQixFQURTLEdBQUcsQ0FBVyxHQUFHO0VBRTdDLGlCQUFpQixFQUFFLFNBQVM7RUFDNUIsZUFBZSxFQUFFLEtBQUs7RWlCdld0QixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVyRElLLElBQUk7RXFESGQsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBQUUsR0FBRyxHQWdHaEI7RWpENUJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJaUR6RS9CLEFBUUUsY0FSWSxHQU9YLElBQUksSUFDSCxBQUFBLEtBQUMsRUFBTyxTQUFTLEFBQWhCO0lBUkwsY0FBYyxHQU9YLElBQUksSUFFSCxBQUFBLEtBQUMsRUFBTyxVQUFVLEFBQWpCLEVBQW1CO01BRXBCLFdBQVcsRUFBRSxLQUFLLEdBRW5CO0VqRDREQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SWlEekUvQixBQWdCQyxjQWhCYSxDQWdCYixDQUFDLENBQUM7TUFFQSxXQUFXLEVBQUUsR0FBRyxHQUVqQjtFQXBCRixBQXNCQyxjQXRCYSxBQXNCWixNQUFNLENBQUM7SWpCd1VSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFGb0IsQ0FBQztJQUd4QixNQUFNLEVBSDZCLENBQUM7SUFJcEMsSUFBSSxFQUp5QyxDQUFDO0lBSzlDLEtBQUssRUFMbUQsQ0FBQztJaUJyVXhELE9BQU8sRUFBQyxFQUFFO0lBQ1YsZ0JBQWdCLEVBQUUscUJBQXFCO0lBQ3ZDLE9BQU8sRUFBRSxFQUFFLEdBQ1g7RUEzQkYsQUE2QkMsY0E3QmEsR0E2QlosSUFBSSxDQUFDO0lBQ0wsUUFBUSxFQUFFLFFBQVE7SUFDbEIsSUFBSSxFQUFFLEdBQUc7SUFDVCxTQUFTLEVBQUUsc0JBQXNCO0lBQ2pDLEdBQUcsRWxCckJJLE9BQW1EO0lrQnNCMUQsT0FBTyxFQUFFLEVBQUU7SUFDWCxTQUFTLEVsQnZCRixTQUFtRDtJa0J3QjFELFVBQVUsRWxCdkJvQixDQUFDLENBQUQsQ0FBQyxDQUR4QixPQUFtRCxDa0J3QjdCLGtCQUFrQixHQUMvQztFakRvQ0UsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0lpRHpFL0IsQUF1Q0MsY0F2Q2EsQ0F1Q2IsVUFBVSxDQUFDO01BRVQsWUFBWSxFbEI3Qk4sTUFBbUQ7TWtCOEJ6RCxhQUFhLEVsQjlCUCxNQUFtRCxHa0JnQzFEO0VBNUNGLEFBOENDLGNBOUNhLENBOENiLGVBQWUsQ0FBQztJQUNmLFdBQVcsRWxCbkNKLFFBQW1ELEdrQnFFMUQ7SWpEckJFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNaUQ1RDVCLEFBOENDLGNBOUNhLENBOENiLGVBQWUsQ0FBQztRQUlkLFdBQVcsRWxCdENMLE9BQW1EO1FrQnVDekQsV0FBVyxFbEJ2Q0wsU0FBbUQsR2tCcUUxRDtJQWpGRixBQXNERSxjQXREWSxDQThDYixlQUFlLEFBUWIsV0FBVyxDQUFDO01BQ1osYUFBYSxFQUFFLENBQUMsR0FDaEI7SUF4REgsQUEwREUsY0ExRFksQ0E4Q2IsZUFBZSxDQVlkLEVBQUUsQ0FBQztNQUNGLFNBQVMsRWxCL0NILFNBQW1ELEdrQjhEekQ7TWpEZEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO1FpRDVENUIsQUEwREUsY0ExRFksQ0E4Q2IsZUFBZSxDQVlkLEVBQUUsQ0FBQztVQUlELFNBQVMsRWxCbERKLE9BQW1EO1VrQm1EeEQsV0FBVyxFQUFFLEdBQUcsR0FXakI7TWpEZEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO1FpRDVENUIsQUEwREUsY0ExRFksQ0E4Q2IsZUFBZSxDQVlkLEVBQUUsQ0FBQztVQVNELFNBQVMsRWxCdkRKLElBQW1EO1VrQndEeEQsTUFBTSxFbEJ2RHNCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEdrQjhEekQ7TWpEZEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO1FpRDVEN0IsQUEwREUsY0ExRFksQ0E4Q2IsZUFBZSxDQVlkLEVBQUUsQ0FBQztVQWNELFNBQVMsRWxCNURKLE9BQW1ELEdrQjhEekQ7SWpEREMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO01pRHpFL0IsQUE0RUUsY0E1RVksQ0E4Q2IsZUFBZSxDQThCZCxHQUFHLENBQUM7UUFFRixTQUFTLEVsQmxFSixPQUFtRCxHa0JvRXpEO0VBaEZILEFBbUZDLGNBbkZhLENBbUZiLEVBQUUsQ0FBQztJQUNGLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLFdBQVcsRW5CK0JpQix1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVSxHbUJoQnhGO0lqRHhDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWlENUQ1QixBQW1GQyxjQW5GYSxDQW1GYixFQUFFLENBQUM7UUFLRCxXQUFXLEVBQUUsR0FBRztRQUNoQixhQUFhLEVBQUUsTUFBTTtRQUNyQixTQUFTLEVsQjlFSCxRQUFtRCxHa0J3RjFEO0lqRHhDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWlENUQ3QixBQW1GQyxjQW5GYSxDQW1GYixFQUFFLENBQUM7UUFXRCxTQUFTLEVsQmxGSCxTQUFtRCxHa0J3RjFEO0lqRHhDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWlENUQ3QixBQW1GQyxjQW5GYSxDQW1GYixFQUFFLENBQUM7UUFlRCxTQUFTLEVsQnRGSCxJQUFtRCxHa0J3RjFEOztBQUdGLEFBQUEsWUFBWSxDQUFDO0VBQ1osT0FBTyxFQUFFLGtCQUFrQixDQUFDLENBQUMsQ2xCNUZyQixTQUFtRDtFa0I2RjNELFVBQVUsRUFBRSxrQkFBa0IsR0FVOUI7RWpEdkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJaUQyQzVCLEFBQUEsWUFBWSxDQUFDO01BS1gsVUFBVSxFbEJoR0gsUUFBbUQ7TWtCaUcxRCxPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FNcEM7RWpEdkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJaUQyQzdCLEFBQUEsWUFBWSxDQUFDO01BVVgsVUFBVSxFbEJyR0gsU0FBbUQsR2tCdUczRDs7QUNuSEQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRW5CVUEsTUFBbUQsQ0FDNUIsQ0FBQztFbUJWL0IsT0FBTyxFQUFFLENBQUMsR0FrQlg7RWxEdUNHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0Q1RDVCLEFBS0UsZ0JBTGMsQUFLYixPQUFPLENBQUM7TUFFTCxRQUFRLEVBQUUsUUFBUTtNQUNsQixPQUFPLEVBQUUsRUFBRTtNQUNYLElBQUksRUFBRSxDQUFDO01BQ1AsTUFBTSxFQUFFLFVBQVU7TUFDbEIsS0FBSyxFQUFFLENBQUM7TUFDUixpQkFBaUIsRUFBRSxTQUFTO01BQzVCLGVBQWUsRUFBRSxTQUFTO01BQzFCLEdBQUcsRUFBRSxFQUFFO01BQ1AsTUFBTSxFQUFFLEtBQUs7TUFDYixnQkFBZ0IsRUFBRSwyQkFBMkI7TUFDN0MsbUJBQW1CLEVBQUUsTUFBTTtNQUMzQixPQUFPLEVBQUUsRUFBRSxHQUVkOztBbER3Q0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VrRHJDNUIsQUFBQSxnQkFBZ0I7RUFDaEIsMEJBQTBCLENBQUM7SUFFdkIsT0FBTyxFQUFFLElBQUk7SUFDYixTQUFTLEVBQUUsSUFBSTtJQUNmLGVBQWUsRUFBRSxNQUFNLEdBRTFCOztBbEQ4QkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VrRDVCNUIsQUFBQSxnQkFBZ0IsQ0FBQztJQUViLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLFVBQVUsRUFBRSxNQUFNLEdBRXJCOztBbER1QkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0drRHJCNUIsQUFBQSxBQUFBLEtBQUMsRUFBTyxpQkFBaUIsQUFBeEIsR0FBMEIsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCLEVBQTJCO0lBRW5ELFdBQVcsRW5CN0JOLFVBQW1EO0ltQjhCeEQsWUFBWSxFbkI5QlAsVUFBbUQsR21CcUMzRDs7QWxEV0csTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0drRHJCN0IsQUFBQSxBQUFBLEtBQUMsRUFBTyxpQkFBaUIsQUFBeEIsR0FBMEIsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCLEVBQTJCO0lBT25ELFdBQVcsRW5CbENOLFVBQW1EO0ltQm1DeEQsWUFBWSxFbkJuQ1AsVUFBbUQsR21CcUMzRDs7QUFFRCxBQUFBLDBCQUEwQixDQUFDO0VBQ3pCLFNBQVMsRW5CeENGLFFBQW1EO0VtQnlDMUQsU0FBUyxFbkJ6Q0YsS0FBbUQ7RW1CMEMxRCxXQUFXLEVBQUUsSUFBSTtFQUNqQixZQUFZLEVBQUUsSUFBSTtFQUNsQixVQUFVLEV0RGpERCxJQUFJLEdzRG9GZDtFbEQvQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRFQ1QixBQUFBLDBCQUEwQixDQUFDO01BUXZCLGFBQWEsRW5CL0NSLE9BQW1EO01tQmdEeEQsT0FBTyxFbkIvQ3FCLENBQUMsQ0FEeEIsU0FBbUQ7TW1CaUR4RCxRQUFRLEVBQUUsTUFBTSxHQThCbkI7RWxEL0JHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0RUN0IsQUFBQSwwQkFBMEIsQ0FBQztNQWN2QixPQUFPLEVuQnBEcUIsQ0FBQyxDQUR4QixTQUFtRCxHbUIrRTNEO0VsRC9CRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEVDVCLEFBaUJFLDBCQWpCd0IsQ0FpQnhCLGNBQWMsQ0FBQztNbEIySmhCLFVBQVUsRUFGVyx3QkFBTyxFQUFQLDJCQUFPO01rQnRKdkIsT0FBTyxFQUFFLENBQUM7TUFDVixVQUFVLEVBQUUsTUFBTTtNQUNsQixXQUFXLEVBQUUsTUFBTTtNQUNuQixRQUFRLEVBQUUsTUFBTTtNQUNoQixhQUFhLEVBQUUsUUFBUTtNQUN2QixRQUFRLEVBQUUsUUFBUTtNQUNsQixNQUFNLEVuQmpFSCxRQUFtRDtNbUJrRXRELE1BQU0sRUFBRSxDQUFDO01BQ1QsSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsSUFBSTtNQUNYLFVBQVUsRUFBRSxNQUFNO01BQ2xCLE9BQU8sRUFBRSxFQUFFLEdBRWQ7RWxEWEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0lrRHRCL0IsQUFtQ0UsMEJBbkN3QixDQW1DeEIsSUFBSSxDQUFDO01BRUQsT0FBTyxFbkI1RUosTUFBbUQsQ0FBbkQsUUFBbUQsR21COEV6RDs7QWxEakJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtFa0RvQi9CLEFBQUEsY0FBYyxDQUFDO0lBRVgsT0FBTyxFQUFFLElBQUk7SUFDYixXQUFXLEVBQUUsTUFBTSxHQTZEdEI7O0FBaEVELEFBTUUsY0FOWSxBQU1YLE1BQU0sQ0FBQztFQUNOLGVBQWUsRUFBRSxJQUFJLEdBd0R0QjtFQS9ESCxBQVNJLGNBVFUsQUFNWCxNQUFNLENBR0wsY0FBYyxDQUFDO0lBQ2IsS0FBSyxFcEIvRUQsT0FBTyxHb0JnRlo7RWxENUNELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0Q4Q3hCLEFBQ0UsMEJBRHdCLENBYjlCLGNBQWMsQUFNWCxNQUFNLENBUUgsY0FBYyxDQUFDO01BRVgsT0FBTyxFQUFFLENBQUM7TUFDVixVQUFVLEVBQUUsT0FBTyxHQUV0QjtFbERwREgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRGlDNUIsQUF3QlEsY0F4Qk0sQUFNWCxNQUFNLENBZ0JMLGFBQWEsQUFDVixpQkFBaUIsQ0FDaEIsR0FBRyxDQUFDO01BRUEsU0FBUyxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLEdBRXhEO0VsRDdETCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEaUM1QixBQWdDUSxjQWhDTSxBQU1YLE1BQU0sQ0FnQkwsYUFBYSxBQVNWLGVBQWUsQ0FDZCxHQUFHLENBQUM7TUFFQSxTQUFTLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixHQUUzQztFbERyRUwsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRGlDNUIsQUF3Q1EsY0F4Q00sQUFNWCxNQUFNLENBZ0JMLGFBQWEsQUFpQlYsZUFBZSxDQUNkLEdBQUcsQ0FBQztNQUVBLFNBQVMsRUFBRSxVQUFVLENBQUMsY0FBYyxDQUFDLGtCQUFrQixHQUUxRDtFbEQ3RUwsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRGlDNUIsQUFnRFEsY0FoRE0sQUFNWCxNQUFNLENBZ0JMLGFBQWEsQUF5QlYsV0FBVyxDQUNWLEdBQUcsQ0FBQztNQUVBLFNBQVMsRUFBRSxVQUFVLENBQUMsaUJBQWlCLEdBRTFDO0VBcERULEFBdURNLGNBdkRRLEFBTVgsTUFBTSxDQWdCTCxhQUFhLENBaUNYLEdBQUcsQ0FBQztJQUNGLFNBQVMsRUFBRSxJQUFJLEdBS2hCO0lsRDlGSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWtEaUM1QixBQXVETSxjQXZEUSxBQU1YLE1BQU0sQ0FnQkwsYUFBYSxDQWlDWCxHQUFHLENBQUM7UUFJQSxTQUFTLEVBQUUsUUFBUSxHQUV0Qjs7QUFLUCxBQUFBLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFNBQVMsRW5CckpGLFNBQW1EO0VtQnNKMUQsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFbkJ4SlAsU0FBbUQsR21Cb1YzRDtFbERwU0csTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRG1HNUIsQUFBQSxhQUFhLENBQUM7TUFRVixTQUFTLEVuQjNKSixVQUFtRDtNbUI0SnhELElBQUksRUFBRSxHQUFHO01BQ1QsT0FBTyxFQUFFLEtBQUs7TUFDZCxVQUFVLEVBQUUsTUFBTTtNQUNsQixjQUFjLEVuQi9KVCxTQUFtRDtNbUJnS3hELFNBQVMsRW5CaEtKLFFBQW1ELEdtQm9WM0Q7RWxEcFNHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0RtRzdCLEFBQUEsYUFBYSxDQUFDO01BaUJWLFNBQVMsRW5CcEtKLFFBQW1ELEdtQm9WM0Q7RWxEcFNHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0RtRzVCLEFBcUJJLGFBckJTLEFBb0JWLGFBQWEsQ0FDWixNQUFNLENBQUM7TUFFSCxPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxPQUFPO01BQ25CLGNBQWMsRUFBRSxJQUFJLEdBRXZCO0VsRDlIRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEaUkxQixBQUFBLDBCQUEwQixDQTlCNUIsYUFBYSxDQThCa0I7TUFFekIsT0FBTyxFbkJuTEosU0FBbUQsQ0FBbkQsUUFBbUQ7TW1Cb0x0RCxTQUFTLEVBQUUsSUFBSSxHQUVsQjtFbER0SUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRHdJMUIsQUFBQSxnQkFBZ0IsQ0FyQ2xCLGFBQWEsQ0FxQ1E7TUFFZixZQUFZLEVuQjFMVCxTQUFtRDtNbUIyTHRELGFBQWEsRW5CM0xWLFNBQW1ELEdtQmtNekQ7RWxEbEpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0R3STNCLEFBQUEsZ0JBQWdCLENBckNsQixhQUFhLENBcUNRO01BT2YsWUFBWSxFbkIvTFQsU0FBbUQ7TW1CZ010RCxhQUFhLEVuQmhNVixTQUFtRCxHbUJrTXpEO0VsRGxKQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEbUc1QixBQWlERSxhQWpEVyxDQWlEWCxNQUFNLENBQUM7TWxCZVIsVUFBVSxFQUZXLHdCQUFPLEVBQVAsMkJBQU87TWtCVnZCLGNBQWMsRUFBRSxJQUFJO01BQ3BCLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLE1BQU07TUFDbEIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsS0FBSyxFbkIzTUYsUUFBbUQ7TW1CNE10RCxHQUFHLEVBQUUsQ0FBQztNQUNOLE1BQU0sRUFBRSxDQUFDO01BQ1QsU0FBUyxFQUFFLGtCQUFrQjtNQUM3QixPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxJQUFJO01BQ2hCLFNBQVMsRW5Cak5OLE9BQW1EO01tQmtOdEQsV0FBVyxFQUFFLEdBQUc7TUFDaEIsS0FBSyxFbkJuTkYsS0FBbUQ7TW1Cb050RCxPQUFPLEVuQm5ObUIsQ0FBQyxDQUFELENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEdtQnlRekQ7RWxEek5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0RtRzdCLEFBaURFLGFBakRXLENBaURYLE1BQU0sQ0FBQztNQW9CSCxPQUFPLEVuQnZObUIsQ0FBQyxDQUFELENBQUMsQ0FBRCxDQUFDLENBRHhCLE1BQW1EO01tQnlOdEQsS0FBSyxFbkJ6TkYsUUFBbUQ7TW1CME50RCxLQUFLLEVuQjFORixLQUFtRCxHbUJ5UXpEO0VsRHpOQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEbUc1QixBQTBFSSxhQTFFUyxDQWlEWCxNQUFNLEFBeUJILE1BQU0sQ0FBQztNQUVKLFFBQVEsRUFBRSxRQUFRO01BQ2xCLE9BQU8sRUFBRSxFQUFFO01BQ1gsVUFBVSxFdER0T1AsSUFBSTtNc0R1T1AsSUFBSSxFQUFFLENBQUM7TUFDUCxHQUFHLEVBQUUsR0FBRztNQUNSLFNBQVMsRUFBRSxnQkFBZ0I7TUFDM0IsS0FBSyxFbkJyT0osVUFBbUQ7TW1Cc09wRCxNQUFNLEVuQnRPTCxVQUFtRDtNbUJ1T3BELE9BQU8sRUFBRSxFQUFFO01BQ1gsY0FBYyxFQUFFLElBQUksR0FFdkI7RWxEMUxELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0RtRzVCLEFBeUZJLGFBekZTLENBaURYLE1BQU0sQUF3Q0gsT0FBTyxDQUFDO01BRUwsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFFLEVBQUU7TUFDWCxVQUFVLEVwQnJPUixPQUFPO01vQnNPVCxNQUFNLEVuQmpQTCxRQUFtRDtNbUJrUHBELEtBQUssRUFBRSxJQUFJO01BQ1gsR0FBRyxFQUFFLEdBQUc7TUFDUixJQUFJLEVBQUUsQ0FBQztNQUNQLEtBQUssRW5CclBKLFNBQW1EO01tQnNQcEQsU0FBUyxFQUFFLGtCQUFrQixHQU1oQztFbEQ1TUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRG1HN0IsQUF5RkksYUF6RlMsQ0FpRFgsTUFBTSxBQXdDSCxPQUFPLENBQUM7TUFjTCxLQUFLLEVuQjFQSixPQUFtRCxHbUI0UHZEO0VsRDVNRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEbUc1QixBQTJHSSxhQTNHUyxDQWlEWCxNQUFNLENBMERKLENBQUMsQ0FBQztNQUVFLE1BQU0sRW5CL1BrQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHbUJrUXZEO0VsRGxORCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEbUc1QixBQWlISSxhQWpIUyxDQWlEWCxNQUFNLENBZ0VKLFdBQVcsQ0FBQztNQUVSLFNBQVMsRW5CdFFSLFNBQW1ELEdtQndRdkQ7RWxEeE5ELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0RtRzVCLEFBd0hFLGFBeEhXLENBd0hYLFlBQVksQ0FBQztNQUVULE9BQU8sRUFBRSxJQUFJO01BQ2IsY0FBYyxFQUFFLE1BQU07TUFDdEIsZUFBZSxFQUFFLE1BQU07TUFDdkIsV0FBVyxFQUFFLEtBQUs7TUFDbEIsTUFBTSxFQUFFLElBQUksR0FFZjtFQWhJSCxBQWtJRSxhQWxJVyxDQWtJWCxDQUFDLENBQUM7SUFDQSxNQUFNLEVuQnJSc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR21CdVJ6RDtFQXBJSCxBQXNJRSxhQXRJVyxDQXNJWCxFQUFFLENBQUM7SUFDRCxXQUFXLEVBQUUsR0FBRyxHQVdqQjtJQWxKSCxBQXdJSSxhQXhJUyxDQXNJWCxFQUFFLENBRUEsQ0FBQyxDQUFDO01BQ0EsS0FBSyxFQUFFLE9BQU8sR0FDZjtJbEQzTEQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLFNBQVM7TWtEaUR2RCxBQXNJRSxhQXRJVyxDQXNJWCxFQUFFLENBQUM7UUFNQyxTQUFTLEVuQi9STixTQUFtRCxHbUJxU3pEO0lBSEMsQUFBQSwwQkFBMEIsQ0EvSTlCLGFBQWEsQ0FzSVgsRUFBRSxDQVM2QjtNQUMzQixTQUFTLEVuQm5TTixRQUFtRCxHbUJvU3ZEO0VsRHBQRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEbUc1QixBQXNKSSxhQXRKUyxBQW1KVixZQUFhLENBQUEsQ0FBQyxFQUdiLE1BQU0sRUF0SlYsYUFBYSxBQW9KVixZQUFhLENBQUEsQ0FBQyxFQUViLE1BQU0sRUF0SlYsYUFBYSxBQXFKVixZQUFhLENBQUEsQ0FBQyxFQUNiLE1BQU0sQ0FBQztNQUVILElBQUksRW5CM1NILFFBQW1EO01tQjRTcEQsS0FBSyxFQUFFLElBQUk7TUFDWCxTQUFTLEVBQUUsbUJBQW1CO01BQzlCLE9BQU8sRW5CN1NpQixDQUFDLENBRHhCLE9BQW1ELENBQzVCLENBQUMsQ0FBRCxDQUFDLEdtQmtVNUI7RWxEblJELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0RtRzdCLEFBc0pJLGFBdEpTLEFBbUpWLFlBQWEsQ0FBQSxDQUFDLEVBR2IsTUFBTSxFQXRKVixhQUFhLEFBb0pWLFlBQWEsQ0FBQSxDQUFDLEVBRWIsTUFBTSxFQXRKVixhQUFhLEFBcUpWLFlBQWEsQ0FBQSxDQUFDLEVBQ2IsTUFBTSxDQUFDO01BU0gsT0FBTyxFbkJqVGlCLENBQUMsQ0FEeEIsTUFBbUQsQ0FDNUIsQ0FBQyxDQUFELENBQUM7TW1Ca1R6QixJQUFJLEVuQm5USCxRQUFtRDtNbUJvVHBELEtBQUssRUFBRSxJQUFJLEdBZWQ7RWxEblJELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0RtRzVCLEFBbUtNLGFBbktPLEFBbUpWLFlBQWEsQ0FBQSxDQUFDLEVBR2IsTUFBTSxBQWFILE1BQU0sRUFuS2IsYUFBYSxBQW9KVixZQUFhLENBQUEsQ0FBQyxFQUViLE1BQU0sQUFhSCxNQUFNLEVBbktiLGFBQWEsQUFxSlYsWUFBYSxDQUFBLENBQUMsRUFDYixNQUFNLEFBYUgsTUFBTSxDQUFDO01BRUosSUFBSSxFQUFFLElBQUk7TUFDVixLQUFLLEVBQUUsQ0FBQyxHQUVYO0VsRDNRSCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtEbUc1QixBQTBLTSxhQTFLTyxBQW1KVixZQUFhLENBQUEsQ0FBQyxFQUdiLE1BQU0sQUFvQkgsT0FBTyxFQTFLZCxhQUFhLEFBb0pWLFlBQWEsQ0FBQSxDQUFDLEVBRWIsTUFBTSxBQW9CSCxPQUFPLEVBMUtkLGFBQWEsQUFxSlYsWUFBYSxDQUFBLENBQUMsRUFDYixNQUFNLEFBb0JILE9BQU8sQ0FBQztNQUVMLElBQUksRUFBRSxJQUFJO01BQ1YsS0FBSyxFQUFFLENBQUMsR0FFWDtFbERsUkgsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRG1HNUIsQUFvTE0sYUFwTE8sQUFrTFYsUUFBUSxBQUNOLFlBQWEsQ0FBQSxDQUFDLEVBQ2IsTUFBTSxDQUFDO01BRUgsYUFBYSxFQUFFLElBQUk7TUFDbkIsS0FBSyxFQUFFLEtBQ1QsR0FNRDtFbERqU0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lrRG1HNUIsQUF5TFEsYUF6TEssQUFrTFYsUUFBUSxBQUNOLFlBQWEsQ0FBQSxDQUFDLEVBQ2IsTUFBTSxBQUtILE9BQU8sQ0FBQztNQUVMLEtBQUssRUFBRSxJQUFJLEdBRWQ7O0FBTVQsQUFBQSxhQUFhLENBQUM7RUFDWixTQUFTLEVBQUUsb0JBQW9CO0VBQy9CLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxHQUFHO0VBQ25CLEtBQUssRW5CMVZFLFFBQW1EO0VtQjJWMUQsTUFBTSxFbkIzVkMsUUFBbUQ7RW1CNFYxRCxRQUFRLEVBQUUsTUFBTTtFQUNoQixhQUFhLEVBQUUsR0FBRyxHQTRDbkI7RWxEelZHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0RzUzdCLEFBQUEsYUFBYSxDQUFDO01BVVYsS0FBSyxFbkJoV0EsTUFBbUQ7TW1CaVd4RCxNQUFNLEVuQmpXRCxNQUFtRCxHbUJ5WTNEO0VsRDVVRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SWtEeVIvQixBQWVJLGFBZlMsQUFjVixpQkFBaUIsQ0FDaEIsR0FBRyxDQUFDO01BRUEsU0FBUyxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLEdBRXhEO0VsRDVTRCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SWtEeVIvQixBQXVCSSxhQXZCUyxBQXNCVixlQUFlLENBQ2QsR0FBRyxDQUFDO01BRUEsU0FBUyxFQUFFLFVBQVUsQ0FBQyxrQkFBa0IsR0FFM0M7RWxEcFRELE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJa0R5Ui9CLEFBK0JJLGFBL0JTLEFBOEJWLGVBQWUsQ0FDZCxHQUFHLENBQUM7TUFFQSxTQUFTLEVBQUUsVUFBVSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsR0FFMUQ7RWxENVRELE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJa0R5Ui9CLEFBdUNJLGFBdkNTLEFBc0NWLFdBQVcsQ0FDVixHQUFHLENBQUM7TUFFQSxTQUFTLEVBQUUsVUFBVSxDQUFDLGlCQUFpQixHQUUxQztFQTNDTCxBQThDRSxhQTlDVyxDQThDWCxHQUFHLENBQUM7SUFDRixVQUFVLEVBQUUsMEJBQTBCO0lBQ3RDLEtBQUssRUFBRSxJQUFJO0lBQ1gsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FsRDNVQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7RWtEOFUvQixBQUFBLGFBQWEsQ0FBQztJQUVWLElBQUksRUFBRSxHQUFHO0lBQ1QsT0FBTyxFbkI3WXFCLENBQUMsQ0FBRCxDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHbUJnWjNEOztBQzVaRCxBQUFBLGFBQWEsQ0FBQztFQUNiLFdBQVcsRXJCcUhrQixhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVU7RXFCcEgvRSxPQUFPLEVwQld3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHb0JpQjNEO0VuRCtCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SW1ENUQ1QixBQUFBLGFBQWEsQ0FBQztNQUtaLE9BQU8sRXBCT0EsSUFBbUQsQ0FDNUIsQ0FBQyxHb0JnQmhDO0VBN0JELEFBUUMsYUFSWSxDQVFaLEVBQUUsQ0FBQztJQUNGLElBQUksRUFBRSxRQUFRLENBQUMsSUFBRyxDckIrR1UsV0FBVyxFQUFFLE9BQU87SXFCOUdoRCxNQUFNLEVwQkd3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHb0JZMUQ7SW5Eb0NFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNbUQ1RDVCLEFBUUMsYUFSWSxDQVFaLEVBQUUsQ0FBQztRQUtELFNBQVMsRXBCREgsSUFBbUQ7UW9CRXpELE1BQU0sRUFBRSxDQUFDLEdBVVY7SW5Eb0NFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNbUQ1RDdCLEFBUUMsYUFSWSxDQVFaLEVBQUUsQ0FBQztRQVVELFNBQVMsRXBCTkgsTUFBbUQsR29CWTFEO0luRG9DRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TW1ENUQ3QixBQVFDLGFBUlksQ0FRWixFQUFFLENBQUM7UUFjRCxTQUFTLEVwQlZILEtBQW1ELEdvQlkxRDtFQXhCRixBQTBCQyxhQTFCWSxDQTBCWixDQUFDLENBQUM7SUFDRCxjQUFjLEVBQUUsS0FBSyxHQUNyQjs7QUFHRixBQUFBLFlBQVksQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRLEdBeUJsQjtFbkRnQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0ltRDFDL0IsQUFBQSxZQUFZLENBQUM7TUFJWCxPQUFPLEVBQUUsSUFBSTtNQUNiLGNBQWMsRUFBRSxNQUFNO01BQ3RCLFdBQVcsRUFBRSxNQUFNLEdBb0JwQjtFbkRHRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SW1EN0I1QixBQUFBLFlBQVksQ0FBQztNQVVYLE9BQU8sRUFBRSxJQUFJO01BQ2IsV0FBVyxFQUFFLE1BQU0sR0FlcEI7RW5EZ0JHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJbUQxQy9CLEFBY0MsWUFkVyxBQWNWLE1BQU0sQ0FBQztNQUVOLFFBQVEsRUFBRSxRQUFRO01BQ2xCLE9BQU8sRUFBRSxFQUFFO01BQ1gsT0FBTyxFQUFFLENBQUM7TUFDVixJQUFJLEVwQnRDRSxRQUFtRDtNb0J1Q3pELEtBQUssRXBCdkNDLFFBQW1EO01vQndDekQsR0FBRyxFcEJ4Q0csT0FBbUQ7TW9CeUN6RCxNQUFNLEVwQnpDQSxVQUFtRDtNb0IwQ3pELGdCQUFnQixFQUFFLDhEQUErRSxHQUVsRzs7QUFHRixBQUFBLGlCQUFpQixDQUFDO0VBRWpCLFNBQVMsRUFBRSxvQkFBb0I7RUFDL0IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsUUFBUSxFQUFFLE1BQU07RUFDaEIsS0FBSyxFcEJwREcsVUFBbUQ7RW9CcUQzRCxNQUFNLEVwQnJERSxVQUFtRDtFb0JzRDNELGFBQWEsRUFBRSxHQUFHO0VBQ2xCLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDcEJ2REgsVUFBbUQsR29CaUczRDtFbkRqREcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0ltREQ1QixBQUFBLGlCQUFpQixDQUFDO01BV2hCLEtBQUssRXBCMURFLFFBQW1EO01vQjJEMUQsTUFBTSxFcEIzREMsUUFBbUQ7TW9CNEQxRCxNQUFNLEVwQjNEd0IsQ0FBQyxDQUR4QixRQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHb0JnR2hDO0VuRGpERyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SW1ERDdCLEFBQUEsaUJBQWlCLENBQUM7TUFpQmhCLEtBQUssRXBCaEVFLFFBQW1EO01vQmlFMUQsTUFBTSxFcEJqRUMsUUFBbUQ7TW9Ca0UxRCxNQUFNLEVwQmpFd0IsQ0FBQyxDQUR4QixJQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHb0JnR2hDO0VuRGpERyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SW1ERDdCLEFBQUEsaUJBQWlCLENBQUM7TUF1QmhCLEtBQUssRXBCdEVFLFNBQW1EO01vQnVFMUQsTUFBTSxFcEJ2RUMsU0FBbUQ7TW9Cd0UxRCxNQUFNLEVwQnZFd0IsQ0FBQyxDQUR4QixTQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHb0JnR2hDO0VBbERELEFBNEJDLGlCQTVCZ0IsQ0E0QmhCLFdBQVcsQ0FBQztJbkJ3SVosVUFBVSxFQUZXLHdCQUFPLEVBQVAsMkJBQU87SUFpSTVCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFGb0IsQ0FBQztJQUd4QixNQUFNLEVBSDZCLENBQUM7SUFJcEMsSUFBSSxFQUp5QyxDQUFDO0lBSzlDLEtBQUssRUFMbUQsQ0FBQztJQVV6RCxtQkFBbUIsRUFEUyxHQUFHLENBQVcsR0FBRztJQUU3QyxpQkFBaUIsRUFBRSxTQUFTO0lBQzVCLGVBQWUsRUFBRSxLQUFLO0ltQjlRckIsT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxNQUFNLEdBZWxCO0luRG5DRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TW1EZC9CLEFBb0NFLGlCQXBDZSxDQTRCaEIsV0FBVyxBQVFULE1BQU0sQ0FBQztRbkIrUFQsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUZvQixDQUFDO1FBR3hCLE1BQU0sRUFINkIsQ0FBQztRQUlwQyxJQUFJLEVBSnlDLENBQUM7UUFLOUMsS0FBSyxFQUxtRCxDQUFDO1FtQjNQdEQsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsRUFBRTtRQUNYLFVBQVUsRUFBRSx3QkFBdUIsR0FFcEM7SUEzQ0gsQUE2Q0UsaUJBN0NlLENBNEJoQixXQUFXLEFBaUJULE9BQU8sQ0FBQztNQUNSLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLE9BQU8sR0FDbkI7O0FuRGxDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7RW1Ec0MvQixBQUFBLFVBQVUsQ0FBQztJQUVULFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxFQUFFLEdBTVo7O0FuRDdERyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RW1EbUQ1QixBQUFBLFVBQVUsQ0FBQztJQVFULElBQUksRUFBRSxHQUFHLEdBRVY7O0FDekhELEFBQUEsa0JBQWtCLENBQUM7RUFDbEIsUUFBUSxFQUFFLE1BQU07RUFDaEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLEVBQUU7RUFDWCxXQUFXLEV0QmtIa0IsYUFBYSxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVLEdzQnJDL0U7RXBEckJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJb0Q1RDVCLEFBQUEsa0JBQWtCLENBQUM7TUFPakIsTUFBTSxFQUFFLFVBQVU7TUFDbEIsS0FBSyxFeERESSxJQUFJLEd3RDBFZDtFcERyQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lvRDVENUIsQUFXQyxrQkFYaUIsQUFXaEIsTUFBTSxDQUFDO01BRU4sUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFDLEVBQUU7TUFDVixVQUFVLEV0QlJGLE9BQU87TXNCU2YsTUFBTSxFQUFFLGtCQUFrQjtNQUMxQixHQUFHLEVBQUUsQ0FBQztNQUNOLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLENBQUM7TUFDUixPQUFPLEVBQUUsRUFBRSxHQUVaO0VwRHNDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SW9ENUQ1QixBQXdCQyxrQkF4QmlCLEFBd0JoQixPQUFPLENBQUM7TUFFUCxRQUFRLEVBQUUsUUFBUTtNQUNsQixPQUFPLEVBQUMsRUFBRTtNQUNWLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLENBQUM7TUFDUixpQkFBaUIsRUFBRSxTQUFTO01BQzVCLGVBQWUsRUFBRSxTQUFTO01BQzFCLEdBQUcsRUFBRSxDQUFDO01BQ04sTUFBTSxFQUFFLEdBQUc7TUFDWCxnQkFBZ0IsRUFBRSwyQkFBMkI7TUFDN0MsbUJBQW1CLEVBQUUsTUFBTTtNQUMzQixPQUFPLEVBQUUsQ0FBQyxHQU1YO0VwRGtCRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SW9ENUQ3QixBQXdCQyxrQkF4QmlCLEFBd0JoQixPQUFPLENBQUM7TUFnQlAsTUFBTSxFQUFFLEdBQUcsR0FFWjtFcERrQkUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lvRDVENUIsQUE0Q0Msa0JBNUNpQixHQTRDZixDQUFDLENBQUM7TUFFRixXQUFXLEVBQUUsZ0JBQWdCLEdBTTlCO0VwRFFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJb0Q1RDdCLEFBNENDLGtCQTVDaUIsR0E0Q2YsQ0FBQyxDQUFDO01BTUYsV0FBVyxFQUFFLGdCQUFnQixHQUU5QjtFQXBERixBQXNEQyxrQkF0RGlCLENBc0RqQixFQUFFLENBQUM7SUFDRixLQUFLLEV0QnJDSSxPQUFPO0lzQnNDaEIsV0FBVyxFQUFFLEdBQUc7SUFDaEIsU0FBUyxFckI3Q0YsTUFBbUQsR3FCc0QxRDtJcERORSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TW9ENUQ1QixBQXNEQyxrQkF0RGlCLENBc0RqQixFQUFFLENBQUM7UUFNRCxTQUFTLEVyQmhESCxPQUFtRCxHcUJzRDFEO0lwRE5FLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNb0Q1RDdCLEFBc0RDLGtCQXREaUIsQ0FzRGpCLEVBQUUsQ0FBQztRQVVELFNBQVMsRXJCcERILElBQW1ELEdxQnNEMUQ7RUFsRUYsQUFvRUMsa0JBcEVpQixDQW9FakIsU0FBUyxDQUFDO0lBQ1QsV0FBVyxFQUFFLEdBQUcsR0FPaEI7SXBESEUsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO01vRHpFL0IsQUF1RUUsa0JBdkVnQixDQW9FakIsU0FBUyxBQUdQLEdBQUcsQ0FBQztRQUVILFNBQVMsRXJCN0RKLE9BQW1ELEdxQitEekQ7RUEzRUgsQUE4RUMsa0JBOUVpQixDQThFakIsQ0FBQyxDQUFDO0lBQ0QsY0FBYyxFQUFFLEtBQUssR0FDckI7O0FBR0YsQUFBQSxnQkFBZ0IsQ0FBQztFcEJvUmhCLG1CQUFtQixFb0JuUlUsTUFBTSxDQUFXLE1BQU07RXBCb1JwRCxpQkFBaUIsRUFBRSxTQUFTO0VBQzVCLGVBQWUsRUFBRSxLQUFLO0VvQnBSdEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsT0FBTztFQUN4QixPQUFPLEVyQjVFQyxRQUFtRCxDQUM1QixDQUFDLENBRHhCLFFBQW1ELEdxQndGM0Q7RXBEM0JHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJb0RVL0IsQUFBQSxnQkFBZ0IsQ0FBQztNQVFmLGdCQUFnQixFQUFFLGVBQWUsR0FTbEM7RXBEeENHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJb0R1QjVCLEFBQUEsZ0JBQWdCLENBQUM7TUFZZixPQUFPLEVBQUUsSUFBSTtNQUNiLFdBQVcsRUFBRSxNQUFNO01BQ25CLE9BQU8sRUFBRSxhQUFhO01BQ3RCLFVBQVUsRUFBRSxJQUFJLEdBRWpCOztBQUVELEFBQUEsYUFBYSxDQUFDO0VwQndQYixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBRm9CLENBQUM7RUFHeEIsTUFBTSxFQUg2QixDQUFDO0VBSXBDLElBQUksRUFKeUMsQ0FBQztFQUs5QyxLQUFLLEVBTG1ELENBQUM7RW9CclB6RCxjQUFjLEVBQUUsSUFBSTtFQUNwQixPQUFPLEVBQUUsRUFBRTtFQUNYLGVBQWUsRUFBRSxPQUFPLEdBMEJ4QjtFcER4RUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lvRDBDNUIsQUFNQyxhQU5ZLEFBTVgsTUFBTSxDQUFDO01BRU4sUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFDLEVBQUU7TUFDVixVQUFVLEVBQUUsT0FBTztNQUNuQixNQUFNLEVBQUUsa0JBQWtCO01BQzFCLEdBQUcsRUFBRSxDQUFDO01BQ04sSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsQ0FBQztNQUNSLE9BQU8sRUFBRSxFQUFFLEdBRVo7RUFqQkYsQUFtQkMsYUFuQlksQ0FtQlosSUFBSSxDQUFDO0lwQnFPTCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBRm9CLENBQUM7SUFHeEIsTUFBTSxFQUg2QixDQUFDO0lBSXBDLElBQUksRUFKeUMsQ0FBQztJQUs5QyxLQUFLLEVBTG1ELENBQUM7SUFVekQsbUJBQW1CLEVvQjVPVyxNQUFNLENBQVcsTUFBTTtJcEI2T3JELGlCQUFpQixFQUFFLFNBQVM7SUFDNUIsZUFBZSxFQUFFLEtBQUs7SW9CN09yQixjQUFjLEVBQUUsSUFBSTtJQUNwQixPQUFPLEVBQUUsRUFBRTtJQUNYLGVBQWUsRUFBRSxPQUFPLEdBS3hCO0lwRDFERSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TW9ENkIvQixBQW1CQyxhQW5CWSxDQW1CWixJQUFJLENBQUM7UUFRSCxPQUFPLEVBQUUsSUFBSSxHQUVkOztBQUdGLEFBQUEsZ0JBQWdCLENBQUM7RUFDaEIsUUFBUSxFQUFFLE1BQU0sR0EyQmhCO0VwRHpGRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SW9ENkQvQixBQUFBLGdCQUFnQixDQUFDO01BSWYsVUFBVSxFQUFFLE1BQU07TUFDbEIsTUFBTSxFckI5SHdCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEdxQnNKM0Q7RXBEdEdHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJb0QwRTVCLEFBQUEsZ0JBQWdCLENBQUM7TUFTZixVQUFVLEVBQUUsS0FBSztNQUNqQixRQUFRLEVBQUUsUUFBUTtNQUNsQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osTUFBTSxFQUFFLEtBQUs7TUFDYixhQUFhLEVBQUUsR0FBRztNQUNsQixRQUFRLEVBQUUsTUFBTTtNQUNoQixLQUFLLEVBQUUsS0FBSztNQUNaLFVBQVUsRXRCbkI2QyxLQUFJLENBQUUsSUFBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsR3NCOEI3RjtFQTVCRCxBQW9CQyxnQkFwQmUsQ0FvQmYsR0FBRyxDQUFDO0lBQ0gsYUFBYSxFQUFFLEdBQUcsR0FNbEI7SXBEckdFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNb0QwRTVCLEFBb0JDLGdCQXBCZSxDQW9CZixHQUFHLENBQUM7UUFJRixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxJQUFJLEdBRWI7O0FwRHJHRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RW9Ed0c1QixBQUFBLGVBQWUsQ0FBQztJQUVkLE9BQU8sRXJCMUpBLFFBQW1ELENBQW5ELFFBQW1ELENBQW5ELFFBQW1ELENBQzVCLENBQUM7SXFCMEovQixLQUFLLEVBQUUseUJBQXlCLEdBT2pDO0VBTEMsTUFBTSxFcEQ3R0ksU0FBUyxFQUFFLEtBQUssT29ENkdsQixTQUFTLEVBQUUsTUFBTTtJQUwzQixBQUFBLGVBQWUsQ0FBQztNQU1iLEtBQUssRUFBRSxJQUFJO01BQ1gsU0FBUyxFckIvSkgsU0FBbUQsR3FCa0szRDs7QUM5S0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixRQUFRLEVBQUUsTUFBTTtFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLE9BQU8sRXRCUUEsUUFBbUQsQ0FDNUIsQ0FBQyxDQUR4QixRQUFtRCxHc0JLM0Q7RXJEMkNHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcUQ1RDdCLEFBQUEsa0JBQWtCLENBQUM7TUFPZixPQUFPLEVBQUUsSUFBSTtNQUNiLFdBQVcsRUFBRSxNQUFNO01BQ25CLE9BQU8sRUFBRSxJQUFJO01BQ2IsV0FBVyxFQUFFLE1BQU07TUFDbkIsVUFBVSxFdEJDTCxPQUFtRCxHc0JLM0Q7RXJEMkNHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcUQ1RDdCLEFBQUEsa0JBQWtCLENBQUM7TUFlZixVQUFVLEV0QkhMLEtBQW1ELEdzQkszRDs7QUFFRCxBQUFBLHFCQUFxQixDQUFDO0VBRXBCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFdEJYRixVQUFtRDtFc0JZMUQsT0FBTyxFdEJYdUIsQ0FBQyxDQUR4QixRQUFtRDtFc0JhMUQsR0FBRyxFQUFFLENBQUM7RUFDTixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxHQUFHO0VBQ1QsU0FBUyxFQUFFLGdCQUFnQjtFQUMzQixPQUFPLEVBQUUsR0FBRztFQUNaLE9BQU8sRUFBRSxFQUFFLEdBeUJaO0VyRGtCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7SXFEdERoQyxBQUFBLHFCQUFxQixDQUFDO01BY2xCLE9BQU8sRUFBRSxJQUFJLEdBc0JoQjtFQXBDRCxBQWlCRSxxQkFqQm1CLENBaUJuQixFQUFFLENBQUM7SUFDRCxRQUFRLEVBQUUsUUFBUSxHQWlCbkI7SUFuQ0gsQUFvQkkscUJBcEJpQixDQWlCbkIsRUFBRSxBQUdDLFVBQVcsQ2hCNlVzQixDQUFDLEVnQjdVcEI7TUFDYixHQUFHLEVBQUUsRUFBRSxHQUNSO0lBdEJMLEFBd0JJLHFCQXhCaUIsQ0FpQm5CLEVBQUUsQUFPQyxVQUFXLENoQm9VcUIsQ0FBQyxFZ0JwVW5CO01BQ2IsR0FBRyxFQUFFLEdBQUcsR0FDVDtJQTFCTCxBQTRCSSxxQkE1QmlCLENBaUJuQixFQUFFLEFBV0MsVUFBVyxDSG1TRSxDQUFDLEVHblNBO01BQ2IsTUFBTSxFQUFFLEdBQUcsR0FDWjtJQTlCTCxBQWdDSSxxQkFoQ2lCLENBaUJuQixFQUFFLEFBZUMsVUFBVyxDSCtQQSxDQUFDLEVHL1BFO01BQ2IsTUFBTSxFQUFFLEVBQUUsR0FDWDs7QXJEb0JELE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztFcURoQmhDLEFBQ0UsMkJBRHlCLENBQ3pCLFlBQVk7RUFEZCwyQkFBMkIsQ0FFekIsV0FBVyxDQUFDO0lBRVIsT0FBTyxFQUFFLElBQUk7SUFDYixXQUFXLEVBQUUsTUFBTSxHQUV0Qjs7QXJEU0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0dxRE5oQyxBQUFBLEFBQUEsS0FBQyxFQUFPLGtCQUFrQixBQUF6QjtHQUNELEFBQUEsS0FBQyxFQUFPLGtCQUFrQixBQUF6QixFQUEyQjtJQUV4QixZQUFZLEV0QjFEUCxTQUFtRDtJc0IyRHhELFdBQVcsRXRCM0ROLFNBQW1ELEdzQitFM0Q7O0FyRGxCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7R3FETmhDLEFBQUEsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCO0dBQ0QsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCLEVBQTJCO0lBT3hCLFlBQVksRXRCL0RQLE9BQW1EO0lzQmdFeEQsV0FBVyxFdEJoRU4sT0FBbUQsR3NCK0UzRDs7QXJEbEJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztHcUROaEMsQUFBQSxBQVlFLEtBWkQsRUFBTyxrQkFBa0IsQUFBekIsR0FZQyxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWI7R0FaSCxBQUFBLEtBQUMsRUFBTyxrQkFBa0IsQUFBekIsR0FhQyxBQUFBLEtBQUMsRUFBTyxPQUFPLEFBQWQ7R0FaSCxBQUFBLEtBQUMsRUFBTyxrQkFBa0IsQUFBekIsR0FXQyxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWI7R0FYSCxBQUFBLEtBQUMsRUFBTyxrQkFBa0IsQUFBekIsR0FZQyxBQUFBLEtBQUMsRUFBTyxPQUFPLEFBQWQsRUFBZ0I7SUFFYixhQUFhLEV0QnRFVixRQUFtRDtJc0J1RXRELFlBQVksRXRCdkVULFFBQW1ELEdzQjhFekQ7O0FyRGpCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7R3FETmhDLEFBQUEsQUFZRSxLQVpELEVBQU8sa0JBQWtCLEFBQXpCLEdBWUMsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiO0dBWkgsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCLEdBYUMsQUFBQSxLQUFDLEVBQU8sT0FBTyxBQUFkO0dBWkgsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCLEdBV0MsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiO0dBWEgsQUFBQSxLQUFDLEVBQU8sa0JBQWtCLEFBQXpCLEdBWUMsQUFBQSxLQUFDLEVBQU8sT0FBTyxBQUFkLEVBQWdCO0lBT2IsYUFBYSxFdEIzRVYsT0FBbUQ7SXNCNEV0RCxZQUFZLEV0QjVFVCxPQUFtRCxHc0I4RXpEOztBckRqQkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0VxRG9CaEMsQUFDRSwyQkFEeUIsRUFDekIsQUFBQSxLQUFDLEVBQU8sTUFBTSxBQUFiO0VBREgsMkJBQTJCLEVBRXpCLEFBQUEsS0FBQyxFQUFPLE9BQU8sQUFBZCxFQUFnQjtJQUViLGFBQWEsRXRCckZWLFFBQW1EO0lzQnNGdEQsWUFBWSxFdEJ0RlQsUUFBbUQsR3NCd0Z6RDs7QXJEM0JDLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztFcURvQmhDLEFBU0UsMkJBVHlCLENBU3pCLFdBQVcsQ0FBQztJQUVSLE1BQU0sRXRCM0ZvQixDQUFDLENBQUQsQ0FBQyxDQUFELENBQUMsQ0FEeEIsT0FBbUQsR3NCOEZ6RDs7QUFiSCxBQWVFLDJCQWZ5QixDQWV6QixZQUFZLENBQUM7RUFDWCxLQUFLLEV0QmpHQSxTQUFtRDtFc0JrR3hELEtBQUssRXRCbEdBLFNBQW1EO0VzQm1HeEQsU0FBUyxFdEJuR0osS0FBbUQsR3NCNkd6RDtFckQ3REMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lxRGlDNUIsQUFlRSwyQkFmeUIsQ0FlekIsWUFBWSxDQUFDO01BTVQsS0FBSyxFdEJ0R0YsS0FBbUQsR3NCNkd6RDtFckQ3REMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lxRGlDNUIsQUFlRSwyQkFmeUIsQ0FlekIsWUFBWSxDQUFDO01BVVQsS0FBSyxFdEIxR0YsS0FBbUQ7TXNCMkd0RCxTQUFTLEV0QjNHTixLQUFtRCxHc0I2R3pEOztBQUdILEFBQUEsY0FBYyxDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixjQUFjLEVBQUUsTUFBTTtFQUN0QixlQUFlLEVBQUUsTUFBTTtFQUN2QixXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsTUFBTTtFQUNsQixRQUFRLEVBQUUsTUFBTTtFQUNoQixLQUFLLEV6RDdISSxJQUFJO0V5RDhIYixJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ3ZCZmMsYUFBYSxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVO0V1QmdCOUUsT0FBTyxFdEIxSEEsUUFBbUQsQ0FBbkQsU0FBbUQ7RXNCMkgxRCxPQUFPLEVBQUUsQ0FBQyxHQW9RWDtFckRsVUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0lxRG1EL0IsQUFBQSxjQUFjLENBQUM7TUFjWCxVQUFVLEVBQUUsS0FBSztNQUNqQixVQUFVLEVBQUUsMEJBQTBCLEdBZ1F6QztFckRsVUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0lxRG1EaEMsQUFBQSxjQUFjLENBQUM7TUFtQlgsVUFBVSxFdEJuSUwsVUFBbUQsR3NCK1gzRDtFckQvVUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lxRGdFN0IsQUFBQSxjQUFjLENBQUM7TUF1QlgsT0FBTyxFdEJ2SUYsUUFBbUQsQ0FBbkQsTUFBbUQ7TXNCd0l4RCxNQUFNLEV0QnZJc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQ7TXNCeUl4RCxTQUFTLEV0QnpJSixNQUFtRDtNc0IwSXhELGFBQWEsRXZCaEJ1QyxPQUFPLEd1QnFROUQ7RXJEL1VHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcURnRTdCLEFBQUEsY0FBYyxDQUFDO01BOEJYLE9BQU8sRXRCOUlGLFFBQW1ELENBQW5ELFNBQW1ELEdzQitYM0Q7RXJEbFVHLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJcURtRGhDLEFBaUNFLGNBakNZLEFBaUNYLHNCQUFzQixDQUFDO01BRXBCLFVBQVUsRUFBRSxJQUFJO01BQ2hCLFFBQVEsRUFBRSxPQUFPLEdBb0JwQjtFckQzR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0lxRG1EaEMsQUF1Q0ksY0F2Q1UsQUFpQ1gsc0JBQXNCLEFBTXBCLE9BQU8sQ0FBQztNQUVMLFFBQVEsRUFBRSxRQUFRO01BQ2xCLFFBQVEsRUFBRSxRQUFRO01BQ2xCLE9BQU8sRUFBRSxFQUFFO01BQ1gsSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsQ0FBQztNQUNSLGlCQUFpQixFQUFFLFNBQVM7TUFDNUIsZUFBZSxFQUFFLFNBQVM7TUFDMUIsR0FBRyxFQUFFLEdBQUc7TUFDUixTQUFTLEVBQUUsY0FBYztNQUN6QixNQUFNLEVBQUUsS0FBSztNQUNiLGdCQUFnQixFQUFFLDJCQUEyQjtNQUM3QyxtQkFBbUIsRUFBRSxHQUFHO01BQ3hCLE9BQU8sRUFBRSxHQUFHLEdBRWY7RXJEdkhELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcURnRTdCLEFBMkRJLGNBM0RVLEFBMERYLE1BQU0sQ0FDTCxnQkFBZ0IsQ0FBQztNQUViLFNBQVMsRUFBRSxVQUFVLEdBRXhCO0VyRC9IRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SXFEZ0U3QixBQWlFSSxjQWpFVSxBQTBEWCxNQUFNLENBT0wsZUFBZSxDQUFDO01BRVosU0FBUyxFQUFFLFFBQVEsR0FFdEI7RXJEcklELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcURnRTdCLEFBdUVJLGNBdkVVLEFBMERYLE1BQU0sQUFhSixNQUFNLENBQUM7TUFFSixPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxPQUFPLEdBRXRCO0VyRDVJRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SXFEZ0U3QixBQStFRSxjQS9FWSxBQStFWCxXQUFXLENBQUM7TUFFVCxNQUFNLEVBQUUsQ0FBQyxHQUVaO0VBbkZILEFBcUZFLGNBckZZLEFBcUZYLE1BQU0sQ0FBQztJckJjVCxVQUFVLEVBRlcsd0JBQU8sRUFBUCwyQkFBTztJQWlJNUIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUZvQixDQUFDO0lBR3hCLE1BQU0sRUFINkIsQ0FBQztJQUlwQyxJQUFJLEVBSnlDLENBQUM7SUFLOUMsS0FBSyxFQUxtRCxDQUFDO0lxQnpJdEQsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsRUFBRTtJQUNYLFVBQVUsRUFBRSxzQkFBc0IsR0FtQm5DO0lyRDdLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFEZ0U3QixBQXFGRSxjQXJGWSxBQXFGWCxNQUFNLENBQUM7UUFRSixPQUFPLEVBQUUsQ0FBQztRQUNWLFVBQVUsRUFBRSxNQUFNO1FBQ2xCLFVBQVUsRUFBRSxzQkFBc0IsR0FjckM7SXJEaEtDLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztNcURxSjVCLEFBQUEsMkJBQTJCLENBbEcvQixjQUFjLEFBcUZYLE1BQU0sQ0FheUI7UUFFMUIsZ0JBQWdCLEV2QjlNYixPQUFPO1F1QitNVixPQUFPLEVBQUUsRUFBRSxHQU9kO0lyRDVLRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFEa0t6QixBQUFBLDJCQUEyQixDQWxHL0IsY0FBYyxBQXFGWCxNQUFNLENBYXlCO1FBTzFCLE9BQU8sRUFBRSxDQUFDO1FBQ1YsVUFBVSxFQUFFLE9BQU8sR0FFdEI7RXJEL0pELE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJcURrSzlCLEFBQUEsMkJBQTJCLENBL0c3QixjQUFjLENBK0drQjtNQUUxQixVQUFVLEV0QmpPUCxRQUFtRCxHc0J1T3pEO0VyRDFLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXFEa0s3QixBQUFBLDJCQUEyQixDQS9HN0IsY0FBYyxDQStHa0I7TUFNMUIsVUFBVSxFdEJyT1AsU0FBbUQsR3NCdU96RDtFckR2TEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lxRGdFN0IsQUF5SEUsY0F6SFksQUF5SFgsaUJBQWlCLENBQUM7TUFFZixVQUFVLEV2QnBId0MsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCO011QnFIakYsTUFBTSxFQUFFLElBQUksR0EwQmY7RXJEdE5DLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcURnRTdCLEFBeUhFLGNBekhZLEFBeUhYLGlCQUFpQixDQUFDO01BT2YsT0FBTyxFdEJoUEosUUFBbUQsQ0FBbkQsUUFBbUQsQ0FBbkQsUUFBbUQsQ0FBbkQsU0FBbUQsR3NCc1F6RDtFQXRKSCxBQW1JSSxjQW5JVSxBQXlIWCxpQkFBaUIsQUFVZixNQUFNLENBQUM7SUFDTixVQUFVLEV2QnJPTixPQUFPO0l1QnNPWCxPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxPQUFPLEdBQ3BCO0VBRUQsQUFBQSwyQkFBMkIsQ0F6SS9CLGNBQWMsQUF5SFgsaUJBQWlCLENBZ0JjO0lBQzVCLFVBQVUsRXRCMVBQLFVBQW1ELEdzQitQdkQ7SXJEL01ELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNcUR5TXhCLEFBQUEsMkJBQTJCLENBekkvQixjQUFjLEFBeUhYLGlCQUFpQixDQWdCYztRQUkxQixVQUFVLEV0QjdQVCxTQUFtRCxHc0IrUHZEO0VyRC9NRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SXFEZ0U3QixBQWlKSSxjQWpKVSxBQXlIWCxpQkFBaUIsQ0F3QmhCLGVBQWUsQ0FBQztNQUVaLFNBQVMsRUFBRSxRQUFRLEdBRXRCO0VyRHJORCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SXFEZ0U3QixBQXdKRSxjQXhKWSxBQXdKWCxpQkFBaUIsQ0FBQztNQUVmLElBQUksRUFBRSxHQUFHLEdBVVo7RUFQQyxBQUFBLDJCQUEyQixDQTdKL0IsY0FBYyxBQXdKWCxpQkFBaUIsQ0FLYztJQUM1QixVQUFVLEV0QjlRUCxVQUFtRCxHc0JtUnZEO0lyRG5PRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXFENk54QixBQUFBLDJCQUEyQixDQTdKL0IsY0FBYyxBQXdKWCxpQkFBaUIsQ0FLYztRQUkxQixVQUFVLEV0QmpSVCxTQUFtRCxHc0JtUnZEO0VBbktMLEFBc0tFLGNBdEtZLENBc0taLE1BQU0sQ0FBQztJQUNMLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLFdBQVcsRUFBRSxPQUFPLEdBWXJCO0lyRHBQQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFEZ0U3QixBQXNLRSxjQXRLWSxDQXNLWixNQUFNLENBQUM7UUFLSCxTQUFTLEV0QjNSTixRQUFtRCxHc0JvU3pEO0lyRHBQQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFEOE96QixBQUFBLDJCQUEyQixDQTlLL0IsY0FBYyxDQXNLWixNQUFNLENBUTBCO1FBRTFCLFNBQVMsRXRCaFNSLE1BQW1EO1FzQmlTcEQsV0FBVyxFQUFFLElBQUksR0FFcEI7RUFuTEwsQUF1TEksY0F2TFUsQ0FzTFosQ0FBQyxBQUNFLFdBQVcsQ0FBQztJQUNYLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7RUF6TEwsQUE0TEUsY0E1TFksQ0E0TFosRUFBRSxDQUFDO0lBQ0QsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDdkJyTU8sdUJBQXVCLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVU7SXVCc010RixjQUFjLEVBQUUsSUFBSSxHQW1CckI7SXJEcFFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNcURtRC9CLEFBNExFLGNBNUxZLENBNExaLEVBQUUsQ0FBQztRQUtDLE1BQU0sRXRCaFRvQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHc0JpVXpEO0lyRGpSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFEZ0U3QixBQTRMRSxjQTVMWSxDQTRMWixFQUFFLENBQUM7UUFTQyxTQUFTLEV0QnJUTixTQUFtRCxHc0JpVXpEO0lyRGpSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFEZ0U3QixBQTRMRSxjQTVMWSxDQTRMWixFQUFFLENBQUM7UUFhQyxTQUFTLEV0QnpUTixPQUFtRCxHc0JpVXpEO0lyRGpSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TXFENFF6QixBQUFBLDJCQUEyQixDQTVNL0IsY0FBYyxDQTRMWixFQUFFLENBZ0I4QjtRQUUxQixTQUFTLEV0QjlUUixTQUFtRCxHc0JnVXZEO0VBaE5MLEFBa05FLGNBbE5ZLENBa05aLENBQUMsQ0FBQztJQUNBLEtBQUssRUFBRSxPQUFPLEdBQ2Y7RUFwTkgsQUFxTkUsY0FyTlksQ0FxTlosRUFBRSxDQUFDO0lBQ0QsV0FBVyxFQUFFLE9BQU87SUFDcEIsU0FBUyxFdEJ2VUosT0FBbUQsR3NCZ1Z6RDtJckRuUkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO01xRG1EL0IsQUFxTkUsY0FyTlksQ0FxTlosRUFBRSxDQUFDO1FBS0MsTUFBTSxFdEJ6VW9CLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdzQmdWekQ7SXJEaFNDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNcURnRTVCLEFBcU5FLGNBck5ZLENBcU5aLEVBQUUsQ0FBQztRQVNDLFNBQVMsRXRCOVVOLElBQW1ELEdzQmdWekQ7RUFoT0gsQUFrT0UsY0FsT1ksQ0FrT1osV0FBVyxDQUFDO0lBQ1YsS0FBSyxFQUFFLE9BQU87SUFDZCxVQUFVLEVBQUUsVUFBVTtJQUN0QixTQUFTLEV0QnJWSixJQUFtRDtJc0JzVnhELGFBQWEsRXRCdFZSLFNBQW1ELEdzQmdXekQ7SXJEaFRDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNcURnRTdCLEFBa09FLGNBbE9ZLENBa09aLFdBQVcsQ0FBQztRQU9SLFNBQVMsRXRCelZOLE1BQW1EO1FzQjBWdEQsYUFBYSxFdEIxVlYsUUFBbUQsR3NCZ1d6RDtJQWhQSCxBQTZPSSxjQTdPVSxDQWtPWixXQUFXLEFBV1IsTUFBTSxDQUFDO01BQ04sS0FBSyxFdkJsVkQsT0FBTyxHdUJtVlo7RUEvT0wsQUFrUEUsY0FsUFksQ0FrUFosU0FBUyxDQUFDO0lBQ1IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLEN2QnZQWSxXQUFXLEVBQUUsT0FBTztJdUJ3UDlDLE1BQU0sRXRCbldzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixPQUFtRDtJc0JxV3hELEtBQUssRUFBRSxPQUFPLEdBeUJmO0lyRDlVQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXFEZ0U1QixBQWtQRSxjQWxQWSxDQWtQWixTQUFTLENBQUM7UUFNTixNQUFNLEV0QnZXb0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR3NCOFh6RDtJckQ5VUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01xRGdFN0IsQUFrUEUsY0FsUFksQ0FrUFosU0FBUyxDQUFDO1FBVU4sU0FBUyxFdEI1V04sUUFBbUQsR3NCOFh6RDtJckQ5VUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01xRGdFN0IsQUFrUEUsY0FsUFksQ0FrUFosU0FBUyxDQUFDO1FBY04sU0FBUyxFdEJoWE4sSUFBbUQsR3NCOFh6RDtJQVhDLEFBQUEsMkJBQTJCLENBblEvQixjQUFjLENBa1BaLFNBQVMsQ0FpQnVCO01BQzVCLE1BQU0sRXRCblhvQixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHc0I2WHZEO01yRDdVRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UXFEbVV4QixBQUFBLDJCQUEyQixDQW5RL0IsY0FBYyxDQWtQWixTQUFTLENBaUJ1QjtVQUkxQixTQUFTLEV0QnZYUixRQUFtRCxHc0I2WHZEO01yRDdVRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07UXFEbVV6QixBQUFBLDJCQUEyQixDQW5RL0IsY0FBYyxDQWtQWixTQUFTLENBaUJ1QjtVQVExQixTQUFTLEV0QjNYUixRQUFtRCxHc0I2WHZEOztBQUlMLEFBQUEsZUFBZSxDQUFDO0VyQjlLZixVQUFVLEVBRlcsMEJBQU8sR3FCNEw1QjtFckQ3VkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lxRGlWN0IsQUFBQSxlQUFlLENBQUM7TUFJWixTQUFTLEVBQUUsUUFBUSxHQVF0QjtFckQ3VkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lxRHdWM0IsQUFBQSwyQkFBMkIsQ0FQN0IsZUFBZSxDQU9pQjtNQUUxQixTQUFTLEVBQUUsUUFBUSxHQUV0Qjs7QUFHSCxBQUFBLGdCQUFnQixDQUFDO0VyQjVMaEIsVUFBVSxFQUZXLDBCQUFPO0VBaUk1QixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBRm9CLENBQUM7RUFHeEIsTUFBTSxFQUg2QixDQUFDO0VBSXBDLElBQUksRUFKeUMsQ0FBQztFQUs5QyxLQUFLLEVBTG1ELENBQUM7RUFVekQsbUJBQW1CLEVBRFMsR0FBRyxDQUFXLEdBQUc7RUFFN0MsaUJBQWlCLEVBQUUsU0FBUztFQUM1QixlQUFlLEVBQUUsS0FBSztFcUJzRHJCLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixlQUFlLEVBQUUsTUFBTSxHQWlCeEI7RXJEMVdHLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJcUQyVjlCLEFBQUEsMkJBQTJCLENBVDdCLGdCQUFnQixDQVNnQjtNQUUxQixnQkFBZ0IsRUFBRSxlQUFlLEdBRXBDO0VyRDVXQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SXFEK1Y1QixBQWVFLGdCQWZjLENBZWQsR0FBRyxDQUFDO01BRUEsU0FBUyxFQUFFLFVBQVUsR0FNeEI7RXJEdFhDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJcUQrVjdCLEFBZUUsZ0JBZmMsQ0FlZCxHQUFHLENBQUM7TUFNQSxPQUFPLEVBQUUsSUFBSSxHQUVoQjs7QUNsYkgsQUFBQSxjQUFjLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixVQUFVLEV4QnNCRixPQUFPO0V3QnJCZixPQUFPLEVBQUUsQ0FBQztFQUNWLE9BQU8sRUFBRSxVQUFVO0VBQ25CLEtBQUssRUFBRSxJQUFJLEdBNEZaO0V0RHhCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXNEekUvQixBQUFBLGNBQWMsQ0FBQztNQU9YLFVBQVUsRUFBRSxNQUFNLEdBMEZyQjtFdERyQ0csTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lzRDVENUIsQUFBQSxjQUFjLENBQUM7TUFXWCxPQUFPLEV2QkNGLFFBQW1ELENBQzVCLENBQUMsQ3VCRkwsa0JBQWtCLEdBc0Y3QztFQWpHRCxBQWNFLGNBZFksQUFjWCxNQUFNLENBQUM7SUFDTixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxFQUFFLEdBa0JaO0l0RHNDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TXNEekUvQixBQWNFLGNBZFksQUFjWCxNQUFNLENBQUM7UUFNSixJQUFJLEVBQUUsQ0FBQztRQUNQLEtBQUssRUFBRSxDQUFDO1FBQ1IsaUJBQWlCLEVBQUUsU0FBUztRQUM1QixlQUFlLEVBQUUsU0FBUztRQUMxQixHQUFHLEVBQUUsT0FBTztRQUNaLGdCQUFnQixFQUFFLDJCQUEyQjtRQUM3QyxtQkFBbUIsRUFBRSxNQUFNO1FBQzNCLE1BQU0sRUFBRSxNQUFNLEdBUWpCO0l0RHlCQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXNENUQ1QixBQWNFLGNBZFksQUFjWCxNQUFNLENBQUM7UXRCZ1ZULFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFGb0IsQ0FBQztRQUd4QixNQUFNLEVBSDZCLENBQUM7UUFJcEMsSUFBSSxFQUp5QyxDQUFDO1FBSzlDLEtBQUssRUFMbUQsQ0FBQztRc0I3VHBELE9BQU8sRUFBRSxFQUFFLEdBR2Q7RUFuQ0gsQUFxQ0UsY0FyQ1ksQUFxQ1gsT0FBTyxDQUFDO0lBQ1AsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsRUFBRTtJQUNYLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLENBQUM7SUFDUixpQkFBaUIsRUFBRSxTQUFTO0lBQzVCLGVBQWUsRUFBRSxTQUFTO0lBQzFCLE1BQU0sRXZCakNELFNBQW1EO0l1QmtDeEQsTUFBTSxFQUFFLE1BQU07SUFDZCxnQkFBZ0IsRUFBRSwyQkFBMkI7SUFDN0MsbUJBQW1CLEVBQUUsR0FBRyxHQU96QjtJdERLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TXNENUQ1QixBQXFDRSxjQXJDWSxBQXFDWCxPQUFPLENBQUM7UUFjTCxnQkFBZ0IsRUFBRSwyQkFBMkI7UUFDN0MsU0FBUyxFQUFFLGNBQWM7UUFDekIsTUFBTSxFQUFFLEtBQUssR0FFaEI7RUF2REgsQUF5REUsY0F6RFksQUF5RFgsYUFBYSxDQUFDO0lBQ2IsYUFBYSxFQUFFLE1BQU0sR0FLdEI7SXRESEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO01zRDVENUIsQUF5REUsY0F6RFksQUF5RFgsYUFBYSxDQUFDO1FBSVgsYUFBYSxFQUFFLE1BQU0sR0FFeEI7RXREVUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0lzRHpFL0IsQUFpRUUsY0FqRVksQUFpRVgsZ0JBQWdCLENBQUM7TUFFZCxVQUFVLEVBQUUsQ0FBQyxHQVloQjtFQS9FSCxBQXNFSSxjQXRFVSxBQWlFWCxnQkFBZ0IsQUFLZCxPQUFPLENBQUM7SUFDUCxPQUFPLEVBQUUsSUFBSSxHQUNkO0V0RENELE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJc0R6RS9CLEFBMEVJLGNBMUVVLEFBaUVYLGdCQUFnQixBQVNkLE1BQU0sQ0FBQztNQUVKLE9BQU8sRUFBRSxJQUFJLEdBRWhCO0V0RExELE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJc0R6RS9CLEFBaUZFLGNBakZZLENBaUZaLEVBQUUsQ0FBQztNQUVDLFNBQVMsRXZCdkVOLE9BQW1ELEd1QitFekQ7RXREL0JDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJc0Q1RDVCLEFBc0ZJLGNBdEZVLENBaUZaLEVBQUUsQ0FLQSxFQUFFLENBQUM7TUFFQyxPQUFPLEVBQUUsSUFBSSxHQUVoQjtFQTFGTCxBQTZGSSxjQTdGVSxDQTRGWixNQUFNLENBQ0osQ0FBQyxDQUFDO0lBQ0EsTUFBTSxFQUFFLGVBQWUsR0FDeEI7O0FBSUwsQUFBQSxjQUFjLENBQUM7RUFDYixVQUFVLEVBQUUsMEJBQTBCO0VBQ3RDLFFBQVEsRUFBRSxRQUFRLEdBNkNuQjtFdER6RUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0lzRDBCL0IsQUFBQSxjQUFjLENBQUM7TUFLWCxPQUFPLEV2QjNGcUIsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQsR3VCc0kzRDtFdER0RkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lzRHVDNUIsQUFBQSxjQUFjLENBQUM7TUFTWCxPQUFPLEV2Qi9GcUIsQ0FBQyxDQUR4QixPQUFtRCxHdUJzSTNEO0V0RHpFRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXNEMEIvQixBQWFJLGNBYlUsQ0FZWixXQUFXLENBQ1QsQ0FBQyxDQUFDO01BRUUsS0FBSyxFMUQzR0YsSUFBSSxHMEQ2R1Y7RUFqQkwsQUFvQkUsY0FwQlksQ0FvQlosRUFBRSxDQUFDO0lBQ0QsY0FBYyxFQUFFLFNBQVM7SUFDekIsV0FBVyxFQUFFLEdBQUc7SUFDaEIsTUFBTSxFdkI3R3NCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEd1Qm1IekQ7SXREbkVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNc0R1QzVCLEFBb0JFLGNBcEJZLENBb0JaLEVBQUUsQ0FBQztRQU1DLE1BQU0sRXZCaEhvQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHdUJtSHpEO0V0RHREQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXNEMEIvQixBQThCRSxjQTlCWSxDQThCWixZQUFZLENBQUM7TUFFVCxLQUFLLEUxRDVIQSxJQUFJLEcwRDBJWjtFdERyRkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lzRHVDNUIsQUE4QkUsY0E5QlksQ0E4QlosWUFBWSxDQUFDO01BTVQsR0FBRyxFQUFFLEdBQUcsR0FVWDtFQTlDSCxBQXVDSSxjQXZDVSxDQThCWixZQUFZLEFBU1QsTUFBTSxDQUFDO0lBQ04sS0FBSyxFeEJ6SEEsT0FBTyxHd0I4SGI7SXREcEZELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNc0R1QzVCLEFBdUNJLGNBdkNVLENBOEJaLFlBQVksQUFTVCxNQUFNLENBQUM7UUFJSixLQUFLLEUxRHZJRixJQUFJLEcwRHlJVjs7QUMvSUwsQUFBQSxnQkFBZ0IsQ0FBQztFQUNoQixPQUFPLEVBQUUsS0FBSyxHQUNkOztBdkRzRUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0V1RHBFL0IsQUFHRSxnQkFIYyxBQUdiLE9BQU8sQ0FBQTtJQUNQLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLEtBQUssRUFBRSxHQUFHLENBQUEsVUFBVTtJQUNwQixNQUFNLEVBQUUsR0FBRyxDQUFBLFVBQVU7SUFDckIsTUFBTSxFQUFDLEdBQUcsQ0FBQSxVQUFVO0lBQ3BCLE9BQU8sRUFBRSxHQUFHLENBQUEsVUFBVSxHQUN0Qjs7QUNkSCxBQUFBLGFBQWE7QUFDYix1QkFBdUIsQ0FBQztFQUN0QixPQUFPLEVBQUUsSUFBSTtFQUNiLFNBQVMsRUFBRSxJQUFJO0VBQ2YsYUFBYSxFekJRTixRQUFtRDtFeUJQMUQsWUFBWSxFekJPTCxVQUFtRDtFeUJOMUQsV0FBVyxFekJNSixVQUFtRCxHeUIrRDNEO0VBM0VELEFBT0UsYUFQVyxBQU9WLFdBQVc7RUFOZCx1QkFBdUIsQUFNcEIsV0FBVyxDQUFDO0lBQ1gsYUFBYSxFQUFFLENBQUMsR0FDakI7RUFUSCxBQVVFLGFBVlcsQ0FVWCxDQUFDO0VBVEgsdUJBQXVCLENBU3JCLENBQUMsQ0FBQztJQUNBLEtBQUssRUFBRSxPQUFPLEdBQ2Y7RUFaSCxBQWFFLGFBYlcsQ0FhWCxLQUFLO0VBWlAsdUJBQXVCLENBWXJCLEtBQUssQ0FBQztJQUNKLGFBQWEsRXpCRlIsT0FBbUQ7SXlCR3hELGFBQWEsRXpCSFIsU0FBbUQ7SXlCSXhELFlBQVksRXpCSlAsU0FBbUQsR3lCMkN6RDtJQXJDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TUFsQjVCLEFBYUUsYUFiVyxDQWFYLEtBQUs7TUFaUCx1QkFBdUIsQ0FZckIsS0FBSyxDQUFDO1FBTUYsU0FBUyxFQUFFLElBQUksR0FvQ2xCO0lBakNDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNQXRCNUIsQUFhRSxhQWJXLENBYVgsS0FBSztNQVpQLHVCQUF1QixDQVlyQixLQUFLLENBQUM7UUFVRixLQUFLLEVBQUUsR0FBRyxHQWdDYjtJQXZESCxBQTBCSSxhQTFCUyxDQWFYLEtBQUssQ0FhSCxhQUFhO0lBekJqQix1QkFBdUIsQ0FZckIsS0FBSyxDQWFILGFBQWEsQ0FBQztNQUNaLE9BQU8sRUFBRSxLQUFLO01BQ2QsUUFBUSxFQUFFLFFBQVE7TUFDbEIsUUFBUSxFQUFFLE1BQU07TUFDaEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLEN6QmxCWCxPQUFtRDtNeUJtQnRELFNBQVMsRUFBRSxvQkFBb0IsR0FRaEM7TUF2Q0wsQUFpQ00sYUFqQ08sQ0FhWCxLQUFLLENBYUgsYUFBYSxDQU9YLEdBQUc7TUFoQ1QsdUJBQXVCLENBWXJCLEtBQUssQ0FhSCxhQUFhLENBT1gsR0FBRyxDQUFDO1F4QjhMVCxVQUFVLEVBRlcsMEJBQU87UXdCMUxyQixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxJQUFJO1FBQ1osVUFBVSxFQUFFLEtBQUssR0FDbEI7SUF0Q1AsQUF5Q0ksYUF6Q1MsQ0FhWCxLQUFLLENBNEJILE1BQU07SUF4Q1YsdUJBQXVCLENBWXJCLEtBQUssQ0E0QkgsTUFBTSxDQUFDO01BQ0wsY0FBYyxFQUFFLFNBQVM7TUFDekIsU0FBUyxFekIvQk4sSUFBbUQsR3lCZ0N2RDtJQTVDTCxBQStDTSxhQS9DTyxDQWFYLEtBQUssQ0FpQ0gsQ0FBQyxBQUNFLFdBQVc7SUE5Q2xCLHVCQUF1QixDQVlyQixLQUFLLENBaUNILENBQUMsQUFDRSxXQUFXLENBQUM7TUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUNWO0lBakRQLEFBb0RJLGFBcERTLENBYVgsS0FBSyxDQXVDSCxXQUFXO0lBbkRmLHVCQUF1QixDQVlyQixLQUFLLENBdUNILFdBQVcsQ0FBQztNeEIwU2YsUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUZvQixDQUFDO01BR3hCLE1BQU0sRUFINkIsQ0FBQztNQUlwQyxJQUFJLEVBSnlDLENBQUM7TUFLOUMsS0FBSyxFQUxtRCxDQUFDLEd3QnZTckQ7RUF0REwsQUF5REUsYUF6RFcsQ0F5RFgsQ0FBQyxBQUFBLEtBQUs7RUF4RFIsdUJBQXVCLENBd0RyQixDQUFDLEFBQUEsS0FBSyxDQUFDO0lBQ0wsT0FBTyxFQUFFLEtBQUssR0FnQmY7SUExRUgsQUE0REksYUE1RFMsQ0F5RFgsQ0FBQyxBQUFBLEtBQUssQUFHSCxNQUFNO0lBM0RYLHVCQUF1QixDQXdEckIsQ0FBQyxBQUFBLEtBQUssQUFHSCxNQUFNLENBQUM7TUFDTixlQUFlLEVBQUUsSUFBSTtNQUNyQixLQUFLLEUxQnRDRCxPQUFPLEcwQmlEWjtNQXpFTCxBQWdFTSxhQWhFTyxDQXlEWCxDQUFDLEFBQUEsS0FBSyxBQUdILE1BQU0sQ0FJTCxXQUFXO01BL0RqQix1QkFBdUIsQ0F3RHJCLENBQUMsQUFBQSxLQUFLLEFBR0gsTUFBTSxDQUlMLFdBQVcsQ0FBQztRQUNWLEtBQUssRUFBRSxrQkFBa0IsR0FDMUI7TUFsRVAsQUFxRVEsYUFyRUssQ0F5RFgsQ0FBQyxBQUFBLEtBQUssQUFHSCxNQUFNLENBUUwsYUFBYSxDQUNYLEdBQUc7TUFwRVgsdUJBQXVCLENBd0RyQixDQUFDLEFBQUEsS0FBSyxBQUdILE1BQU0sQ0FRTCxhQUFhLENBQ1gsR0FBRyxDQUFDO1FBQ0YsU0FBUyxFQUFFLFVBQVUsR0FDdEI7O0FBTVQsQUFDRSxhQURXLENBQ1gsS0FBSyxDQUFDO0VBQ0osVUFBVSxFQUFFLE1BQU0sR0EyQ25CO0VBekNDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJQUo3QixBQUNFLGFBRFcsQ0FDWCxLQUFLLENBQUM7TUFJRixLQUFLLEVBQUUsR0FBRyxHQXdDYjtFQTdDSCxBQVFJLGFBUlMsQ0FDWCxLQUFLLENBT0gsYUFBYSxDQUFDO0lBQ1osTUFBTSxFekIxRUgsT0FBbUQsR3lCdUd2RDtJeER2REQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO013RGlCNUIsQUFRSSxhQVJTLENBQ1gsS0FBSyxDQU9ILGFBQWEsQ0FBQztRQUlWLE1BQU0sRXpCN0VMLFVBQW1ELEd5QnVHdkQ7SUF2QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE9BQU8sU0FBUyxFQUFFLE1BQU07TUFmdkQsQUFRSSxhQVJTLENBQ1gsS0FBSyxDQU9ILGFBQWEsQ0FBQztRQVFWLE1BQU0sRXpCakZMLFNBQW1ELEd5QnVHdkQ7SXhEdkRELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNd0RpQjdCLEFBUUksYUFSUyxDQUNYLEtBQUssQ0FPSCxhQUFhLENBQUM7UUFZVixNQUFNLEV6QnJGTCxVQUFtRCxHeUJ1R3ZEO0lBdENMLEFBdUJNLGFBdkJPLENBQ1gsS0FBSyxDQU9ILGFBQWEsQUFlVixlQUFlLENBQUM7TUFDZixLQUFLLEV6QnpGSixPQUFtRCxHeUJzR3JEO014RHRESCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UXdEaUI1QixBQXVCTSxhQXZCTyxDQUNYLEtBQUssQ0FPSCxhQUFhLEFBZVYsZUFBZSxDQUFDO1VBSWIsS0FBSyxFekI1Rk4sVUFBbUQsR3lCc0dyRDtNQVBDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxPQUFPLFNBQVMsRUFBRSxNQUFNO1FBOUJ6RCxBQXVCTSxhQXZCTyxDQUNYLEtBQUssQ0FPSCxhQUFhLEFBZVYsZUFBZSxDQUFDO1VBUWIsS0FBSyxFekJoR04sU0FBbUQsR3lCc0dyRDtNeER0REgsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO1F3RGlCN0IsQUF1Qk0sYUF2Qk8sQ0FDWCxLQUFLLENBT0gsYUFBYSxBQWVWLGVBQWUsQ0FBQztVQVliLEtBQUssRXpCcEdOLFVBQW1ELEd5QnNHckQ7RXhEekNILE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJd0RJL0IsQUF3Q0ksYUF4Q1MsQ0FDWCxLQUFLLENBdUNILEVBQUUsQ0FBQztNQUVDLFNBQVMsRXpCM0dSLE9BQW1ELEd5QjZHdkQ7O0FBS0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VBRDNCLEFBQUEsdUJBQXVCLENBQUM7SUFFcEIsWUFBWSxFekJuSFAsU0FBbUQ7SXlCb0h4RCxXQUFXLEV6QnBITixTQUFtRCxHeUJnSzNEOztBQS9DRCxBQU1FLHVCQU5xQixDQU1yQixLQUFLLENBQUM7RUFDSixhQUFhLEV6QnhIUixRQUFtRCxHeUIrSnpEO0V4RGxHQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXdEb0QvQixBQU1FLHVCQU5xQixDQU1yQixLQUFLLENBQUM7TUFJRixVQUFVLEVBQUUsTUFBTSxHQW9DckI7RXhEL0dDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJd0RpRTVCLEFBTUUsdUJBTnFCLENBTXJCLEtBQUssQ0FBQztNQVFGLGVBQWUsRUFBRSxJQUFJO01BQ3JCLGFBQWEsRXpCaElWLFFBQW1ELEd5QitKekQ7RUE1QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lBbEI3QixBQU1FLHVCQU5xQixDQU1yQixLQUFLLENBQUM7TUFhRixLQUFLLEVBQUUsR0FBRztNQUNWLFlBQVksRXpCcklULFFBQW1EO015QnNJdEQsYUFBYSxFekJ0SVYsUUFBbUQsR3lCK0p6RDtFQTlDSCxBQXdCSSx1QkF4Qm1CLENBTXJCLEtBQUssQ0FrQkgsYUFBYSxDQUFDO0lBQ1osS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSSxHQWFiO0l4RDNGRCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TXdEb0QvQixBQXdCSSx1QkF4Qm1CLENBTXJCLEtBQUssQ0FrQkgsYUFBYSxDQUFDO1FBS1YsYUFBYSxFekI5SVosUUFBbUQsR3lCd0p2RDtJeER4R0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO013RGlFNUIsQUF3QkksdUJBeEJtQixDQU1yQixLQUFLLENBa0JILGFBQWEsQ0FBQztRQVNWLE1BQU0sRUFBRSxJQUFJLEdBTWY7SXhEeEdELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNd0RpRTdCLEFBd0JJLHVCQXhCbUIsQ0FNckIsS0FBSyxDQWtCSCxhQUFhLENBQUM7UUFhVixNQUFNLEV6QnRKTCxTQUFtRCxHeUJ3SnZEO0V4RDNGRCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXdEb0QvQixBQXlDSSx1QkF6Q21CLENBTXJCLEtBQUssQ0FtQ0gsRUFBRSxDQUFDO01BRUMsU0FBUyxFekI1SlIsT0FBbUQsR3lCOEp2RDs7QUMxS0wsQUFBQSxhQUFhLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsQ0FBQztFQUNWLE9BQU8sRUFBRSxTQUFTLEdBdUlsQjtFekQ5RUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0l5RDVENUIsQUFBQSxhQUFhLENBQUM7TUFNWixXQUFXLEUxQk1KLE9BQW1ELEcwQjhIM0Q7RUExSUQsQUFTQyxhQVRZLEFBU1gsT0FBTyxDQUFDO0lBQ1IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFDLEVBQUU7SUFDVixJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxDQUFDO0lBQ1IsaUJBQWlCLEVBQUUsU0FBUztJQUM1QixlQUFlLEVBQUUsU0FBUztJQUMxQixHQUFHLEVBQUUsR0FBRztJQUNSLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxjQUFjO0lBQzNDLE1BQU0sRUFBRSxLQUFLO0lBQ2IsZ0JBQWdCLEVBQUUsMkJBQTJCO0lBQzdDLG1CQUFtQixFQUFFLEdBQUc7SUFDeEIsT0FBTyxFQUFFLEVBQUUsR0FDWDtFekRtREUsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0l5RHpFL0IsQUF3QkMsYUF4QlksQUF3QlgsTUFBTSxDQUFDO01BRU4sUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFDLEVBQUU7TUFDVixJQUFJLEVBQUUsQ0FBQztNQUNQLEtBQUssRUFBRSxDQUFDO01BQ1IsaUJBQWlCLEVBQUUsU0FBUztNQUM1QixlQUFlLEVBQUUsU0FBUztNQUMxQixHQUFHLEVBQUUsS0FBSztNQUNWLFNBQVMsRUFBRSxpQkFBaUI7TUFDNUIsTUFBTSxFQUFFLEtBQUs7TUFDYixnQkFBZ0IsRUFBRSwyQkFBMkI7TUFDN0MsbUJBQW1CLEVBQUUsTUFBTTtNQUMzQixPQUFPLEVBQUUsRUFBRSxHQUVaO0V6RGtDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXlEekUvQixBQXlDQyxhQXpDWSxBQXlDWCxlQUFlLENBQUM7TUFFZixXQUFXLEVBQUUsS0FBSyxHQXVEbkI7RUFsR0YsQUE4Q0UsYUE5Q1csQUF5Q1gsZUFBZSxDQUtmLFdBQVcsQ0FBQztJQUNYLE9BQU8sRTFCbkNELElBQW1ELENBQzVCLENBQUMsQ0FEeEIsU0FBbUQsRzBCcUZ6RDtJekRyQ0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO015RDVENUIsQUE4Q0UsYUE5Q1csQUF5Q1gsZUFBZSxDQUtmLFdBQVcsQ0FBQztRQUlWLE9BQU8sRTFCdENGLE9BQW1ELENBQzVCLENBQUMsQ0FBRCxDQUFDLEcwQm9GOUI7SXpEeEJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNeUR6RS9CLEFBcURHLGFBckRVLEFBeUNYLGVBQWUsQ0FLZixXQUFXLEFBT1QsTUFBTSxDQUFDO1FBRU4sUUFBUSxFQUFFLFFBQVE7UUFDbEIsT0FBTyxFQUFDLEVBQUU7UUFDVixJQUFJLEVBQUUsQ0FBQztRQUNQLEtBQUssRUFBRSxDQUFDO1FBQ1IsaUJBQWlCLEVBQUUsU0FBUztRQUM1QixlQUFlLEVBQUUsU0FBUztRQUMxQixHQUFHLEVBQUUsTUFBTTtRQUNYLFNBQVMsRUFBRSxpQkFBaUI7UUFDNUIsTUFBTSxFQUFFLEtBQUs7UUFDYixnQkFBZ0IsRUFBRSwyQkFBMkI7UUFDN0MsbUJBQW1CLEVBQUUsTUFBTTtRQUMzQixPQUFPLEVBQUUsRUFBRSxHQUVaO0l6REtBLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNeUR6RS9CLEFBc0VHLGFBdEVVLEFBeUNYLGVBQWUsQ0FLZixXQUFXLENBd0JWLDBCQUEwQixDQUFDO1FBRXpCLFVBQVUsRTFCNUROLFNBQW1ELEcwQm9GeEQ7SXpEdkJBLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNeUR6RS9CLEFBMkVJLGFBM0VTLEFBeUNYLGVBQWUsQ0FLZixXQUFXLENBd0JWLDBCQUEwQixBQUt4QixNQUFNLENBQUM7UUFFTixRQUFRLEVBQUUsUUFBUTtRQUNsQixPQUFPLEVBQUMsRUFBRTtRQUNWLElBQUksRUFBRSxDQUFDO1FBQ1AsS0FBSyxFQUFFLENBQUM7UUFDUixpQkFBaUIsRUFBRSxTQUFTO1FBQzVCLGVBQWUsRUFBRSxTQUFTO1FBQzFCLEdBQUcsRUFBRSxDQUFDO1FBQ04sU0FBUyxFQUFFLGlCQUFpQjtRQUM1QixNQUFNLEVBQUUsS0FBSztRQUNiLGdCQUFnQixFQUFFLDJCQUEyQjtRQUM3QyxtQkFBbUIsRUFBRSxNQUFNLEdBRTVCO0l6RGhCRCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TXlEekUvQixBQTJGSSxhQTNGUyxBQXlDWCxlQUFlLENBS2YsV0FBVyxDQXdCViwwQkFBMEIsQ0FxQnpCLE1BQU0sQ0FBQTtRQUVKLE9BQU8sRUFBRSxnQkFBZ0IsR0FFMUI7RUEvRkwsQUFvR0MsYUFwR1ksR0FvR1gsWUFBWSxDQUFDO0lBQ2IsVUFBVSxFQUFFLEdBQUcsR0FTZjtJekRsREUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO015RDVENUIsQUFvR0MsYUFwR1ksR0FvR1gsWUFBWSxDQUFDO1FBSVosVUFBVSxFQUFFLEdBQUcsR0FNaEI7SXpEbERFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNeUQ1RDVCLEFBb0dDLGFBcEdZLEdBb0dYLFlBQVksQ0FBQztRQVFaLFVBQVUsRUFBRSxHQUFHLEdBRWhCO0V6RHJDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SXlEekUvQixBQWdIQyxhQWhIWSxDQWdIWixlQUFlLENBQUM7TUFFZCxNQUFNLEUxQnJHdUIsQ0FBQyxDQUFELENBQUMsQ0FEeEIsTUFBbUQsRzBCZ0gxRDtFQTVIRixBQXFIRSxhQXJIVyxDQWdIWixlQUFlLENBS2QsQ0FBQyxDQUFDO0lBQ0QsV0FBVyxFQUFFLElBQUksR0FLakI7SXpEL0RDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNeUQ1RDVCLEFBcUhFLGFBckhXLENBZ0haLGVBQWUsQ0FLZCxDQUFDLENBQUM7UUFJQSxXQUFXLEVBQUUsSUFBSSxHQUVsQjtFekRsREMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0l5RHpFL0IsQUE4SEMsYUE5SFksQ0E4SFosMEJBQTBCLENBQUM7TUFFekIsTUFBTSxFMUJwSEEsUUFBbUQsQ0FBbkQsUUFBbUQsQ0FBbkQsUUFBbUQ7TTBCcUh6RCxPQUFPLEUxQnJIRCxTQUFtRCxDQUFuRCxPQUFtRCxDQUFuRCxTQUFtRCxHMEI2SDFEO0V6RDdFRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SXlENUQ1QixBQThIQyxhQTlIWSxDQThIWiwwQkFBMEIsQ0FBQztNQU96QixTQUFTLEVBQUUsZ0JBQWdCO01BQzNCLFVBQVUsRTFCMUhKLFFBQW1EO00wQjJIekQsYUFBYSxFMUIzSFAsU0FBbUQsRzBCNkgxRDs7QUFHRixBQUFBLFdBQVcsQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRTNCbkhELE9BQU87RTJCb0hoQixPQUFPLEUxQm5JQyxPQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHMEJtSWhDOztBQ2hKRCxBQUFBLGVBQWUsQ0FBQztFQUNmLE9BQU8sRTNCV0MsU0FBbUQsQ0FDNUIsQ0FBQyxHMkJHaEM7RTFENENHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJMEQ1RDVCLEFBQUEsZUFBZSxDQUFDO01BSWQsT0FBTyxFM0JRQSxJQUFtRCxDQUM1QixDQUFDLENBRHhCLFNBQW1ELEcyQkkzRDtFQWhCRCxBQU9DLGVBUGMsQ0FPZCxFQUFFLENBQUM7SUFDRixNQUFNLEUzQkt3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHMkJIMUQ7RUFURixBQVlFLGVBWmEsQ0FXZCxlQUFlLENBQ2QsVUFBVSxDQUFDO0lBQ1YsR0FBRyxFQUFFLENBQUMsR0FDTjs7QUFJSCxBQUFBLGdCQUFnQixDQUFDO0VBQ2hCLE1BQU0sRTNCTnlCLENBQUMsQ0FEeEIsU0FBbUQsQ0FBbkQsT0FBbUQ7RTJCUTNELE9BQU8sRUFBRSxJQUFJO0VBQ2IsZUFBZSxFQUFFLE1BQU07RUFDdkIsU0FBUyxFQUFFLElBQUksR0ErRGY7RTFEWkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0kwRHZEL0IsQUFBQSxnQkFBZ0IsQ0FBQztNQU9mLGVBQWUsRUFBRSxNQUFNLEdBNER4QjtFMUR6QkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0kwRDFDNUIsQUFBQSxnQkFBZ0IsQ0FBQztNQVdmLGFBQWEsRTNCakJOLFNBQW1ELEcyQnlFM0Q7RUFuRUQsQUFjQyxnQkFkZSxDQWNmLE1BQU0sQ0FBQztJMUIrTFAsVUFBVSxFQUZXLDJCQUFPLEVBQVAsdUJBQU8sRUFBUCxzQkFBTyxFQUFQLDJCQUFPO0kwQjNMM0IsU0FBUyxFM0J0QkYsT0FBbUQ7STJCdUIxRCxXQUFXLEVBQUUsR0FBRztJQUNoQixhQUFhLEU1Qm9HeUMsT0FBTztJNEJuRzdELE1BQU0sRTNCekJDLFNBQW1ELEMyQnlCdEMsS0FBSyxDNUJ6QmhCLE9BQU87STRCMEJoQixVQUFVLEU5RC9CRCxJQUFJO0k4RGdDYixNQUFNLEUzQjFCd0IsQ0FBQyxDQUR4QixRQUFtRCxDQUFuRCxPQUFtRDtJMkI0QjFELE9BQU8sRTNCNUJBLFNBQW1ELENBQW5ELE9BQW1EO0kyQjZCMUQsU0FBUyxFM0I3QkYsVUFBbUQ7STJCOEIxRCxLQUFLLEVBQUUsSUFBSSxHQTBDWDtJQXhDQSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TUExQjFCLEFBY0MsZ0JBZGUsQ0FjZixNQUFNLENBQUM7UUFhTCxTQUFTLEUzQmpDSCxRQUFtRCxHMkJ3RTFEO0kxRHhCRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TTBEMUM1QixBQWNDLGdCQWRlLENBY2YsTUFBTSxDQUFDO1FBaUJMLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQjtRQUN4QyxXQUFXLEVBQUUsTUFBTTtRQUNuQixZQUFZLEU5RDdDSixJQUFJO1E4RDhDWixJQUFJLEVBQUUsR0FBRztRQUNULFNBQVMsRTNCMUNILFVBQW1EO1EyQjJDekQsT0FBTyxFM0IzQ0QsT0FBbUQsQ0FBbkQsTUFBbUQsRzJCd0UxRDtJMUR4QkUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00wRDFDNUIsQUF3Q0UsZ0JBeENjLENBY2YsTUFBTSxBQTBCSixZQUFZLENBQUM7UUFFWixJQUFJLEVBQUUsT0FBTyxHQUVkO0lBNUNILEFBOENFLGdCQTlDYyxDQWNmLE1BQU0sQUFnQ0osTUFBTSxDQUFDO01BQ1AsT0FBTyxFQUFFLElBQUksR0FDYjtJQWhESCxBQWtERSxnQkFsRGMsQ0FjZixNQUFNLEFBb0NKLE1BQU0sQ0FBQztNQUNQLFVBQVUsRTVCN0NILE9BQU87TTRCOENkLFlBQVksRTVCOUNMLE9BQU87TTRCK0NkLEtBQUssRTlEaEVHLElBQUk7TThEaUVaLFVBQVUsRUFBRSxJQUFJLEdBQ2hCO0lBdkRILEFBeURFLGdCQXpEYyxDQWNmLE1BQU0sQUEyQ0osT0FBTyxDQUFDO01BQ1IsWUFBWSxFNUJwREwsT0FBTztNNEJxRGQsVUFBVSxFNUJyREgsT0FBTztNNEJzRGQsS0FBSyxFOUR2RUcsSUFBSSxHOEQ0RVo7TTFEdkJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztRMEQxQzVCLEFBeURFLGdCQXpEYyxDQWNmLE1BQU0sQUEyQ0osT0FBTyxDQUFDO1VBTVAsVUFBVSxFQUFFLElBQUksR0FFakI7O0FBSUgsQUFBQSxZQUFZLENBQUM7RUFDWixPQUFPLEVBQUUsSUFBSTtFQUNiLFNBQVMsRUFBRSxJQUFJLEdBK0NmO0UxRC9ERyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7STBEYy9CLEFBQUEsWUFBWSxDQUFDO01BS1gsTUFBTSxFM0IvRXdCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEcyQjRIM0Q7RUFqREQsQUFRQyxZQVJXLENBUVgsRUFBRSxDQUFDO0lBQ0YsV0FBVyxFNUJzQmlCLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtJNEJyQjlFLE1BQU0sRTNCcEZ3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHMkJzRjFEO0VBWEYsQUFhQyxZQWJXLENBYVgsV0FBVyxDQUFDO0lBQ1gsT0FBTyxFM0J4RnVCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEcyQjhGMUQ7STFEOUNFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNMEQyQjVCLEFBYUMsWUFiVyxDQWFYLFdBQVcsQ0FBQztRQUlWLE9BQU8sRUFBRSxDQUFDLEdBRVg7RUFuQkYsQUFxQkMsWUFyQlcsQ0FxQlgsaUJBQWlCLENBQUM7SUFDakIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxNQUFNLEdBQ2xCO0VBMUJGLEFBNEJDLFlBNUJXLENBNEJYLGlCQUFpQixDQUFDO0lBQ2pCLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFM0J6R0YsT0FBbUQ7STJCMEcxRCxXQUFXLEVBQUUsR0FBRztJQUNoQixNQUFNLEVBQUUsT0FBTyxHQWdCZjtJMUQzRUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00wRDJCNUIsQUE0QkMsWUE1QlcsQ0E0QlgsaUJBQWlCLENBQUM7UUFPaEIsT0FBTyxFM0I5R0QsUUFBbUQsQ0FBbkQsU0FBbUQ7UTJCK0d6RCxTQUFTLEUzQi9HSCxJQUFtRDtRMkJnSHpELE9BQU8sRUFBRSxLQUFLLEdBV2Y7SUFoREYsQUF3Q0UsWUF4Q1UsQ0E0QlgsaUJBQWlCLEFBWWYsTUFBTSxDQUFDO01BQ1AsS0FBSyxFNUJ4R0UsT0FBTyxHNEI4R2Q7TTFEMUVDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztRMEQyQjVCLEFBd0NFLFlBeENVLENBNEJYLGlCQUFpQixBQVlmLE1BQU0sQ0FBQztVQUlOLEtBQUssRTlENUhFLElBQUk7VThENkhYLFVBQVUsRTVCNUdKLE9BQU8sRzRCOEdkOztBQUlILEFBQUEsaUJBQWlCLENBQUM7RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFM0IvSHlCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEcyQmlMM0Q7RTFEcEhHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJMERpRS9CLEFBQUEsaUJBQWlCLENBQUM7TUFLaEIsS0FBSyxFQUFFLElBQUksR0E4Q1o7RTFEaklHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJMEQ4RTVCLEFBQUEsaUJBQWlCLENBQUM7TUFTaEIsWUFBWSxFM0J2SUwsSUFBbUQsRzJCaUwzRDtFQW5ERCxBQWNHLGlCQWRjLEFBWWYsYUFBYSxDQUNiLEtBQUssQUFDSCxNQUFNLENBQUM7SUFDUCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsZUFBZSxHQUMzQztFQWhCSixBQW9CQyxpQkFwQmdCLENBb0JoQixLQUFLLENBQUM7SUFDTCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsS0FBSztJQUNkLE9BQU8sRUFBRSxJQUFJO0lBQ2IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDNUI1Q1UsYUFBYSxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVO0k0QjZDOUUsYUFBYSxFM0J2Sk4sU0FBbUQ7STJCd0oxRCxNQUFNLEUzQnhKQyxTQUFtRCxDMkJ3SnRDLEtBQUssQzVCekpoQixPQUFPO0k0QjBKaEIsVUFBVSxFOUQ5SkQsSUFBSTtJOEQrSmIsT0FBTyxFM0IxSkEsUUFBbUQsQ0FBbkQsU0FBbUQsQ0FBbkQsUUFBbUQsQ0FBbkQsU0FBbUQsRzJCZ0wxRDtJMURoSUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00wRDhFNUIsQUFvQkMsaUJBcEJnQixDQW9CaEIsS0FBSyxDQUFDO1FBV0osY0FBYyxFQUFFLFNBQVM7UUFDekIsU0FBUyxFM0I5SkgsS0FBbUQ7UTJCK0p6RCxTQUFTLEUzQi9KSCxLQUFtRCxHMkJnTDFEO0lBbERGLEFBb0NFLGlCQXBDZSxDQW9CaEIsS0FBSyxBQWdCSCxNQUFNLENBQUM7TTFCaURULFVBQVUsRUFGVywwQkFBTztNQWlKNUIsT0FBTyxFMEI5THNCLElBQU87TTFCK0xwQyxXQUFXLEVBQUUsU0FBUztNQUN0QixTQUFTLEUwQmhNeUMsT0FBTztNMUJpTXpELFdBQVcsRUFBRSxDQUFDO01BQ2QsV0FBVyxFQUFFLENBQUM7TTBCak1aLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxHQUFHO01BQ1IsU0FBUyxFQUFFLGdCQUFnQjtNQUMzQixLQUFLLEUzQnhLQyxTQUFtRDtNMkJ5S3pELFdBQVcsRUFBRSxNQUFNLEdBQ25CO0lBNUNILEFBOENFLGlCQTlDZSxDQW9CaEIsS0FBSyxBQTBCSCxNQUFNLENBQUM7TUFDUCxlQUFlLEVBQUUsSUFBSSxHQUNyQjs7QUFLSCxBQUFBLFlBQVksQ0FBQztFQUNaLFFBQVEsRUFBRSxJQUFJO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVBQUUscUJBQW9CO0VBQ2hDLFFBQVEsRUFBRSxLQUFLLEdBd0JmO0UxRGxKRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7STBEc0gvQixBQUFBLFlBQVksQ0FBQztNQU9YLEtBQUssRTlEL0xJLElBQUk7TThEZ01iLE9BQU8sRUFBRSxHQUFHO01BQ1osR0FBRyxFQUFFLENBQUM7TUFDTixJQUFJLEVBQUUsQ0FBQztNQUNQLEtBQUssRUFBRSxLQUFLO01BQ1osTUFBTSxFQUFFLEtBQUssR0FnQmQ7RTFEL0pHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJMERtSTVCLEFBQUEsWUFBWSxDQUFDO01BZ0JYLFFBQVEsRUFBRSxRQUFRO01BQ2xCLGFBQWEsRTNCcE1OLFNBQW1EO00yQnFNMUQsTUFBTSxFM0JyTUMsU0FBbUQsQzJCcU10QyxLQUFLLEM1QnRNaEIsT0FBTztNNEJ1TWhCLFVBQVUsRTlEM01ELElBQUk7TThENE1iLElBQUksRUFBRSxDQUFDO01BQ1AsR0FBRyxFQUFFLElBQUk7TUFDVCxLQUFLLEVBQUUsSUFBSTtNQUNYLFNBQVMsRTNCMU1GLFFBQW1EO00yQjJNMUQsT0FBTyxFQUFFLEVBQUU7TUFDWCxPQUFPLEUzQjVNQSxPQUFtRCxDQUM1QixDQUFDO00yQjRNL0IsVUFBVSxFM0I3TUgsUUFBbUQsRzJCK00zRDs7QTFEbEpHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtFMERvSi9CLEFBQUEsbUJBQW1CLENBQUM7SUFFbEIsT0FBTyxFQUFFLElBQUk7SUFDYixjQUFjLEVBQUUsTUFBTTtJQUN0QixXQUFXLEVBQUUsTUFBTTtJQUNuQixPQUFPLEUzQnROQSxNQUFtRCxDQUFuRCxNQUFtRCxDQUFuRCxPQUFtRDtJMkJ1TjFELE1BQU0sRUFBRSxrQkFBa0I7SUFDMUIsTUFBTSxFQUFFLGlDQUFpQztJQUN6QyxRQUFRLEVBQUUsSUFBSTtJQUNkLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGVBQWUsRUFBRSxNQUFNLEdBRXhCOztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDcEIsUUFBUSxFQUFFLFFBQVEsR0FTbEI7RTFENUtHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJMERrSy9CLEFBQUEsb0JBQW9CLENBQUM7TUFJbkIsT0FBTyxFM0JuT0EsTUFBbUQsQ0FBbkQsTUFBbUQsQ0FDNUIsQ0FBQyxHMkJ3T2hDO0VBVkQsQUFPQyxvQkFQbUIsQ0FPbkIsRUFBRSxDQUFDO0lBQ0YsY0FBYyxFQUFFLFNBQVMsR0FDekI7O0FBR0YsQUFBQSxXQUFXLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEUzQjdPSyxPQUFtRDtFMkI4TzNELEtBQUssRTNCOU9HLFFBQW1EO0UyQitPM0QsU0FBUyxFM0IvT0QsU0FBbUQsRzJCcVAzRDtFQVZELEFBTUMsV0FOVSxBQU1ULE1BQU0sQ0FBQztJQUNQLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLEtBQUssRTVCdk9HLE9BQU8sRzRCd09mOztBQ2hRRixBQUFBLFlBQVksQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLE9BQU8sR0EwQ2Y7RTNEZUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0kyRDVENUIsQUFBQSxZQUFZLENBQUM7TUFNWCxNQUFNLEVBQUUsS0FBSyxHQXVDZDtFQTdDRCxBQVNDLFlBVFcsQUFTVixNQUFNLENBQUM7SUFDUCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUMsRUFBRTtJQUNWLElBQUksRTVCQUcsVUFBbUQ7STRCQzFELEtBQUssRTVCREUsVUFBbUQ7STRCRTFELFNBQVMsRUFBRSx5QkFBeUI7SUFDcEMsR0FBRyxFNUJISSxTQUFtRDtJNEJJMUQsTUFBTSxFNUJKQyxTQUFtRDtJNEJLMUQsVUFBVSxFN0JmRixJQUFJO0k2QmdCWixPQUFPLEVBQUUsRUFBRSxHQU9YO0kzRG1DRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TTJENUQ1QixBQVNDLFlBVFcsQUFTVixNQUFNLENBQUM7UUFZTixTQUFTLEVBQUUsa0JBQWtCO1FBQzdCLEdBQUcsRTVCVkcsUUFBbUQ7UTRCV3pELE1BQU0sRTVCWEEsUUFBbUQsRzRCYTFEO0UzRGdERSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7STJEekUvQixBQTJCQyxZQTNCVyxBQTJCVixhQUFhLENBQUM7TUFFYixPQUFPLEVBQUUsR0FBRyxHQUViO0VBL0JGLEFBaUNDLFlBakNXLElBaUNULEFBQUEsS0FBQyxFQUFPLFNBQVMsQUFBaEI7RUFqQ0osWUFBWSxJQWtDVCxBQUFBLEtBQUMsRUFBTyxTQUFTLEFBQWhCLEVBQWtCO0lBQ3BCLFdBQVcsRTVCdkJKLE9BQW1ELEc0QmdDMUQ7STNEZ0JFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNMkQ1RDVCLEFBaUNDLFlBakNXLElBaUNULEFBQUEsS0FBQyxFQUFPLFNBQVMsQUFBaEI7TUFqQ0osWUFBWSxJQWtDVCxBQUFBLEtBQUMsRUFBTyxTQUFTLEFBQWhCLEVBQWtCO1FBSW5CLFdBQVcsRUFBRSxnQkFBZ0IsR0FNOUI7STNEZ0JFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNMkQ1RDdCLEFBaUNDLFlBakNXLElBaUNULEFBQUEsS0FBQyxFQUFPLFNBQVMsQUFBaEI7TUFqQ0osWUFBWSxJQWtDVCxBQUFBLEtBQUMsRUFBTyxTQUFTLEFBQWhCLEVBQWtCO1FBUW5CLFdBQVcsRUFBRSxnQkFBZ0IsR0FFOUI7O0FBR0YsQUFBQSxVQUFVLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUVsQixNQUFNLEVBQUUsS0FBSztFQUNiLE1BQU0sRUFBRSxDQUFDLEM1QnZDRCxVQUFtRDtFNEJ3QzNELFNBQVMsRUFBRSx5QkFBeUIsR0F3RHBDO0UzRGhERyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7STJEYjVCLEFBQUEsVUFBVSxDQUFDO01BUVQsTUFBTSxFQUFFLElBQUk7TUFDWixTQUFTLEVBQUUsa0JBQWtCLEdBb0Q5QjtFM0RoREcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0kyRGI1QixBQVlDLFVBWlMsQUFZUixNQUFNLENBQUM7TTNCb0tSLFVBQVUsRUFGVyx3QkFBTyxFQUFQLDJCQUFPO00yQi9KMUIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFDLEVBQUU7TUFDVixJQUFJLEU1QnBERSxVQUFtRDtNNEJxRHpELEtBQUssRTVCckRDLFVBQW1EO000QnNEekQsR0FBRyxFQUFFLENBQUM7TUFDTixNQUFNLEVBQUUsQ0FBQztNQUNULGdCQUFnQixFQUFFLHFCQUFxQjtNQUN2QyxPQUFPLEVBQUUsQ0FBQztNQUNWLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLE1BQU07TUFDbEIsY0FBYyxFQUFFLElBQUk7TUFDcEIsU0FBUyxFQUFFLGtCQUFrQixHQUU5QjtFM0RGRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7STJESTlCLEFBQUEsYUFBYSxDQTlCZCxVQUFVLENBOEJPO01BRWQsU0FBUyxFQUFFLElBQUksR0FPaEI7RUFURCxBQUtDLGFBTFksQ0E5QmQsVUFBVSxBQW1DUCxNQUFNLENBQUM7SUFDUCxPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxPQUFPLEdBQ25CO0VBdENILEFBeUNDLFVBekNTLENBeUNULGFBQWEsQ0FBQztJQUNiLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRUFBRSxJQUFJO0lBQ1gsSUFBSSxFQUFFLElBQUk7SUFDVixHQUFHLEVBQUUsR0FBRyxHQVNSO0kzRHpDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TTJEYjVCLEFBeUNDLFVBekNTLENBeUNULGFBQWEsQ0FBQztRQVFaLEtBQUssRUFBRSxJQUFJO1FBQ1gsU0FBUyxFQUFFLEtBQUs7UUFDaEIsSUFBSSxFQUFFLEdBQUc7UUFDVCxHQUFHLEVBQUUsS0FBSyxHQUVYO0VBdERGLEFBd0RDLFVBeERTLENBd0RULEdBQUcsQ0FBQztJQUNILEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixVQUFVLEVBQUUsS0FBSyxHQUNqQjs7QUFHRixBQUFBLFFBQVEsQ0FBQztFQUNSLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGFBQWEsRUFBRSxHQUFHO0VBRWxCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsT0FBTyxFQUFFLEdBQUc7RUFDWixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxHQUFHO0VBQ1gsR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsRUFBRSxHQWFSO0UzRHhFRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7STJEa0Q1QixBQUFBLFFBQVEsQ0FBQztNQVlQLEdBQUcsRUFBRSxHQUFHO01BQ1IsSUFBSSxFQUFFLEdBQUc7TUFDVCxLQUFLLEVBQUUsS0FBSztNQUNaLE1BQU0sRUFBRSxLQUFLLEdBT2Q7RUFKQSxBQUFBLGFBQWEsQ0FsQmQsUUFBUSxDQWtCUztJQUNmLE9BQU8sRUFBRSxFQUFFO0lBQ1gsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFLLENBQUMsS0FBbUIsR0FDakQ7O0FBR0YsQUFBQSxVQUFVLENBQUM7RTNCeUZWLFVBQVUsRUFGVyx3QkFBTyxFQUFQLDJCQUFPO0UyQnJGNUIsUUFBUSxFQUFFLEtBQUs7RUFDZixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxVQUFVLEUvRHJJQSxJQUFJO0UrRHNJZCxPQUFPLEVBQUUsQ0FBQztFQUNWLFVBQVUsRUFBRSxNQUFNLEdBd0lsQjtFM0Q3TUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0kyRDZEL0IsQUFBQSxVQUFVLENBQUM7TUFXVCxLQUFLLEVBQUUsS0FBSztNQUNaLE1BQU0sRUFBRSxLQUFLO01BQ2IsVUFBVSxFQUFFLE1BQU07TUFDbEIsVUFBVSxFQUFFLElBQUksR0FrSWpCO0UzRDFORyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7STJEMEU1QixBQUFBLFVBQVUsQ0FBQztNQWtCVCxRQUFRLEVBQUUsUUFBUTtNQUNsQixHQUFHLEVBQUUsS0FBSztNQUNWLElBQUksRUFBRSxHQUFHO01BQ1QsS0FBSyxFQUFFLElBQUksR0EySFo7RUF4SEEsQUFBQSxhQUFhLENBeEJkLFVBQVUsQ0F3Qk87SUFDZixPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxPQUFPLEdBQ25CO0VBM0JGLEFBNkJDLFVBN0JTLENBNkJULE1BQU0sQ0FBQztJQUNOLEtBQUssRTVCeEpFLFFBQW1EO0k0QnlKMUQsTUFBTSxFNUJ6SkMsUUFBbUQ7STRCMEoxRCxLQUFLLEUvRC9KSSxJQUFJO0krRGdLYixXQUFXLEVBQUUsT0FBTztJQUNwQixHQUFHLEU1QjVKSSxRQUFtRDtJNEI2SjFELFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRTVCOUpFLFFBQW1EO0k0QitKMUQsU0FBUyxFNUIvSkYsU0FBbUQsRzRCdUsxRDtJQTdDRixBQXVDRSxVQXZDUSxDQTZCVCxNQUFNLENBVUwsSUFBSSxDQUFDO01BQ0osUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLEdBQUc7TUFDUixJQUFJLEVBQUUsR0FBRztNQUNULFNBQVMsRUFBRSxxQkFBcUIsR0FDaEM7RUE1Q0gsQUErQ0MsVUEvQ1MsQ0ErQ1QsS0FBSyxDQUFDO0lBQ0wsU0FBUyxFNUIxS0YsSUFBbUQ7STRCMksxRCxjQUFjLEVBQUUsS0FBSztJQUNyQixXQUFXLEVBQUUsR0FBRyxHQTZGaEI7STNEek5FLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNMkQwRTVCLEFBK0NDLFVBL0NTLENBK0NULEtBQUssQ0FBQztRQU1KLFNBQVMsRUFBRSxJQUFJO1FBQ2YsV0FBVyxFQUFFLEdBQUcsR0F5RmpCO0lBL0lGLEFBeURFLFVBekRRLENBK0NULEtBQUssQ0FVSixFQUFFLENBQUM7TUFDRixTQUFTLEU1QnBMSCxRQUFtRDtNNEJxTHpELFdBQVcsRTdCN0VnQix1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtNNkI4RXZGLE1BQU0sRTVCckx1QixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHNEJnTXpEO00zRGhKQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UTJEMEU1QixBQXlERSxVQXpEUSxDQStDVCxLQUFLLENBVUosRUFBRSxDQUFDO1VBTUQsU0FBUyxFQUFFLElBQUk7VUFDZixNQUFNLEVBQUUsU0FBUyxHQU1sQjtNQXRFSCxBQW1FRyxVQW5FTyxDQStDVCxLQUFLLENBVUosRUFBRSxBQVVBLFdBQVcsQ0FBQztRQUNaLE1BQU0sRUFBRSxDQUFDLEdBQ1Q7SUFyRUosQUF3RUUsVUF4RVEsQ0ErQ1QsS0FBSyxDQXlCSixDQUFDLENBQUM7TUFDRCxNQUFNLEU1QmxNdUIsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQsRzRCNE16RDtNM0Q1SkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO1EyRDBFNUIsQUF3RUUsVUF4RVEsQ0ErQ1QsS0FBSyxDQXlCSixDQUFDLENBQUM7VUFJQSxNQUFNLEVBQUUsU0FBUyxHQU1sQjtNQWxGSCxBQStFRyxVQS9FTyxDQStDVCxLQUFLLENBeUJKLENBQUMsQUFPQyxXQUFXLENBQUM7UUFDWixNQUFNLEVBQUUsQ0FBQyxHQUNUO0lBakZKLEFBb0ZFLFVBcEZRLENBK0NULEtBQUssQ0FxQ0osV0FBVyxDQUFDO01BQ1gsU0FBUyxFQUFFLE9BQU8sR0FDbEI7SUF0RkgsQUF3RkUsVUF4RlEsQ0ErQ1QsS0FBSyxDQXlDSixZQUFZO0lBeEZkLFVBQVUsQ0ErQ1QsS0FBSyxDQTBDSixVQUFVLENBQUM7TUFDVixPQUFPLEU1QnBORCxTQUFtRCxHNEJ5TnpEO00zRHpLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UTJEMEU1QixBQXdGRSxVQXhGUSxDQStDVCxLQUFLLENBeUNKLFlBQVk7UUF4RmQsVUFBVSxDQStDVCxLQUFLLENBMENKLFVBQVUsQ0FBQztVQUlULE9BQU8sRUFBRSxJQUFJLEdBRWQ7SUEvRkgsQUFpR0UsVUFqR1EsQ0ErQ1QsS0FBSyxDQWtESixVQUFVLENBQUM7TUFDVixjQUFjLEU1QjVOUixNQUFtRCxHNEJpT3pEO00zRGpMQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UTJEMEU1QixBQWlHRSxVQWpHUSxDQStDVCxLQUFLLENBa0RKLFVBQVUsQ0FBQztVQUlULGNBQWMsRUFBRSxHQUFHLEdBRXBCO0lBdkdILEFBeUdFLFVBekdRLENBK0NULEtBQUssQ0EwREosWUFBWSxDQUFDO00zQndIZCxtQkFBbUIsRUFEUyxHQUFHLENBQVcsR0FBRztNQUU3QyxpQkFBaUIsRUFBRSxTQUFTO01BQzVCLGVBQWUsRUFBRSxLQUFLO00yQnhIcEIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFFLElBQUk7TUFDYixjQUFjLEVBQUUsTUFBTTtNQUN0QixXQUFXLEVBQUUsTUFBTTtNQUNuQixlQUFlLEVBQUUsUUFBUTtNQUN6QixLQUFLLEUvRC9PRyxJQUFJO00rRGdQWixVQUFVLEU1QjNPSixTQUFtRDtNNEI0T3pELE9BQU8sRUFBRSxDQUFDLEdBNEJWO00zRDNNQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7UTJENkQvQixBQW9IRyxVQXBITyxDQStDVCxLQUFLLENBMERKLFlBQVksQ0FXWCxFQUFFLENBQUM7VUFFRCxTQUFTLEU1QmhQTCxRQUFtRCxHNEJrUHhEO00zRGxNQSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7UTJEMEU1QixBQXlHRSxVQXpHUSxDQStDVCxLQUFLLENBMERKLFlBQVksQ0FBQztVQWtCWCxVQUFVLEVBQUUsTUFBTSxHQW1CbkI7TUE5SUgsQUE4SEcsVUE5SE8sQ0ErQ1QsS0FBSyxDQTBESixZQUFZLEFBcUJWLE1BQU0sQ0FBQztRM0IwRlYsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUZvQixDQUFDO1FBR3hCLE1BQU0sRUFINkIsQ0FBQztRQUlwQyxJQUFJLEVBSnlDLENBQUM7UUFLOUMsS0FBSyxFQUxtRCxDQUFDO1EyQnZGdEQsT0FBTyxFQUFDLEVBQUU7UUFDVixnQkFBZ0IsRUFBRSw2REFBNkQ7UUFDL0UsT0FBTyxFQUFFLEVBQUUsR0FDWDtNQW5JSixBQXFJRyxVQXJJTyxDQStDVCxLQUFLLENBMERKLFlBQVksQ0E0QlgsRUFBRSxDQUFDO1FBQ0YsU0FBUyxFNUJoUUosTUFBbUQ7UTRCaVF4RCxXQUFXLEU3QnpKZSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVSxHNkIrSnRGO1EzRHZOQSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7VTJEMEU1QixBQXFJRyxVQXJJTyxDQStDVCxLQUFLLENBMERKLFlBQVksQ0E0QlgsRUFBRSxDQUFDO1lBS0QsU0FBUyxFQUFFLEtBQUs7WUFDaEIsTUFBTSxFQUFFLFFBQVEsR0FFakI7O0FBS0osQUFBQSxhQUFhO0FBQ2Isb0JBQW9CLENBQUM7RUFDcEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQyxHQUNUOztBQUVELEFBQUEsUUFBUSxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFNUJyUkksT0FBbUQ7RTRCc1IzRCxNQUFNLEVBQUUsSUFBSTtFQUNaLFNBQVMsRTVCdlJELFNBQW1EO0U0QndSM0QsVUFBVSxFQUFFLHFCQUFxQjtFQUNqQyxLQUFLLEUvRDlSSyxJQUFJO0UrRCtSZCxPQUFPLEU1QjFSQyxTQUFtRCxDQUFuRCxPQUFtRDtFNEIyUjNELFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLEdBQUcsR0FvQmhCO0UzRGpRRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7STJEbU81QixBQUFBLFFBQVEsQ0FBQztNQWFQLFNBQVMsRUFBRSxNQUFNO01BQ2pCLE1BQU0sRUFBRSxLQUFLO01BQ2IsSUFBSSxFQUFFLEdBQUc7TUFDVCxTQUFTLEVBQUUsSUFBSTtNQUNmLE9BQU8sRUFBRSxrQkFBa0I7TUFDM0IsV0FBVyxFQUFFLEdBQUcsR0FZakI7RUE5QkQsQUFxQkMsUUFyQk8sQ0FxQlAsRUFBRSxDQUFDO0lBQ0YsU0FBUyxFNUJ6U0YsSUFBbUQ7STRCMFMxRCxNQUFNLEU1QnpTd0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsRzRCZ1QxRDtJM0RoUUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00yRG1PNUIsQUFxQkMsUUFyQk8sQ0FxQlAsRUFBRSxDQUFDO1FBS0QsTUFBTSxFQUFFLFFBQVE7UUFDaEIsU0FBUyxFQUFFLEdBQUcsR0FFZjs7QUFHRixBQUdDLFNBSFEsQ0FHUixFQUFFLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEU1QnZUdUIsQ0FBQyxDQUFELENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1EO0U0QnlUMUQsTUFBTSxFNUJ4VHdCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE1BQW1ELEc0QmdYMUQ7RUE3REYsQUFRRSxTQVJPLENBR1IsRUFBRSxBQUtBLFdBQVcsQ0FBQztJQUNaLE1BQU0sRUFBRSxDQUFDLEdBQ1Q7RTNEN1FDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJMkRtUTVCLEFBR0MsU0FIUSxDQUdSLEVBQUUsQ0FBQztNQVVELE9BQU8sRUFBRSxXQUFXO01BQ3BCLE1BQU0sRUFBRSxRQUFRLEdBK0NqQjtFQTdERixBQWlCRSxTQWpCTyxDQUdSLEVBQUUsQUFjQSxNQUFNLENBQUM7SUFDUCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUMsRUFBRTtJQUNWLEdBQUcsRUFBRSxHQUFHO0lBQ1IsU0FBUyxFQUFFLGdCQUFnQjtJQUMzQixJQUFJLEVBQUUsQ0FBQztJQUNQLFVBQVUsRS9EL1VGLElBQUk7SStEZ1ZaLEtBQUssRTVCM1VDLE9BQW1EO0k0QjRVekQsTUFBTSxFNUI1VUEsU0FBbUQsRzRCa1Z6RDtJM0RsU0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00yRG1RNUIsQUFpQkUsU0FqQk8sQ0FHUixFQUFFLEFBY0EsTUFBTSxDQUFDO1FBV04sS0FBSyxFQUFFLEtBQUs7UUFDWixNQUFNLEVBQUUsS0FBSyxHQUVkO0VBL0JILEFBa0NHLFNBbENNLENBR1IsRUFBRSxBQThCQSxPQUFPLEFBQ04sTUFBTSxDQUFDO0lBQ1AsTUFBTSxFNUJ0VkQsT0FBbUQ7STRCdVZ4RCxhQUFhLEVBQUUsR0FBRyxHQUtsQjtJM0Q1U0EsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO00yRG1RNUIsQUFrQ0csU0FsQ00sQ0FHUixFQUFFLEFBOEJBLE9BQU8sQUFDTixNQUFNLENBQUM7UUFLTixNQUFNLEVBQUUsS0FBSyxHQUVkO0VBekNKLEFBNENJLFNBNUNLLENBR1IsRUFBRSxBQThCQSxPQUFPLEFBVU4sZUFBZSxBQUNkLE1BQU0sQ0FBQztJQUNQLFVBQVUsRTdCclZMLE9BQU8sRzZCc1ZaO0VBOUNMLEFBa0RJLFNBbERLLENBR1IsRUFBRSxBQThCQSxPQUFPLEFBZ0JOLGlCQUFpQixBQUNoQixNQUFNLENBQUM7SUFDUCxVQUFVLEU3QjFWTCxPQUFPLEc2QjJWWjtFQXBETCxBQXdESSxTQXhESyxDQUdSLEVBQUUsQUE4QkEsT0FBTyxBQXNCTixZQUFZLEFBQ1gsTUFBTSxDQUFDO0lBQ1AsVUFBVSxFN0I3VkwsT0FBTyxHNkI4Vlo7O0FDelhMLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixXQUFXLEU5QnNIaUIsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVO0U4QnJIMUUsT0FBTyxFN0JVQSxJQUFtRCxDQUM1QixDQUFDLENBRHhCLFNBQW1ELEc2QmdHM0Q7RTVEaERHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJNEQ1RDVCLEFBQUEsZ0JBQWdCLENBQUM7TUFLYixPQUFPLEU3Qk9GLFNBQW1ELENBQzVCLENBQUMsRzZCK0ZoQztFNURuQ0csTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0k0RHpFL0IsQUFRRSxnQkFSYyxDQVFkLEVBQUUsQ0FBQztNQUVDLE1BQU0sRTdCR29CLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEc2QkF6RDtFQVpILEFBZ0JNLGdCQWhCVSxDQWNkLENBQUMsQ0FDQyxJQUFLLENBQUEsR0FBRyxDQUNMLE1BQU0sQ0FBQztJQUNOLEtBQUssRTlCT0gsT0FBTyxHOEJOVjtFQWxCUCxBQXNCRSxnQkF0QmMsQ0FzQmQsRUFBRSxDQUFDO0lBQ0QsU0FBUyxFQUFFLE9BQU87SUFDbEIsV0FBVyxFQUFFLE9BQU87SUFDcEIsTUFBTSxFQUFFLFFBQVEsR0FLakI7SUE5QkgsQUEyQkksZ0JBM0JZLENBc0JkLEVBQUUsQ0FLQSxDQUFDLENBQUM7TUFDQSxXQUFXLEVBQUUsR0FBRyxHQUNqQjtFQTdCTCxBQWdDRSxnQkFoQ2MsQ0FnQ2QsQ0FBQyxDQUFDO0lBQ0EsY0FBYyxFQUFFLE1BQU0sR0FhdkI7STVEMkJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNNER6RS9CLEFBZ0NFLGdCQWhDYyxDQWdDZCxDQUFDLENBQUM7UUFJRSxXQUFXLEVBQUUsSUFBSSxHQVVwQjtJQTlDSCxBQXVDSSxnQkF2Q1ksQ0FnQ2QsQ0FBQyxBQU9FLFdBQVcsQ0FBQztNQUNYLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7SUF6Q0wsQUEyQ0ksZ0JBM0NZLENBZ0NkLENBQUMsQ0FXQyxDQUFDLENBQUM7TUFDQSxlQUFlLEVBQUUsU0FBUyxHQUMzQjtFQTdDTCxBQWdERSxnQkFoRGMsQ0FnRGQsSUFBSSxDQUFDO0lBQ0gsT0FBTyxFQUFFLEtBQUs7SUFDZCxTQUFTLEU3QnRDSixJQUFtRDtJNkJ1Q3hELGNBQWMsRUFBRSxTQUFTO0lBQ3pCLE1BQU0sRTdCdkNzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixPQUFtRCxHNkJpRHpEO0k1RFlDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNNER6RS9CLEFBZ0RFLGdCQWhEYyxDQWdEZCxJQUFJLENBQUM7UUFPRCxPQUFPLEU3QjFDbUIsQ0FBQyxDQUR4QixRQUFtRCxHNkJpRHpEO0k1RERDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNNEQ1RDVCLEFBZ0RFLGdCQWhEYyxDQWdEZCxJQUFJLENBQUM7UUFXRCxNQUFNLEU3QjlDb0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsRzZCaUR6RDtFQTdESCxBQStERSxnQkEvRGMsQ0ErRGQsYUFBYSxDQUFDO0lBQ1osYUFBYSxFN0JwRFIsU0FBbUQsRzZCOER6RDtJNUREQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7TTREekVoQyxBQStERSxnQkEvRGMsQ0ErRGQsYUFBYSxDQUFDO1FBSVYsV0FBVyxFN0J2RFIsUUFBbUQ7UTZCd0R0RCxZQUFZLEU3QnhEVCxRQUFtRCxHNkI4RHpEO0k1RGRDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNNEQ1RDVCLEFBK0RFLGdCQS9EYyxDQStEZCxhQUFhLENBQUM7UUFTVixhQUFhLEU3QjVEVixNQUFtRCxHNkI4RHpEO0VBMUVILEFBNEVFLGdCQTVFYyxDQTRFZCxlQUFlLENBQUM7SUFDZCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEU3QmpFcUIsQ0FBQyxDQUR4QixRQUFtRCxHNkIrRnpEO0k1RC9DQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TTRENUQ3QixBQTRFRSxnQkE1RWMsQ0E0RWQsZUFBZSxDQUFDO1FBS1osT0FBTyxFN0JwRW1CLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1EO1E2QnNFdEQsTUFBTSxFQUFFLENBQUMsR0F5Qlo7STVEbENDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNNER6RS9CLEFBcUZJLGdCQXJGWSxDQTRFZCxlQUFlLENBU2IsWUFBWSxDQUFDO1FBRVQsYUFBYSxFQUFFLENBQUMsR0FtQm5CO0k1RDlDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TTRENUQ3QixBQXFGSSxnQkFyRlksQ0E0RWQsZUFBZSxDQVNiLFlBQVksQ0FBQztRQU1ULFFBQVEsRUFBRSxRQUFRO1FBQ2xCLGNBQWMsRUFBRSxNQUFNO1FBQ3RCLEdBQUcsRUFBRSxJQUFJO1FBQ1QsS0FBSyxFN0JsRkosU0FBbUQsRzZCOEZ2RDtJNUQ5Q0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO000RDVEN0IsQUFpR00sZ0JBakdVLENBNEVkLGVBQWUsQ0FTYixZQUFZLENBWVYsRUFBRSxDQUFDO1FBRUMsYUFBYSxFN0J2RmQsTUFBbUQsRzZCeUZyRDtJQXJHUCxBQXVHTSxnQkF2R1UsQ0E0RWQsZUFBZSxDQVNiLFlBQVksQ0FrQlYsQ0FBQyxDQUFDO01BQ0EsU0FBUyxFN0I1RlIsU0FBbUQsRzZCNkZyRDs7QUFLUCxBQUFBLDBCQUEwQixDQUFDO0VBQ3pCLE9BQU8sRTdCbkdBLElBQW1ELENBQzVCLENBQUMsQ0FBRCxDQUFDO0U2Qm1HL0IsU0FBUyxFN0JwR0YsT0FBbUQ7RTZCcUcxRCxjQUFjLEVBQUUsTUFBTTtFQUN0QixXQUFXLEVBQUUsR0FBRyxHQW1CakI7RTVEekVHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJNERrRDVCLEFBQUEsMEJBQTBCLENBQUM7TUFPdkIsT0FBTyxFN0J6R0YsSUFBbUQsQ0FDNUIsQ0FBQyxDQUR4QixTQUFtRCxHNkJ5SDNEO0VBdkJELEFBVUUsMEJBVndCLENBVXhCLEVBQUUsQ0FBQztJQUNELE1BQU0sRTdCNUdzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHNkJrSHpEO0k1RHJEQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7TTREcUMvQixBQVVFLDBCQVZ3QixDQVV4QixFQUFFLENBQUM7UUFJQyxTQUFTLEU3QmhITixPQUFtRCxHNkJrSHpEO0VBaEJILEFBbUJJLDBCQW5Cc0IsQ0FrQnhCLENBQUMsQUFDRSxXQUFXLENBQUM7SUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQ25JTCxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLE9BQU8sRTlCV0EsU0FBbUQsQ0FDNUIsQ0FBQyxDQUR4QixTQUFtRCxHOEJNM0Q7RUFsQkQsQUFHRSxrQkFIZ0IsR0FHZCxlQUFlLENBQUM7SUFDaEIsV0FBVyxFOUJRTixRQUFtRCxHOEJEekQ7SUFYSCxBQUtJLGtCQUxjLEdBR2QsZUFBZSxDQUVmLENBQUMsQ0FBQztNQUNBLEtBQUssRUFBRSxPQUFPLEdBQ2Y7STdEcURELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNNkQ1RDVCLEFBR0Usa0JBSGdCLEdBR2QsZUFBZSxDQUFDO1FBTWQsV0FBVyxFQUFFLENBQUMsR0FFakI7RTdEOERDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJNkR6RS9CLEFBYUUsa0JBYmdCLENBYWhCLEVBQUUsQ0FBQztNQUVDLE1BQU0sRTlCRm9CLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEc4Qkt6RDs7QUNqQkgsQUFBQSxnQkFBZ0IsQ0FBQztFQUNoQixPQUFPLEUvQldDLFNBQW1ELENBQzVCLENBQUMsRytCT2hDO0U5RHFERyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SThEekUvQixBQUFBLGdCQUFnQixDQUFDO01BSWYsVUFBVSxFQUFFLE1BQU0sR0FnQm5CO0U5RHdDRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SThENUQ1QixBQUFBLGdCQUFnQixDQUFDO01BUWYsT0FBTyxFL0JJQSxRQUFtRCxDQUM1QixDQUFDLEcrQk9oQztFQXBCRCxBQVdDLGdCQVhlLENBV2YsRUFBRSxDQUFDO0lBQ0YsU0FBUyxFL0JBRixNQUFtRDtJK0JDMUQsTUFBTSxFL0JBd0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsRytCTzFEO0k5RHlDRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TThENUQ1QixBQVdDLGdCQVhlLENBV2YsRUFBRSxDQUFDO1FBS0QsU0FBUyxFL0JKSCxJQUFtRDtRK0JLekQsTUFBTSxFL0JKdUIsQ0FBQyxDQUFELENBQUMsQ0FEeEIsT0FBbUQsRytCTzFEOztBQUdGLEFBQUEsZUFBZSxDQUFDO0VBQ2YsU0FBUyxFL0JYRCxPQUFtRDtFK0JZM0QsV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLEdBQUcsR0F1SmhCO0U5RHZHRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SThEbkQvQixBQUFBLGVBQWUsQ0FBQztNQU1kLE1BQU0sRS9CZndCLENBQUMsQ0FEeEIsUUFBbUQsRytCb0szRDtFOURwSEcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0k4RHRDNUIsQUFBQSxlQUFlLENBQUM7TUFVZCxPQUFPLEVBQUUsSUFBSSxHQWdKZDtFOURwSEcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0k4RHRDN0IsQUFBQSxlQUFlLENBQUM7TUFjZCxPQUFPLEUvQnZCdUIsQ0FBQyxDQUR4QixRQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHK0JtS2hDO0U5RHBIRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SThEdEM1QixBQWlCQyxlQWpCYyxDQWlCZCxhQUFhLENBQUM7TUFFWixLQUFLLEVBQUUsa0JBQWtCO01BQ3pCLE9BQU8sRS9CN0JzQixDQUFDLENBRHhCLE9BQW1ELENBQzVCLENBQUMsQ0FBRCxDQUFDLEcrQitHL0I7RUF0R0YsQUF1QkUsZUF2QmEsQ0FpQmQsYUFBYSxDQU1aLGNBQWMsQ0FBQztJOUIwVGhCLG1CQUFtQixFQURTLEdBQUcsQ0FBVyxHQUFHO0lBRTdDLGlCQUFpQixFQUFFLFNBQVM7SUFDNUIsZUFBZSxFQUFFLEtBQUs7SThCMVRwQixRQUFRLEVBQUUsUUFBUTtJQUVsQixXQUFXLEVBQUUsTUFBTTtJQUNuQixNQUFNLEVBQUUsQ0FBQyxHQWVUO0VBM0NILEFBNkNFLGVBN0NhLENBaUJkLGFBQWEsQ0E0QlosV0FBVyxDQUFDO0lBQ1gsUUFBUSxFQUFFLFFBQVE7SUFDbEIsSUFBSSxFQUFFLEdBQUc7SUFDVCxTQUFTLEVBQUUsZ0JBQWdCO0lBQzNCLE1BQU0sRS9CM0RBLE9BQW1ELEcrQjREekQ7RUFsREgsQUFvREUsZUFwRGEsQ0FpQmQsYUFBYSxDQW1DWixZQUFZLENBQUM7SUFDWixRQUFRLEVBQUUsUUFBUSxHQVVsQjtJOUR6QkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO004RHRDNUIsQUF5REssZUF6RFUsQ0FpQmQsYUFBYSxDQW1DWixZQUFZLEFBR1YsTUFBTSxDQUVMLGFBQWEsQ0FBQztRQUNiLFNBQVMsRUFBRSxhQUFhO1FBQ3hCLFVBQVUsRUFBRSx3QkFBdUIsR0FDbkM7RUE1RE4sQUFpRUUsZUFqRWEsQ0FpQmQsYUFBYSxDQWdEWixhQUFhLENBQUM7SUFDYixPQUFPLEVBQUUsS0FBSyxHQTBCZDtJOUR0REMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO004RHRDNUIsQUFpRUUsZUFqRWEsQ0FpQmQsYUFBYSxDQWdEWixhQUFhLENBQUM7UTlCd0lmLFVBQVUsRUFGVywwQkFBTyxFQUFQLDJCQUFPO1E4QmpJekIsUUFBUSxFQUFFLFFBQVE7UUFDbEIsS0FBSyxFQUFFLEdBQUc7UUFDVixVQUFVLEVBQUUsc0JBQXFCO1FBQ2pDLEdBQUcsRUFBRSxDQUFDO1FBQ04sS0FBSyxFQUFFLENBQUM7UUFDUixNQUFNLEVBQUUsQ0FBQztRQUNULE9BQU8sRS9CdEZGLE9BQW1EO1ErQnVGeEQsU0FBUyxFQUFFLDZCQUE2QjtRQUN4QyxNQUFNLEVBQUUsSUFBSTtRQUNaLFFBQVEsRUFBRSxJQUFJO1FBQ2QsT0FBTyxFQUFFLEtBQUssR0FZZjtJQVRBLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNQW5GM0IsQUFpRUUsZUFqRWEsQ0FpQmQsYUFBYSxDQWdEWixhQUFhLENBQUM7UUFtQlosS0FBSyxFQUFFLEdBQUcsR0FRWDtJQTVGSCxBQXdGSSxlQXhGVyxDQWlCZCxhQUFhLENBZ0RaLGFBQWEsQ0FzQlosQ0FBQyxBQUNDLFdBQVcsQ0FBQztNQUNaLE1BQU0sRUFBRSxDQUFDLEdBQ1Q7RTlEcERELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJOER0QzVCLEFBOEZFLGVBOUZhLENBaUJkLGFBQWEsQ0E2RVosV0FBVyxDQUFDO01BRVYsT0FBTyxFQUFFLElBQUk7TUFDYixjQUFjLEVBQUUsTUFBTTtNQUN0QixlQUFlLEVBQUUsUUFBUTtNQUN6QixVQUFVLEVBQUUsSUFBSSxHQUVqQjtFQXJHSCxBQXdHQyxlQXhHYyxDQXdHZCxZQUFZLENBQUM7SUFDWixNQUFNLEUvQm5IQyxLQUFtRDtJK0JvSDFELFFBQVEsRUFBRSxNQUFNLEdBK0NoQjtJOUR0R0UsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO004RG5EL0IsQUF3R0MsZUF4R2MsQ0F3R2QsWUFBWSxDQUFDO1FBS1gsT0FBTyxFQUFFLElBQUksR0E0Q2Q7STlEbkhFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNOER0QzVCLEFBd0dDLGVBeEdjLENBd0dkLFlBQVksQ0FBQztRQVNYLEtBQUssRS9CM0hDLFFBQW1ELEcrQm1LMUQ7SUF6SkYsQUFvSEUsZUFwSGEsQ0F3R2QsWUFBWSxDQVlYLFlBQVksQ0FBQztNOUI2TmQsbUJBQW1CLEVBRFMsR0FBRyxDQUFXLEdBQUc7TUFFN0MsaUJBQWlCLEVBQUUsU0FBUztNQUM1QixlQUFlLEVBQUUsS0FBSztNOEI3TnBCLE1BQU0sRUFBRSxJQUFJO01BQ1osTUFBTSxFL0JoSXVCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEcrQmtJekQ7SUF4SEgsQUEwSEUsZUExSGEsQ0F3R2QsWUFBWSxDQWtCWCxZQUFZLENBQUM7TTlCK0VkLFVBQVUsRUFGVywyQkFBTztNOEIzRTFCLEtBQUssRUFBRSxLQUFLO01BQ1osTUFBTSxFQUFFLElBQUk7TUFDWixVQUFVLEVBQUUsd0JBQXVCO01BQ25DLGFBQWEsRUFBRSxDQUFDO01BQ2hCLFNBQVMsRUFBRSxZQUFZO01BQ3ZCLEtBQUssRUFBRSxrQkFBaUI7TUFDeEIsU0FBUyxFL0I1SUgsTUFBbUQsRytCa0t6RDtNQXhKSCxBQW9JRyxlQXBJWSxDQXdHZCxZQUFZLENBa0JYLFlBQVksQUFVVixNQUFNLENBQUM7UUFDUCxVQUFVLEVBQUUsd0JBQXVCLEdBQ25DO01BdElKLEFBd0lHLGVBeElZLENBd0dkLFlBQVksQ0FrQlgsWUFBWSxBQWNWLFdBQVcsQ0FBQztRQUNaLEdBQUcsRUFBRSxDQUFDLEdBS047UUE5SUosQUEySUksZUEzSVcsQ0F3R2QsWUFBWSxDQWtCWCxZQUFZLEFBY1YsV0FBVyxDQUdYLENBQUMsQ0FBQztVQUNELFNBQVMsRUFBRSxhQUFhLEdBQ3hCO01BN0lMLEFBZ0pHLGVBaEpZLENBd0dkLFlBQVksQ0FrQlgsWUFBWSxBQXNCVixXQUFXLENBQUM7UUFDWixHQUFHLEVBQUUsSUFBSTtRQUNULE1BQU0sRUFBRSxDQUFDLEdBS1Q7UUF2SkosQUFvSkksZUFwSlcsQ0F3R2QsWUFBWSxDQWtCWCxZQUFZLEFBc0JWLFdBQVcsQ0FJWCxDQUFDLENBQUM7VUFDRCxTQUFTLEVBQUUsYUFBYSxHQUN4Qjs7QUM1S0wsQUFBQSxpQkFBaUIsQ0FBQztFQUNqQixNQUFNLEVoQ1l5QixDQUFDLENBQUQsQ0FBQyxDQUR4QixPQUFtRCxHZ0NJM0Q7RS9ENENHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJK0Q1RDVCLEFBQUEsaUJBQWlCLENBQUM7TUFJaEIsT0FBTyxFQUFFLElBQUk7TUFDYixNQUFNLEVoQ1F3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixLQUFtRCxHZ0NJM0Q7RUFoQkQsQUFRQyxpQkFSZ0IsQ0FRaEIsWUFBWSxDQUFDO0lBQ1osTUFBTSxFaENJd0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQ7SWdDRjFELFNBQVMsRUFBRSxJQUFJLEdBS2Y7SS9EMERFLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtNK0R6RS9CLEFBUUMsaUJBUmdCLENBUWhCLFlBQVksQ0FBQztRQUtYLE9BQU8sRUFBRSxJQUFJLEdBRWQ7O0FBR0YsQUFBQSxxQkFBcUIsQ0FBQztFL0I2TXJCLFVBQVUsRUFGVyxzQkFBTztFK0J4TTVCLElBQUksRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ2pDaUdPLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtFaUNoRy9FLEtBQUssRWpDWkssT0FBTztFaUNhakIsT0FBTyxFQUFFLElBQUk7RUFDYixjQUFjLEVBQUUsTUFBTTtFQUN0QixXQUFXLEVBQUUsVUFBVSxHQXdEdkI7RS9EckJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJK0QxQzdCLEFBQUEscUJBQXFCLENBQUM7TUFVcEIsU0FBUyxFaENoQkYsT0FBbUQsR2dDcUUzRDtFQS9ERCxBQWFDLHFCQWJvQixDQWFwQixFQUFFLENBQUM7SS9CZ01ILFVBQVUsRUFGVyx3QkFBTztJK0I1TDNCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxPQUFPO0lBQ2YsTUFBTSxFaEN0QndCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdnQ29FMUQ7SS9EcEJFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNK0QxQzdCLEFBYUMscUJBYm9CLENBYXBCLEVBQUUsQ0FBQztRQU9ELE1BQU0sRWhDekJ1QixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHZ0NvRTFEO0lBOURGLEFBdUJFLHFCQXZCbUIsQ0FhcEIsRUFBRSxBQVVBLFdBQVcsQ0FBQztNQUNaLE1BQU0sRUFBRSxDQUFDLEdBQ1Q7SUF6QkgsQUEyQkUscUJBM0JtQixDQWFwQixFQUFFLEFBY0EsTUFBTSxDQUFDO00vQmtMVCxVQUFVLEVBRlcsMkJBQU8sRUFBUCx3QkFBTyxFQUFQLDBCQUFPO00rQjlLMUIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFDLEVBQUU7TUFDVixHQUFHLEVoQ3JDRyxTQUFtRDtNZ0NzQ3pELElBQUksRUFBRSxDQUFDO01BQ1AsTUFBTSxFQUFFLEdBQUc7TUFDWCxLQUFLLEVoQ3hDQyxPQUFtRDtNZ0N5Q3pELFVBQVUsRUFBRSxZQUFZO01BQ3hCLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLE1BQU07TUFDbEIsY0FBYyxFQUFFLElBQUk7TUFDcEIsU0FBUyxFQUFFLHNCQUF5QixHQU1wQztNL0RIQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07UStEMUM3QixBQTJCRSxxQkEzQm1CLENBYXBCLEVBQUUsQUFjQSxNQUFNLENBQUM7VUFlTixHQUFHLEVoQ2hERSxRQUFtRDtVZ0NpRHhELEtBQUssRWhDakRBLFNBQW1ELEdnQ21EekQ7SUE3Q0gsQUErQ0UscUJBL0NtQixDQWFwQixFQUFFLEFBa0NBLE9BQU8sRUEvQ1YscUJBQXFCLENBYXBCLEVBQUUsQUFtQ0EsTUFBTSxDQUFDO01BQ1AsS0FBSyxFakN0REcsT0FBTztNaUN1RGYsWUFBWSxFaEN4RE4sT0FBbUQsR2dDbUV6RDtNL0RuQkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO1ErRDFDN0IsQUErQ0UscUJBL0NtQixDQWFwQixFQUFFLEFBa0NBLE9BQU8sRUEvQ1YscUJBQXFCLENBYXBCLEVBQUUsQUFtQ0EsTUFBTSxDQUFDO1VBS04sWUFBWSxFaEMzRFAsU0FBbUQsR2dDbUV6RDtNQTdESCxBQXdERyxxQkF4RGtCLENBYXBCLEVBQUUsQUFrQ0EsT0FBTyxBQVNOLE1BQU0sRUF4RFYscUJBQXFCLENBYXBCLEVBQUUsQUFtQ0EsTUFBTSxBQVFMLE1BQU0sQ0FBQztRQUNQLE9BQU8sRUFBRSxDQUFDO1FBQ1YsVUFBVSxFQUFFLE9BQU87UUFDbkIsU0FBUyxFQUFFLGFBQWEsR0FDeEI7O0EvRGxCQSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RStEdUI1QixBQUFBLGtCQUFrQixDQUFDO0lBRWpCLElBQUksRUFBRSxHQUFHO0lBQ1QsT0FBTyxFaEMxRUEsU0FBbUQsQ0FBbkQsUUFBbUQsQ0FDNUIsQ0FBQyxDQUFELENBQUMsR2dDK0VoQzs7QS9EaENHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFK0R1QjdCLEFBQUEsa0JBQWtCLENBQUM7SUFPakIsYUFBYSxFaEM5RU4sUUFBbUQsR2dDZ0YzRDs7QS9EbkJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtFK0RxQi9CLEFBQUEseUJBQXlCLENBQUM7SUFFeEIsVUFBVSxFQUFFLE1BQU07SUFDbEIsTUFBTSxFaENwRndCLENBQUMsQ0FEeEIsUUFBbUQsR2dDNk4zRDs7QS9EN0tHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFK0RrQzVCLEFBQUEseUJBQXlCLENBQUM7SUFPeEIsS0FBSyxFaEN6RkUsU0FBbUQ7SWdDMEYxRCxLQUFLLEVuRS9GSSxJQUFJLEdtRWtPZDs7QS9EN0tHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFK0RrQzdCLEFBQUEseUJBQXlCLENBQUM7SUFZeEIsS0FBSyxFaEM5RkUsU0FBbUQsR2dDNk4zRDs7QS9EN0tHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFK0RrQzVCLEFBZUMseUJBZndCLENBZXhCLFlBQVk7RUFmYix5QkFBeUIsQ0FnQnhCLFdBQVcsQ0FBQztJQUVWLE9BQU8sRUFBRSxJQUFJLEdBRWQ7O0FBcEJGLEFBc0JDLHlCQXRCd0IsQ0FzQnhCLFlBQVksQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRLEdBcUJsQjtFL0RqRUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0krRHFCL0IsQUFzQkMseUJBdEJ3QixDQXNCeEIsWUFBWSxDQUFDO01BSVgsT0FBTyxFaEMzR3NCLENBQUMsQ0FEeEIsT0FBbUQsR2dDOEgxRDtFL0Q5RUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0krRGtDNUIsQUFzQkMseUJBdEJ3QixDQXNCeEIsWUFBWSxDQUFDO01BUVgsT0FBTyxFQUFFLElBQUk7TUFDYixjQUFjLEVBQUUsTUFBTTtNQUN0QixlQUFlLEVBQUUsTUFBTTtNQUN2QixVQUFVLEVoQ25ISixTQUFtRDtNZ0NvSHpELE9BQU8sRWhDcEhELFFBQW1EO01nQ3FIekQsVUFBVSxFQUFFLGtCQUFpQjtNQUM3QixhQUFhLEVqQ0l3QyxPQUFPO01pQ0g1RCxRQUFRLEVBQUUsTUFBTSxHQU9qQjtFL0Q5RUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0krRGtDN0IsQUFzQkMseUJBdEJ3QixDQXNCeEIsWUFBWSxDQUFDO01BbUJYLFVBQVUsRWhDM0hKLFNBQW1EO01nQzRIekQsT0FBTyxFaEM1SEQsUUFBbUQsQ0FBbkQsSUFBbUQsR2dDOEgxRDs7QUE1Q0YsQUE4Q0MseUJBOUN3QixDQThDeEIsWUFBWSxDQUFDO0VBQ1osS0FBSyxFakN0SUksT0FBTyxHaUN1SWhCOztBQWhERixBQWtEQyx5QkFsRHdCLENBa0R4QixjQUFjLENBQUM7RUFDZCxLQUFLLEVuRTFJSSxJQUFJLEdtRXFKYjtFL0RuRkUsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0krRHFCL0IsQUFrREMseUJBbER3QixDQWtEeEIsY0FBYyxDQUFDO01BSWIsT0FBTyxFQUFFLElBQUk7TUFDYixjQUFjLEVBQUUsTUFBTTtNQUN0QixlQUFlLEVBQUUsTUFBTTtNQUN2QixRQUFRLEVBQUUsUUFBUTtNQUNsQixVQUFVLEVoQzVJSixVQUFtRDtNZ0M2SXpELE9BQU8sRWhDN0lELE1BQW1EO01nQzhJekQsTUFBTSxFaEM3SXVCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEdnQ2dKMUQ7O0EvRGhHRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RStEa0M1QixBQWdFQyx5QkFoRXdCLENBZ0V4QixhQUFhLENBQUM7SUFFWixPQUFPLEVBQUUsSUFBSSxHQUVkOztBQXBFRixBQXNFQyx5QkF0RXdCLENBc0V4QixTQUFTLENBQUM7RUFDVCxLQUFLLEVBQUUsT0FBTztFQUNkLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLElBQUksRUFBRSxHQUFHLENBQUMsT0FBTSxDQUFDLElBQUksQ2pDakRPLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtFaUNrRDlFLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLE1BQU0sRWhDNUp3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHZ0M4SjFEOztBQTVFRixBQThFQyx5QkE5RXdCLENBOEV4QixFQUFFLENBQUM7RUFDRixJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENqQ3ZETSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVUsR2lDd0Q5RTs7QUFoRkYsQUFrRkMseUJBbEZ3QixDQWtGeEIsU0FBUyxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVEsR0FlbEI7RUFsR0YsQUFxRkUseUJBckZ1QixDQWtGeEIsU0FBUyxBQUdQLE9BQU8sQ0FBQztJL0IyS1YsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUZvQixDQUFDO0lBR3hCLE1BQU0sRUFINkIsQ0FBQztJQUlwQyxJQUFJLEVBSnlDLENBQUM7SUFLOUMsS0FBSyxFQUxtRCxDQUFDO0lBVXpELG1CQUFtQixFQURTLEdBQUcsQ0FBVyxHQUFHO0lBRTdDLGlCQUFpQixFQUFFLFNBQVM7SUFDNUIsZUFBZSxFQUFFLEtBQUs7SStCbkxwQixhQUFhLEVqQ2hEd0MsT0FBTztJaUNpRDVELFFBQVEsRUFBRSxNQUFNO0lBQ2hCLE9BQU8sRUFBRSxFQUFFLEdBQ1g7RUEzRkgsQUE2RkUseUJBN0Z1QixDQWtGeEIsU0FBUyxBQVdQLE1BQU0sQ0FBQztJL0JtS1QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUZvQixDQUFDO0lBR3hCLE1BQU0sRUFINkIsQ0FBQztJQUlwQyxJQUFJLEVBSnlDLENBQUM7SUFLOUMsS0FBSyxFQUxtRCxDQUFDO0krQmhLdkQsT0FBTyxFQUFDLEVBQUU7SUFDVixVQUFVLEVBQUUsa0JBQWlCLEdBQzdCOztBQWpHSCxBQW9HQyx5QkFwR3dCLENBb0d4QixhQUFhLENBQUM7RUFFYixTQUFTLEVoQ3hMRixPQUFtRDtFZ0N5TDFELFdBQVcsRUFBRSxHQUFHLEdBNEJoQjtFL0RyS0UsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0krRGtDN0IsQUFvR0MseUJBcEd3QixDQW9HeEIsYUFBYSxDQUFDO01BTVosU0FBUyxFaEM1TEgsT0FBbUQsR2dDcU4xRDtFQW5JRixBQTZHRSx5QkE3R3VCLENBb0d4QixhQUFhLENBU1osRUFBRSxDQUFDO0lBQ0YsTUFBTSxFaEMvTHVCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdnQ3FNekQ7SS9EckpDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNK0RrQzdCLEFBNkdFLHlCQTdHdUIsQ0FvR3hCLGFBQWEsQ0FTWixFQUFFLENBQUM7UUFJRCxNQUFNLEVoQ2xNc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR2dDcU16RDtFL0RySkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0krRGtDNUIsQUFxSEUseUJBckh1QixDQW9HeEIsYUFBYSxDQWlCWixDQUFDLENBQUM7TUFFQSxLQUFLLEVqQzVNRSxPQUFPLEdpQ3VOZjtFQWxJSCxBQTBIRyx5QkExSHNCLENBb0d4QixhQUFhLENBaUJaLENBQUMsQUFLQyxNQUFNLEVBMUhWLHlCQUF5QixDQW9HeEIsYUFBYSxDQWlCWixDQUFDLEFBTUMsT0FBTyxDQUFDO0lBQ1IsZUFBZSxFQUFFLElBQUksR0FLckI7SS9EbktBLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNK0RrQzVCLEFBMEhHLHlCQTFIc0IsQ0FvR3hCLGFBQWEsQ0FpQlosQ0FBQyxBQUtDLE1BQU0sRUExSFYseUJBQXlCLENBb0d4QixhQUFhLENBaUJaLENBQUMsQUFNQyxPQUFPLENBQUM7UUFJUCxLQUFLLEVuRXROQyxJQUFJLEdtRXdOWDs7QUFqSUosQUFxSUMseUJBckl3QixDQXFJeEIsV0FBVyxDQUFDO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLEdBQUc7RUFDVCxTQUFTLEVBQUUsZ0JBQWdCO0VBQzNCLE1BQU0sRWhDM05DLE9BQW1ELEdnQzROMUQ7O0EvRC9KRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7RStEdkQvQixBQUFBLHFCQUFxQixDQXlOQztJQUVwQixPQUFPLEVBQUUsSUFBSSxHQUVkOztBQy9PRCxBQUNFLGlCQURlLENBQ2Ysa0JBQWtCLENBQUM7RUFDakIsUUFBUSxFQUFFLFFBQVEsR0FpQm5CO0VBbkJILEFBSUksaUJBSmEsQ0FDZixrQkFBa0IsQ0FHaEIsUUFBUTtFQUpaLGlCQUFpQixDQUNmLGtCQUFrQixDQUloQixTQUFTLENBQUM7SUFDUixRQUFRLEVBQUUsUUFBUTtJQUNsQixLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRUFBRSxJQUFJO0lBQ1osR0FBRyxFQUFFLENBQUM7SUFDTixVQUFVLEVBQUUsSUFBSTtJQUNoQixPQUFPLEVBQUUsQ0FBQyxHQUNYO0VBWkwsQUFhSSxpQkFiYSxDQUNmLGtCQUFrQixDQVloQixRQUFRLENBQUM7SUFDUCxJQUFJLEVBQUUsQ0FBQyxHQUNSO0VBZkwsQUFnQkksaUJBaEJhLENBQ2Ysa0JBQWtCLENBZWhCLFNBQVMsQ0FBQztJQUNSLEtBQUssRUFBRSxDQUFDLEdBQ1Q7O0FBbEJMLEFBb0JFLGlCQXBCZSxDQW9CZixvQkFBb0IsQ0FBQztFQUNuQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLE9BQU8sRUFBRSxDQUFDO0VBQ1YsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsUUFBUSxHQUN0Qjs7QUE3QkgsQUE4QkUsaUJBOUJlLENBOEJmLGdCQUFnQixDQUFDO0VoQ3lVbEIsbUJBQW1CLEVBRFMsR0FBRyxDQUFXLEdBQUc7RUFFN0MsaUJBQWlCLEVBQUUsU0FBUztFQUM1QixlQUFlLEVBQUUsS0FBSztFQTFJdEIsVUFBVSxFQUZXLHNCQUFPO0VnQzVMekIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsS0FBSztFQUNqQixVQUFVLEVBQUUsMEJBQTBCO0VBQ3RDLE9BQU8sRWpDMUJGLElBQW1ELENBQzVCLENBQUM7RWlDMEI3QixVQUFVLEVBQUUsTUFBTTtFQUNsQixLQUFLLEVwRWpDRSxJQUFJO0VvRWtDWCxPQUFPLEVBQUUsQ0FBQztFQUNWLE1BQU0sRWpDN0JzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHaUNvRXpEO0VBaEZILEFBNENJLGlCQTVDYSxDQThCZixnQkFBZ0IsQUFjYixNQUFNLENBQUM7SWhDa1RYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFGb0IsQ0FBQztJQUd4QixNQUFNLEVBSDZCLENBQUM7SUFJcEMsSUFBSSxFQUp5QyxDQUFDO0lBSzlDLEtBQUssRUFMbUQsQ0FBQztJZ0MvU3BELE9BQU8sRUFBRSxFQUFFO0lBQ1gsVUFBVSxFQUFFLGtCQUFrQjtJQUM5QixPQUFPLEVBQUUsRUFBRSxHQUNaO0VBakRMLEFBa0RJLGlCQWxEYSxDQThCZixnQkFBZ0IsQ0FvQmQsQ0FBQyxDQUFDO0lBQ0EsS0FBSyxFQUFFLElBQUksR0FJWjtJQXZETCxBQW9ETSxpQkFwRFcsQ0E4QmYsZ0JBQWdCLENBb0JkLENBQUMsQUFFRSxNQUFNLENBQUM7TUFDTixLQUFLLEVsQzFCSCxPQUFPLEdrQzJCVjtFQXREUCxBQXlESSxpQkF6RGEsQ0E4QmYsZ0JBQWdCLENBMkJkLFNBQVMsQ0FBQztJQUNSLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLEtBQUssRUFBRSxPQUFPO0lBQ2QsV0FBVyxFQUFFLEdBQUc7SUFDaEIsU0FBUyxFakNqRE4sT0FBbUQsR2lDc0R2RDtJaEVORCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWdFNUQ1QixBQXlESSxpQkF6RGEsQ0E4QmYsZ0JBQWdCLENBMkJkLFNBQVMsQ0FBQztRQU9OLFNBQVMsRWpDcERSLE9BQW1ELEdpQ3NEdkQ7RUFsRUwsQUFvRUksaUJBcEVhLENBOEJmLGdCQUFnQixDQXNDZCxFQUFFLENBQUM7SUFDRCxTQUFTLEVqQ3pETixJQUFtRDtJaUMwRHRELFdBQVcsRUFBRSxHQUFHLEdBU2pCO0loRW5CRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWdFNUQ1QixBQW9FSSxpQkFwRWEsQ0E4QmYsZ0JBQWdCLENBc0NkLEVBQUUsQ0FBQztRQUtDLFNBQVMsRWpDN0RSLFNBQW1ELEdpQ21FdkQ7SWhFbkJELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNZ0U1RDdCLEFBb0VJLGlCQXBFYSxDQThCZixnQkFBZ0IsQ0FzQ2QsRUFBRSxDQUFDO1FBU0MsU0FBUyxFakNqRVIsSUFBbUQsR2lDbUV2RDs7QUFJTCxBQUFBLGVBQWUsQ0FBQztFQUNkLGFBQWEsRWpDeEVOLElBQW1EO0VpQ3lFMUQsYUFBYSxFakN4RWlCLENBQUMsR2lDZ0doQztFaEVqREcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lnRXVCN0IsQUFBQSxlQUFlLENBQUM7TUFLWixXQUFXLEVqQzVFTixTQUFtRDtNaUM2RXhELFlBQVksRWpDN0VQLFNBQW1ELEdpQ2lHM0Q7RWhFakRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJZ0V1QjdCLEFBY0UsZUFkYSxFQWNiLEFBQUEsS0FBQyxFQUFPLEtBQUssQUFBWjtJQWRILGVBQWUsRUFlYixBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsRUFBZTtNQUVaLFlBQVksRWpDeEZULFFBQW1EO01pQ3lGdEQsYUFBYSxFakN6RlYsUUFBbUQsR2lDZ0d6RDs7QUFHSCxBQUFBLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsY0FBYyxFQUFFLE1BQU07RUFDdEIsZUFBZSxFQUFFLFFBQVE7RUFDekIsVUFBVSxFakN6R0gsS0FBbUQ7RWlDMEcxRCxRQUFRLEVBQUUsTUFBTTtFQUNoQixhQUFhLEVqQzNHTixRQUFtRDtFaUM0RzFELE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLElBQUk7RUFDaEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsTUFBTSxFakM5R3dCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdpQ2dKM0Q7RWhFbkZHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJZ0VzQy9CLEFBQUEsYUFBYSxDQUFDO01BZVYsVUFBVSxFQUFFLE1BQU07TUFDbEIsVUFBVSxFQUFFLElBQUk7TUFDaEIsTUFBTSxFakNuSHNCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFFBQW1ELEdpQ2dKM0Q7RUE3Q0QsQUFxQkksYUFyQlMsQUFvQlYsTUFBTSxDQUNMLFdBQVcsQ0FBQztJQUNWLFNBQVMsRUFBRSxVQUFVLEdBQ3RCO0VBdkJMLEFBMEJFLGFBMUJXLENBMEJYLFdBQVcsQ0FBQztJaENzRmIsVUFBVSxFQUZXLDBCQUFPO0lBMEk1QixtQkFBbUIsRUFEUyxHQUFHLENBQVcsR0FBRztJQUU3QyxpQkFBaUIsRUFBRSxTQUFTO0lBQzVCLGVBQWUsRUFBRSxLQUFLO0lBWHRCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFGb0IsQ0FBQztJQUd4QixNQUFNLEVBSDZCLENBQUM7SUFJcEMsSUFBSSxFQUp5QyxDQUFDO0lBSzlDLEtBQUssRUFMbUQsQ0FBQztJZ0NoTnRELE9BQU8sRUFBRSxFQUFFLEdBQ1o7RUEvQkgsQUFpQ0UsYUFqQ1csQ0FpQ1gsY0FBYyxDQUFDO0lBQ2IsVUFBVSxFQUFFLHdCQUF3QjtJQUNwQyxPQUFPLEVqQ3RJRixTQUFtRCxDQUFuRCxNQUFtRCxHaUN1SXpEO0VBcENILEFBcUNFLGFBckNXLENBcUNYLENBQUMsQ0FBQztJQUNBLEtBQUssRUFBRSxPQUFPLEdBQ2Y7RUF2Q0gsQUF5Q0ksYUF6Q1MsQ0F3Q1gsRUFBRSxBQUNDLFdBQVcsQ0FBQztJQUNYLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FDdkpMLEFBQUEsSUFBSSxDQUFDO0VBQ0gsZUFBZSxFQUFFLElBQUksR0FJdEI7RWpFb0RHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJaUV6RDVCLEFBQUEsSUFBSSxDQUFDO01BR0QsU0FBUyxFbENNSixPQUFtRCxHa0NKM0Q7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsTUFBTTtFQUNoQixRQUFRLEVBQUUsUUFBUSxHQUNuQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRW5DZkYsSUFBSSxHbUMwQmI7RUFiRCxBQUtJLEtBTEMsQ0FJSCxnQkFBZ0IsQUFDYixZQUFZLENBQUM7SUFDWixXQUFXLEVBQUUsa0JBQWtCLEdBS2hDO0lqRWtDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWlFN0M1QixBQUtJLEtBTEMsQ0FJSCxnQkFBZ0IsQUFDYixZQUFZLENBQUM7UUFJVixXQUFXLEVBQUUsa0JBQWtCLEdBRWxDOztBQUlMLEFBQUEsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNQLFFBQVEsRUFBRSxLQUFLO0VBQ2YsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLGNBQWMsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxRQUFRO0VBQ2QsR0FBRyxFQUFFLElBQUk7RUFDVCxLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxHQUFHO0VBQ1gsUUFBUSxFQUFFLE1BQU0sR0FDakI7O0FBRUQsQUFBQSxjQUFjLEFBQUEsTUFBTSxDQUFDO0VBQ25CLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUksR0FDYjs7QUFFRCxBQUFBLEdBQUc7QUFDSCxHQUFHLENBQUM7RUFDRixTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDUCxPQUFPLEVsQ3BEQSxTQUFtRCxDQUM1QixDQUFDLEdrQ2tHaEM7RWpFbkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJaUVHNUIsQUFBQSxRQUFRLENBQUM7TUFJTCxPQUFPLEVsQ3ZERixTQUFtRCxDQUM1QixDQUFDLENBRHhCLElBQW1ELEdrQ21HM0Q7RWpFbkRHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJaUVHNUIsQUFPRSxRQVBNLEFBT0wsV0FBVyxDQUFDO01BRVQsY0FBYyxFbEM1RFgsT0FBbUQsR2tDOER6RDtFQVhILEFBYUUsUUFiTSxBQWFMLGtCQUFrQixDQUFDO0lBQ2xCLE9BQU8sRWxDakVGLFNBQW1ELENBQzVCLENBQUMsQ0FEeEIsT0FBbUQsR2tDa0d6RDtJakVyQ0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO01pRVYvQixBQWFFLFFBYk0sQUFhTCxrQkFBa0IsQ0FBQztRQUloQixTQUFTLEVsQ3BFTixPQUFtRCxHa0NrR3pEO0lqRWxEQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWlFRzVCLEFBYUUsUUFiTSxBQWFMLGtCQUFrQixDQUFDO1FBUWhCLE9BQU8sRWxDeEVKLElBQW1ELENBQzVCLENBQUMsQ0FEeEIsUUFBbUQsR2tDa0d6RDtJQS9DSCxBQXdCSSxRQXhCSSxBQWFMLGtCQUFrQixDQVdqQixFQUFFLENBQUM7TUFDRCxNQUFNLEVsQzNFb0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR2tDaUZ2RDtNakVwQkQsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO1FpRVYvQixBQXdCSSxRQXhCSSxBQWFMLGtCQUFrQixDQVdqQixFQUFFLENBQUM7VUFJQyxTQUFTLEVsQy9FUixPQUFtRCxHa0NpRnZEO0lqRWpDRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TWlFRzVCLEFBZ0NJLFFBaENJLEFBYUwsa0JBQWtCLENBbUJqQixlQUFlLENBQUM7UUFFWixNQUFNLEVsQ3BGa0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR2tDaUd2RDtJQTlDTCxBQXFDTSxRQXJDRSxBQWFMLGtCQUFrQixDQW1CakIsZUFBZSxDQUtiLEVBQUUsQ0FBQztNQUNELE1BQU0sRWxDeEZrQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHa0MwRnJEO0lBdkNQLEFBeUNNLFFBekNFLEFBYUwsa0JBQWtCLENBbUJqQixlQUFlLENBU2IsQ0FBQyxDQUFDO01BQ0EsV0FBVyxFbkNXVyx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsVUFBVTtNbUNWbEYsV0FBVyxFQUFFLEdBQUc7TUFDaEIsU0FBUyxFbEMvRlIsT0FBbUQsR2tDZ0dyRDs7QUFLUCxBQUFBLFVBQVUsQ0FBQztFQUNULE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxHQUFHO0VBQ25CLE9BQU8sRWxDdkd1QixDQUFDLENBRHhCLFNBQW1ELEdrQ3lHM0Q7O0FBRUQsQUFBQSxTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRW5DakdHLE9BQU87RW1Da0dmLE1BQU0sRWxDN0d3QixDQUFDLENBQUQsQ0FBQyxDQUR4QixPQUFtRCxHa0MrRzNEOztBakVsREcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0VpRW9EL0IsQUFBQSxlQUFlLENBQUM7SUFFWixTQUFTLEVsQ25ISixRQUFtRCxHa0NrSTNEOztBakVsRkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VpRWlFNUIsQUFBQSxlQUFlLENBQUM7SUFNWixNQUFNLEVsQ3RIc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR2tDa0kzRDs7QUFqQkQsQUFTRSxlQVRhLENBU2IsQ0FBQyxDQUFDO0VBQ0EsV0FBVyxFbkNqQmUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVO0VtQ2tCNUUsV0FBVyxFQUFFLElBQUksR0FLbEI7RWpFakZDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJaUVpRTVCLEFBU0UsZUFUYSxDQVNiLENBQUMsQ0FBQztNQUtFLFdBQVcsRUFBRSxHQUFHLEdBRW5COztBQUdILEFBQUEsU0FBUyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUMsR0FXWDtFQWJELEFBSUUsU0FKTyxBQUlOLE1BQU0sQ0FBQztJakMwTVQsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUZvQixDQUFDO0lBR3hCLE1BQU0sRUFINkIsQ0FBQztJQUlwQyxJQUFJLEVBSnlDLENBQUM7SUFLOUMsS0FBSyxFQUxtRCxDQUFDO0lBVXpELG1CQUFtQixFaUNqTmEsR0FBRyxDQUFXLE1BQU07SWpDa05wRCxpQkFBaUIsRUFBRSxTQUFTO0lBQzVCLGVBQWUsRUFBRSxLQUFLO0lpQ2xObkIsT0FBTyxFQUFFLEVBQUU7SUFDWCxnQkFBZ0IsRUFBRSwyQkFBMkI7SUFDN0MsaUJBQWlCLEVBQUUsU0FBUztJQUM1QixlQUFlLEVBQUUsT0FBTztJQUN4QixPQUFPLEVBQUUsRUFBRSxHQUNaOztBQUdILEFBQUEsY0FBYyxDQUFDO0VBQ2IsT0FBTyxFQUFFLGdCQUFnQjtFQUN6QixJQUFJLEVBQUUsa0JBQWtCO0VBQ3hCLFFBQVEsRUFBRSxtQkFBbUI7RUFDN0IsR0FBRyxFQUFFLGtCQUFrQixHQUN4Qjs7QUFFRCxBQUFBLHNCQUFzQixDQUFDO0VBQ3JCLFdBQVcsRW5DakRpQixhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVUsR21Da0QvRTs7QUFFRCxBQUdFLFNBSE8sQ0FHUCxLQUFLO0FBRlAsb0JBQW9CLENBRWxCLEtBQUs7QUFEUCxzQkFBc0IsQ0FDcEIsS0FBSyxDQUFDO0VBQ0osZ0JBQWdCLEVBQUUscURBQXFEO0VBQ3ZFLGlCQUFpQixFQUFFLFNBQVM7RUFDNUIscUJBQXFCLEVBQUUsS0FBSztFQUM1QixtQkFBbUIsRUFBRSxNQUFNO0VBQzNCLGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUdILEFBQUEsSUFBSSxDQUFDO0VBQ0gsTUFBTSxFQUFFLEtBQUs7RUFDYixNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsUUFBUSxFQUFFLE1BQU0sR0FlakI7RUFwQkQsQUFXSSxJQVhBLENBVUYsR0FBRyxBQUNBLEtBQUssQ0FBQztJQUNMLE1BQU0sRUFBRSxXQUFXLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FDL0QsZUFBZSxDQUFDLGFBQWEsR0FDaEM7RUFkTCxBQWVJLElBZkEsQ0FVRixHQUFHLEFBS0EsSUFBSSxDQUFDO0lBQ0osTUFBTSxFQUFFLFdBQVcsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUMvRCxlQUFlLENBQUMsY0FBYyxHQUNqQzs7QUFJTCxBQUFBLE9BQU8sQ0FBQztFQUNOLFVBQVUsRUFBRSxPQUFPO0VBQ25CLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLGFBQWE7RUFDckIsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsSUFBSSxHQWdCaEI7RUFyQkQsQUFPRSxPQVBLLENBT0wsRUFBRSxDQUFDO0lBQ0QsTUFBTSxFQUFFLFVBQVU7SUFDbEIsU0FBUyxFQUFFLElBQUksR0FDaEI7RUFWSCxBQVlFLE9BWkssQ0FZTCxHQUFHLENBQUM7SUFDRixjQUFjLEVBQUUsTUFBTTtJQUN0QixNQUFNLEVBQUUsVUFBVTtJQUNsQixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLLEdBQ2Q7RUFqQkgsQUFrQkUsT0FsQkssQ0FrQkwsR0FBRyxDQUFDO0lBQ0YsTUFBTSxFQUFFLFNBQVMsR0FDbEI7O0FBR0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUFDN0MsQUFBQSxnQkFBZ0IsQ0FBQztJQUNmLFVBQVUsRUFBRSxVQUFVLENBQUMsVUFBVTtJQUNqQyxTQUFTLEVBQUUsQ0FBQyxHQUNiOztBQUVILE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUx0QixBQUFBLGdCQUFnQixDQU1DO0lBQ2YsWUFBWSxFQUFFLElBQUk7SUFDbEIsYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBRUgsQUFBQSxXQUFXLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsSUFBSTtFQUNULElBQUksRUFBRSxJQUFJO0VBQ1YsTUFBTSxFQUFFLEdBQUc7RUFDWCxLQUFLLEVBQUUsR0FBRyxHQU1YO0VBSkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJQVB0QyxBQUFBLFdBQVcsQ0FBQztNQVFSLElBQUksRUFBRSxFQUFFO01BQ1IsR0FBRyxFQUFFLElBQUksR0FFWjs7QUFFRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixLQUFLLEVBQUUsQ0FBQztFQUNSLE1BQU0sRUFBRSxDQUFDO0VBQ1QsSUFBSSxFQUFFLENBQUM7RUFDUCxNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUNELEFBQUEsa0JBQWtCLENBQUM7RUFDakIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFlBQVksRUFBRSxJQUFJO0VBQ2xCLFVBQVUsRUFBRSxLQUFLLEdBQ2xCOztBQ3pRRCxBQUNFLElBREUsQUFBQSxVQUFVLENBQ1osT0FBTyxDQUFDO0VBQ04sR0FBRyxFQUFFLGVBQWUsR0FhckI7RUFaQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7SUFIaEMsQUFDRSxJQURFLEFBQUEsVUFBVSxDQUNaLE9BQU8sQ0FBQztNQUdKLEdBQUcsRUFBRSxlQUFlLEdBV3ZCO0VsRTZDQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SWtFNUQ1QixBQU9JLElBUEEsQUFBQSxVQUFVLENBQ1osT0FBTyxDQU1MLGFBQWEsQ0FBQztNQUVWLEdBQUcsRUFBRSxlQUFlLEdBS3ZCO0VBSkcsTUFBTSxFbEVrREYsU0FBUyxFQUFFLEtBQUssT2tFbERaLFNBQVMsRUFBRSxTQUFTO0lBVnBDLEFBT0ksSUFQQSxBQUFBLFVBQVUsQ0FDWixPQUFPLENBTUwsYUFBYSxDQUFDO01BSVIsR0FBRyxFQUFFLGVBQWUsR0FHekI7O0FBR0wsQUFBQSxPQUFPLENBQUM7RUFDTixRQUFRLEVBQUUsZ0JBQWdCO0VBQzFCLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLENBQUM7RUFDUixHQUFHLEVBQUUsQ0FBQztFQUNOLE9BQU8sRUFBRSxHQUFHO0VBQ1osT0FBTyxFbkNYQSxTQUFtRCxDbUNXcEMsQ0FBQyxDQUFDLEtBQUs7RUFDN0IsY0FBYyxFQUFFLElBQUksR0ErSHJCO0VsRTNGRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SWtFM0M3QixBQUFBLE9BQU8sQ0FBQztNQVVKLGNBQWMsRUFBRSxLQUFLLEdBNEh4QjtFbEUzRkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRTNDN0IsQUFBQSxPQUFPLENBQUM7TUFjSixjQUFjLEVBQUUsS0FBSyxHQXdIeEI7RUF0SUQsQUFpQkUsT0FqQkssQ0FpQkwsVUFBVSxDQUFDO0lBQ1QsY0FBYyxFQUFFLElBQUksR0FPckI7SWxFa0JDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNa0UzQzdCLEFBaUJFLE9BakJLLENBaUJMLFVBQVUsQ0FBQztRQUlQLFNBQVMsRW5DMUJOLFVBQW1EO1FtQzJCdEQsT0FBTyxFQUFFLElBQUk7UUFDYixXQUFXLEVBQUUsTUFBTSxHQUV0QjtFbEUrQkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0lrRXhEaEMsQUE4QlEsT0E5QkQsQ0EyQkwsU0FBUyxDQUNQLENBQUMsQ0FDRSxBQUFBLGFBQUMsQ0FBYyxNQUFNLEFBQXBCLElBQ0UsY0FBYyxDQUFDO01BRWIsU0FBUyxFQUFFLDBCQUEwQixDQUFDLFVBQVU7TUFDaEQsUUFBUSxFQUFFLG1CQUFtQjtNQUM3QixLQUFLLEVBQUUsZUFBZTtNQUN0QixPQUFPLEVuQ3ZDYSxDQUFDLENBQUQsQ0FBQyxDQUFELENBQUMsQ0FEeEIsT0FBbUQsR21DMENuRDtFQXJDVCxBQTBDRSxPQTFDSyxDQTBDTCxjQUFjLENBQUM7SUFDYixNQUFNLEVBQUUsSUFBSTtJQUNaLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLFVBQVUsRUFBRSxXQUFXO0lBQ3ZCLEtBQUssRXRFeERFLElBQUk7SXNFeURYLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLENBQUM7SUFDUixHQUFHLEVBQUUsZ0JBQWdCLEdBMEV0QjtJbEVoRkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01rRTNDN0IsQUEwQ0UsT0ExQ0ssQ0EwQ0wsY0FBYyxDQUFDO1FBV1gsVUFBVSxFQUFFLFNBQVM7UUFDckIsUUFBUSxFQUFFLFFBQVE7UUFDbEIsT0FBTyxFQUFFLEtBQUs7UUFHZCxTQUFTLEVuQy9ETixPQUFtRDtRbUNnRXRELE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsQ0FBQztRQUNWLFVBQVUsRUFBRSxNQUFNO1FBQ2xCLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxVQUFVLEdBNERwRDtRQTNISCxBQWlFTSxPQWpFQyxDQTBDTCxjQUFjLEFBdUJULEtBQUssQ0FBQztVQUVMLFVBQVUsRUFBRSxVQUFVO1VBQ3RCLE9BQU8sRUFBRSxDQUFDO1VBQ1YsVUFBVSxFQUFFLE9BQU8sR0FDcEI7RWxFM0JILE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxPQUFqQixTQUFTLEVBQUUsTUFBTTtJa0UzQzdCLEFBMENFLE9BMUNLLENBMENMLGNBQWMsQ0FBQztNQStCVCxTQUFTLEVBQUUsMkJBQTJCLENBQUMsVUFBVSxHQWtEdEQ7TUEzSEgsQUFpRU0sT0FqRUMsQ0EwQ0wsY0FBYyxBQXVCVCxLQUFLLENBVUc7UUFDTCxHQUFHLEVBQUUsWUFBWSxHQUNsQjtJbEVsQ0wsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01rRTNDN0IsQUFpRkksT0FqRkcsQ0EwQ0wsY0FBYyxBQXVDWCxPQUFPLEVBakZaLE9BQU8sQ0EwQ0wsY0FBYyxBQXdDWCxNQUFNLENBQUM7UUFFSixRQUFRLEVBQUUsUUFBUTtRQUNsQixPQUFPLEVBQUUsRUFBRTtRQUNYLElBQUksRUFBRSxDQUFDO1FBQ1AsS0FBSyxFQUFFLENBQUM7UUFDUixPQUFPLEVBQUUsRUFBRTtRQUNYLGlCQUFpQixFQUFFLFNBQVM7UUFDNUIsZUFBZSxFQUFFLFNBQVMsR0FFN0I7SWxFakRELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNa0UzQzdCLEFBOEZJLE9BOUZHLENBMENMLGNBQWMsQUFvRFgsT0FBTyxDQUFDO1FBRUwsR0FBRyxFQUFFLEdBQUc7UUFDUixNQUFNLEVBQUUsTUFBTTtRQUNkLGdCQUFnQixFQUFFLDJCQUEyQjtRQUM3QyxtQkFBbUIsRUFBRSxNQUFNLEdBRTlCO0lsRTFERCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWtFM0M3QixBQXVHSSxPQXZHRyxDQTBDTCxjQUFjLEFBNkRYLE1BQU0sQ0FBQztRQUVKLEdBQUcsRUFBRSxnQkFBZ0I7UUFDckIsU0FBUyxFQUFFLGlCQUFpQjtRQUM1QixNQUFNLEVBQUUsS0FBSztRQUNiLGdCQUFnQixFQUFFLDJCQUEyQjtRQUM3QyxtQkFBbUIsRUFBRSxHQUFHLEdBRTNCO0lsRXBFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWtFM0M3QixBQWlISSxPQWpIRyxDQTBDTCxjQUFjLENBdUVaLEVBQUUsQ0FBQztRQUVDLFNBQVMsRW5DeEhSLElBQW1ELEdtQzBIdkQ7SUFySEwsQUF1SEksT0F2SEcsQ0EwQ0wsY0FBYyxDQTZFWixDQUFDLENBQUM7TUFDQSxjQUFjLEVBQUUsTUFBTTtNQUN0QixXQUFXLEVwQ3BCYSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVUsR29DcUIzRTtFbEUvRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRTNDN0IsQUE2SEUsT0E3SEssQ0E2SEwsb0JBQW9CLENBQUM7TUFFakIsT0FBTyxFQUFFLElBQUk7TUFDYixXQUFXLEVBQUUsTUFBTTtNQUNuQixnQkFBZ0IsRUFBRSxxQkFBcUI7TUFDdkMsVUFBVSxFbkN2SVAsVUFBbUQ7TW1Dd0l0RCxPQUFPLEVuQ3hJSixRQUFtRCxDQUM1QixDQUFDLEdtQ3lJOUI7O0FBR0gsQUFBQSxVQUFVLENBQUM7RWxDc0VWLFVBQVUsRUFGVyx3QkFBTztFa0NsRTNCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxJQUFJO0VBQ1osSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsQ0FBQztFQUNSLE9BQU8sRUFBRSxFQUFFO0VBQ1gsS0FBSyxFdEV6SkksSUFBSSxHc0VnTGQ7RWxFM0hHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJa0U2RjVCLEFBQUEsVUFBVSxDQUFDO01BVVAsS0FBSyxFQUFFLE9BQU8sR0FvQmpCO0VBOUJELEFBYUUsVUFiUSxBQWFQLE1BQU0sQ0FBQztJQUNOLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsVUFBVSxFQUFFLFlBQVk7SUFDeEIsSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRUFBRSxLQUFLO0lBQ2IsTUFBTSxFbkNqS0QsVUFBbUQsR21Da0t6RDtFQUVELEFBQUEsZUFBZSxDQXZCakIsVUFBVSxDQXVCVTtJQUNoQixPQUFPLEVBQUUsSUFBSSxHQUNkO0VBekJILEFBMkJFLFVBM0JRLENBMkJSLEdBQUcsQ0FBQztJQUNGLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBR0gsQUFBQSxZQUFZLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxZQUFZLEdBQ3RCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VsQ2dDTCxVQUFVLEVBRlcsd0JBQU8sRUFBUCwyQkFBTztFa0MzQjNCLEtBQUssRW5DdExFLFNBQW1ELEdtQ2lPM0Q7RWxFakxHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0VtSTdCLEFBQUEsS0FBSyxDQUFDO01BT0YsS0FBSyxFbkMxTEEsU0FBbUQ7TW1DMkx4RCxNQUFNLEVuQzNMRCxRQUFtRCxDQUFuRCxPQUFtRCxDQUFuRCxTQUFtRCxDQUM1QixDQUFDLEdtQ2dPaEM7RWxFakxHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0VtSTdCLEFBQUEsS0FBSyxDQUFDO01BYUYsS0FBSyxFbkNoTUEsVUFBbUQsR21DaU8zRDtFbEVwS0csTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0lrRXNJOUIsQUFBQSxXQUFXLENBaEJiLEtBQUssQ0FnQlc7TUFFVixPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxNQUFNLEdBRXJCO0VBckJILEFBdUJFLEtBdkJHLEFBdUJGLGVBQWUsQ0FBQztJbEN3SWxCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFGb0IsQ0FBQztJQUd4QixNQUFNLEVBSDZCLENBQUM7SUFJcEMsSUFBSSxFQUp5QyxDQUFDO0lBSzlDLEtBQUssRUFMbUQsQ0FBQyxHa0NySHZEO0lsRS9KQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7TWtFc0hoQyxBQXVCRSxLQXZCRyxBQXVCRixlQUFlLENBQUM7UUFJYixPQUFPLEVBQUUsQ0FBQztRQUNWLFVBQVUsRUFBRSxNQUFNLEdBYXJCO0lsRTVLQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWtFbUk3QixBQXVCRSxLQXZCRyxBQXVCRixlQUFlLENBQUM7UUFTYixPQUFPLEVBQUUsSUFBSSxHQVNoQjtJbEUvSkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO01rRXlKNUIsQUFBQSxXQUFXLENBbkNmLEtBQUssQUF1QkYsZUFBZSxDQVlBO1FBRVYsT0FBTyxFQUFFLENBQUM7UUFDVixVQUFVLEVBQUUsT0FBTyxHQUV0QjtFQXhDTCxBQTJDRSxLQTNDRyxDQTJDSCxHQUFHLENBQUM7SUFDRixLQUFLLEVBQUUsSUFBSSxHQUNaOztBbEVoTEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0VrRW1MN0IsQUFBQSxTQUFTLENBQUM7SUFFTixJQUFJLEVBQUUsR0FBRyxHQTZEWjs7QWxFbFBHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtFa0VtTDdCLEFBUUksU0FSSyxDQUtQLGNBQWMsQ0FHWixFQUFFLENBQUM7SUFFQyxNQUFNLEVuQzVPa0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQsR21DdVB2RDs7QWxFMUxELE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztFa0VzS2hDLEFBY1EsU0FkQyxDQUtQLGNBQWMsQ0FHWixFQUFFLEFBS0MsV0FBVyxDQUNWLENBQUMsQ0FBQztJQUVFLGNBQWMsRUFBRSxDQUFDLEdBRXBCOztBQWxCVCxBQXNCSSxTQXRCSyxDQUtQLGNBQWMsQ0FpQlosQ0FBQyxDQUFDO0VBQ0EsU0FBUyxFbkMxUE4sT0FBbUQ7RW1DMlB0RCxXQUFXLEVBQUUsR0FBRztFQUNoQixjQUFjLEVBQUUsSUFBSSxHQW9DckI7RWxFaFBELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0VtTDdCLEFBc0JJLFNBdEJLLENBS1AsY0FBYyxDQWlCWixDQUFDLENBQUM7TUFLRSxRQUFRLEVBQUUsUUFBUTtNQUNsQixTQUFTLEVuQy9QUixRQUFtRDtNbUNnUXBELFdBQVcsRUFBRSxHQUFHO01BQ2hCLE9BQU8sRW5DaFFpQixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHbUNnU3ZEO0VsRWhQRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SWtFbUw3QixBQWlDTSxTQWpDRyxDQUtQLGNBQWMsQ0FpQlosQ0FBQyxBQVdFLE1BQU0sQ0FBQztNbENqRGIsVUFBVSxFQUZXLDJCQUFPO01rQ3NEbkIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFFLEVBQUU7TUFDWCxNQUFNLEVuQ3pRUCxTQUFtRDtNbUMwUWxELFVBQVUsRXBDM1BWLE9BQU87TW9DNFBQLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLENBQUM7TUFDUixNQUFNLEVBQUUsQ0FBQyxHQUVaO0VsRWxOSCxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7SWtFc0toQyxBQThDTSxTQTlDRyxDQUtQLGNBQWMsQ0FpQlosQ0FBQyxBQXdCRSxNQUFNLENBQUM7TUFFSixLQUFLLEVwQ3ZRTCxPQUFPLEdvQ21SVjtFbEUvT0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRW1MN0IsQUE4Q00sU0E5Q0csQ0FLUCxjQUFjLENBaUJaLENBQUMsQUF3QkUsTUFBTSxDQUFDO01BTUosU0FBUyxFQUFFLGdCQUFnQixHQVE5QjtFbEUvT0gsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRW1MN0IsQUF1RFEsU0F2REMsQ0FLUCxjQUFjLENBaUJaLENBQUMsQUF3QkUsTUFBTSxBQVNKLE1BQU0sQ0FBQztNQUVKLFVBQVUsRXRFalNYLElBQUksR3NFbVNOOztBQU1ULEFBQUEsV0FBVyxDQUFDO0VsQ2pGWCxVQUFVLEVBRlcsd0JBQU8sRUFBUCwyQkFBTztFa0NxRjNCLEtBQUssRW5DdFNFLE9BQW1EO0VtQ3VTMUQsTUFBTSxFbkN2U0MsUUFBbUQ7RW1Dd1MxRCxLQUFLLEVBQUUsS0FBSztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRW5DMVNDLFFBQW1ELENBQW5ELFNBQW1ELENBQzVCLENBQUMsR21DdVdoQztFbEV4VEcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRW9QN0IsQUFBQSxXQUFXLENBQUM7TUFTUixPQUFPLEVBQUUsSUFBSSxHQTJEaEI7RUF4REMsQUFBQSxTQUFTLENBWlgsV0FBVyxDQVlHO0lBQ1YsT0FBTyxFQUFFLFlBQVk7SUFDckIsVUFBVSxFQUFFLGtCQUFrQjtJQUM5QixLQUFLLEVuQ25UQSxTQUFtRDtJbUNvVHhELFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRW5DclRFLFNBQW1EO0ltQ3NUeEQsS0FBSyxFbkN0VEEsSUFBbUQsR21DdVV6RDtJQXZCRCxBQVFFLFNBUk8sQ0FaWCxXQUFXLEFBb0JOLE9BQU8sRUFSVixTQUFTLENBWlgsV0FBVyxBQXFCTixNQUFNLENBQUM7TUFDTixTQUFTLEVBQUUsYUFBYTtNQUN4QixHQUFHLEVBQUUsR0FBRztNQUNSLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLENBQUMsR0FDVDtJQWRILEFBZ0JFLFNBaEJPLENBWlgsV0FBVyxBQTRCTixNQUFNLENBQUM7TUFDTixTQUFTLEVBQUUsY0FBYyxHQUMxQjtJQWxCSCxBQW9CRSxTQXBCTyxDQVpYLFdBQVcsQ0FnQ1AsSUFBSSxDQUFDO01BQ0gsT0FBTyxFQUFFLENBQUMsR0FDWDtFQWxDTCxBQXFDRSxXQXJDUyxBQXFDUixPQUFPLEVBckNWLFdBQVcsQUFzQ1IsTUFBTTtFQXRDVCxXQUFXLENBdUNULElBQUksQ0FBQztJQUNILFVBQVUsRXBDdFVILE9BQU87SW9DdVVkLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRW5DOVVFLE9BQW1EO0ltQytVeEQsSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRW5DalZELE9BQW1EO0ltQ2tWeEQsYUFBYSxFcEN2TnVDLE9BQU07SW9Dd04xRCxVQUFVLEVBQUUscUJBQXFCLEdBS2xDO0lBSEMsQUFBQSxTQUFTLENBakRiLFdBQVcsQUFxQ1IsT0FBTyxFQVlOLFNBQVMsQ0FqRGIsV0FBVyxBQXNDUixNQUFNLEVBV0wsU0FBUztJQWpEYixXQUFXLENBdUNULElBQUksQ0FVVTtNQUNWLFVBQVUsRXRFM1ZMLElBQUksR3NFNFZWO0VBbkRMLEFBc0RFLFdBdERTLEFBc0RSLE9BQU8sRUF0RFYsV0FBVyxBQXVEUixNQUFNLENBQUM7SUFDTixPQUFPLEVBQUUsRUFBRTtJQUNYLEdBQUcsRW5DN1ZFLE9BQW1ELEdtQzhWekQ7RUExREgsQUE0REUsV0E1RFMsQUE0RFIsTUFBTSxDQUFDO0lBQ04sR0FBRyxFbkNqV0UsT0FBbUQsR21Da1d6RDtFQUVELEFBQUEsV0FBVyxDQWhFYixXQUFXLENBZ0VLO0lBQ1osT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsUUFBUSxFQUFFLE1BQU07RUFDaEIsTUFBTSxFQUFFLElBQUksR0FLYjtFbEVqVUcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRTBUN0IsQUFBQSxnQkFBZ0IsQ0FBQztNQUtiLElBQUksRUFBRSxHQUFHLEdBRVo7O0FBRUQsQUFBQSxTQUFTLENBQUM7RWxDaEtULFVBQVUsRUFGVyx3QkFBTyxFQUFQLDJCQUFPO0VrQ3FLM0IsUUFBUSxFQUFFLGlCQUFpQixHQWtFNUI7RWxFM1hHLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJa0VzVGhDLEFBQUEsU0FBUyxDQUFDO01BTU4sT0FBTyxFbkN4WHFCLENBQUMsQ0FEeEIsT0FBbUQsQ0FBbkQsT0FBbUQ7TW1DMFh4RCxRQUFRLEVBQUUsSUFBSTtNQUNkLE1BQU0sRUFBRSxJQUFJLEdBNkRmO0VsRTNYRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SWtFc1QvQixBQUFBLFNBQVMsQ0FBQztNQVlOLE9BQU8sRW5DOVhxQixDQUFDLENBRHhCLE1BQW1ELENBQW5ELE9BQW1ELEdtQ3diM0Q7RWxFeFlHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0VtVTdCLEFBQUEsU0FBUyxDQUFDO01BZ0JOLE9BQU8sRUFBRSxJQUFJO01BQ2IsU0FBUyxFQUFFLElBQUk7TUFDZixlQUFlLEVBQUUsUUFBUTtNQUN6QixPQUFPLEVuQ3JZcUIsQ0FBQyxDQUR4QixPQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHbUN1YmhDO0VsRXhZRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SWtFbVU3QixBQXNCRSxTQXRCTyxHQXNCTCxFQUFFLENBQUM7TUFFRCxNQUFNLEVuQzFZb0IsQ0FBQyxDQUR4QixPQUFtRCxDQUM1QixDQUFDLENBQUQsQ0FBQyxHbUM4WjlCO0VBNUNILEFBNEJNLFNBNUJHLEdBc0JMLEVBQUUsR0FLQSxDQUFDLEFBQ0EsTUFBTSxDQUFDO0lBQ04sS0FBSyxFcENwWUgsT0FBTyxHb0N5WVY7SWxFcldILE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNa0VtVTdCLEFBNEJNLFNBNUJHLEdBc0JMLEVBQUUsR0FLQSxDQUFDLEFBQ0EsTUFBTSxDQUFDO1FBSUosS0FBSyxFcENwWUwsT0FBTyxHb0NzWVY7RUFsQ1AsQUFxQ0ksU0FyQ0ssR0FzQkwsRUFBRSxBQWVELE9BQU8sQ0FBQztJQUNQLEtBQUssRXBDN1lELE9BQU8sR29Da1paO0lsRTlXRCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWtFbVU3QixBQXFDSSxTQXJDSyxHQXNCTCxFQUFFLEFBZUQsT0FBTyxDQUFDO1FBSUwsS0FBSyxFcEM3WUgsT0FBTyxHb0MrWVo7RWxFOVdELE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJa0VtVTdCLEFBOENFLFNBOUNPLEdBOENMLEVBQUUsQUFBQSxXQUFZLENBQUU7TUFFZCxNQUFNLEVBQUUsQ0FBQyxHQUVaO0VBbERILEFBb0RFLFNBcERPLENBb0RQLENBQUMsQ0FBQztJQUNBLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLFNBQVMsRW5DM2FKLE9BQW1EO0ltQzRheEQsS0FBSyxFQUFFLE9BQU87SUFDZCxXQUFXLEVBQUUsR0FBRyxHQVVqQjtJbEUxWEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO01rRXNUaEMsQUFvREUsU0FwRE8sQ0FvRFAsQ0FBQyxDQUFDO1FBU0UsT0FBTyxFbkNoYkosU0FBbUQsQ0FDNUIsQ0FBQyxHbUNzYjlCO0lsRXZZQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07TWtFbVU3QixBQW9ERSxTQXBETyxDQW9EUCxDQUFDLENBQUM7UUFhRSxLQUFLLEVBQUUsT0FBTztRQUNkLFNBQVMsRW5DcmJOLE9BQW1ELEdtQ3ViekQ7O0FBR0gsQUFBQSxTQUFTLENBQUM7RWxDdk9ULFVBQVUsRUFGVywwQkFBTyxHa0NvUjVCO0VsRXhhRyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVM7SWtFNlhoQyxBQUFBLFNBQVMsQ0FBQztNQUlOLFFBQVEsRUFBRSxRQUFRO01BQ2xCLFNBQVMsRUFBRSw4QkFBOEI7TUFDekMsR0FBRyxFQUFFLENBQUM7TUFDTixJQUFJLEVBQUUsQ0FBQztNQUNQLEtBQUssRUFBRSxDQUFDO01BQ1IsT0FBTyxFQUFFLEdBQUc7TUFDWixVQUFVLEVBQUUscUJBQXFCO01BQ2pDLE1BQU0sRUFBRSxLQUFLO01BQ2IsS0FBSyxFdEUzY0UsSUFBSTtNc0U0Y1gsT0FBTyxFbkN2Y0YsU0FBbUQsQ0FDNUIsQ0FBQyxDQUFELENBQUMsR21Db2VoQztFbEVyYkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lrRTBZN0IsQUFBQSxTQUFTLENBQUM7TUFpQk4sT0FBTyxFQUFFLElBQUk7TUFDYixXQUFXLEVBQUUsTUFBTSxHQXlCdEI7RWxFeGFHLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJa0U2WGhDLEFBcUJFLFNBckJPLEFBcUJOLE1BQU0sQ0FBQztNQUVKLFFBQVEsRUFBRSxRQUFRO01BQ2xCLE9BQU8sRUFBRSxFQUFFO01BQ1gsSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsQ0FBQztNQUNSLE9BQU8sRUFBRSxFQUFFO01BQ1gsaUJBQWlCLEVBQUUsU0FBUztNQUM1QixlQUFlLEVBQUUsU0FBUztNQUMxQixNQUFNLEVBQUUsQ0FBQztNQUNULFNBQVMsRUFBRSxnQkFBZ0I7TUFDM0IsTUFBTSxFQUFFLElBQUk7TUFDWixnQkFBZ0IsRUFBRSwyQkFBMkI7TUFDN0MsbUJBQW1CLEVBQUUsR0FBRyxHQUUzQjtFbEVqYUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTO0lrRW1hOUIsQUFBQSxXQUFXLENBdENiLFNBQVMsQ0FzQ087TUFFVixTQUFTLEVBQUUsYUFBYSxHQUUzQjs7QUFHSCxBQUFBLGNBQWMsQ0FBQyxDQUFDLENBQUM7RUFDZixVQUFVLEVBQUUsZUFBZSxHQUM1Qjs7QUFFRCxBQUFBLGNBQWMsQ0FBQztFQUNiLE1BQU0sRW5DM2V3QixDQUFDLENBRHhCLE1BQW1ELENBQzVCLENBQUMsQ0FBRCxDQUFDLEdtQzRlaEM7O0FBQ0QsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixVQUFVLEVBQUUsUUFBUTtFQUNwQixZQUFZLEVBQUUsR0FBRztFQUNqQixRQUFRLEVBQUUsUUFBUSxHQTJCbkI7RUE5QkQsQUFJRSxtQkFKaUIsQ0FJakIsY0FBYyxDQUFDO0lBQ2IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsQ0FBQztJQUNSLElBQUksRUFBRSxJQUFJO0lBQ1YsTUFBTSxFQUFFLENBQUMsR0FDVjtFQVZILEFBV0UsbUJBWGlCLENBV2pCLHdCQUF3QixDQUFDO0lBQ3ZCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRUFBRSxLQUFLO0lBQ1osT0FBTyxFQUFFLElBQUksR0FlZDtJQTdCSCxBQWdCTSxtQkFoQmEsQ0FXakIsd0JBQXdCLENBSXRCLElBQUksQ0FDRixtQkFBbUIsQ0FBQztNQUNsQixPQUFPLEVBQUUsSUFBSSxHQUNkO0lBbEJQLEFBbUJNLG1CQW5CYSxDQVdqQix3QkFBd0IsQ0FJdEIsSUFBSSxDQUlGLGFBQWEsQ0FBQztNQUNaLE1BQU0sRUFBRSxJQUFJO01BQ1osYUFBYSxFQUFFLGlCQUFpQjtNQUNoQyxPQUFPLEVBQUUsSUFBSTtNQUNiLFVBQVUsRUFBRSxJQUFJLEdBSWpCO01BM0JQLEFBd0JRLG1CQXhCVyxDQVdqQix3QkFBd0IsQ0FJdEIsSUFBSSxDQUlGLGFBQWEsQUFLVixhQUFhLENBQUM7UUFDYixPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUtULEFBQUEsd0JBQXdCLENBQUM7RUFDdkIsS0FBSyxFQUFFLE9BQU87RUFDZCxTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxPQUFPLEdBQ2hCOztBQUNELEFBQUEsMEJBQTBCLENBQUM7RUFDekIsT0FBTyxFQUFFLElBQUksR0FxQ2Q7RUF0Q0QsQUFFRSwwQkFGd0IsQ0FFeEIsYUFBYSxDQUFDO0lBQ1osTUFBTSxFQUFFLElBQUk7SUFDWixhQUFhLEVBQUUsaUJBQWlCO0lBQ2hDLE9BQU8sRUFBRSxJQUFJO0lBQ2IsVUFBVSxFQUFFLElBQUk7SUFDaEIsZ0JBQWdCLEVBQUUsV0FBVztJQUM3QixLQUFLLEVBQUUsT0FBTyxHQUlmO0lBWkgsQUFTSSwwQkFUc0IsQ0FFeEIsYUFBYSxBQU9WLGFBQWEsQ0FBQztNQUNiLE9BQU8sRUFBRSxDQUFDLEdBQ1g7RUFYTCxBQWFFLDBCQWJ3QixDQWF4QixtQkFBbUIsQ0FBQztJQUNsQixXQUFXLEVBQUUsQ0FBQztJQUNkLFFBQVEsRUFBRSxRQUFRLEdBc0JuQjtJQXJDSCxBQWdCSSwwQkFoQnNCLENBYXhCLG1CQUFtQixBQUdoQixNQUFNLENBQUM7TUFDTixPQUFPLEVBQUUsT0FBTztNQUNoQixXQUFXLEVBQUUscUJBQXFCO01BQ2xDLE9BQU8sRUFBRSxZQUFZO01BQ3JCLFdBQVcsRUFBRSxHQUFHO01BQ2hCLFNBQVMsRUFBRSxJQUFJO01BQ2YsS0FBSyxFQUFFLE9BQU87TUFDZCxRQUFRLEVBQUUsUUFBUTtNQUNsQixNQUFNLEVBQUUsQ0FBQztNQUNULEtBQUssRUFBRSxDQUFDLEdBQ1Q7SUExQkwsQUEyQkksMEJBM0JzQixDQWF4QixtQkFBbUIsQ0FjakIsT0FBTyxDQUFDO01BQ04sZ0JBQWdCLEVBQUUsV0FBVztNQUM3QixNQUFNLEVBQUUsSUFBSTtNQUNaLFdBQVcsRUFBRSxDQUFDO01BQ2QsV0FBVyxFQUFFLE9BQU87TUFDcEIsT0FBTyxFQUFFLENBQUM7TUFDVixNQUFNLEVBQUUsQ0FBQztNQUNULGFBQWEsRUFBRSxpQkFBaUI7TUFDaEMsS0FBSyxFQUFFLElBQUksR0FDWjs7QUNsa0JMLEFBQUEsT0FBTyxDQUFDO0VBQ04sUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLENyQ29IYyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVU7RXFDbkg5RSxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxTQUFTLEdBNEZuQjtFbkVwQ0csTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0ltRTVENUIsQUFBQSxPQUFPLENBQUM7TUFPSixPQUFPLEVBQUUsU0FBUyxHQXlGckI7RUFoR0QsQUFVRSxPQVZLLEFBVUosT0FBTyxDQUFDO0lBQ1AsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLEVBQUU7SUFDWCxJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxDQUFDO0lBQ1IsaUJBQWlCLEVBQUUsU0FBUztJQUM1QixlQUFlLEVBQUUsU0FBUztJQUMxQixHQUFHLEVBQUUsQ0FBQztJQUNOLE1BQU0sRUFBRSxLQUFLO0lBQ2IsZ0JBQWdCLEVBQUUsMkJBQTJCO0lBQzdDLG1CQUFtQixFQUFFLE1BQU0sR0FNNUI7SW5Fa0NDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNbUU1RDVCLEFBVUUsT0FWSyxBQVVKLE9BQU8sQ0FBQztRQWFMLGdCQUFnQixFQUFFLDJCQUEyQjtRQUM3QyxNQUFNLEVBQUUsTUFBTSxHQUVqQjtFQTFCSCxBQTRCSSxPQTVCRyxDQTJCTCxDQUFDLEFBQ0UsSUFBSyxDM0I1QlYsSUFBSSxFMkI0Qlk7SUFDVixLQUFLLEVBQUUsT0FBTyxHQUNmO0VBOUJMLEFBZ0NFLE9BaENLLENBZ0NMLEVBQUUsQ0FBQztJQUNELElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDckN1RlcsV0FBVyxFQUFFLE9BQU87SXFDdEY5QyxNQUFNLEVwQ3JCc0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsUUFBbUQsR29DbUN6RDtJbkVhQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TW1FNUQ1QixBQWdDRSxPQWhDSyxDQWdDTCxFQUFFLENBQUM7UUFLQyxTQUFTLEVwQ3pCTixNQUFtRCxHb0NtQ3pEO0luRWFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtNbUU1RDdCLEFBZ0NFLE9BaENLLENBZ0NMLEVBQUUsQ0FBQztRQVNDLFNBQVMsRXBDN0JOLFFBQW1ELEdvQ21DekQ7SW5FYUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO01tRTVEN0IsQUFnQ0UsT0FoQ0ssQ0FnQ0wsRUFBRSxDQUFDO1FBYUMsU0FBUyxFcENqQ04sT0FBbUQsR29DbUN6RDtFQS9DSCxBQWlERSxPQWpESyxDQWlETCxXQUFXLENBQUM7SUFDVixTQUFTLEVwQ3RDSixPQUFtRDtJb0N1Q3hELFdBQVcsRUFBRSxHQUFHLEdBQ2pCO0VBcERILEFBc0RFLE9BdERLLENBc0RMLEVBQUUsQ0FBQztJQUNELFdBQVcsRUFBRSxPQUFPLEdBS3JCO0luRUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztNbUU1RDVCLEFBc0RFLE9BdERLLENBc0RMLEVBQUUsQ0FBQztRQUlDLFNBQVMsRXBDOUNOLElBQW1ELEdvQ2dEekQ7RUE1REgsQUE4REUsT0E5REssQ0E4REwsT0FBTyxDQUFDO0lBQ04sYUFBYSxFcENuRFIsU0FBbUQsR29Dd0R6RDtJbkVSQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7TW1FNUQ1QixBQThERSxPQTlESyxDQThETCxPQUFPLENBQUM7UUFJSixhQUFhLEVwQ3REVixRQUFtRCxHb0N3RHpEO0VBcEVILEFBdUVJLE9BdkVHLENBc0VMLENBQUMsQUFBQSxJQUFLLEMzQnRFUixJQUFJLEMyQnVFQyxNQUFNLENBQUM7SUFDTixLQUFLLEVyQ2hERCxPQUFPO0lxQ2lEWCxlQUFlLEVBQUUsSUFBSSxHQUN0QjtFbkVERCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVE7SW1FekUvQixBQTZFRSxPQTdFSyxDQTZFTCxZQUFZLENBQUM7TUFFVCxlQUFlLEVBQUUsTUFBTSxHQWdCMUI7RW5FdEJDLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUztJbUV6RWhDLEFBNkVFLE9BN0VLLENBNkVMLFlBQVksQ0FBQztNQU1ULGFBQWEsRXBDdkVWLFNBQW1ELEdvQ21GekQ7RW5FZUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLFFBQVE7SW1FOUd0RCxBQXNGSSxPQXRGRyxDQTZFTCxZQUFZLENBU1YsQ0FBQyxDQUFDO01BRUUsU0FBUyxFcEM1RVIsT0FBbUQsR29Da0Z2RDtFQTlGTCxBQTJGTSxPQTNGQyxDQTZFTCxZQUFZLENBU1YsQ0FBQyxBQUtFLE1BQU0sQ0FBQztJQUNOLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBS1AsQUFBQSxLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsS0FBSztFQUNkLFNBQVMsRXBDeEZGLE9BQW1EO0VvQ3lGMUQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsTUFBTSxFcEN6RndCLENBQUMsQ0FBRCxDQUFDLENBRHhCLFNBQW1ELEdvQzJGM0Q7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxNQUFNLEVwQzdGd0IsQ0FBQyxDQUFELENBQUMsQ0FEeEIsU0FBbUQsR29DOEczRDtFbkVqREcsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0ltRWdDL0IsQUFBQSxZQUFZLENBQUM7TUFJVCxTQUFTLEVwQ2pHSixTQUFtRDtNb0NrR3hELFdBQVcsRUFBRSxJQUFJO01BQ2pCLFlBQVksRUFBRSxJQUFJLEdBV3JCO0VuRTlERyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SW1FNkM1QixBQUFBLFlBQVksQ0FBQztNQVVULFNBQVMsRXBDdkdKLFFBQW1EO01vQ3dHeEQsTUFBTSxFcEN2R3NCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE9BQW1ELEdvQzhHM0Q7RUFqQkQsQUFjRSxZQWRVLENBY1YsR0FBRyxDQUFDO0lBQ0YsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFHSCxBQUFBLGFBQWEsQ0FBQztFQUNaLFVBQVUsRXJDdEhELE9BQU87RXFDdUhoQixPQUFPLEVwQ2xIQSxJQUFtRCxDQUM1QixDQUFDLEdvQ3NIaEM7RW5FdkVHLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJbUVnRTVCLEFBQUEsYUFBYSxDQUFDO01BS1YsT0FBTyxFcENySEYsT0FBbUQsQ0FDNUIsQ0FBQyxHb0NzSGhDOztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1gsTUFBTSxFcEN6SHdCLENBQUMsQ0FBRCxDQUFDLENBRHhCLE1BQW1ELEdvQ2lKM0Q7RW5FcEZHLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUTtJbUU0RC9CLEFBQUEsWUFBWSxDQUFDO01BSVQsVUFBVSxFQUFFLE1BQU0sR0FvQnJCO0VuRWpHRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SW1FeUU1QixBQUFBLFlBQVksQ0FBQztNQVFULE1BQU0sRXBDaElzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHb0NpSjNEO0VuRWpHRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SW1FeUU3QixBQUFBLFlBQVksQ0FBQztNQVlULE1BQU0sRXBDcElzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixTQUFtRCxHb0NpSjNEO0VBeEJELEFBZUUsWUFmVSxDQWVWLElBQUksQ0FBQztJbkMyRU4sVUFBVSxFQUZXLDBCQUFPLEVBQVAsc0JBQU8sRUFBUCwyQkFBTyxFQUFQLHVCQUFPO0ltQ3ZFekIsT0FBTyxFcEMxSUYsUUFBbUQsQ0FBbkQsT0FBbUQ7SW9DMkl4RCxTQUFTLEVBQUUsSUFBSSxHQUtoQjtJbkVoR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO01tRXlFNUIsQUFlRSxZQWZVLENBZVYsSUFBSSxDQUFDO1FBTUQsU0FBUyxFcEM5SU4sS0FBbUQsR29DZ0p6RDs7QUFHSCxBQUFBLGtCQUFrQixDQUFDO0VBRWpCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLE9BQU8sRXBDdEpBLFNBQW1ELENBQzVCLENBQUMsQ0FEeEIsUUFBbUQsR29DMkozRDtFQVJELEFBS0Usa0JBTGdCLENBS2hCLEVBQUUsQ0FBQztJQUNELE1BQU0sRXBDeEpzQixDQUFDLENBQUQsQ0FBQyxDQUR4QixRQUFtRCxHb0MwSnpEIn0= */
